/* FD26 Brunch Menu V4 — approved embroidered black/ivory presentation.
   Scoped to the program-style Saturday overlay. Uses real DOM text for zoom and VoiceOver. */
@font-face{font-family:FDMenuBodoni;src:url("/assets/fonts/BodoniModa-latin.woff2") format("woff2");font-display:swap}
@font-face{font-family:FDMenuBodoni;src:url("/assets/fonts/BodoniModa-italic-latin.woff2") format("woff2");font-style:italic;font-display:swap}
.sat-tapestry.ced-menu{
  box-sizing:border-box;position:fixed;inset:0;margin:auto;
  width:min(1030px,calc(100vw - 30px));max-width:1030px;
  max-height:min(94dvh,950px);height:auto;overflow:hidden;
  padding:0;border:1px solid #b99661;border-radius:18px;
  background:#11100f;color:#f7efdf;box-shadow:0 24px 90px #000d,0 0 0 4px #0c0b0a;
}
.sat-tapestry.ced-menu::backdrop{background:rgba(0,0,0,.86);backdrop-filter:blur(5px)}
.ced-menu *{box-sizing:border-box}
.ced-menu__scroll{
 position:relative;isolation:isolate;overflow-y:auto;overflow-x:hidden;
 overscroll-behavior:contain;max-height:min(94dvh,950px);
 padding:clamp(16px,2.4vw,28px) clamp(14px,2.8vw,30px) clamp(19px,2.5vw,30px);
 background:#100f0e url("/assets/img/fd26-sat-menu-scene.svg") center/cover no-repeat;
 scrollbar-color:#83663c #15120f;
}
.ced-menu__scroll::before{
 content:"";position:absolute;pointer-events:none;z-index:-1;
 inset:8px;border:1px dashed #b38a50a0;border-radius:14px;
 box-shadow:0 0 0 6px #0d0b0a70,inset 0 0 0 3px #0c0b0a80;
}
.ced-menu__scroll::after{
 content:"";position:absolute;pointer-events:none;z-index:-1;
 right:-12%;bottom:-37px;width:50%;height:140px;transform:rotate(-12deg);
 border-top:3px double #9f783f;background:
 repeating-linear-gradient(96deg,#10100f 0 10px,#bb94595c 11px 12px,#181411 13px 18px);
 box-shadow:0 -11px 20px #0008;
 opacity:.55;border-radius:35px;
}
.ced-menu__close{
 position:sticky;top:0;z-index:12;float:right;margin:0 0 -50px 0;
 display:grid;place-items:center;width:48px;height:48px;
 border:1.5px solid #e0c389;border-radius:50%;
 background:#11100ff2;color:#fff5df;cursor:pointer;
 font:400 29px/1 system-ui,sans-serif;box-shadow:0 2px 12px #0009;
}
.ced-menu__header{
 position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;
 margin:0 auto 13px;padding:0 52px;min-width:0;text-align:center;
}
.ced-menu__eyebrow{
 color:#d5bc8e;font:650 .76rem/1.4 system-ui,sans-serif;
 letter-spacing:.25em;text-transform:uppercase;margin:0 0 5px;
}
.ced-menu__logo{
 display:block;width:clamp(175px,28vw,245px);max-width:100%;
 height:auto;max-height:172px;object-fit:contain;
 margin:0 auto 5px;filter:drop-shadow(0 3px 8px #0008);
}
.ced-menu__title{
 color:#f5e6c8;margin:0;
 font:italic 480 clamp(2.1rem,4.6vw,3.55rem)/1.08 FDMenuBodoni,Georgia,serif;
 letter-spacing:-.025em;text-wrap:balance;
 text-shadow:0 2px 3px #000a,0 0 22px #c89b4c25;
}
.ced-menu__flourish{
 display:block;width:min(300px,66%);height:15px;
 margin:2px auto 7px;opacity:.95;pointer-events:none;
 background:linear-gradient(90deg,transparent 0%,#ae8241 24%,#e3c485 52%,#ae8241 79%,transparent 100%);
 clip-path:polygon(0% 53%,20% 36%,42% 64%,65% 32%,84% 48%,100% 33%,100% 44%,84% 56%,65% 42%,42% 72%,20% 44%,0% 61%);
}
.ced-menu__panels{
 display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
 gap:clamp(10px,1.6vw,19px);align-items:stretch;max-width:960px;margin:0 auto;
}
.ced-menu__napkin{
 position:relative;isolation:isolate;min-width:0;overflow:visible;
 padding:clamp(34px,4vw,51px) clamp(26px,3.6vw,47px) clamp(44px,4.3vw,60px);
 border-radius:15px;filter:drop-shadow(0 9px 12px #0007);
 background-position:center;background-size:100% 100%;background-repeat:no-repeat;
}
.ced-menu__napkin--main{
 color:#f9f0df;background-image:url("/assets/img/fd26-sat-napkin-dark.svg");
 transform:rotate(-.25deg);
}
.ced-menu__napkin--side{
 color:#24190d;background-image:url("/assets/img/fd26-sat-napkin-ivory.svg");
 transform:rotate(.3deg);
}
.ced-menu__napkin::before{
 content:"";position:absolute;inset:clamp(24px,3vw,34px) clamp(16px,2.2vw,23px) clamp(31px,3.3vw,43px);
 border:1.5px dashed #c39755;box-shadow:0 0 0 2px #16100c27,inset 0 0 0 2px #c2964b18;
 border-radius:12px;opacity:.86;pointer-events:none;z-index:-1;
}
.ced-menu__napkin--side::before{border-color:#bb985f;box-shadow:0 0 0 2px #fff4de90,inset 0 0 0 2px #a2823d22}
.ced-menu__napkin::after{
 content:"";position:absolute;bottom:13px;left:12%;right:10%;height:18px;border-radius:0 0 55% 55%;
 background:linear-gradient(180deg,#c69a5c30,#120b046e,#0000);
 border-top:1px dashed #d0a35d9c;pointer-events:none;z-index:-1;
}
.ced-menu__napkin--side::after{background:linear-gradient(180deg,#cbb0836c,#f8e9c4a0,#fff0)}
.ced-menu__label-wrap{position:relative;text-align:center;margin:-9px auto 10px;max-width:100%;display:flex;align-items:center;justify-content:center;gap:8px}
.ced-menu__label-wrap::before,.ced-menu__label-wrap::after{content:"❧";color:#c69b57;font:26px/1 Georgia,serif;text-shadow:0 1px 0 #0007}
.ced-menu__label-wrap::after{transform:scaleX(-1)}
.ced-menu__label{
 display:inline-block;position:relative;max-width:100%;white-space:normal;
 padding:6px clamp(12px,2vw,23px) 7px;margin:0;
 font:italic 550 clamp(1.36rem,2.8vw,1.95rem)/1.15 FDMenuBodoni,Georgia,serif;
 background:linear-gradient(165deg,#423225,#171310 45%,#2f251c);
 border:2px solid #b88d4d;border-radius:15px 7px 15px 7px;
 outline:1px solid #6c502d;outline-offset:2px;
 color:#f5d99f;text-shadow:0 1px 2px #000b;
 box-shadow:inset 0 1px 0 #f5cf8a70,0 4px 10px #0008;
}
.ced-menu__napkin--side .ced-menu__label{color:#f3d28c}
.ced-menu__items{list-style:none;padding:0;margin:9px 0 0}
.ced-menu__items li{
 text-align:center;margin:0;padding:clamp(6px,.76vw,10px) 2px;
 font:500 clamp(1rem,1.87vw,1.3rem)/1.27 FDMenuBodoni,Georgia,serif;
 letter-spacing:-.012em;overflow-wrap:anywhere;
 text-shadow:0 1px 1px #0008;
}
.ced-menu__napkin--side li{text-shadow:none;font-weight:550}
.ced-menu__items li+li{border-top:1px solid #b58b4f66}
.ced-menu__napkin--side li+li{border-top:1px solid #a4885f79}
.ced-menu__items li small{
 display:block;color:#e2bb74;letter-spacing:0;
 font:italic 450 clamp(.83rem,1.25vw,.95rem)/1.35 FDMenuBodoni,Georgia,serif;
 margin-top:3px;
}
.ced-menu__footer{position:relative;margin:10px auto 0;text-align:center;max-width:520px;padding:4px 0 0;color:#d5c39f}
.ced-menu__footer-kicker{
 font:600 .62rem/1.3 system-ui,sans-serif;letter-spacing:.23em;text-transform:uppercase;margin:0 0 3px;color:#d4b581;
}
.ced-menu__footer a{
 display:inline-block;color:#eee0c2;padding:5px 8px;
 font:italic 500 .94rem/1.3 FDMenuBodoni,Georgia,serif;
 text-decoration:underline;text-decoration-color:#ad8547;text-underline-offset:5px;
}
.ced-menu__footer a:hover{color:#fff6e6}
.ced-menu :focus-visible{outline:3px solid #ffedb9;outline-offset:3px}
@media(max-width:790px){
 .ced-menu__napkin{padding:34px 24px 49px}
 .ced-menu__label-wrap{gap:4px}
 .ced-menu__label-wrap::before,.ced-menu__label-wrap::after{font-size:18px}
 .ced-menu__label{font-size:1.3rem}
 .ced-menu__items li{font-size:1.04rem}
}
@media(max-width:660px){
 .sat-tapestry.ced-menu{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}
 .ced-menu__scroll{max-height:100dvh;min-height:100dvh;padding:calc(12px + env(safe-area-inset-top)) 10px calc(16px + env(safe-area-inset-bottom));background-position:left center}
 .ced-menu__close{width:44px;height:44px;margin-bottom:-44px}
 .ced-menu__header{padding:4px 40px 7px}
 .ced-menu__eyebrow{font-size:.63rem}
 .ced-menu__logo{width:min(180px,54vw);max-height:120px;margin-bottom:4px}
 .ced-menu__title{font-size:clamp(1.65rem,7.1vw,2.15rem);line-height:1.13}
 .ced-menu__flourish{width:64%;height:9px;margin:1px auto 5px}
 .ced-menu__panels{grid-template-columns:minmax(0,1fr);max-width:480px;gap:8px}
 .ced-menu__napkin{transform:none;min-height:0;padding:28px 28px 44px}
 .ced-menu__napkin::before{inset:19px 15px 29px}
 .ced-menu__label-wrap{margin:0 auto 6px;gap:7px}
 .ced-menu__label-wrap::before,.ced-menu__label-wrap::after{font-size:22px}
 .ced-menu__label{font-size:clamp(1.4rem,5.5vw,1.75rem);padding:5px 16px}
 .ced-menu__items{margin:4px 0 0}
 .ced-menu__items li{padding:5px 2px;font-size:clamp(1.02rem,4.6vw,1.17rem);line-height:1.29}
 .ced-menu__napkin--side{padding-top:28px;padding-bottom:50px}
 .ced-menu__footer{margin:3px auto 0;padding:5px 0 13px}
 .ced-menu__footer-kicker{font-size:.56rem}
 .ced-menu__footer a{font-size:.9rem}
}
@media(max-width:360px){
 .ced-menu__header{padding-left:28px;padding-right:28px}
 .ced-menu__title{font-size:1.55rem}
 .ced-menu__napkin{padding:26px 23px 40px}
 .ced-menu__label{font-size:1.31rem}
 .ced-menu__items li{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.ced-menu *, .ced-menu *::before,.ced-menu *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.sat-tapestry.ced-menu,.ced-menu__napkin{border:2px solid CanvasText}.ced-menu__label{border:2px solid CanvasText;box-shadow:none}}

/* Visible napkin image layers: explicit assets, not fragile background-only decoration. */
.ced-menu__napkin{overflow:visible;background-image:none}
.ced-menu__napkin-art{
 position:absolute;inset:0;display:block;width:100%;height:100%;
 object-fit:fill;z-index:0;pointer-events:none;user-select:none;
}
.ced-menu__napkin::before,.ced-menu__napkin::after{z-index:2}
.ced-menu__napkin>.ced-menu__label-wrap,.ced-menu__napkin>.ced-menu__items{position:relative;z-index:3}
.ced-menu__scroll{scrollbar-gutter:stable}
@media (min-width:661px) and (max-height:770px){
 .ced-menu__scroll{padding-top:13px;padding-bottom:13px}
 .ced-menu__header{margin-bottom:7px}
 .ced-menu__logo{width:175px;max-height:119px}
 .ced-menu__title{font-size:2.2rem}
 .ced-menu__napkin{padding-top:30px;padding-bottom:42px}
 .ced-menu__items li{padding-block:4px;line-height:1.22}
}
@media(max-width:660px){
 .ced-menu__scroll{scrollbar-gutter:auto}
 .ced-menu__napkin-art{object-position:center center}
}

/* Approved visual fidelity pass: more dimensional quilts, restrained gilding and one-line labels. */
.ced-menu__scroll{
  background-color:#0e0d0c;
  background-image:radial-gradient(ellipse at 52% -2%,rgba(184,139,74,.10),transparent 53%),url("/assets/img/fd26-sat-menu-scene.svg");
  background-size:100% 100%,cover;
  background-position:center,center;
}
.ced-menu__scroll::before{
  z-index:0;
  border:1px solid rgba(206,164,99,.65);
  box-shadow:inset 0 0 0 3px #100e0b,inset 0 0 0 4px rgba(184,145,83,.45),0 0 0 3px rgba(0,0,0,.66);
}
.ced-menu__header{z-index:2}
.ced-menu__header .ced-menu__logo{max-height:150px;width:clamp(165px,25vw,225px)}
.ced-menu__title{
  font-weight:500;
  font-size:clamp(2.12rem,4.65vw,3.5rem);
  text-shadow:0 2px 6px rgba(0,0,0,.65),0 0 20px rgba(195,143,65,.11);
}
.ced-menu__panels{position:relative;z-index:2;grid-template-columns:minmax(0,1.18fr) minmax(0,.99fr);align-items:stretch;gap:clamp(8px,1.25vw,16px)}
.ced-menu__napkin{
  padding:clamp(32px,3.4vw,44px) clamp(24px,2.85vw,37px) clamp(46px,4vw,55px);
  filter:drop-shadow(0 11px 11px rgba(0,0,0,.62));
}
.ced-menu__napkin::before{z-index:1;opacity:.75}
.ced-menu__napkin::after{z-index:1}
.ced-menu__napkin-art{
  position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;
  object-fit:fill;pointer-events:none;user-select:none;
}
.ced-menu__label-wrap,.ced-menu__items{position:relative;z-index:2}
.ced-menu__label-wrap{gap:clamp(2px,.35vw,6px);margin:-6px auto 10px}
.ced-menu__label-wrap::before,.ced-menu__label-wrap::after{font-size:clamp(13px,1.9vw,22px);color:#d2a559}
.ced-menu__label{
  white-space:nowrap;
  font-size:clamp(1.28rem,2.33vw,1.75rem);
  padding:7px clamp(9px,1.5vw,17px) 8px;
  background:linear-gradient(155deg,#493324 0%,#0b0a09 42%,#2d2119 95%);
  border:1.5px solid #b58b4b;
  outline:1px solid #765526;
  outline-offset:2px;
  box-shadow:inset 0 0 0 1px #d1a35a62,inset 0 2px 1px #efcf9580,0 4px 9px #0009;
  text-shadow:0 1px 2px #000,0 0 7px #e2b26121;
}
.ced-menu__items li{
  text-shadow:0 1px 2px rgba(0,0,0,.85);
  font-size:clamp(1.08rem,1.81vw,1.22rem);
  line-height:1.27;
  padding-block:clamp(6px,.7vw,9px);
}
.ced-menu__napkin--side .ced-menu__items li{text-shadow:0 1px 0 #fffbec99}
.ced-menu__items li + li{border-top:1px solid rgba(184,140,73,.38)}
.ced-menu__footer{z-index:2}
.ced-menu__footer-kicker{color:#dbc091}
@media(min-width:661px) and (max-width:880px){
 .ced-menu__panels{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
 .ced-menu__napkin{padding:32px 23px 45px}
 .ced-menu__label{font-size:clamp(1.21rem,2.2vw,1.48rem)}
 .ced-menu__label-wrap::before,.ced-menu__label-wrap::after{font-size:15px}
}
@media(max-width:660px){
 .ced-menu__scroll{background-position: left top, left center;background-size:100% 100%,auto 100%}
 .ced-menu__scroll::before{inset:6px}
 .ced-menu__header{margin-bottom:9px}
 .ced-menu__header .ced-menu__logo{width:min(183px,55vw);max-height:132px}
 .ced-menu__panels{grid-template-columns:minmax(0,1fr);gap:3px;max-width:450px}
 .ced-menu__napkin{padding:30px 26px 45px;transform:none}
 .ced-menu__napkin--side{padding:30px 26px 51px}
 .ced-menu__label-wrap{margin:1px auto 8px}
 .ced-menu__label-wrap::before,.ced-menu__label-wrap::after{display:none}
 .ced-menu__label{font-size:clamp(1.34rem,5.3vw,1.7rem);padding:7px 15px}
 .ced-menu__items li{font-size:clamp(1.04rem,4.5vw,1.15rem);line-height:1.26;padding:5px 2px}
 .ced-menu__items li small{font-size:.81rem}
 .ced-menu__footer{margin-top:2px}
}
@media(max-width:360px){
 .ced-menu__napkin{padding-left:22px;padding-right:22px}
 .ced-menu__label{font-size:1.28rem}
}

/* Narrow and enlarged-text safety: never truncate the actual dish labels. */
.ced-menu__items li{overflow-wrap:break-word;word-break:normal}
@media(max-width:320px){
 .ced-menu__scroll{padding-inline:6px}
 .ced-menu__header{padding-inline:19px}
 .ced-menu__title{font-size:clamp(1.24rem,7vw,1.52rem)}
 .ced-menu__napkin{padding:25px 16px 40px}
 .ced-menu__label{white-space:normal;font-size:clamp(1.07rem,5.8vw,1.3rem);line-height:1.15;padding:6px 9px}
 .ced-menu__items li{font-size:clamp(.95rem,5.5vw,1.08rem)}
 .ced-menu__close{width:44px;height:44px}
}
