/* Saffron Table — shared stylesheet */
:root{
  --bg:#faf6ee; --bg-soft:#f3ecdd; --surface:#fffdf8;
  --ink:#221a10; --ink-soft:#57493a; --muted:#8a7a63;
  --line:#e6dcc6;
  --saffron:#c2700a; --saffron-deep:#9d5806; --gold:#e9a13b;
  --wine:#6d1f2c; --wine-deep:#521623;
  --dark:#171008; --dark-2:#221910; --on-dark:#f3ecdd; --on-dark-soft:#c9bda6;
  --shadow:0 26px 50px -26px rgba(34,20,4,.35);
  --shadow-sm:0 12px 30px -16px rgba(34,20,4,.28);
  --radius:18px; --header-h:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;font-size:1rem;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,.serif{font-family:"Playfair Display",Georgia,serif;line-height:1.12;margin:0;font-weight:600}
p{margin:0}
::selection{background:var(--gold);color:#2a1802}
.wrap{width:min(1180px,100% - 2.5rem);margin-inline:auto}
@media(min-width:720px){.wrap{width:min(1180px,100% - 4rem)}}

/* NO top strip on this copy: the dark hours/reservations strip that
   used to sit above the header has been removed from the markup of
   all six pages (the owner asked for the bar at the top to go — the
   same treatment the standalone Saffron site already had). The
   opening hours and phone number still live in the footer and on the
   Contact page, so no information is lost. Do not re-add a strip
   above the header here. */

/* Header — in normal flow, scrolls away with the page, and locked
   with !important so no neighbouring stylesheet can re-pin it.
   The header.site selector is not unique to this site: Lumière's
   stylesheet — bundled together with this one when the portfolio is
   viewed in the chat preview — sets header.site{position:sticky;
   top:0} for ITS header (same class name), and the portfolio shell's
   own sheet sets body header{position:fixed}. Two earlier fixes that
   relied on plain rules and on specificity still left the bar pinned
   on the owner's phone, so position/top are now declared !important:
   that beats both foreign rules in ANY merged cascade, in any sheet
   order, at any specificity (neither foreign sheet uses !important
   for position). Each page's <header> also carries an inline
   style="position:relative;top:auto" as a second lock. Do not
   downgrade these back to plain declarations. */
header.site{position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;height:auto!important;z-index:60;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.header-in{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;min-height:48px}
.logo-mark{width:44px;height:44px;border-radius:50%;background:var(--wine);color:var(--gold);display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:1.25rem;font-weight:700;flex:none;border:2px solid var(--gold)}
.logo-name{font-family:"Playfair Display",serif;font-size:1.45rem;font-weight:700;letter-spacing:.01em;line-height:1}
.logo-name small{display:block;font-family:"Manrope",sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--saffron);margin-top:.2rem}
nav.main{display:none}
nav.main a{text-decoration:none;font-weight:700;font-size:.93rem;color:var(--ink-soft);padding:.6rem .8rem;border-radius:10px;min-height:44px;display:inline-flex;align-items:center}
nav.main a:hover{color:var(--ink);background:var(--bg-soft)}
nav.main a[aria-current="page"]{color:var(--saffron-deep);box-shadow:inset 0 -2px 0 var(--gold)}
.header-cta{display:none}
.burger{width:48px;height:48px;border:1px solid var(--line);border-radius:13px;background:var(--surface);cursor:pointer;display:grid;place-items:center;flex:none}
.burger span{display:block;width:20px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s ease,opacity .2s ease}
.burger span+span{margin-top:5px}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);padding:.6rem 1.25rem 1.2rem}
.mobile-menu.open{display:block;animation:drop .25s ease both}
@keyframes drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.mobile-menu a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:.5rem .25rem;text-decoration:none;font-family:"Playfair Display",serif;font-weight:600;font-size:1.2rem;border-bottom:1px solid var(--line)}
.mobile-menu a .arr{color:var(--saffron)}
.mobile-menu a:last-of-type{border-bottom:none}
@media(min-width:920px){nav.main{display:flex;gap:.15rem}.header-cta{display:inline-flex}.burger,.mobile-menu{display:none}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:52px;padding:.8rem 1.7rem;border-radius:999px;font-weight:800;font-size:1rem;text-decoration:none;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:transform .18s ease,background .2s ease,border-color .2s ease,color .2s ease}
.btn:active{transform:scale(.98)}
.btn-gold{background:var(--gold);color:#2a1802;box-shadow:0 12px 24px -12px rgba(201,112,10,.6)}
.btn-gold:hover{background:var(--saffron);color:#fff}
.btn-wine{background:var(--wine);color:#fdf6e9}
.btn-wine:hover{background:var(--wine-deep)}
.btn-outline{background:transparent;color:var(--ink);border-color:#cbbd9d}
.btn-outline:hover{border-color:var(--ink)}
.btn-outline-light{background:transparent;color:var(--on-dark);border-color:rgba(243,236,221,.4)}
.btn-outline-light:hover{border-color:var(--gold);color:var(--gold)}
.btn-sm{min-height:46px;padding:.6rem 1.25rem;font-size:.92rem}

/* Page hero (inner pages) */
.page-hero{position:relative;padding:clamp(3.2rem,8vw,5.5rem) 0;color:var(--on-dark);overflow:hidden;isolation:isolate}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(16,10,3,.88) 20%,rgba(16,10,3,.55) 60%,rgba(16,10,3,.35))}
.page-hero .kicker{color:var(--gold)}
.page-hero h1{font-size:clamp(2.4rem,6.5vw,3.8rem);font-weight:700;max-width:16em}
.page-hero p{margin-top:1rem;color:var(--on-dark-soft);font-size:1.08rem;max-width:34rem}
.crumbs{font-size:.85rem;font-weight:700;color:var(--on-dark-soft);margin-bottom:1.1rem}
.crumbs a{color:var(--gold);text-decoration:none}

/* Sections */
section{padding:clamp(3.5rem,8vw,6rem) 0}
.kicker{color:var(--saffron);font-weight:800;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;display:block;margin-bottom:.8rem}
.sec-head{max-width:44rem;margin-bottom:clamp(2rem,5vw,3.2rem)}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head h2{font-size:clamp(1.95rem,5vw,2.9rem);font-weight:700}
.sec-head p{margin-top:1rem;color:var(--ink-soft);font-size:1.05rem}
.rule{width:64px;height:3px;border-radius:3px;background:var(--gold);margin-top:1.2rem}
.sec-head.center .rule{margin-inline:auto}

/* Reveal */
.reveal.in{animation:rise .7s ease both}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* Home hero */
.home-hero{position:relative;color:var(--on-dark);overflow:hidden;isolation:isolate;padding:0}
.home-hero .bgwrap{position:absolute;inset:0;z-index:-2;overflow:hidden}
.home-hero .bgwrap img{width:100%;height:100%;object-fit:cover;animation:slowzoom 22s ease-in-out infinite alternate}
@keyframes slowzoom{from{transform:scale(1)}to{transform:scale(1.09)}}
.home-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(96deg,rgba(14,8,2,.9) 8%,rgba(14,8,2,.62) 55%,rgba(14,8,2,.28))}
.home-hero .wrap{padding:clamp(4.5rem,11vw,8rem) 0 clamp(4rem,9vw,6.5rem)}
.home-hero h1{font-size:clamp(2.7rem,8vw,4.9rem);font-weight:700;max-width:12em}
.home-hero h1 em{color:var(--gold);font-style:italic}
.home-hero .lede{margin-top:1.3rem;font-size:clamp(1.05rem,2.6vw,1.25rem);color:var(--on-dark-soft);max-width:33rem}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2.1rem}
.hero-meta{display:flex;flex-wrap:wrap;gap:.55rem 1.8rem;margin-top:2.4rem;font-weight:700;font-size:.92rem;color:var(--on-dark)}
.hero-meta span{display:inline-flex;align-items:center;gap:.5rem}
.hero-meta svg{color:var(--gold);flex:none}
.hero-badge{display:inline-flex;align-items:center;gap:.55rem;background:rgba(243,236,221,.1);border:1px solid rgba(243,236,221,.28);color:var(--on-dark);font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1rem;border-radius:999px;margin-bottom:1.5rem}
.hero-badge i{width:8px;height:8px;border-radius:50%;background:var(--gold);animation:pulse 2.2s infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(233,161,59,.45)}55%{box-shadow:0 0 0 7px rgba(233,161,59,0)}}

