:root{--o:#FF7A2E;--o2:#FF9B45;--r:#E11D2E;--r2:#C20F26;--gold:#FFD65B;--cream:#FFF6EF;--ink:#26140d;--dark:#190606}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Barlow',system-ui,sans-serif;color:var(--ink);background:var(--cream);overflow-x:hidden}
h1,h2,h3,.disp{font-family:'Anton',sans-serif;font-weight:400;letter-spacing:.5px;text-transform:uppercase;line-height:.92}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'Barlow Condensed';font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:17px;padding:13px 26px;border-radius:999px;cursor:pointer;transition:transform .15s,box-shadow .15s,background .2s;border:2px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:var(--gold);color:#9c0c1f;box-shadow:0 10px 24px rgba(0,0,0,.22)}
.btn-gold:hover{box-shadow:0 14px 30px rgba(0,0,0,.3)}
.btn-out{background:transparent;border-color:rgba(255,255,255,.6);color:#fff}
.btn-out:hover{background:rgba(255,255,255,.12)}
.btn-red{background:linear-gradient(120deg,var(--o),var(--r));color:#fff;box-shadow:0 10px 24px rgba(193,15,38,.35)}
.eyebrow{font-family:'Barlow Condensed';font-weight:800;letter-spacing:.22em;text-transform:uppercase;font-size:15px}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,box-shadow .3s,padding .3s;padding:16px 0}
nav.solid{background:rgba(20,5,5,.92);backdrop-filter:blur(8px);box-shadow:0 6px 20px rgba(0,0,0,.25);padding:9px 0}
nav .wrap{display:flex;align-items:center;justify-content:space-between}
nav .logo{height:42px}nav .logo img{height:100%}
nav .links{display:flex;align-items:center;gap:30px}
nav .links a{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:16px;color:#fff;opacity:.92}
nav .links a:hover{color:var(--gold)}
nav .navbtn{font-size:15px;padding:10px 22px}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px}
.burger span{width:26px;height:3px;background:#fff;border-radius:3px}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;color:#fff;overflow:hidden;
  background:radial-gradient(120% 90% at 80% 16%, rgba(255,150,70,.5), rgba(255,150,70,0) 46%),
             radial-gradient(140% 120% at 10% 100%, rgba(120,5,25,.7), rgba(120,5,25,0) 55%),
             linear-gradient(150deg,#2a0a08 0%, #7a1414 48%, #C20F26 100%)}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(100% 70% at 50% 50%,rgba(0,0,0,0) 55%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:1}
.hero .wrap{position:relative;z-index:3;max-width:1320px;display:grid;grid-template-columns:1fr 1.04fr;gap:24px;align-items:center;padding-top:96px;padding-bottom:54px}
.hero .eyebrow{color:var(--gold)}
.hero h1{font-size:clamp(54px,8vw,108px);margin:14px 0 0;text-shadow:0 6px 0 rgba(120,0,12,.25),0 18px 40px rgba(0,0,0,.35)}
.hero h1 .fire{color:var(--gold)}
.hero p.sub{font-size:clamp(17px,2vw,21px);font-weight:500;max-width:520px;margin:20px 0 30px;color:rgba(255,255,255,.92);line-height:1.45}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
/* hero product stage: everything sits on a ground line, soft shadows, no clipping */
.stagewrap{position:relative;height:540px}
.stage{position:absolute;inset:0}
.stage .ground{position:absolute;left:2%;right:2%;bottom:30px;height:40px;border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.42), rgba(0,0,0,0) 73%);z-index:0;filter:blur(3px)}
.stage .glow{position:absolute;width:520px;height:520px;left:49%;top:47%;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,rgba(255,190,110,.5),rgba(255,190,110,0) 67%);z-index:0}
.stage img{position:absolute;filter:drop-shadow(0 20px 18px rgba(50,0,0,.5))}
.stage .i-cup{height:440px;left:51%;bottom:9%;z-index:3}
.stage .i-shake{height:440px;left:16%;bottom:9%;z-index:2}
.scrollhint{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);z-index:3;color:rgba(255,255,255,.65);font-family:'Barlow Condensed';font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:12px;animation:bob 1.8s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(6px)}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}

