.menu-section { --menu-ink:var(--ink,#164f50); --menu-cream:var(--cream,#fff8e8); --menu-pink:var(--pink,#f4c5d4); --menu-wash:var(--menu-pink); position:relative; padding:112px 28px 124px; background:var(--menu-cream); color:var(--menu-ink); font-family:'DM Sans',sans-serif; overflow:clip; }
.menu-section *,.menu-section *::before,.menu-section *::after { box-sizing:border-box; }
.menu-section h2,.menu-section h3,.menu-section p,.menu-section figure { margin:0; }
.menu-feature { display:grid; grid-template-columns:.86fr 1.14fr; gap:clamp(48px,6.5vw,104px); align-items:center; max-width:1280px; margin:0 auto; }
.menu-copy { position:relative; z-index:2; }
.menu-kicker { display:flex; align-items:center; gap:9px; font-size:10px; font-weight:700; letter-spacing:.13em; }
.menu-kicker > span { width:7px; height:7px; background:#e9b35c; border-radius:50%; }
.menu-copy h2 { font-family:'Fraunces',Georgia,serif; font-size:clamp(64px,6.5vw,91px); font-weight:500; line-height:.98; letter-spacing:-.065em; margin:23px 0 19px; }
.menu-copy h2 > span { color:#d89b3f; }
.menu-intro { font-size:15px; line-height:1.65; }
.menu-tabs { margin-top:34px; display:flex; flex-direction:column; }
.menu-tab { display:grid; grid-template-columns:27px minmax(0,1fr) 22px; align-items:center; gap:14px; min-height:86px; width:100%; padding:15px 16px 15px 9px; border:0; border-bottom:1px solid rgba(22,79,80,.2); background:transparent; color:inherit; cursor:pointer; text-align:left; border-radius:0; transition:background .25s,padding .25s,border-radius .25s; font-family:inherit; }
.menu-tab.is-active { background:#cceefa; border-color:transparent; border-radius:12px; padding-left:17px; }
.menu-tab:hover:not(.is-active) { background:rgba(204,238,250,.34); }
.menu-tab-number { font-size:10px; font-weight:600; letter-spacing:.08em; opacity:.52; }
.menu-tab-words { display:flex; flex-direction:column; gap:5px; }
.menu-tab-words > strong { font-weight:600; font-size:19px; line-height:1.2; letter-spacing:-.035em; }
.menu-tab-words > span { font-size:11px; line-height:1.3; opacity:.64; }
.menu-tab-arrow { width:22px; height:22px; opacity:0; transform:translateX(-7px); transition:transform .25s,opacity .25s; }
.menu-tab.is-active .menu-tab-arrow { opacity:1; transform:translateX(0); }
.menu-tab:focus-visible,.menu-profile-link:focus-visible,.menu-product-panel:focus-visible { outline:2px solid var(--menu-ink); outline-offset:5px; }
.menu-surprise { display:inline-flex; align-items:center; gap:9px; min-height:44px; margin-top:18px; padding:10px 15px; border:1px solid rgba(22,79,80,.28); border-radius:30px; background:transparent; color:inherit; font:500 11px/1.4 'DM Sans',sans-serif; cursor:pointer; transition:background .25s; }
.menu-surprise svg { width:17px; height:17px; }
.menu-surprise:hover { background:var(--butter,#f6e6a1); }
.menu-surprise:focus-visible { outline:2px solid var(--menu-ink); outline-offset:5px; }
.menu-sr-only { position:absolute; width:1px; height:1px; padding:0; border:0; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap; }
.menu-season-note { font-size:10px; line-height:1.7; opacity:.65; margin-top:21px!important; }
.menu-profile-link { display:inline-flex; align-items:center; gap:13px; color:inherit; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:4px; font-size:12px; font-weight:600; margin-top:20px; }
.menu-profile-link svg { width:16px; height:16px; transition:transform .25s; }
.menu-profile-link:hover svg { transform:translate(2px,-2px); }
.menu-product-stage { position:relative; width:100%; min-width:0; aspect-ratio:.94; isolation:isolate; }
.menu-colour-wash { position:absolute; z-index:-2; inset:-4% -6% 5% -6%; background:var(--menu-wash); border-radius:47% 53% 44% 56%/53% 48% 52% 47%; rotate:-9deg; transition:background .25s; }
.menu-feature[data-menu-mood="triple"] { --menu-wash:#efd29a; }
.menu-feature[data-menu-mood="dubai"] { --menu-wash:#bcd9bf; }
.menu-feature[data-menu-mood="triple"] .menu-tab.is-active { background:#f4debb; }
.menu-feature[data-menu-mood="dubai"] .menu-tab.is-active { background:#dce8d4; }
.menu-product-panel { position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .25s ease,visibility .25s; }
.menu-product-panel.is-active { opacity:1; visibility:visible; }
.menu-photo-shell { position:absolute; inset:3% 0 9% 1%; border:12px solid var(--menu-cream); background:var(--menu-cream); border-radius:46% 54% 44% 56%/13% 12% 14% 13%; rotate:3deg; overflow:hidden; box-shadow:0 15px 28px rgba(22,79,80,.08); }
.menu-food-photo { display:block; width:100%; height:100%; object-fit:cover; }
.menu-photo-smore { object-position:50% 79%; }
.menu-photo-triple { object-position:36% 100%; transform:scale(1.4); transform-origin:32% 92%; }
.menu-photo-dubai { object-position:90% 0%; transform:scale(1.65); transform-origin:86% 18%; }
.menu-paper-label { position:absolute; z-index:3; left:-22px; bottom:4%; min-width:245px; padding:20px 44px 21px 22px; background:var(--menu-cream); color:var(--menu-ink); box-shadow:0 5px 11px rgba(22,79,80,.08); rotate:-6deg; }
.menu-paper-label::before { content:''; position:absolute; width:53px; height:17px; background:rgba(233,179,92,.62); top:-8px; left:35%; rotate:8deg; }
.menu-label-kicker { display:block; font-size:8px; font-weight:600; letter-spacing:.12em; margin-bottom:10px; }
.menu-paper-label h3 { font-family:'Fraunces',Georgia,serif; font-weight:500; font-size:30px; line-height:1.08; letter-spacing:-.055em; }
.menu-paper-label p { margin-top:8px; font-size:11px; line-height:1.6; opacity:.72; }
.menu-paper-label > svg { position:absolute; right:13px; bottom:18px; width:30px; height:30px; color:#e9b35c; rotate:9deg; }
.menu-photo-note { position:absolute; right:10px; bottom:-3%; font-size:9px; line-height:1.5; letter-spacing:.025em; rotate:3deg; opacity:.65; }
.menu-spark { position:absolute; z-index:4; color:#e9b35c; pointer-events:none; animation:menu-spark-float 6s ease-in-out infinite alternate; animation-play-state:paused; }
.menu-spark-one { width:51px; top:-4%; right:0; rotate:11deg; }
.menu-spark-two { width:27px; top:33%; left:-7%; color:var(--menu-ink); animation-delay:-3s; }
.menu-section.is-menu-visible:not(.is-motion-stopped) .menu-spark { animation-play-state:running; }
.menu-section.is-motion-stopped .menu-product-panel,.menu-section.is-motion-stopped .menu-colour-wash { transition:none; }
@keyframes menu-spark-float { from { transform:translate3d(0,0,0) rotate(-5deg); } to { transform:translate3d(0,-10px,0) rotate(8deg); } }
@media (max-width:1000px) and (min-width:761px) {
  .menu-feature { gap:36px; grid-template-columns:.9fr 1.1fr; }
  .menu-copy h2 { font-size:68px; }
  .menu-paper-label { min-width:220px; left:-10px; padding:18px 39px 18px 19px; }
  .menu-paper-label h3 { font-size:27px; }
  .menu-tab-words > strong { font-size:17px; }
  .menu-tab { gap:8px; }
}
@media (max-width:760px) {
  .menu-section { padding:74px 20px 82px; }
  .menu-feature { grid-template-columns:1fr; gap:38px; max-width:520px; }
  .menu-copy h2 { font-size:clamp(59px,14.4vw,76px); margin:20px 0 16px; line-height:.98; }
  .menu-kicker { font-size:9px; }
  .menu-intro { font-size:14px; }
  .menu-tabs { display:grid; grid-template-columns:1fr 1fr 1fr; gap:7px; margin-top:27px; }
  .menu-tab { display:flex; align-items:center; justify-content:center; min-height:54px; padding:12px 7px; border:1px solid rgba(22,79,80,.22); border-radius:30px; text-align:center; gap:0; }
  .menu-tab.is-active { padding:12px 7px; border-radius:30px; border-color:transparent; }
  .menu-tab-number,.menu-tab-arrow,.menu-tab-words > span { display:none; }
  .menu-tab-words > strong { font-size:clamp(11px,2.9vw,15px); font-weight:600; letter-spacing:-.04em; white-space:nowrap; }
  .menu-season-note { font-size:10px; margin-top:16px!important; }
  .menu-season-note br { display:none; }
  .menu-profile-link { font-size:11px; margin-top:14px; }
  .menu-product-stage { aspect-ratio:.9; width:calc(100% - 10px); margin:0 auto; }
  .menu-photo-shell { inset:2% 0 11%; border-width:8px; }
  .menu-colour-wash { inset:-2% -4% 6%; }
  .menu-paper-label { left:-8px; bottom:3%; min-width:210px; padding:17px 43px 17px 18px; }
  .menu-paper-label h3 { font-size:27px; }
  .menu-paper-label p { font-size:10px; line-height:1.55; }
  .menu-label-kicker { font-size:7px; margin-bottom:8px; }
  .menu-paper-label > svg { width:25px; height:25px; right:12px; }
  .menu-photo-note { right:2px; bottom:-3.5%; font-size:8px; max-width:140px; text-align:right; }
  .menu-spark-one { width:38px; top:-4%; right:-3%; }
  .menu-spark-two { width:22px; left:-5%; }
  .menu-feature { gap:0; }
  .menu-copy { display:contents; }
  .menu-kicker { grid-row:1; }
  .menu-copy h2 { grid-row:2; }
  .menu-intro { grid-row:3; }
  .menu-tabs { grid-row:4; }
  .menu-surprise { grid-row:5; justify-self:start; }
  .menu-product-stage { grid-row:6; margin-top:38px; }
  .menu-season-note { grid-row:7; margin-top:36px!important; }
  .menu-profile-link { grid-row:8; justify-self:start; min-height:44px; }
}
@media (prefers-reduced-motion:reduce) {
  .menu-section * { animation:none!important; transition:none!important; }
}
.motion-paused .menu-section * { animation-play-state:paused!important; transition:none!important; }
