/* Manan: celebration cakes and everyday pastry, presented as a product catalogue. */
:root{--cacao:#fff4ed;--espresso:#f8e0da;--buttermilk:#e4c7bb;--ink:#49262c;--crumb:#67494c;--cherry:#8c1c3a;--honey:#813915;--mono:var(--text)}
body{background:var(--cacao);color:var(--ink)}.eyebrow{font-family:var(--text);letter-spacing:.01em;text-transform:none;color:var(--crumb)}
.catalogue{max-width:1400px;margin:auto;padding:44px var(--gut) 54px;text-align:center}
.catalogue h1{font-family:var(--text);font-weight:600;font-size:clamp(36px,4.3vw,62px);line-height:1.05;max-width:18ch;margin:14px auto 18px;letter-spacing:-.05em}
.catalogue__intro{max-width:58ch;margin:0 auto 26px;font-size:16px}.catalogue .btns{justify-content:center;margin-bottom:34px}
.cake-floor{display:grid;grid-template-columns:.8fr 1.3fr .8fr;gap:clamp(20px,4vw,58px);align-items:center;max-width:1080px;margin:auto}
.cake-floor figure{margin:0}.cake-floor img{width:100%;height:260px;object-fit:cover;border-radius:50% 50% 10px 10px;background:#eed3c9}
.cake-floor figure:nth-child(2) img{height:360px;border-radius:12px;transform:rotate(-2deg)}
.cake-floor figure:nth-child(3) img{border-radius:10px 10px 50% 50%}
.cake-floor figcaption{font-size:16px;line-height:1.35;margin-top:18px}.cake-floor figcaption b{display:block;font-weight:600;font-size:21px}.cake-floor figcaption a{display:inline-block;margin-top:8px;font-size:14px;text-underline-offset:3px}
.hdr,.hdr.solid,.header,.header.is-solid{background:var(--cacao);color:var(--ink);position:sticky;border-bottom:1px solid #e9c9c1}
.btn--ghost{border-color:var(--cherry);color:var(--cherry);background:transparent}.btn--red{background:var(--cherry);color:#fff;border-radius:8px}
.proof{background:#f6dfd6;color:var(--ink);border:0}.proof li,.proof b,.proof span{color:var(--ink);font-family:var(--text)}
.band,.case{padding-block:64px}.dark2,.dark{background:#f7e0d9;color:var(--ink)}.grain::after{display:none}
.band h2,.case h2{font-size:clamp(30px,3.7vw,52px)}.band h3{font-size:26px}.case{background:#e4c7bb}
.case .eyebrow,.band .eyebrow{color:var(--crumb)}.light,.light h2,.light p{color:var(--ink)}
.fullband{min-height:420px}.fullband h2{font-size:clamp(30px,4vw,58px)}
.foot{background:#f0cdc4;color:var(--ink)}.foot .fine,.foot small{color:var(--crumb)}
.drawer,.drawer .panel{background:var(--buttermilk);color:var(--ink)}.menu-btn{color:var(--ink);border-color:var(--crumb)}
.page-hero,.phero{min-height:0;background:var(--buttermilk);color:var(--ink);padding-block:52px}.page-hero::before,.phero::before{display:none}.page-hero h1,.phero h1{font-size:clamp(36px,4.7vw,64px);color:var(--ink)}
.js .rv,.js [data-reveal]{opacity:1;transform:none;clip-path:none}
@media(max-width:760px){.catalogue{padding-top:32px}.catalogue h1{font-size:38px}.cake-floor{grid-template-columns:1fr 1fr;gap:24px 14px}.cake-floor figure:nth-child(2){grid-column:1/-1;grid-row:1;max-width:290px;justify-self:center}.cake-floor figure:nth-child(2) img{height:285px}.cake-floor img{height:190px}.cake-floor figcaption b{font-size:18px}.catalogue .btns{margin-bottom:28px}.band,.case{padding-block:48px}.fullband{min-height:320px}}
@media(max-width:360px){.catalogue h1{font-size:34px}.cake-floor img{height:165px}.catalogue .btns{align-items:stretch}.catalogue .btn{padding-inline:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.fullband,.fullband h2,.fullband .eyebrow{color:#e4c7bb}
.fullband .btn--ghost{color:#e4c7bb;border-color:#e4c7bb}

.hero.hero--inner{min-height:0;display:flow-root;background:var(--buttermilk);color:var(--ink);padding:44px var(--gut)}.hero.hero--inner::before,.hero.hero--inner::after,.hero--inner .hero__glow{display:none}.hero--inner .hero__media{position:relative;float:right;inset:auto;width:40%;margin-left:40px;max-width:520px}.hero--inner .hero__media img{height:340px;object-fit:cover}.hero--inner .hero__copy{padding:0;position:relative;width:auto}.hero--inner h1{font-size:clamp(36px,4.7vw,62px);color:var(--ink);text-shadow:none;max-width:18ch}.hero--inner .sub,.hero--inner .eyebrow{color:var(--crumb);text-shadow:none}@media(max-width:760px){.hero--inner .hero__media{float:none;width:100%;margin:0 0 24px}.hero--inner .hero__media img{height:235px}.hero--inner h1{font-size:38px}}
.hero.hero--inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px;align-items:center}
.hero--inner .hero__media{float:none;width:100%;height:auto;aspect-ratio:auto;transform:none;box-shadow:none;margin:0;order:1}
.hero--inner .hero__media::before,.hero--inner .hero__media::after{display:none}
.hero--inner .hero__copy{margin:0;padding:0;order:0}.hero--inner .hero__copy h1{font-size:clamp(36px,4.7vw,62px);max-width:18ch}.hero--inner .hero__copy .sub{color:var(--crumb)}
@media(max-width:760px){.hero.hero--inner{grid-template-columns:1fr;gap:24px;padding-block:32px}.hero--inner .hero__copy h1{font-size:38px}.hero--inner .hero__media{margin:0}}
.light .btn--ghost,.dark2 .btn--ghost{color:var(--cherry);border-color:var(--cherry)}
.light .tel,.dark2 .tel,.card-cake{color:var(--ink)}
.dark2 p[style*="color:#eadfce"],.dark2 .eyebrow[style*="color:var(--rose)"]{color:var(--ink)!important}
.menu-chips .chips a{background:var(--buttermilk);color:var(--ink);border-color:#c49592}.menu-chips .chips a[aria-current="true"]{background:var(--ink);color:var(--buttermilk)}
.quote-list footer{color:var(--ink);background:none}.quote-list .quote-featured footer{color:var(--ink)}

.quote-lead footer{color:var(--ink)}

.occ__fig figcaption{background:var(--buttermilk);color:var(--ink)}.occ__fig .occasion-link{color:var(--ink)}

/* Independent structure and accessibility review repair. */
.catalogue>.eyebrow{display:none}.catalogue .btn--ghost{color:#98203f;border-color:#98203f}
.cake-option b,.cake-pick b,.cake-picker button b{color:var(--ink)}
@media(max-width:760px){
  .catalogue{display:flex;flex-direction:column;padding-top:26px;gap:0}
  .catalogue h1{font-size:36px;max-width:17ch;margin:0 auto 24px;order:0}
  .cake-floor{order:1;display:grid;grid-template-columns:.8fr 1.2fr .8fr;gap:12px;align-items:center;width:100%;margin-bottom:26px}
  .cake-floor img{height:105px}.cake-floor figure:nth-child(2) img{height:170px}
  .cake-floor figcaption{font-size:11px;margin-top:12px}.cake-floor figcaption b{font-size:14px;line-height:1.2}.cake-floor figcaption a{font-size:11px;margin-top:8px}
  .catalogue__intro{order:2;font-size:14px;margin:0 0 20px}.catalogue .btns{order:3;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:14px;margin:0}
  .catalogue .btns .btn{font-size:13px;min-height:44px;padding:12px}.catalogue .btns .btn--ghost{border:0;padding-inline:0;text-decoration:underline;text-underline-offset:3px}
}
@media(max-width:360px){.catalogue h1{font-size:31px}.cake-floor{gap:8px}.cake-floor img{height:90px}.cake-floor figure:nth-child(2) img{height:145px}}

/* Character fix p3 (2026-10-04): pictured-product captions, quote word space, phone pastry crop. */
.hero__cap{margin:12px 0 0;font:400 15px/1.35 var(--text);color:var(--ink)}
.hero__cap b{font-weight:600}
.hero__cap a{color:inherit;text-underline-offset:3px}
.hero__cap a:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:2px}
#grp-ask,#cat-h,#h1{scroll-margin-top:90px}
.quote-lead p{word-spacing:.14em}
.cf-crop{display:contents}
@media(max-width:760px){
  .hero__cap{font-size:14px;margin-top:10px}
  .cake-floor .cf-crop{display:block;overflow:hidden;line-height:0;border-radius:10px 10px 50% 50%}
  .cake-floor .cf-crop img{border-radius:0;transform:scale(1.55);transform-origin:40% 54%}
}

a[data-primary-action]::before,a[data-primary-action]::after,a[data-primary-action] span,a[data-primary-action] svg{pointer-events:none}

/* Keep product and occasion choices clear of the shop navigation on focus. */
html{scroll-padding-top:90px;scroll-padding-bottom:110px}
main a,main button,main input{scroll-margin-block:90px 110px}

/* Operator palette correction: less white, same site character. */
:root{--cacao:#ddbeb3;--espresso:#cea29e;--buttermilk:#e4c7bb;--crumb:#4f323c}

/* Scoped in-flow preview credit: truthful, readable and clear of content. */
/* Complete product choices, with the whole cake and its slice in view. */
.case .chips{display:flex;flex-wrap:wrap;overflow:visible;gap:8px;padding-block:16px;border:0}.case .chips a{min-height:44px;padding:10px 14px;font:500 14px/1.3 var(--text);letter-spacing:0;border:1px solid var(--crumb);border-radius:4px;color:var(--ink)}
iframe.map:focus{outline:3px solid var(--cherry);outline-offset:4px}
.hero__media img[src$="black-forest-1080.webp"]{object-fit:contain;object-position:center;background:var(--buttermilk)}
.board-gallery figcaption{display:block;padding:16px;background:var(--buttermilk);color:var(--ink);font:400 14px/1.5 var(--text)}.board-gallery figcaption a{color:var(--cherry);display:inline-block;min-height:44px;padding-top:8px}
.occ h2,.occ p{color:var(--ink)}
@media(max-width:760px){.cake-floor{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr) minmax(0,.8fr);gap:10px;align-items:end}.cake-floor figure,.cake-floor figure:nth-child(2){grid-column:auto;grid-row:auto;width:100%;max-width:none;justify-self:stretch;min-width:0}.cake-floor img{height:120px}.cake-floor figure:nth-child(2) img{height:190px}.cake-floor figcaption{font-size:13px;line-height:1.4;margin-top:14px}.cake-floor figcaption b{font-size:15px;line-height:1.25}.cake-floor figcaption a{font-size:13px;line-height:1.35;min-height:44px;display:flex;align-items:center}.cake-floor figure:nth-child(2) img{transform:rotate(-2deg)}}
@media(max-width:360px){.cake-floor{gap:8px}.cake-floor img{height:100px}.cake-floor figure:nth-child(2) img{height:160px}.cake-floor figcaption b{font-size:14px}}
aside[data-octopuss-disclosure][data-octopuss-disclosure-version$="-footer"]{background:#ddbeb3!important;color:#182126!important;line-height:1.5!important;letter-spacing:0!important;border-top:1px solid rgba(24,33,38,.2);padding:14px 16px!important}
aside[data-octopuss-disclosure][data-octopuss-disclosure-version$="-footer"] a{color:inherit!important;min-height:24px;text-decoration:underline!important;text-underline-offset:3px}

/* Character fix pass 2026-10-03 (site-character-v1 reviews). */
/* 1. Cakes occasion captions: dark crumb headings on a solid confection strip. */
.occasion-gallery figcaption{background:var(--buttermilk);color:var(--crumb);padding:14px 16px 12px;font:400 13px/1.45 var(--text);letter-spacing:0}
.occasion-gallery figcaption b{display:block;color:var(--crumb);font:600 20px/1.2 var(--text)}
.occasion-gallery figcaption a{color:var(--cherry);min-height:44px;display:flex;align-items:center;padding-top:4px;text-underline-offset:3px}
.occasion-gallery figcaption a:focus-visible{outline:3px solid var(--cherry);outline-offset:2px}
/* 2. Catering pastry duo: caption and order link on a solid strip at every width. */
.duo__cap{position:static;grid-column:1/-1;background:var(--buttermilk);color:var(--ink);padding:18px var(--gut) 20px;font:400 14px/1.5 var(--text);letter-spacing:0;text-transform:none;align-items:center}
.duo__cap span{font-weight:600}.duo__cap a{color:var(--cherry);min-height:44px;display:inline-flex;align-items:center;text-underline-offset:3px}
.duo__cap a:focus-visible{outline:3px solid var(--cherry);outline-offset:2px}
/* 3. Home occasion picker on phones: every choice visible and wrapped, no hidden sideways scroll. */
@media(max-width:860px){
  .occ ol{flex-wrap:wrap;overflow:visible;scroll-snap-type:none;padding-bottom:0}
  .occ li{flex:0 1 auto}
  .occ li button{border:1px solid var(--crumb);border-radius:4px;padding:10px 14px;min-height:44px}
  .occ li button[aria-pressed=true]{background:var(--ink);border-color:var(--ink)}
  .occ li button[aria-pressed=true] b,.occ li button[aria-pressed=true] .n{color:var(--buttermilk)}
  .occ li button:focus-visible{outline:3px solid var(--cherry);outline-offset:2px}
}
/* 5. Cake shelf: availability always sits beneath the name on stacked layouts. */
@media(max-width:1023px){.card-cake figcaption{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px}.card-cake figcaption span{padding-top:0}}

/* Character fix pass 2, 2026-10-03 (site-character-v1 reviews). */
/* 1. Cakes: online best sellers and ask-at-the-bakery cakes as two groups, each with its own action. */
.shelf-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);margin-top:36px}
.shelf-group{display:flex;flex-direction:column;gap:20px;padding:24px;border-radius:8px}
.shelf-group--online{background:var(--buttermilk)}
.shelf-group--ask{background:transparent;border:1px dashed var(--crumb)}
.shelf-group__head h3{font:600 24px/1.2 var(--text);color:var(--ink);margin:0}
.shelf-group__head p{margin:8px 0 0;font-size:15px;line-height:1.5;color:var(--crumb)}
.shelf-group__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.shelf-group .btns{margin-top:auto}
.shelf-group .card-cake{background:var(--cacao)}.shelf-group .card-cake figcaption{padding-inline:12px}
@media(max-width:860px){.shelf-groups{grid-template-columns:1fr}}
@media(max-width:360px){.shelf-group{padding:16px}.shelf-group__cards{gap:10px}.shelf-group .btn{padding-inline:14px}}
/* 2. Catering: the sandwich board opens the page; the bouquet stays with Flowers. */
.hero__media--boards img{object-position:50% 50%}
.plinth-row--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px}
@media(max-width:860px){.plinth-row--two{grid-template-columns:1fr 1fr}.plinth-row--two figure:first-child{grid-column:auto}}
@media(max-width:480px){.plinth-row--two{grid-template-columns:1fr}}
/* 3. Home counter: the selected shelf is filled; keyboard focus is a separate outline. */
.case .chips a[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--buttermilk);font-weight:600}
.case .chips a:focus-visible{outline:3px solid var(--cherry);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.case .chips a:not([aria-current]):hover{background:#f1dcd3;color:var(--ink)}.case .chips a[aria-current]:hover,.case .chips a[aria-current]:focus-visible{color:var(--buttermilk)}}
/* 4. Home: one spacing budget between the family story and the counter. */
.layers{padding-bottom:40px}
.case{padding-top:0}.case__head{padding-top:48px}
@media(max-width:760px){.layers{padding-bottom:32px}.case__head{padding-top:36px}}

/* Character fix p4, 2026-10-04 (site-character-v1 review). */
/* 1. Sourced specifics (Lahmajoun, breakfast boats, the owner-chef) in the grouping and shelf introductions. */
.cake-floor .cf-note{display:block;margin-top:4px;font-size:14px;line-height:1.4;color:var(--crumb)}
.shelf__intro{margin:-8px 0 16px;max-width:42ch;font-size:16px;line-height:1.5;color:var(--crumb)}
@media(max-width:760px){.cake-floor .cf-note{font-size:12px;line-height:1.35}.shelf__intro{font-size:15px;margin-top:-6px}}
@media(max-width:360px){.cake-floor .cf-note{font-size:11.5px}}
/* 3. Cakes: the Black Forest caption starts at the photograph's own left edge. */
.hero--inner .hero__media--top{width:340px;max-width:100%;justify-self:center}
.hero--inner .hero__media--top img{width:100%;height:auto;aspect-ratio:1/1}
@media(max-width:760px){.hero--inner .hero__media--top{width:235px}.hero--inner .hero__media--top img{height:auto}}
/* 4. Phone drawer: the page you are on is marked, matching the header's current route. */
.drawer a[aria-current="page"]{color:var(--cherry);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.drawer a[aria-current="page"]::before{content:"";display:inline-block;width:8px;height:8px;margin:0 10px 0 0;border-radius:50%;background:var(--cherry);vertical-align:middle}
.drawer a:focus-visible{outline:3px solid var(--cherry);outline-offset:3px;border-radius:2px}
.nav a[aria-current="page"]{color:var(--cherry);text-decoration:underline;text-underline-offset:6px}