/* Strip */
.strip{background:var(--wine);color:#f7ead2;overflow:hidden;padding:1rem 0}
.strip-track{display:flex;gap:3rem;width:max-content;animation:marquee 32s linear infinite}
.strip-track span{font-family:"Playfair Display",serif;font-style:italic;font-size:1.05rem;white-space:nowrap;display:flex;align-items:center;gap:3rem}
.strip-track b{color:var(--gold);font-style:normal;font-weight:400}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Cards / dishes */
.dish-grid{display:grid;gap:1.5rem}
@media(min-width:820px){.dish-grid{grid-template-columns:repeat(3,1fr)}}
.dish{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}
.dish:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.dish img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .6s ease}
.dish:hover img{transform:scale(1.05)}
.dish .imgwrap{overflow:hidden}
.dish-body{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}
.dish-top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
.dish h3{font-size:1.35rem}
.price{font-family:"Playfair Display",serif;font-weight:700;color:var(--saffron-deep);font-size:1.2rem;white-space:nowrap}
.dish p{margin-top:.55rem;color:var(--ink-soft);font-size:.96rem}
.tag{align-self:flex-start;margin-top:1rem;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--wine);background:#f7e8e4;border:1px solid #eccfc8;padding:.3rem .7rem;border-radius:999px}

