/* ==========================================================================
   BOSS SWEETS — PASTEL SITE THEME
   Blush pink, cream and rose with charcoal type, a Cormorant serif and a
   Great Vibes script accent. Loaded after luxe.css on every page and turns
   its dark bands light. The festive photo scene on the home page is kept.
   ========================================================================== */
:root {
  --ps-blush: #F4DEDF;
  --ps-blush-2: #EFD0D2;
  --ps-petal: #FBEFEF;
  --ps-cream: #FFF8F2;
  --ps-ivory: #FFFDFB;
  --ps-rose: #D9858A;
  --ps-rose-deep: #B8626A;
  --ps-rose-ink: #9A4C55;
  --ps-gold: #CBAE7A;
  --ps-charcoal: #2F2A2B;
  --ps-muted: #7B6B6D;
  --ps-footer: #2E2426;
  --ps-line: rgba(47, 42, 43, .10);
  --ps-shadow: 0 1px 2px rgba(120, 60, 66, .06), 0 10px 30px -12px rgba(120, 60, 66, .22);
  --ps-serif: 'Cormorant Garamond', 'Tiro Bangla', Georgia, serif;
  --ps-script: 'Great Vibes', 'Cormorant Garamond', cursive;

  /* hand the luxe + elegance layers the pastel palette */
  --lx-ivory: var(--ps-cream);
  --lx-sand: var(--ps-petal);
  --lx-text: var(--ps-charcoal);
  --lx-muted: var(--ps-muted);
  --lx-gold-ink: var(--ps-rose-ink);
  --lx-serif: var(--ps-serif);
  --e-ivory: var(--ps-cream);
  --e-ink: var(--ps-charcoal);
  --e-muted: var(--ps-muted);
  --e-maroon: var(--ps-charcoal);
  --e-gold: var(--ps-rose-ink);
  --e-gold-line: rgba(217, 133, 138, .4);
  --e-line: var(--ps-line);
}
html, html body { background: var(--ps-cream) !important; }
body { color: var(--ps-charcoal); }

/* ---- type ---------------------------------------------------------------- */
h1, h2, h3, .section-title, .menu-page-title, .story-page-title, .instagram-title, .flanking-mobile-title, .insta-center-title {
  font-family: var(--ps-serif) !important; font-weight: 500 !important; letter-spacing: 0 !important; color: var(--ps-charcoal);
}
h1 em, h2 em, .section-title em, .instagram-title em, .flanking-mobile-title em {
  font-family: var(--ps-script) !important; font-style: normal !important; font-weight: 400 !important;
  font-size: 1.18em; line-height: .9; color: var(--ps-rose-deep) !important; letter-spacing: 0 !important;
}
.section-eyebrow { color: var(--ps-rose-ink) !important; }
.section-header::after, .instagram-header::after, .flanking-mobile-header::after {
  background: linear-gradient(90deg, transparent, var(--ps-rose), transparent) !important;
}
.section-description, .instagram-subtitle, .flanking-mobile-sub { color: var(--ps-muted) !important; }

