/* FD26 Saturday Brunch — faithful textile composition, independent of program UI */
@font-face{font-family:SatBodoni;src:url("/assets/fonts/BodoniModa-latin.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:SatBodoni;src:url("/assets/fonts/BodoniModa-italic-latin.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
.sat-menu-placeholder.sat-tapestry-entry{margin-top:1.25rem;padding:1.3rem 1.4rem;border:1px solid #a68652;border-radius:14px;background:#1d1915;color:#f4e5c9}
.sat-tapestry-entry .sat-tapestry-kicker{margin:0;font:600 .7rem/1.4 system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#e0c18b}
.sat-tapestry-entry h3{font:italic 500 1.5rem/1.25 SatBodoni,Georgia,serif;color:#f7e8d3;margin:.4rem 0}
.sat-tapestry-entry p{color:#dfd3c0;line-height:1.55;margin:0 0 1rem}
.sat-tapestry-entry button{border:1px solid #d8b473;border-radius:8px;min-height:48px;background:linear-gradient(180deg,#e9c88a,#c79e5c);color:#18120b;font:700 .92rem/1.2 system-ui,sans-serif;padding:.8rem 1.05rem;cursor:pointer}
.sat-tapestry-entry button:hover{filter:brightness(1.06)}
.sat-tapestry{box-sizing:border-box;width:min(960px,calc(100vw - 28px));max-width:960px;max-height:min(94dvh,980px);height:auto;margin:auto;padding:0;border:1px solid #b69a68;border-radius:18px;color:#f5e9d5;background:#141210;box-shadow:0 30px 120px #000c;overscroll-behavior:contain}
.sat-tapestry::backdrop{background:rgba(0,0,0,.81);backdrop-filter:blur(5px)}
.sat-tapestry *{box-sizing:border-box}
.sat-tapestry__scroll{position:relative;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;max-height:min(94dvh,980px);padding:clamp(17px,3.1vw,33px) clamp(16px,3.1vw,36px) 24px;background:#13110f url("/assets/img/fd26-sat-menu-scene.svg") center / cover no-repeat}
.sat-tapestry__close{position:sticky;top:0;right:0;z-index:9;display:flex;align-items:center;justify-content:center;margin:0 0 -48px auto;width:48px;height:48px;border:1.3px solid #d5b785;border-radius:50%;background:rgba(8,8,8,.96);color:#fff3df;font:400 30px/1 system-ui,sans-serif;cursor:pointer;box-shadow:0 2px 10px #000a}
.sat-tapestry__brand{text-align:center;display:flex;flex-direction:column;align-items:center;gap:0;padding:10px 55px 15px}
.sat-tapestry__eyebrow{color:#ebd2a4;font:700 .75rem/1.25 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;margin:0 0 4px}
.sat-tapestry__logo{display:block;object-fit:contain;object-position:center;width:clamp(170px,23vw,214px);height:auto;aspect-ratio:1.405 / 1;margin:0 auto 6px;filter:drop-shadow(0 5px 9px #0009);image-rendering:auto}
.sat-tapestry__brand h2{position:relative;isolation:isolate;color:#251c10;display:inline-block;max-width:100%;font:italic 550 clamp(1.85rem,3.8vw,2.9rem)/1.12 SatBodoni,Georgia,serif;text-align:center;margin:4px 0 5px;padding:clamp(12px,2vw,20px) clamp(18px,5vw,62px);text-shadow:0 1px 0 #fff9e9;white-space:normal}
.sat-tapestry__brand h2:before{content:"";z-index:-1;position:absolute;inset:0 -8px;border-radius:10px 4px 10px 5px;background:repeating-linear-gradient(95deg,#ffffff30 0 2px,transparent 2px 6px),linear-gradient(180deg,#faf0da,#deccad 82%,#baa076);border:2px solid #d1b47b;box-shadow:inset 0 0 0 3px #efe0c5,inset 0 0 0 4px #bd9e6c,0 9px 16px #0005;clip-path:polygon(3% 0%,96% 2%,100% 14%,98% 52%,100% 90%,95% 100%,4% 98%,0% 86%,2% 50%,0% 17%)}
.sat-tapestry__description{display:none}
.sat-tapestry__napkins{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:stretch;gap:clamp(10px,1.5vw,20px);max-width:890px;margin:6px auto 0}
.sat-tapestry__napkin{position:relative;min-width:0;isolation:isolate;overflow:visible;background-position:center;background-repeat:no-repeat;background-size:100% 100%;padding:clamp(36px,4vw,48px) clamp(30px,4vw,51px) clamp(53px,5vw,72px);filter:drop-shadow(0 14px 13px #0007)}
.sat-tapestry__napkin--dark{color:#fff3db;background-image:url("/assets/img/fd26-sat-napkin-dark.svg");transform:rotate(-.55deg)}
.sat-tapestry__napkin--ivory{color:#292017;background-image:url("/assets/img/fd26-sat-napkin-ivory.svg");transform:rotate(.65deg)}
.sat-tapestry__napkin h3{font:italic 600 clamp(1.32rem,2.8vw,1.9rem)/1.2 SatBodoni,Georgia,serif;text-align:center;padding:0 0 .7rem;margin:.1rem 0 1rem;color:inherit;border-bottom:1px solid #c39c60}
.sat-tapestry__napkin--ivory h3{border-bottom-color:#a78c66}
.sat-tapestry__napkin ul{list-style:none;margin:0;padding:0}
.sat-tapestry__napkin li{text-align:center;font:500 clamp(1.03rem,1.8vw,1.25rem)/1.36 SatBodoni,Georgia,serif;letter-spacing:.005em;overflow-wrap:anywhere;padding:.42rem .15rem;text-shadow:0 1px 1px #0005}
.sat-tapestry__napkin li + li{border-top:1px solid rgba(191,147,84,.19)}
.sat-tapestry__napkin--ivory li{text-shadow:none}
.sat-tapestry__napkin li small{display:block;margin-top:1px;color:#e1c58f;font:400 .78rem/1.3 system-ui,sans-serif;letter-spacing:0}
.sat-tapestry__footer{text-align:center;max-width:600px;margin:3px auto 0;padding:3px 0 0}
.sat-tapestry__footer a{font:400 .81rem/1.4 system-ui,sans-serif;color:#dbc195;text-decoration:underline;text-decoration-color:#92774e;text-underline-offset:4px}
.sat-tapestry__footer a:hover{color:#fff0d4}
.sat-tapestry :focus-visible,.sat-tapestry-entry :focus-visible{outline:3px solid #fff0b8;outline-offset:4px}
@media (min-width:661px) and (max-width:860px){.sat-tapestry__napkin{padding:40px 25px 60px}.sat-tapestry__napkin li{font-size:1.05rem}.sat-tapestry__logo{width:190px}}
@media (max-width:660px){
.sat-tapestry{inset:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}
.sat-tapestry__scroll{max-height:100dvh;min-height:100dvh;padding:calc(10px + env(safe-area-inset-top)) 10px calc(16px + env(safe-area-inset-bottom));background-position:left center}
.sat-tapestry__close{width:44px;height:44px;min-height:44px;margin:0 2px -44px auto}
.sat-tapestry__brand{padding:7px 44px 10px;gap:0}
.sat-tapestry__eyebrow{font-size:.66rem}
.sat-tapestry__logo{width:min(190px,64vw);height:auto;margin:0 auto 0}
.sat-tapestry__brand h2{font-size:clamp(1.52rem,7vw,2.12rem);line-height:1.12;padding:13px 17px;margin:4px 0 0}
.sat-tapestry__napkins{grid-template-columns:minmax(0,1fr);gap:8px;margin:0 auto;max-width:430px}
.sat-tapestry__napkin{padding:28px 27px 47px;transform:none}
.sat-tapestry__napkin--dark{min-height:0}
.sat-tapestry__napkin--ivory{padding-top:30px;padding-bottom:51px}
.sat-tapestry__napkin h3{font-size:clamp(1.45rem,6vw,1.75rem);margin-bottom:7px;padding-bottom:.45rem}
.sat-tapestry__napkin li{font-size:clamp(1.03rem,4.7vw,1.19rem);line-height:1.26;padding:.26rem .1rem}
.sat-tapestry__napkin li small{font-size:.73rem}
.sat-tapestry__footer{padding:8px 0 14px}
}
@media (max-width:360px){.sat-tapestry__napkin{padding-left:22px;padding-right:22px}.sat-tapestry__brand h2{font-size:1.45rem}}
@media (prefers-reduced-motion:reduce){.sat-tapestry *,.sat-tapestry *:before,.sat-tapestry *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.sat-tapestry,.sat-tapestry__napkin,.sat-tapestry-entry{border:2px solid CanvasText}.sat-tapestry__brand h2{color:CanvasText}}

/* Acceptance fixes: show full menu with less header chrome, preserve interior scroll. */
@media(min-width:661px){
.sat-tapestry__scroll{padding-top:17px;padding-bottom:21px}
.sat-tapestry__brand{padding-top:3px;padding-bottom:7px}
.sat-tapestry__brand h2{padding-block:11px;margin-block:2px}
.sat-tapestry__logo{width:clamp(155px,18vw,186px)}
.sat-tapestry__napkin{padding-top:31px;padding-bottom:42px}
.sat-tapestry__napkin h3{margin-bottom:8px;padding-bottom:7px}
.sat-tapestry__napkin li{padding-block:.29rem;line-height:1.28}
.sat-tapestry__footer{margin-top:0;padding-top:0}
}
@media(max-height:730px) and (min-width:661px){
.sat-tapestry__brand h2{font-size:2rem}
.sat-tapestry__logo{width:145px}
.sat-tapestry__napkin li{font-size:1rem;padding-block:.21rem}
}
@media(max-width:660px){
.sat-tapestry__scroll{scrollbar-gutter:stable}
.sat-tapestry__logo{width:min(177px,60vw)}
.sat-tapestry__brand{padding-bottom:7px}
.sat-tapestry__brand h2{padding-block:10px}
.sat-tapestry__footer{font-size:.8rem}
}

/* Finishing details: edge folds and stitched hem give the two panels fabric volume. */
.sat-tapestry__napkin:before{content:"";position:absolute;z-index:-1;left:7%;right:6%;top:24px;height:15px;border-radius:50%;background:linear-gradient(180deg,#fff8e31c,#0005,transparent);filter:blur(3px);pointer-events:none}
.sat-tapestry__napkin:after{content:"";position:absolute;z-index:-1;left:7%;right:6%;bottom:20px;height:23px;border-radius:0 0 45% 45%;background:linear-gradient(180deg,#0007,#d6af6652 30%,#080808a8 65%,#0006);border-top:1px dashed #bd9256;box-shadow:0 6px 10px #0007;pointer-events:none}
.sat-tapestry__napkin--ivory:after{background:linear-gradient(180deg,#8c6e3559,#fcf6e6 25%,#b19c7c 76%,#eadabb);border-top-color:#a88d62}