/* Split */
.split{display:grid;gap:2.5rem;align-items:center}
@media(min-width:920px){.split{grid-template-columns:1fr 1fr;gap:4rem}}
.split img.photo{border-radius:22px;box-shadow:var(--shadow);width:100%;aspect-ratio:4/3;object-fit:cover}
.frame{position:relative}
.frame::after{content:"";position:absolute;inset:14px -14px -14px 14px;border:2px solid var(--gold);border-radius:22px;z-index:-1}
.split h2{font-size:clamp(1.95rem,5vw,2.8rem)}
.split .body{margin-top:1.1rem;color:var(--ink-soft);font-size:1.04rem}
.split .body+.body{margin-top:.8rem}
.split .body strong{color:var(--ink)}
.stats{display:flex;flex-wrap:wrap;gap:2rem;margin-top:1.8rem}
.stat b{display:block;font-family:"Playfair Display",serif;font-size:2rem;color:var(--saffron-deep);line-height:1}
.stat span{font-size:.85rem;font-weight:700;color:var(--muted)}

/* Dark band */
.band{background:var(--dark);color:var(--on-dark)}
.band .sec-head h2{color:var(--on-dark)}
.band .sec-head p{color:var(--on-dark-soft)}
.band .kicker{color:var(--gold)}

/* Testimonials */
.quotes{display:grid;gap:1.4rem}
@media(min-width:820px){.quotes{grid-template-columns:repeat(3,1fr)}}
.quote{background:var(--dark-2);border:1px solid #3a2c1a;border-radius:var(--radius);padding:1.7rem 1.6rem}
.quote .stars{color:var(--gold);letter-spacing:.2em;font-size:.95rem}
.quote p{margin-top:.9rem;font-family:"Playfair Display",serif;font-style:italic;font-size:1.12rem;line-height:1.5;color:var(--on-dark)}
.quote footer{margin-top:1.1rem;font-weight:700;font-size:.9rem;color:var(--on-dark-soft)}
.quote footer b{color:var(--on-dark)}

/* Info cards */
.info-grid{display:grid;gap:1.4rem}
@media(min-width:820px){.info-grid{grid-template-columns:repeat(3,1fr)}}
.info{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.7rem 1.6rem}
.info .ic{width:50px;height:50px;border-radius:14px;background:#f8ecd4;color:var(--saffron-deep);display:grid;place-items:center;margin-bottom:1rem}
.info h3{font-size:1.2rem;margin-bottom:.5rem}
.info p,.info li{color:var(--ink-soft);font-size:.96rem}
.info ul{margin:0;padding:0;list-style:none;display:grid;gap:.35rem}
.info a{color:var(--saffron-deep);font-weight:700;text-decoration:none}
.info a:hover{text-decoration:underline}

/* Menu page */
.menu-tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2.4rem}
.menu-tabs button{min-height:48px;padding:.65rem 1.4rem;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);font:inherit;font-weight:800;font-size:.95rem;color:var(--ink-soft);cursor:pointer;transition:all .2s ease}
.menu-tabs button:hover{border-color:var(--saffron)}
.menu-tabs button.active{background:var(--wine);border-color:var(--wine);color:#fdf6e9}
.menu-panel{display:none}
.menu-panel.active{display:block;animation:rise .45s ease both}
.menu-cols{display:grid;gap:0 3.5rem}
@media(min-width:860px){.menu-cols{grid-template-columns:1fr 1fr}}
.menu-item{padding:1.15rem 0;border-bottom:1px dashed var(--line)}
.menu-item .row{display:flex;align-items:baseline;gap:.8rem}
.menu-item h3{font-size:1.22rem}
.menu-item .dots{flex:1;border-bottom:2px dotted #cdbd97;transform:translateY(-4px)}
.menu-item .price{font-size:1.15rem}
.menu-item p{margin-top:.35rem;color:var(--ink-soft);font-size:.94rem;max-width:30rem}
.menu-item .flags{margin-top:.45rem;display:flex;gap:.4rem;flex-wrap:wrap}
.flag{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .6rem;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);color:var(--ink-soft)}
.flag.hot{background:#f7e8e4;border-color:#eccfc8;color:var(--wine)}
.menu-note{margin-top:2.4rem;background:#f8ecd4;border:1px solid #ecd9ac;border-radius:var(--radius);padding:1.4rem 1.6rem;color:#5c4512;font-size:.97rem}
.menu-note b{color:#3d2c05}

/* Timeline (story) */
.timeline{display:grid;gap:0;margin-top:1rem}
.tl{display:grid;grid-template-columns:86px 1fr;gap:1.2rem;padding:1.4rem 0;border-bottom:1px solid var(--line)}
.tl:last-child{border-bottom:none}
.tl .yr{font-family:"Playfair Display",serif;font-size:1.7rem;font-weight:700;color:var(--saffron-deep);line-height:1}
.tl h3{font-size:1.2rem;margin-bottom:.35rem}
.tl p{color:var(--ink-soft);font-size:.97rem;max-width:36rem}

/* Gallery */
.gal-filters{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}
.gal-filters button{min-height:46px;padding:.55rem 1.3rem;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);font:inherit;font-weight:800;font-size:.92rem;color:var(--ink-soft);cursor:pointer}
.gal-filters button.active{background:var(--dark);border-color:var(--dark);color:var(--on-dark)}
.gal-grid{display:grid;gap:1.1rem;grid-template-columns:1fr 1fr}
@media(min-width:820px){.gal-grid{grid-template-columns:repeat(3,1fr)}}
.gal-item{position:relative;border-radius:16px;overflow:hidden;cursor:pointer;border:none;padding:0;background:none;text-align:left}
.gal-item img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
.gal-item:hover img{transform:scale(1.06)}
.gal-item figcaption{position:absolute;inset:auto 0 0 0;padding:2rem 1.1rem .9rem;background:linear-gradient(transparent,rgba(14,8,2,.82));color:#fdf6e9;font-weight:700;font-size:.95rem}
.gal-item.hide{display:none}
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(12,7,2,.93);display:none;place-items:center;padding:1.2rem}
.lightbox.open{display:grid}
.lightbox figure{margin:0;max-width:min(880px,100%)}
.lightbox img{border-radius:14px;max-height:76vh;width:100%;object-fit:contain;background:#000}
.lightbox figcaption{color:var(--on-dark);text-align:center;margin-top:1rem;font-family:"Playfair Display",serif;font-style:italic;font-size:1.1rem}
.lb-close{position:absolute;top:1rem;right:1rem;width:48px;height:48px;border-radius:50%;border:1px solid rgba(243,236,221,.4);background:transparent;color:var(--on-dark);font-size:1.3rem;cursor:pointer}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(243,236,221,.4);background:transparent;color:var(--on-dark);font-size:1.4rem;cursor:pointer}
.lb-prev{left:1rem}.lb-next{right:1rem}

/* Forms */
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:clamp(1.4rem,4vw,2.4rem);box-shadow:var(--shadow-sm)}
.field{margin-bottom:1.15rem}
.field label{display:block;font-weight:700;font-size:.9rem;margin-bottom:.45rem}
.field label span{color:var(--muted);font-weight:600}
.field input,.field select,.field textarea{width:100%;min-height:52px;padding:.8rem 1rem;border-radius:13px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:1rem;appearance:none}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 4px #f8ecd4}
.field-row{display:grid;gap:1.15rem}
@media(min-width:560px){.field-row{grid-template-columns:1fr 1fr}.field-row .field{margin-bottom:0}.field-row{margin-bottom:1.15rem}}
.field .err{display:none;color:#b3261e;font-size:.82rem;font-weight:700;margin-top:.35rem}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#b3261e}
.field.invalid .err{display:block}
.form-note{text-align:center;color:var(--muted);font-size:.86rem;margin-top:.9rem}
.done-panel{display:none;margin-top:1.3rem;border:1.5px solid var(--saffron);background:#fdf3df;border-radius:16px;padding:1.3rem 1.4rem}
.done-panel.show{display:block}
.done-panel h3{font-size:1.25rem;margin-bottom:.4rem}
.done-panel p{font-size:.95rem;color:var(--ink-soft)}
.done-panel dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1.2rem;margin:1rem 0;font-size:.95rem}
.done-panel dt{font-weight:800}
.done-panel dd{margin:0;color:var(--ink-soft)}
.done-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}

/* FAQ */
.faq{border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:.9rem;overflow:hidden}
.faq button.q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:none;border:none;cursor:pointer;font:inherit;font-weight:800;font-size:1.02rem;text-align:left;padding:1.15rem 1.3rem;min-height:56px;color:var(--ink)}
.faq .a{display:none;padding:0 1.3rem 1.2rem;color:var(--ink-soft);font-size:.97rem}
.faq.open .a{display:block}
.faq .chev{color:var(--saffron);transition:transform .25s ease;flex:none}
.faq.open .chev{transform:rotate(45deg)}

/* CTA band */
.cta-band{position:relative;color:var(--on-dark);overflow:hidden;isolation:isolate;border-radius:26px;padding:clamp(2.4rem,6vw,4rem);text-align:center}
.cta-band img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.cta-band::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(16,9,2,.78)}
.cta-band h2{font-size:clamp(1.9rem,5vw,2.8rem)}
.cta-band p{margin:1rem auto 0;color:var(--on-dark-soft);max-width:32rem}
.cta-band .hero-ctas{justify-content:center}