/* ---- buttons ------------------------------------------------------------- */
.btn-primary-luxury { background: var(--ps-rose) !important; border-color: var(--ps-rose) !important; color: #fff !important; box-shadow: 0 10px 22px -12px rgba(184, 98, 106, .9) !important; }
.btn-primary-luxury:hover { background: var(--ps-rose-deep) !important; border-color: var(--ps-rose-deep) !important; }
.btn-secondary-luxury { color: var(--ps-rose-ink) !important; border-color: var(--ps-rose) !important; background: rgba(255, 255, 255, .5) !important; }
.btn-secondary-luxury:hover { background: #fff !important; color: var(--ps-rose-ink) !important; }

/* ---- header: cream glass bar -------------------------------------------- */
html body .navbar, html body .navbar:hover, html body .navbar.scrolled {
  background: rgba(255, 248, 242, .88) !important;
  -webkit-backdrop-filter: saturate(1.2) blur(14px); backdrop-filter: saturate(1.2) blur(14px);
  border-bottom: 1px solid rgba(217, 133, 138, .22) !important; box-shadow: none !important;
}
html body .navbar .nav-link, html body .navbar:hover .nav-link, html body .navbar .nav-link:visited { color: var(--ps-charcoal) !important; }
html body .navbar .nav-link:hover, html body .navbar:hover .nav-link:hover, html body .navbar .nav-link.active, html body .navbar:hover .nav-link.active { color: var(--ps-rose-deep) !important; }
html body .navbar .nav-link::after { background: var(--ps-rose) !important; }
html body .navbar .menu-item-inquire.nav-hotline-pill, html body .navbar:hover .menu-item-inquire.nav-hotline-pill { background: var(--ps-rose) !important; border-color: var(--ps-rose) !important; }
html body .navbar .menu-item-inquire.nav-hotline-pill span, html body .navbar:hover .menu-item-inquire.nav-hotline-pill span { color: #fff !important; }
html body .navbar .menu-item-inquire.nav-hotline-pill:hover { background: var(--ps-rose-deep) !important; border-color: var(--ps-rose-deep) !important; }
html body .navbar .menu-item-inquire.nav-hotline-pill:hover span { color: #fff !important; }
html body .nav-mobile-toggle { border-color: rgba(47, 42, 43, .18) !important; }
html body .nav-mobile-toggle span { background: var(--ps-charcoal) !important; }
html body .mobile-nav-drawer { background: var(--ps-cream) !important; }
html body .mobile-nav-drawer:not(.open) { box-shadow: none !important; }
html body .mobile-nav-item { color: var(--ps-charcoal) !important; border-color: var(--ps-line) !important; font-family: var(--ps-serif) !important; }
html body .mobile-nav-close { color: var(--ps-charcoal) !important; }
html body .mobile-nav-footer, html body .mobile-nav-footer * { color: var(--ps-muted) !important; }
html body .mobile-nav-footer .btn-primary-luxury, html body .mobile-nav-footer .btn-primary-luxury * { background: var(--ps-rose) !important; border-color: var(--ps-rose) !important; color: #fff !important; }

/* ---- home hero: photos stay, the shade turns warm rose instead of black -- */
.hero-grade {
  background:
    linear-gradient(90deg, rgba(70, 30, 38, .70) 0%, rgba(70, 30, 38, .30) 42%, transparent 70%),
    linear-gradient(0deg, rgba(62, 26, 33, .80) 0%, rgba(62, 26, 33, .18) 34%, transparent 55%),
    linear-gradient(180deg, rgba(255, 240, 240, .30) 0%, transparent 16%) !important;
}
.hero-eyebrow { color: #F6C9CC !important; }
.hero-headline { color: #FFF8F2 !important; font-family: var(--ps-serif) !important; font-weight: 500 !important; }
.hero-headline em { font-family: var(--ps-script) !important; font-style: normal !important; font-weight: 400 !important; color: #F8CDD0 !important; font-size: 1.12em; }
.hero-bn { color: rgba(255, 240, 240, .9) !important; }
.hero-copy { color: rgba(255, 244, 242, .82) !important; }
.hero-btn-primary { background: var(--ps-rose) !important; color: #fff !important; box-shadow: 0 12px 26px -14px rgba(0, 0, 0, .6); }
.hero-btn-primary:hover { background: var(--ps-rose-deep) !important; }
.hero-btn-ghost { background: rgba(255, 248, 242, .14) !important; border-color: rgba(255, 240, 240, .6) !important; color: #FFF8F2 !important; }
.hero-btn-ghost:hover { background: #FFF8F2 !important; color: var(--ps-rose-ink) !important; }
.hero-strip { background: rgba(62, 26, 33, .45) !important; border-top-color: rgba(246, 201, 204, .3) !important; }
.hero-strip li + li::before { background: #F6C9CC !important; }
@media (max-width: 900px) {
  .hero-grade { background:
      linear-gradient(0deg, rgba(62, 26, 33, .92) 0%, rgba(62, 26, 33, .74) 40%, rgba(62, 26, 33, .16) 66%, transparent 78%),
      linear-gradient(180deg, rgba(255, 240, 240, .25) 0%, transparent 14%) !important; }
}

/* ---- signatures ---------------------------------------------------------- */
.flanking-track-container { background: var(--ps-blush) !important; }
.flanking-food-card { background: var(--ps-ivory) !important; border-radius: 22px !important; padding: 8px !important; box-shadow: var(--ps-shadow) !important; transition: transform .45s cubic-bezier(.22, .8, .24, 1) !important; }
.flanking-food-card:hover { transform: translateY(-4px) !important; }
.flanking-card-img-wrap { border-radius: 16px !important; background: var(--ps-blush-2) !important; }
.flanking-card-details { padding: 14px 10px 8px !important; }
.flanking-card-title { font: 600 1.3rem/1.15 var(--ps-serif) !important; color: var(--ps-charcoal) !important; }
.flanking-card-tag { color: var(--ps-rose-ink) !important; font-weight: 600 !important; }
.sig-all { background: var(--ps-rose) !important; border-radius: 22px !important; color: #fff !important; box-shadow: var(--ps-shadow) !important; }
.sig-all-k { color: #FFE9EA !important; }
.sig-all-t { color: #fff !important; font-family: var(--ps-serif) !important; font-weight: 500 !important; }
.sig-all .hero-btn-arrow { background: #fff !important; color: var(--ps-rose-deep) !important; }

/* ---- gallery: blush band instead of dark -------------------------------- */
.slideshow-section { background: linear-gradient(180deg, var(--ps-petal), var(--ps-blush)) !important; }
.slideshow-section .section-title { color: var(--ps-charcoal) !important; }
.slideshow-section .section-title em { color: var(--ps-rose-deep) !important; }
.slideshow-section .section-eyebrow { color: var(--ps-rose-ink) !important; }
.slideshow-section .section-description { color: var(--ps-muted) !important; }
.slideshow-section .slideshow-wrapper { background: var(--ps-ivory) !important; border-color: rgba(217, 133, 138, .25) !important; border-radius: 22px !important; box-shadow: var(--ps-shadow) !important; }
.slideshow-section .slideshow-caption .btn-secondary-luxury { border-color: var(--ps-rose) !important; color: var(--ps-rose-ink) !important; }
.slideshow-section .slideshow-dot { background: rgba(184, 98, 106, .25) !important; }
.slideshow-section .slideshow-dot.active { background: var(--ps-rose) !important; }

/* ---- ingredients, reviews, instagram ------------------------------------ */
#ingredients { background: var(--ps-cream) !important; }
#ingredients .ingredient-card { border-top-color: rgba(217, 133, 138, .45) !important; }
#ingredients .ingredient-icon-wrapper { background: var(--ps-blush) !important; color: var(--ps-rose-deep) !important; border-color: transparent !important; }
#ingredients .ingredient-name { font-family: var(--ps-serif) !important; font-weight: 500 !important; color: var(--ps-charcoal) !important; }
section.editorial-section:has(.press-grid) { background: var(--ps-blush) !important; }
.press-card { border-left-color: var(--ps-rose) !important; }
.press-quote { font-family: var(--ps-serif) !important; font-size: 1.32rem !important; color: var(--ps-charcoal) !important; }
.press-publication { color: var(--ps-rose-ink) !important; }
.instagram-section { background: var(--ps-cream) !important; }
.insta-post { border-radius: 18px !important; }

/* ---- inner pages: petal title band -------------------------------------- */
.branches-page-hero, .story-page-hero, .menu-page-hero {
  background: radial-gradient(60% 80% at 50% 0%, rgba(255, 255, 255, .7), transparent 70%), linear-gradient(180deg, var(--ps-petal), var(--ps-blush)) !important;
}
.story-page-title, .branches-page-hero h1, .branches-page-hero h2, .menu-page-title { color: var(--ps-charcoal) !important; }
.story-page-subtitle, .branches-page-hero p, .menu-page-subtitle { color: var(--ps-muted) !important; }
.branches-page-hero .section-eyebrow, .story-page-hero .section-eyebrow, .menu-page-hero .section-eyebrow { color: var(--ps-rose-ink) !important; }
.menu-search-box, .branches-page-hero .menu-search-box { background: var(--ps-ivory) !important; border: 1px solid rgba(217, 133, 138, .35) !important; }
.menu-search-input, .menu-search-box input { color: var(--ps-charcoal) !important; }
.menu-search-input::placeholder, .menu-search-box input::placeholder { color: var(--ps-muted) !important; }
.menu-search-icon, .menu-search-clear { color: var(--ps-rose-deep) !important; }
.menu-filter-btn, .branch-filter-btn { background: rgba(255, 253, 251, .7) !important; border-color: rgba(217, 133, 138, .35) !important; color: var(--ps-charcoal) !important; }
.menu-filter-btn.active, .menu-filter-btn:hover, .branch-filter-btn.active, .branch-filter-btn:hover { background: var(--ps-charcoal) !important; color: #fff !important; border-color: var(--ps-charcoal) !important; }
.menu-item-counter, .branch-item-counter, #branchItemCounter { color: var(--ps-muted) !important; }
.story-page-hero .profile-meta-pill, .story-page-hero .story-metric-card { background: rgba(255, 253, 251, .75) !important; border-color: rgba(217, 133, 138, .3) !important; color: var(--ps-charcoal) !important; }
.story-page-hero .story-metric-number { color: var(--ps-rose-deep) !important; font-family: var(--ps-serif) !important; }
.story-page-hero .story-metric-label { color: var(--ps-muted) !important; }
.story-page-hero p, .story-page-hero li { color: var(--ps-muted) !important; }

/* branch cards */
.branch-card { background: var(--ps-ivory) !important; border: 0 !important; border-radius: 22px !important; box-shadow: var(--ps-shadow) !important; }
.branch-title { font-family: var(--ps-serif) !important; font-weight: 600 !important; color: var(--ps-charcoal) !important; }
.branch-map-btn { background: var(--ps-rose) !important; border-color: var(--ps-rose) !important; color: #fff !important; border-radius: 999px !important; }
.branch-map-btn:hover { background: var(--ps-rose-deep) !important; }
.branch-call-btn { border-color: var(--ps-rose) !important; color: var(--ps-rose-ink) !important; border-radius: 999px !important; background: transparent !important; }
.menu-item-badge, .branch-badge { background: rgba(255, 253, 251, .92) !important; color: var(--ps-rose-ink) !important; }

/* story cards */
.official-service-card, .product-cat-card, .client-card, .story-metric-card, .facility-card, .official-product-card { background: var(--ps-ivory) !important; border-color: rgba(217, 133, 138, .2) !important; border-radius: 22px !important; box-shadow: var(--ps-shadow) !important; }
.official-commitment-card { background: linear-gradient(135deg, var(--ps-rose), var(--ps-rose-deep)) !important; border-radius: 26px !important; }
.official-commitment-card > .section-eyebrow { color: #FFE3E5 !important; }
.official-commitment-card > h2, .official-commitment-card .commitment-quote, .official-commitment-card .commitment-subquote,
.official-commitment-card .commitment-slogan-label, .official-commitment-card .commitment-slogan-text { color: #fff !important; }
.official-commitment-card .commitment-slogan-box { border-color: rgba(255, 255, 255, .45) !important; background: rgba(255, 255, 255, .1) !important; }
.official-commitment-card .facility-card { background: #fff !important; }
.official-commitment-card .facility-title { color: var(--ps-charcoal) !important; }
.official-commitment-card .facility-address { color: var(--ps-muted) !important; }
.official-commitment-card .facility-icon { background: var(--ps-blush) !important; color: var(--ps-rose-deep) !important; }
.official-commitment-card .btn-primary-luxury { background: #fff !important; border-color: #fff !important; color: var(--ps-rose-ink) !important; }
.official-commitment-card .btn-primary-luxury + .btn-primary-luxury { background: transparent !important; color: #fff !important; }
.official-commitment-card .btn-primary-luxury span { color: inherit !important; }

/* ---- footer -------------------------------------------------------------- */
:root { --gold-primary: var(--ps-rose-ink); --gold-warm: var(--ps-rose-deep); --gold-dark: var(--ps-rose-ink); --gold-gradient: linear-gradient(var(--ps-rose), var(--ps-rose)); }
html body .site-footer { --gold-primary: #EDB9BC; --gold-warm: #E7A9AE; background: var(--ps-footer) !important; border-top: 0 !important; }
.site-footer .footer-column h4, .site-footer .footer-newsletter h4 { color: #EDB9BC !important; }
.site-footer .btn-primary-luxury { background: transparent !important; border-color: var(--ps-rose) !important; color: #FFF8F2 !important; box-shadow: none !important; }
.site-footer .btn-primary-luxury:hover { background: var(--ps-rose) !important; color: #fff !important; }

/* ---- phone tab bar ------------------------------------------------------- */
@media (max-width: 900px) {
  html body .m-tabbar { background: rgba(255, 248, 242, .96) !important; border-top: 1px solid rgba(217, 133, 138, .25) !important; box-shadow: 0 -8px 24px -12px rgba(120, 60, 66, .25) !important; }
  html body .m-tabbar::before { display: none !important; }
  html body .m-tab { color: var(--ps-muted) !important; }
  html body .m-tab.is-current { color: var(--ps-rose-deep) !important; }
  html body .m-tab.is-current::before, html body .m-tab.is-current::after { background: var(--ps-rose) !important; }
  html body .m-tab-order { color: var(--ps-rose-deep) !important; }
  html body .m-tab-order .m-tab-orb { background: var(--ps-rose) !important; color: #fff !important; border-color: var(--ps-cream) !important;
    box-shadow: 0 8px 18px -8px rgba(184, 98, 106, .9), 0 0 0 4px var(--ps-cream) !important; }
  .flanking-food-card { padding: 6px !important; border-radius: 18px !important; }
}

/* ---- signatures: moving photo strip (after The Hazelnut Factory) ------- */
#signatures.sig-strip-section {
  background: var(--ps-footer) !important; padding: 0 !important; border: 0 !important;
}
#signatures .sig-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  padding: 26px clamp(20px, 4vw, 60px);
}
#signatures .sig-bar-title {
  margin: 0 !important; color: #FFF8F2 !important; font: 500 clamp(1.5rem, 2.6vw, 2.2rem)/1.15 var(--ps-serif) !important;
  letter-spacing: 0 !important; text-align: left !important;
}
#signatures .sig-bar-title em { color: #EDB9BC !important; font-size: 1.12em; }
#signatures .sig-bar-link {
  flex: none; display: inline-flex; align-items: center; gap: 8px; padding-bottom: 4px;
  color: #EDB9BC; text-decoration: none; font: 600 .72rem/1 var(--lx-sans, sans-serif); letter-spacing: .26em; text-transform: uppercase;
  border-bottom: 1px solid rgba(237, 185, 188, .6); transition: color .2s, border-color .2s, gap .3s;
}
#signatures .sig-bar-link:hover { color: #fff; border-color: #fff; gap: 12px; }

#signatures .flanking-cards-shelf.sig-marquee {
  display: block !important; max-width: none !important; margin: 0 !important; padding: 0 !important; gap: 0 !important;
  overflow-x: auto !important; overflow-y: hidden !important; scroll-snap-type: none !important; scrollbar-width: none;
  cursor: grab; overscroll-behavior-x: contain; -webkit-mask-image: none; mask-image: none;
}
#signatures .flanking-cards-shelf.sig-marquee::-webkit-scrollbar { display: none; }
#signatures .flanking-cards-shelf.sig-marquee.is-dragging { cursor: grabbing; user-select: none; }
#signatures .sig-track { display: flex; gap: 3px; width: max-content; }

#signatures .sig-tile {
  --h: clamp(420px, 68vh, 620px);
  position: relative !important; display: block !important; flex: 0 0 calc(var(--h) * .8) !important; width: calc(var(--h) * .8) !important; height: var(--h);
  margin: 0 !important; padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important;
  background: #3A2E30 !important; overflow: hidden; text-decoration: none; color: #fff; cursor: pointer;
}
#signatures .sig-tile img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; user-select: none; -webkit-user-drag: none;
  transform: scale(1.02); transition: transform 1.2s cubic-bezier(.22, .8, .24, 1);
}
#signatures .sig-tile:hover img { transform: scale(1.07); }
#signatures .sig-tile-shade {
  position: absolute; inset: 0;
  background: linear-gradient(0deg, rgba(36, 22, 25, .82) 0%, rgba(36, 22, 25, .35) 34%, transparent 58%),
              linear-gradient(180deg, rgba(36, 22, 25, .28) 0%, transparent 22%);
}
#signatures .sig-tile-text { position: absolute; left: 28px; right: 28px; bottom: 30px; display: flex; flex-direction: column; gap: 4px; }
#signatures .sig-tile-k { font: 600 .66rem/1.3 var(--lx-sans, sans-serif); letter-spacing: .24em; text-transform: uppercase; color: #F6C9CC; }
#signatures .sig-tile-n { font: 500 italic clamp(2rem, 2.8vw, 2.6rem)/1.05 var(--ps-serif); color: #fff; }
#signatures .sig-tile-bn { font: 400 1.05rem/1.3 'Hind Siliguri', 'Tiro Bangla', sans-serif; color: rgba(255, 244, 242, .85); }
#signatures .sig-tile-price {
  align-self: flex-start; margin-top: 12px; padding: 7px 14px; border-radius: 999px;
  background: rgba(255, 248, 242, .14); border: 1px solid rgba(255, 248, 242, .35);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  font: 600 .8rem/1 var(--lx-sans, sans-serif); color: #fff; letter-spacing: .04em;
}
#signatures .sig-tile-all { background: linear-gradient(160deg, var(--ps-rose), var(--ps-rose-deep)) !important; }
#signatures .sig-tile-all .sig-tile-text { top: 0; bottom: 0; justify-content: center; }
#signatures .sig-tile-all .sig-tile-k { color: #FFE3E5; }
#signatures .sig-tile-all .sig-tile-n { font-style: normal; font-size: clamp(2.2rem, 3vw, 2.8rem); }
#signatures .sig-tile-go { margin-top: 18px; display: inline-grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #fff; color: var(--ps-rose-deep); font-size: 1.3rem; transition: transform .35s cubic-bezier(.22, .8, .24, 1); }
#signatures .sig-tile-all:hover .sig-tile-go { transform: translateX(6px); }
#signatures .sig-tile:focus-visible { outline: 3px solid #EDB9BC; outline-offset: -3px; }
#signatures .flanking-swipe-hint { display: none !important; }

@media (max-width: 900px) {
  #signatures .sig-bar { padding: 22px 18px; }
  #signatures .sig-bar-title { font-size: 1.45rem !important; }
  #signatures .sig-bar-link { font-size: .62rem; letter-spacing: .2em; }
  #signatures .sig-tile { --h: min(86vw, 380px); flex-basis: calc(var(--h) * .74) !important; width: calc(var(--h) * .74) !important; }
  #signatures .sig-tile-text { left: 16px; right: 16px; bottom: 16px; }
  #signatures .sig-tile-n { font-size: 1.5rem; }
  #signatures .sig-tile-k { font-size: .56rem; letter-spacing: .22em; }
  #signatures .sig-tile-bn { font-size: .95rem; }
  #signatures .sig-tile-price { font-size: .8rem; padding: 5px 12px; }
}

/* ---- story page: info pills sit below the title band, not under it ------ */
.profile-meta-strip { position: relative; z-index: 2; margin-top: 28px !important; margin-bottom: 8px !important; padding-inline: 16px; }
.profile-meta-pill { background: var(--ps-ivory) !important; border: 1px solid rgba(217, 133, 138, .35) !important; color: var(--ps-charcoal) !important; box-shadow: var(--ps-shadow) !important; }
.profile-meta-pill strong { color: var(--ps-rose-ink) !important; }
.profile-meta-pill svg { color: var(--ps-rose) !important; flex: none; }

/* ---- Instagram: ten latest posts in a clean grid ------------------------- */
.instagram-grid-container.insta-grid10 {
  display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)) !important; grid-template-rows: none !important;
  gap: 14px !important; max-width: 1280px; margin: 0 auto; padding-inline: 20px;
}
.insta-grid10 .insta-post { grid-column: auto !important; grid-row: auto !important; aspect-ratio: 1 / 1 !important; border: 0 !important; border-radius: 18px !important; box-shadow: var(--ps-shadow) !important; background: var(--ps-blush-2) !important; }
.insta-grid10 .insta-post:focus-visible { outline: 3px solid var(--ps-rose); outline-offset: 3px; }
.insta-grid10 .insta-overlay { background: linear-gradient(0deg, rgba(62, 26, 33, .72), rgba(62, 26, 33, .25)) !important; }
.insta-grid10 .insta-caption-hint { font-family: var(--ps-serif) !important; font-size: 1.15rem !important; font-weight: 600 !important; }
@media (max-width: 1100px) { .instagram-grid-container.insta-grid10 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } .insta-grid10 .insta-post:nth-child(10) { display: none; } }
@media (max-width: 640px)  { .instagram-grid-container.insta-grid10 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; padding-inline: 14px; } .insta-grid10 .insta-post:nth-child(10) { display: block; } .insta-grid10 .insta-post { border-radius: 14px !important; } }

/* Instagram pop-up in the pastel colours, with the full caption */
.insta-modal-card { background: var(--ps-cream) !important; border-radius: 24px !important; }
#instaModalTitle { color: var(--ps-charcoal) !important; font-family: var(--ps-serif) !important; font-size: 1.4rem !important; font-weight: 600 !important; }
.insta-modal-caption { white-space: pre-line; color: #4B4244 !important; max-height: 38vh; overflow-y: auto; }
.insta-modal-tags { color: var(--ps-rose-ink) !important; }
.insta-modal-footer .btn-primary-luxury { background: var(--ps-rose) !important; border-color: var(--ps-rose) !important; color: #fff !important; }
.insta-modal-media-wrap { background: var(--ps-blush-2) !important; display: flex; align-items: center; }
#instaModalImg { object-fit: contain !important; height: auto !important; max-height: 100%; }

/* ---- Instagram: scrapbook of pinned photos -------------------------------- */
.insta-scrapbook .instagram-header { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); margin: 0 !important; padding: 0 !important; }
.insta-board { position: relative; max-width: 1240px; height: 720px; margin: 10px auto 0; padding-inline: 20px; }
.insta-board-note { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-2deg); text-align: center; z-index: 0; pointer-events: none; width: max-content; max-width: 90%; }
.insta-board-note b { display: block; font: 400 clamp(2.6rem, 5.5vw, 4.2rem)/1 var(--ps-script); color: var(--ps-rose-deep); }
.insta-board-note small { font: 700 .72rem/1 var(--lx-sans, sans-serif); letter-spacing: .26em; text-transform: uppercase; color: var(--ps-muted); }
.insta-polaroid {
  position: absolute !important; left: calc(var(--x) - 10px); top: var(--y); width: 230px; aspect-ratio: auto !important;
  padding: 10px 10px 0 !important; background: #fff !important; border: 0 !important; border-radius: 4px !important; overflow: visible !important;
  box-shadow: 0 2px 4px rgba(60, 30, 34, .08), 0 18px 30px -12px rgba(60, 30, 34, .35) !important;
  transform: rotate(var(--r)) !important; transition: transform .45s cubic-bezier(.22, .8, .24, 1), box-shadow .45s !important; z-index: 1; cursor: pointer;
}
.insta-polaroid img { display: block; width: 100%; aspect-ratio: 1; height: auto; object-fit: cover; }
.insta-polaroid-name { display: block; padding: 8px 2px 12px; text-align: center; font: 400 1.55rem/1 var(--ps-script); color: var(--ps-rose-deep); }
.insta-polaroid::before { content: ""; position: absolute; top: -10px; left: 50%; width: 70px; height: 20px; margin-left: -35px; background: rgba(239, 208, 210, .85); transform: rotate(calc(var(--r) * -1.5)); }
.insta-polaroid:hover, .insta-polaroid:focus-visible { transform: rotate(0deg) scale(1.08) !important; z-index: 5; box-shadow: 0 30px 50px -16px rgba(60, 30, 34, .5) !important; outline: none; }
.insta-polaroid:focus-visible { box-shadow: 0 0 0 3px var(--ps-rose), 0 30px 50px -16px rgba(60, 30, 34, .5) !important; }
.insta-polaroid .insta-overlay, .insta-polaroid .insta-badge { display: none !important; }
@media (max-width: 1100px) and (min-width: 901px) { .insta-polaroid { width: 190px; } .insta-board { height: 640px; } }
@media (max-width: 900px) {
  /* phones: a mini version of the computer collage, three loose columns with the label in the middle */
  .insta-board { --u: min(calc((100vw - 24px) / 100), 5.4px); width: calc(100% - 24px); max-width: 540px; height: calc(var(--u) * 200); margin: 6px auto 0; padding: 0; }
  .insta-board-note { top: calc(var(--u) * 72); z-index: 6; transform: translateX(-50%) rotate(-4deg); width: calc(var(--u) * 48); max-width: none; padding: 10px 8px 12px; background: var(--ps-blush); box-shadow: 0 10px 22px -12px rgba(60, 30, 34, .45); }
  .insta-board-note b { font-size: calc(var(--u) * 7.4); }
  .insta-board-note small { font-size: .58rem; letter-spacing: .2em; color: var(--ps-rose-ink); }
  .insta-polaroid { left: var(--mx); top: calc(var(--my) * var(--u)); width: calc(var(--u) * 40); padding: calc(var(--u) * 2.4) calc(var(--u) * 2.4) 0 !important; transform: rotate(var(--mr)) !important; }
  .insta-polaroid-name { font-size: clamp(.9rem, calc(var(--u) * 4.6), 1.2rem); padding: calc(var(--u) * 1.6) 0 calc(var(--u) * 2.6); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .insta-polaroid::before { width: calc(var(--u) * 15); margin-left: calc(var(--u) * -7.5); height: calc(var(--u) * 4.4); top: calc(var(--u) * -2.2); transform: rotate(calc(var(--mr) * -1.5)); }
  .insta-polaroid:hover, .insta-polaroid:focus-visible { transform: rotate(0deg) scale(1.05) !important; }
  .insta-polaroid:nth-of-type(1) { --mx:2%; --my:0; --mr:-6deg; }
  .insta-polaroid:nth-of-type(2) { --mx:31%; --my:8; --mr:4deg; }
  .insta-polaroid:nth-of-type(3) { --mx:59%; --my:2; --mr:-3deg; }
  .insta-polaroid:nth-of-type(4) { --mx:1%; --my:46; --mr:5deg; }
  .insta-polaroid:nth-of-type(5) { --mx:59%; --my:44; --mr:-5deg; }
  .insta-polaroid:nth-of-type(6) { --mx:3%; --my:94; --mr:-4deg; }
  .insta-polaroid:nth-of-type(7) { --mx:30%; --my:100; --mr:6deg; }
  .insta-polaroid:nth-of-type(8) { --mx:59%; --my:92; --mr:-2deg; }
  .insta-polaroid:nth-of-type(9) { --mx:14%; --my:142; --mr:4deg; }
  .insta-polaroid:nth-of-type(10) { --mx:46%; --my:138; --mr:-5deg; }
}
@media (prefers-reduced-motion: reduce) { .insta-polaroid { transition: none !important; } }

/* hero on tall phone screens: its own tall photos (js/main.js swaps them in) */
@media (orientation: portrait) { .hero-shot:first-child { background-image: url('../hero_mobile/b/celebration.jpg'); } }

/* ---------- Our Clients: honeycomb wall of round logo badges ---------- */
.clients-showcase-section { background: var(--ps-cream) !important; border: 0 !important; overflow-x: clip; }
.client-wall { --b: 128px; display: grid; grid-template-columns: repeat(14, 1fr); row-gap: 18px; max-width: 1180px; margin: 2.8rem auto 0; padding: 0; list-style: none; }
.client-badge { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; min-width: 0; }
.client-badge-disc { display: grid; place-items: center; width: var(--b); aspect-ratio: 1; border-radius: 50%; background: #fff; border: 3px solid #fff; box-shadow: 0 0 0 1px rgba(217, 133, 138, .28), 0 16px 30px -18px rgba(90, 30, 40, .55); overflow: hidden; transition: transform .35s cubic-bezier(.22, .8, .24, 1), box-shadow .35s; }
.client-badge-disc img { width: 72%; height: 72%; object-fit: contain; }
.client-badge.is-wide .client-badge-disc img { width: 86%; height: 56%; }
.client-badge.is-dark .client-badge-disc { background: var(--ps-charcoal, #2F2A2B); }
.client-badge.is-black .client-badge-disc { background: #000; }
.client-badge.is-black .client-badge-disc img { width: 80%; height: 80%; }
.client-badge.is-mono .client-badge-disc { background: var(--ps-blush); font: 600 calc(var(--b) * .3)/1 var(--ps-serif, 'Cormorant Garamond', serif); color: var(--ps-rose-ink); }
.client-badge:nth-child(3n).is-mono .client-badge-disc { background: var(--ps-rose); color: #fff; }
.client-badge:hover .client-badge-disc { transform: translateY(-4px) scale(1.04); box-shadow: 0 0 0 1px rgba(217, 133, 138, .4), 0 24px 36px -18px rgba(90, 30, 40, .6); }
.client-badge-name { max-width: 150px; font: 600 .82rem/1.3 var(--lx-sans, 'Source Sans 3', sans-serif); color: var(--ps-charcoal, #2F2A2B); text-wrap: balance; }
@media (min-width: 901px) {
  .client-badge:nth-child(1) { grid-row: 1; grid-column: 2 / span 2; }
  .client-badge:nth-child(2) { grid-row: 1; grid-column: 4 / span 2; }
  .client-badge:nth-child(3) { grid-row: 1; grid-column: 6 / span 2; }
  .client-badge:nth-child(4) { grid-row: 1; grid-column: 8 / span 2; }
  .client-badge:nth-child(5) { grid-row: 1; grid-column: 10 / span 2; }
  .client-badge:nth-child(6) { grid-row: 1; grid-column: 12 / span 2; }
  .client-badge:nth-child(7) { grid-row: 2; grid-column: 1 / span 2; }
  .client-badge:nth-child(8) { grid-row: 2; grid-column: 3 / span 2; }
  .client-badge:nth-child(9) { grid-row: 2; grid-column: 5 / span 2; }
  .client-badge:nth-child(10) { grid-row: 2; grid-column: 7 / span 2; }
  .client-badge:nth-child(11) { grid-row: 2; grid-column: 9 / span 2; }
  .client-badge:nth-child(12) { grid-row: 2; grid-column: 11 / span 2; }
  .client-badge:nth-child(13) { grid-row: 2; grid-column: 13 / span 2; }
  .client-badge:nth-child(14) { grid-row: 3; grid-column: 2 / span 2; }
  .client-badge:nth-child(15) { grid-row: 3; grid-column: 4 / span 2; }
  .client-badge:nth-child(16) { grid-row: 3; grid-column: 6 / span 2; }
  .client-badge:nth-child(17) { grid-row: 3; grid-column: 8 / span 2; }
  .client-badge:nth-child(18) { grid-row: 3; grid-column: 10 / span 2; }
  .client-badge:nth-child(19) { grid-row: 3; grid-column: 12 / span 2; }
}
@media (max-width: 900px) {
  .client-wall { --b: min(24vw, 120px); grid-template-columns: repeat(6, 1fr); row-gap: 14px; margin-top: 1.8rem; }
  .client-badge { gap: 6px; }
  .client-badge-disc { border-width: 2px; }
  .client-badge-name { max-width: 31vw; font-size: .7rem; line-height: 1.25; }
  .client-badge:nth-child(1) { grid-row: 1; grid-column: 1 / span 2; }
  .client-badge:nth-child(2) { grid-row: 1; grid-column: 3 / span 2; }
  .client-badge:nth-child(3) { grid-row: 1; grid-column: 5 / span 2; }
  .client-badge:nth-child(4) { grid-row: 2; grid-column: 2 / span 2; }
  .client-badge:nth-child(5) { grid-row: 2; grid-column: 4 / span 2; }
  .client-badge:nth-child(6) { grid-row: 3; grid-column: 1 / span 2; }
  .client-badge:nth-child(7) { grid-row: 3; grid-column: 3 / span 2; }
  .client-badge:nth-child(8) { grid-row: 3; grid-column: 5 / span 2; }
  .client-badge:nth-child(9) { grid-row: 4; grid-column: 2 / span 2; }
  .client-badge:nth-child(10) { grid-row: 4; grid-column: 4 / span 2; }
  .client-badge:nth-child(11) { grid-row: 5; grid-column: 1 / span 2; }
  .client-badge:nth-child(12) { grid-row: 5; grid-column: 3 / span 2; }
  .client-badge:nth-child(13) { grid-row: 5; grid-column: 5 / span 2; }
  .client-badge:nth-child(14) { grid-row: 6; grid-column: 2 / span 2; }
  .client-badge:nth-child(15) { grid-row: 6; grid-column: 4 / span 2; }
  .client-badge:nth-child(16) { grid-row: 7; grid-column: 1 / span 2; }
  .client-badge:nth-child(17) { grid-row: 7; grid-column: 3 / span 2; }
  .client-badge:nth-child(18) { grid-row: 7; grid-column: 5 / span 2; }
  .client-badge:nth-child(19) { grid-row: 8; grid-column: 3 / span 2; }
}

/* ingredient cards: everything centred (name + Bangla line were sitting off to the left) */
#ingredients .ingredient-card { text-align: center !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
#ingredients .ingredient-name { text-align: center !important; width: 100%; }
#ingredients .ingredient-bangla { display: block; text-align: center !important; }
#ingredients .ingredient-detail { text-align: center !important; max-width: 34ch; margin-inline: auto !important; }

/* hero: the Boss Sweets motto, highlighted */
.hero-motto { display: inline-flex; align-items: center; gap: 12px; margin: 16px 0 4px; padding: 7px 18px 7px 7px; border-radius: 999px; background: rgba(255, 244, 242, .16); border: 1px solid rgba(255, 214, 214, .55); box-shadow: 0 10px 30px -14px rgba(0, 0, 0, .5); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.hero-motto-tag { padding: 6px 12px; border-radius: 999px; background: var(--ps-rose, #D9858A); color: #fff; font: 600 .78rem/1.2 'Hind Siliguri', 'Tiro Bangla', sans-serif; white-space: nowrap; }
.hero-motto-text { font: 700 clamp(1.25rem, 2.4vw, 1.65rem)/1.25 'Hind Siliguri', 'Tiro Bangla', sans-serif; color: #fff; text-shadow: 0 2px 12px rgba(60, 10, 20, .45); background: linear-gradient(transparent 62%, rgba(217, 133, 138, .6) 62%, rgba(217, 133, 138, .6) 92%, transparent 92%); padding: 0 2px; }
@media (max-width: 480px) { .hero-motto { gap: 8px; padding: 5px 12px 5px 5px; } .hero-motto-tag { font-size: .68rem; padding: 5px 9px; } }

/* home hero: spinning "Scroll down" seal in the bottom-right corner */
.scroll-seal { position: absolute; right: 44px; bottom: 50px; z-index: 20; width: 118px; height: 118px; padding: 0; border: 0; background: none; color: #fff; cursor: pointer; transition: opacity .4s ease, transform .4s ease; -webkit-tap-highlight-color: transparent; }
.scroll-seal svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; animation: sealSpin 14s linear infinite; filter: drop-shadow(0 2px 6px rgba(40, 8, 14, .45)); }
.scroll-seal text { font: 700 9px 'Source Sans 3', sans-serif; fill: #fff; }
.scroll-seal .en { text-transform: uppercase; letter-spacing: 1.6px; }
.scroll-seal .bn { font: 700 10.5px 'Hind Siliguri', 'Noto Sans Bengali', sans-serif; letter-spacing: 0; }
.scroll-seal-mid { position: absolute; inset: 31px; border-radius: 50%; background: var(--ps-rose, #D9858A); display: grid; place-items: center; box-shadow: 0 10px 24px -8px rgba(60, 10, 20, .6); transition: transform .3s ease, background .3s ease; }
.scroll-seal-mid::before { content: ""; width: 12px; height: 12px; border-right: 2.5px solid #fff; border-bottom: 2.5px solid #fff; transform: translateY(-3px) rotate(45deg); animation: sealBob 1.4s ease-in-out infinite; }
.scroll-seal:hover .scroll-seal-mid, .scroll-seal:focus-visible .scroll-seal-mid { transform: scale(1.08); background: var(--ps-rose-deep, #B8626A); }
.scroll-seal:focus-visible { outline: none; }
.scroll-seal:focus-visible .scroll-seal-mid { box-shadow: 0 0 0 3px #fff, 0 10px 24px -8px rgba(60, 10, 20, .6); }
.scroll-seal.is-gone { opacity: 0; transform: translateY(12px) scale(.9); pointer-events: none; }
@keyframes sealSpin { to { transform: rotate(360deg); } }
@keyframes sealBob { 50% { transform: translateY(3px) rotate(45deg); } }
@media (max-width: 900px) {
  /* phones: seal stays bottom-right, in its own strip under the buttons, above the tab bar */
  .scroll-seal { right: 12px; bottom: calc(64px + env(safe-area-inset-bottom, 0px) + 8px); top: auto; width: 82px; height: 82px; }
  .scroll-seal-mid { inset: 21px; }
  .hero-copyblock { padding-bottom: 96px !important; }
}
@media (prefers-reduced-motion: reduce) { .scroll-seal svg, .scroll-seal-mid::before { animation: none; } }

/* ---------- top announcement bar: order on Foodi, Foodpanda & Uber Eats ---------- */
:root { --ticker-height: 38px; }
@media (max-width: 900px) { :root { --ticker-height: 32px; } }
html body .royal-announcement-bar, html body.mp-body .royal-announcement-bar {
  display: flex !important; position: fixed; top: 0; left: 0; right: 0; height: var(--ticker-height) !important; min-height: 0 !important; z-index: 1050;
  background: linear-gradient(90deg, #7E3A44, #9A4C55 50%, #7E3A44) !important; border: 0 !important; box-shadow: none !important; overflow: hidden;
}
html body .royal-announcement-bar .announcement-ticker-track { animation: marqueeTicker 42s linear infinite; color: #fff !important; }
html body .royal-announcement-bar .ticker-content { gap: 26px; padding-right: 26px; }
html body .royal-announcement-bar .ticker-item { font: 600 .8rem/1 'Source Sans 3', sans-serif !important; letter-spacing: .1em !important; text-transform: uppercase; color: #FFF1EE !important; text-shadow: none !important; white-space: nowrap; }
html body .royal-announcement-bar .ticker-item b { font-weight: 700; color: #fff; }
html body .royal-announcement-bar .ticker-item [lang="bn"] { font: 700 .95rem/1 'Hind Siliguri', 'Noto Sans Bengali', sans-serif; letter-spacing: 0; text-transform: none; color: #FFD9DC; }
html body .royal-announcement-bar .ticker-dot { color: #F4C3C7 !important; font-size: .7rem; opacity: 1; }
@media (max-width: 900px) { html body .royal-announcement-bar .ticker-item { font-size: .7rem !important; letter-spacing: .08em !important; } html body .royal-announcement-bar .announcement-ticker-track { animation-duration: 34s; } }
@media (prefers-reduced-motion: reduce) { html body .royal-announcement-bar .announcement-ticker-track { animation: none; } }
html body .navbar, html body .navbar:hover, html body .navbar.scrolled { top: var(--ticker-height) !important; }
html body .royal-announcement-bar .ticker-item { display: inline-block !important; gap: 0 !important; }
/* menu page: leave room for the bar above the header */
body.mp-body .mp { padding-top: calc(var(--nav-h, 76px) + var(--ticker-height)) !important; }
body.mp-body .mp-bar { top: calc(var(--nav-h, 76px) + var(--ticker-height)) !important; }
body.mp-body .mp-cat { scroll-margin-top: calc(var(--nav-h, 76px) + var(--ticker-height) + 70px) !important; }
@media (max-width: 900px) and (max-height: 680px) { .scroll-seal { width: 66px; height: 66px; } .scroll-seal-mid { inset: 17px; } .hero-copyblock { padding-bottom: 76px !important; } }