/* STATS */
.stats{background:#190606;color:#fff}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:26px 22px}
.stat{text-align:center;padding:8px}
.stat b{display:block;font-family:'Anton';font-size:clamp(30px,4vw,46px);color:var(--gold);line-height:1}
.stat span{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:13.5px;color:rgba(255,255,255,.82)}

/* SECTIONS */
section.block{padding:78px 0}
.sec-head{text-align:center;margin-bottom:42px}
.sec-head .eyebrow{color:var(--r)}
.sec-head h2{font-size:clamp(38px,5.5vw,68px);color:var(--ink);margin-top:8px}
.sec-head p{max-width:600px;margin:14px auto 0;font-size:18px;color:#6b4a3b;font-weight:500}

/* MENU */
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mcard{position:relative;border-radius:22px;overflow:hidden;padding:16px 20px 20px;color:#fff;min-height:328px;display:flex;flex-direction:column;
  background:linear-gradient(160deg,#FF8A3A,#E11D2E 95%);box-shadow:0 16px 34px rgba(193,15,38,.18);transition:transform .2s,box-shadow .2s}
.mcard:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(193,15,38,.3)}
.mcard::before{content:"";position:absolute;inset:0;background:radial-gradient(95% 55% at 50% 6%,rgba(255,205,125,.26),transparent 58%);z-index:0}
.mcard .mph{position:relative;z-index:1;height:164px;width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 14px rgba(70,0,0,.5));transition:transform .25s}
.mcard:hover .mph{transform:scale(1.06) rotate(-2deg)}
.mcard .new{position:absolute;top:14px;left:16px;z-index:3;background:var(--gold);color:#9c0c1f;font-family:'Barlow Condensed';font-weight:900;font-size:12px;letter-spacing:.1em;padding:4px 11px;border-radius:8px}
.mcard h3{position:relative;z-index:2;font-size:27px;line-height:.9;margin-top:12px}
.mcard .blurb{position:relative;z-index:2;font-family:'Barlow Condensed';font-weight:600;font-size:15px;color:rgba(255,255,255,.92);margin:7px 0 12px;text-transform:uppercase;letter-spacing:.02em}
.mcard .row{position:relative;z-index:2;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}
.mcard .price{font-family:'Barlow Condensed';font-weight:900;font-size:21px;color:var(--gold)}
.mcard .price small{font-weight:700;font-size:13px;color:rgba(255,255,255,.85)}
.mcard .ord{font-family:'Barlow Condensed';font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:14px;background:rgba(0,0,0,.22);border:1.5px solid rgba(255,255,255,.5);padding:8px 14px;border-radius:999px}
.menu-foot{text-align:center;margin-top:36px}

/* WHY */
.why{background:radial-gradient(80% 120% at 50% 0%,rgba(255,190,110,.4),transparent 55%),linear-gradient(135deg,var(--o),var(--r));color:#fff}
.why .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.why .item{background:rgba(40,0,6,.16);border:1px solid rgba(255,255,255,.2);border-radius:18px;padding:26px 20px;text-align:center;transition:transform .2s,background .2s}
.why .item:hover{transform:translateY(-5px);background:rgba(40,0,6,.26)}
.why .item .ic{font-size:34px;margin-bottom:8px}
.why .item h3{font-family:'Barlow Condensed';font-weight:900;font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.why .item p{font-size:15px;margin-top:6px;color:rgba(255,255,255,.9);font-weight:500}

/* REWARDS */
.rewards{background:#190606;color:#fff;text-align:center}
.rewards h2{font-size:clamp(34px,5vw,60px);color:#fff}
.rewards p{max-width:560px;margin:14px auto 26px;font-size:18px;color:rgba(255,255,255,.85);font-weight:500}
.rewards .note{margin-top:16px;font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--gold)}

/* VISIT */
.visit .grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:stretch}
.visit .info h2{font-size:clamp(34px,5vw,60px);margin-bottom:18px}
.vrow{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #f0d8c9}
.vrow .vic{font-size:24px}
.vrow .vt b{display:block;font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:16px;color:var(--r)}
.vrow .vt span{font-size:16.5px;color:#4d3327;font-weight:500;line-height:1.4}
.hours-list{display:flex;flex-direction:column;gap:3px}
.hours-list .h{display:flex;justify-content:space-between;max-width:280px;font-size:16px}
.hours-list .h b{color:var(--ink)}
.map{border-radius:22px;overflow:hidden;min-height:380px;box-shadow:0 16px 34px rgba(0,0,0,.12);border:1px solid #eedccf}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
.visit .social{margin-top:16px}
.visit .social a{display:inline-block;font-family:'Barlow Condensed';font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--r);margin-right:16px}

/* FOOTER */
footer{background:#120404;color:rgba(255,255,255,.75);padding:46px 0 30px;text-align:center}
footer img{height:46px;margin-bottom:14px}
footer .fl{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin:14px 0}
footer .fl a{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:15px;color:rgba(255,255,255,.85)}
footer .cr{font-size:13px;color:rgba(255,255,255,.45);margin-top:14px}

/* SCROLL REVEAL + hero entrance */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
.hero .copy>*{opacity:0;transform:translateY(24px);animation:rise .8s cubic-bezier(.2,.8,.2,1) forwards}
.hero .copy .eyebrow{animation-delay:.1s}.hero h1{animation-delay:.22s}.hero p.sub{animation-delay:.38s}.hero .cta{animation-delay:.52s}
.stage img,.stage .glow{opacity:0;animation:popin .9s cubic-bezier(.2,.9,.3,1) forwards}
.stage .i-cup{animation-delay:.35s}.stage .i-shake{animation-delay:.5s}.stage .i-donut{animation-delay:.62s}.stage .i-bowl{animation-delay:.72s}.stage .glow{animation-delay:.3s}
.floaty{animation:floaty 5s ease-in-out infinite}
@keyframes rise{to{opacity:1;transform:none}}
@keyframes popin{0%{opacity:0;transform:translateY(34px) scale(.94)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.hero .copy>*{opacity:1;transform:none}.stage img,.stage .glow{opacity:1}}

@media(max-width:880px){
  nav .links{position:fixed;inset:0 0 0 auto;width:74%;max-width:320px;background:#190606;flex-direction:column;align-items:flex-start;gap:6px;padding:90px 28px;transform:translateX(105%);transition:transform .3s;box-shadow:-10px 0 40px rgba(0,0,0,.4)}
  nav .links.open{transform:translateX(0)}
  nav .links a{font-size:21px;padding:10px 0}
  .burger{display:flex;z-index:60}
  .hero .wrap{grid-template-columns:1fr;text-align:center;padding-top:104px}
  .hero .cta{justify-content:center}.hero p.sub{margin-left:auto;margin-right:auto}
  .stagewrap{height:360px;order:-1;margin-bottom:4px}
  .stage .i-cup{height:264px}.stage .i-shake{height:264px}
  .stage .glow{width:300px;height:300px}
  .stats .wrap{grid-template-columns:repeat(2,1fr);gap:16px}
  .menu-grid{grid-template-columns:1fr 1fr;gap:14px}
  .why .grid{grid-template-columns:1fr 1fr}
  .visit .grid{grid-template-columns:1fr}
}
@media(max-width:560px){.menu-grid{grid-template-columns:1fr}.why .grid{grid-template-columns:1fr}section.block{padding:56px 0}.mcard{min-height:250px}}

/* hero donut rain (scroll-revealed, behind content) */
.donut-rain{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.donut-rain img{position:absolute;top:0;opacity:0;will-change:transform,opacity;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
@media(prefers-reduced-motion:reduce){.donut-rain{display:none}}

/* ============ inner pages ============ */
.pagehead{position:relative;overflow:hidden;color:#fff;text-align:center;padding:138px 22px 56px;
  background:radial-gradient(110% 90% at 50% 0%,rgba(255,150,70,.45),rgba(255,150,70,0) 50%),linear-gradient(160deg,#2a0a08,#7a1414 55%,#C20F26)}
.pagehead .eyebrow{color:var(--gold)}
.pagehead h1{font-size:clamp(44px,7vw,84px);margin-top:8px;text-shadow:0 6px 0 rgba(120,0,12,.22),0 16px 30px rgba(0,0,0,.3)}
.pagehead p{max-width:600px;margin:14px auto 0;font-size:18px;color:rgba(255,255,255,.9);font-weight:500}

/* menu page */
.menucat{margin-bottom:30px}
.menucat .ch{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;border-bottom:3px solid var(--o);padding-bottom:8px;margin-bottom:6px}
.menucat .ch h2{font-size:clamp(28px,4vw,44px);color:var(--ink)}
.menucat .ch .pr{font-family:'Barlow Condensed';font-weight:900;font-size:18px;color:var(--r);text-transform:uppercase;letter-spacing:.02em;text-align:right}
.menucat .macro{font-family:'Barlow Condensed';font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#a05a3c;margin-bottom:12px}
.flavs{columns:3;column-gap:26px}
@media(max-width:760px){.flavs{columns:2}}@media(max-width:480px){.flavs{columns:1}}
.flav{break-inside:avoid;padding:7px 0;border-bottom:1px solid #f0d8c9}
.flav .fn{font-family:'Barlow Condensed';font-weight:800;font-size:17px;text-transform:uppercase;color:var(--ink)}
.flav .fd{font-size:14px;color:#7c5848}
.modline{margin-top:12px;background:var(--cream);border:1px solid #ffd9c4;border-radius:14px;padding:12px 16px;font-size:15px;color:#5b2a16;font-weight:500}
.modline b{color:var(--r)}
.cat-order{margin-top:14px}

/* specials page */
.deal-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
@media(max-width:900px){.deal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.deal-grid{grid-template-columns:1fr}}
.deal{position:relative;border-radius:20px;padding:22px 18px;color:#fff;background:linear-gradient(165deg,#FF8A3A,#E11D2E 96%);box-shadow:0 14px 30px rgba(193,15,38,.18);display:flex;flex-direction:column;min-height:240px}
.deal .day{font-family:'Barlow Condensed';font-weight:800;letter-spacing:.14em;font-size:13px;color:var(--gold);text-transform:uppercase}
.deal .em{font-size:34px;margin:6px 0 4px}
.deal h3{font-family:'Anton';font-size:25px;line-height:.95;text-transform:uppercase}
.deal .badge{align-self:flex-start;margin-top:8px;background:rgba(0,0,0,.22);border:1.5px solid rgba(255,255,255,.5);border-radius:999px;font-family:'Barlow Condensed';font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px}
.deal p{font-size:15px;color:rgba(255,255,255,.95);margin-top:10px;font-weight:500;line-height:1.4}
.deal .meta{margin-top:auto;padding-top:10px;font-family:'Barlow Condensed';font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.78)}

/* story page */
.story-lead{max-width:760px;margin:0 auto 18px;font-size:19px;line-height:1.6;color:#4d3327;font-weight:500;text-align:center}
.story-lead p{margin-bottom:16px}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
@media(max-width:820px){.values{grid-template-columns:1fr 1fr}}@media(max-width:520px){.values{grid-template-columns:1fr}}
.value{background:#fff;border:1px solid #ffe0cf;border-radius:18px;padding:24px 20px;box-shadow:0 10px 24px rgba(193,15,38,.06)}
.value .ic{font-size:30px}
.value h3{font-family:'Barlow Condensed';font-weight:900;font-size:20px;text-transform:uppercase;color:var(--r);margin-top:8px}
.value p{font-size:15px;color:#5b4035;margin-top:6px;line-height:1.45}

/* contact page */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}
.cform{background:#fff;border:1px solid #ffe0cf;border-radius:18px;padding:26px;box-shadow:0 12px 28px rgba(193,15,38,.07)}
.cform label{display:block;font-family:'Barlow Condensed';font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:13px;color:var(--r);margin:12px 0 5px}
.cform input,.cform textarea{width:100%;border:1.5px solid #f0d3c2;border-radius:12px;padding:12px 14px;font-family:'Barlow',sans-serif;font-size:15px;color:var(--ink);background:var(--cream);outline:none}
.cform input:focus,.cform textarea:focus{border-color:var(--o)}
.cinfo .vrow{border-color:#f0d8c9}
.cinfo .big{font-family:'Anton';font-size:30px;color:var(--ink);margin-top:2px}

.social a{margin-right:16px;display:inline-block}

/* menu photo tiles */
.mtiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:6px}
.mtile{background:#fff;border:1px solid #ffe0cf;border-radius:16px;padding:14px 10px 12px;text-align:center;box-shadow:0 8px 18px rgba(193,15,38,.06);transition:transform .2s,box-shadow .2s}
.mtile:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(193,15,38,.14)}
.mtile img{height:120px;width:100%;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(70,0,0,.28))}
.mtile .n{font-family:'Barlow Condensed';font-weight:800;font-size:14.5px;text-transform:uppercase;color:var(--ink);margin-top:9px;line-height:1.04}
.mtile .d{font-size:11.5px;color:#7c5848;margin-top:3px;line-height:1.14}
/* story photos */
.story-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;max-width:1000px;margin:0 auto}
@media(max-width:780px){.story-feature{grid-template-columns:1fr;gap:20px}}
.story-feature .ftxt p{font-size:17px;line-height:1.6;color:#4d3327;font-weight:500;margin-bottom:14px}
.story-feature img{width:100%;border-radius:20px;box-shadow:0 18px 40px rgba(120,0,12,.18);object-fit:cover;aspect-ratio:4/5}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px}
@media(max-width:780px){.gallery{grid-template-columns:1fr 1fr}}
.gallery img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;box-shadow:0 10px 24px rgba(0,0,0,.14)}

/* ===== specials: full-screen animated day deck ===== */
.dayfull{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;scroll-snap-align:center;
  background:radial-gradient(78% 70% at 76% 22%,rgba(255,150,70,.42),transparent 55%),linear-gradient(155deg,#2a0a08,#7a1414 56%,#C20F26)}
.dayfull:nth-child(even){background:radial-gradient(78% 70% at 24% 22%,rgba(255,150,70,.42),transparent 55%),linear-gradient(205deg,#2a0a08,#7a1414 56%,#C20F26)}
.dayfull .bgday{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Anton';font-size:33vw;color:rgba(255,255,255,.055);text-transform:uppercase;letter-spacing:-.02em;pointer-events:none;white-space:nowrap;z-index:0;line-height:1}
.dayfull .inner{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:96px 32px;display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;width:100%}
.dayfull.rev .txt{order:2}.dayfull.rev .photo{order:1}
.dayfull .dlabel{font-family:'Barlow Condensed';font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:16px}
.dayfull h2{font-family:'Anton';font-size:clamp(46px,7vw,94px);line-height:.88;text-transform:uppercase;margin-top:8px;color:#fff;text-shadow:0 6px 0 rgba(120,0,12,.25),0 16px 30px rgba(0,0,0,.32)}
.dayfull .badge2{display:inline-block;margin-top:16px;background:var(--gold);color:#9c0c1f;font-family:'Barlow Condensed';font-weight:900;letter-spacing:.06em;text-transform:uppercase;font-size:15px;padding:8px 17px;border-radius:999px}
.dayfull p{font-size:clamp(17px,1.7vw,21px);color:rgba(255,255,255,.92);font-weight:500;margin-top:18px;max-width:470px;line-height:1.5}
.dayfull .meta{margin-top:16px;font-family:'Barlow Condensed';font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7);font-size:14px}
.dayfull .photo{display:flex;align-items:center;justify-content:center;position:relative}
.dayfull .photo::before{content:"";position:absolute;width:64%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,190,110,.5),transparent 66%)}
.dayfull .photo img{position:relative;max-height:60vh;max-width:100%;filter:drop-shadow(0 26px 30px rgba(50,0,0,.55))}
.dayfull .txt{opacity:0;transform:translateX(-70px);transition:opacity .7s cubic-bezier(.165,.84,.44,1),transform .7s cubic-bezier(.165,.84,.44,1)}
.dayfull .photo{opacity:0;transform:translateX(70px) scale(.96);transition:opacity .75s cubic-bezier(.165,.84,.44,1),transform .75s cubic-bezier(.165,.84,.44,1)}
.dayfull.rev .txt{transform:translateX(70px)}.dayfull.rev .photo{transform:translateX(-70px) scale(.96)}
.dayfull.in .txt,.dayfull.in .photo{opacity:1;transform:none}
.snaproll{scroll-snap-type:y proximity}
@media(max-width:780px){.dayfull .inner{grid-template-columns:1fr;text-align:center;gap:6px}.dayfull.rev .txt{order:0}.dayfull.rev .photo{order:-1}.dayfull .photo{order:-1}.dayfull .photo img{max-height:32vh}.dayfull p{margin:14px auto 0}.dayfull .bgday{font-size:54vw}}
@media(prefers-reduced-motion:reduce){.dayfull .txt,.dayfull .photo{opacity:1;transform:none;transition:none}.snaproll{scroll-snap-type:none}}

/* ===== hover: boxes expand, order buttons glow (desktop pointers only) ===== */
.value,.deal{transition:transform .22s ease,box-shadow .22s ease}
@media (hover:hover) and (pointer:fine){
  .mcard:hover,.mtile:hover,.why .item:hover,.value:hover,.deal:hover{transform:translateY(-6px) scale(1.04)}
  .mcard:hover{box-shadow:0 26px 50px rgba(193,15,38,.34)}
  .mtile:hover{box-shadow:0 22px 40px rgba(193,15,38,.20)}
  .btn-gold:hover,.navbtn:hover{animation:glowpulse 1.5s ease-in-out infinite}
  .btn-red:hover{box-shadow:0 10px 34px rgba(255,90,40,.7)}
  .mcard:hover .ord{background:var(--gold);color:#9c0c1f;border-color:var(--gold);box-shadow:0 6px 20px rgba(255,196,60,.6)}
}
@keyframes glowpulse{0%,100%{box-shadow:0 8px 24px rgba(255,196,60,.5)}50%{box-shadow:0 10px 38px rgba(255,196,60,.95)}}
@media(prefers-reduced-motion:reduce){.mcard:hover,.mtile:hover,.why .item:hover,.value:hover,.deal:hover{transform:none}.btn-gold:hover,.navbtn:hover{animation:none}}

.mtile{cursor:pointer}
.mtile .tap{font-family:'Barlow Condensed';font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--r);margin-top:7px;opacity:0;transition:opacity .2s ease}
@media(hover:hover) and (pointer:fine){.mtile:hover .tap{opacity:1}}
@media(hover:none){.mtile .tap{opacity:.8}}

/* a11y: visible focus + button reset for burger */
.burger{background:none;border:0}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,.mtile:focus-visible,.mcard:focus-visible{outline:3px solid #FFD65B;outline-offset:3px;border-radius:6px}