/* Footer */
footer.site{background:var(--dark);color:var(--on-dark-soft);padding:3.4rem 0 2.2rem}
.foot-grid{display:grid;gap:2.2rem}
@media(min-width:860px){.foot-grid{grid-template-columns:1.3fr 1fr 1fr 1.1fr}}
footer.site h3{color:var(--on-dark);font-size:1.15rem;margin-bottom:.9rem}
footer.site a{color:var(--on-dark-soft);text-decoration:none}
footer.site a:hover{color:var(--gold)}
.foot-links{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;font-size:.95rem}
.foot-links a{display:inline-flex;min-height:32px;align-items:center}
footer.site p{font-size:.95rem}
.foot-bottom{border-top:1px solid #3a2c1a;margin-top:2.6rem;padding-top:1.4rem;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;font-size:.86rem}
.toast{position:fixed;left:50%;bottom:calc(1.2rem + env(safe-area-inset-bottom));transform:translate(-50%,140%);z-index:100;background:var(--dark);color:var(--on-dark);padding:.95rem 1.3rem;border-radius:14px;box-shadow:var(--shadow);font-weight:700;font-size:.95rem;max-width:min(92vw,30rem);text-align:center;transition:transform .35s cubic-bezier(.2,.9,.3,1.2)}
.toast.show{transform:translate(-50%,0)}
.toast b{color:var(--gold)}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal.in,.menu-panel.active{animation:none}
  .strip-track,.home-hero .bgwrap img,.hero-badge i{animation:none}
  *{transition-duration:.01ms!important}
}
