/* =========================================================
   Science Kitchen — Bauhaus / Swiss lab style
   Rebuilt from the Stitch design without Tailwind.
   Global tokens below = Elementor Global Colors + Fonts.
   ========================================================= */
:root{
  --white:#FAFAFA; --paper:#FFFFFF; --black:#111111; --gray:#EDEDED; --muted:#5A5A5A;
  --red:#FF3B1D; --blue:#0044FF; --yellow:#FFCC00; --teal:#00A878;
  --red-t:#FFE6E0; --blue-t:#E3EBFF; --yellow-t:#FFF4C7; --teal-t:#DDF5EC;
  --display:"Space Grotesk","Helvetica Neue",Arial,sans-serif;
  --mono:"Space Mono",ui-monospace,Menlo,Consolas,monospace;
  --sh:4px 4px 0 var(--black); --sh-lg:8px 8px 0 var(--black);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:clip;background:var(--white);color:var(--black);font-family:var(--display);font-size:16px;line-height:1.5;letter-spacing:-.015em;-webkit-font-smoothing:antialiased}
::selection{background:var(--yellow);color:var(--black)}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.mono{font-family:var(--mono)}
.wrap{max-width:1440px;margin:0 auto;padding-inline:32px}
.ico{width:1em;height:1em;display:inline-block;vertical-align:-.15em;flex:none}
.ri{width:44px;height:44px;flex:none;overflow:visible}

/* DUMMY / CHECK markers (dev phase only — remove before launch) */
.chk{outline:1.5px dashed var(--blue);outline-offset:2px}
.dum{outline:1.5px dashed #C99A00;outline-offset:2px}
.dtag{display:inline-block;font:700 10px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:4px 6px;border:1.5px solid var(--black);background:var(--yellow);color:var(--black);vertical-align:middle}
.dtag.c{background:#E6EEFF;border-color:var(--blue);color:var(--blue)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 26px;font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.06em;border:2px solid var(--black);box-shadow:var(--sh);cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s,color .15s;background:var(--white);color:var(--black)}
.btn:hover{transform:translate(4px,4px);box-shadow:0 0 0 var(--black)}
.btn .ico{font-size:18px}
.btn-k{background:var(--black);color:var(--white)}
.btn-k:hover{background:var(--yellow);color:var(--black)}
.btn-w:hover{background:var(--red);color:var(--white)}
.btn-r{background:var(--red);color:var(--white)}
.btn-t{background:var(--teal);color:var(--white)}
.btn-sm{padding:11px 18px;font-size:12px}

/* ---------- top HUD ---------- */
.hud{background:var(--black);color:var(--white);font:400 12px var(--mono);border-bottom:2px solid var(--black)}
.hud .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:7px;padding-inline:16px;flex-wrap:wrap}
.hud b{letter-spacing:.12em;text-transform:uppercase}
.hud .r{display:flex;align-items:center;gap:14px;letter-spacing:.12em;font-size:11px;text-transform:uppercase}
.ping{width:8px;height:8px;background:var(--red);display:inline-block;margin-right:8px;animation:ping 1.4s infinite}
@keyframes ping{50%{opacity:.2}}
.sq{width:10px;height:10px;background:var(--yellow);display:inline-block}

/* ---------- header ---------- */
.nav{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:2px solid var(--black)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.brand{display:flex;align-items:center;gap:12px;padding-block:8px}
.mark{width:40px;height:40px;border:2px solid var(--black);background:var(--yellow);display:grid;place-items:center;font:700 19px var(--display);box-shadow:var(--sh);transition:transform .15s,box-shadow .15s}
.brand:hover .mark{transform:translate(2px,2px);box-shadow:none}
.brand b{display:block;font-size:20px;text-transform:uppercase;letter-spacing:-.05em;line-height:1}
.brand small{display:block;font:400 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.menu{display:flex;align-self:stretch;border-inline:2px solid var(--black);font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.05em}
.menu a{display:flex;align-items:center;padding:0 16px;transition:background .15s}
.menu a + a{border-left:2px solid var(--black)}
.menu a:hover{background:var(--yellow)}
.menu a.on{background:var(--black);color:var(--white)}
.nav .btn{padding:11px 20px;font-size:12px}

/* ---------- section scaffolding ---------- */
.sec{border-bottom:2px solid var(--black);padding-block:96px}
.sec.gray{background:var(--gray)}
.sec.white{background:var(--white)}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 40px;border-bottom:2px solid var(--black);padding-bottom:24px;margin-bottom:56px;flex-wrap:wrap}
.head.c{flex-direction:column;align-items:center;text-align:center;border:0;padding:0;margin-bottom:40px}
.eyebrow{font:700 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#777;margin-bottom:4px}
h2.h2{margin:0;font-weight:700;font-size:clamp(32px,4.4vw,52px);line-height:1;text-transform:uppercase;letter-spacing:-.035em}
.lede{font:400 14px/1.5 var(--mono);text-transform:uppercase;color:var(--muted);max-width:28rem;margin:0}
.head.c .lede{max-width:40rem;font-size:13px;margin-top:6px}
.note{margin-top:24px;padding:12px;background:var(--gray);border:2px solid var(--black);display:flex;align-items:center;gap:12px;font:400 12px var(--mono);flex-wrap:wrap}
.note .t{background:var(--black);color:var(--white);font-weight:700;padding:2px 8px}
.note .ri{width:26px;height:26px}

/* patterned backgrounds (from the Style Lab) */
.bg-grid{background-image:linear-gradient(to right,rgba(17,17,17,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(17,17,17,.07) 1px,transparent 1px);background-size:32px 32px}
.bg-dots{background-image:radial-gradient(rgba(17,17,17,.22) 1.1px,transparent 1.5px);background-size:22px 22px}
.bg-lattice{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cg fill='none' stroke='%23111' stroke-opacity='.10' stroke-width='1.5'%3E%3Cpath d='M28 0l28 16v32L28 64 0 48V16zM28 64v33'/%3E%3C/g%3E%3Cg fill='%23111' fill-opacity='.16'%3E%3Ccircle cx='28' cy='0' r='2.5'/%3E%3Ccircle cx='56' cy='16' r='2.5'/%3E%3Ccircle cx='56' cy='48' r='2.5'/%3E%3Ccircle cx='28' cy='64' r='2.5'/%3E%3Ccircle cx='0' cy='48' r='2.5'/%3E%3Ccircle cx='0' cy='16' r='2.5'/%3E%3C/g%3E%3C/svg%3E");background-size:56px 97px}
.bg-hatch{background-image:repeating-linear-gradient(-45deg,rgba(17,17,17,.05) 0 2px,transparent 2px 12px)}
.bg-glow{background:radial-gradient(circle at 88% 10%,rgba(255,204,0,.42),transparent 38%),radial-gradient(circle at 6% 96%,rgba(0,68,255,.12),transparent 42%),var(--gray)}

/* ---------- hero ---------- */
.hero{border-bottom:2px solid var(--black);position:relative;overflow:hidden}
.hero-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);min-height:620px}
.hero-l{padding:56px 48px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;border-right:2px solid var(--black);background:rgba(250,250,250,.9)}
.pill{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;padding:5px 12px;background:var(--yellow);border:2px solid var(--black);font:700 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;box-shadow:var(--sh);margin-bottom:24px}
.pill i{width:6px;height:6px;background:var(--black)}
.pill .ri{width:20px;height:20px}
h1.h1{margin:0 0 28px;font-weight:700;font-size:clamp(32px,3.6vw,54px);line-height:.98;text-transform:uppercase;letter-spacing:-.05em}
h1.h1 .l{display:block;white-space:nowrap}
h1.h1 .inv{background:var(--black);color:var(--white);padding:2px 10px;display:inline-block;margin-top:10px}
.hero-l p{margin:0;font-size:clamp(17px,1.4vw,20px);font-weight:500;line-height:1.6;color:#2a2a2a;max-width:36rem;border-left:4px solid var(--blue);padding-left:16px}
.ctas{display:flex;flex-wrap:wrap;gap:16px}
.next{display:flex;align-items:center;gap:8px;margin-top:24px;font:400 12px var(--mono);text-transform:uppercase;color:var(--muted)}
.next i{width:10px;height:10px;background:var(--teal)}
.hero-r{background:var(--gray);padding:32px 32px;display:flex;flex-direction:column;gap:20px;min-width:0}
.fig{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font:700 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;border-bottom:2px solid var(--black);padding-bottom:14px}
.fig .tag{background:var(--blue);color:var(--white);padding:2px 8px;letter-spacing:.08em}
.ledger{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:2px solid var(--black);padding-top:12px;font:400 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#444}

/* chai lab box */
.chai-box{position:relative;flex:1;display:flex;flex-direction:column;background:var(--paper);border:2px solid var(--black);box-shadow:var(--sh-lg);min-height:470px}
.chai-wrap{position:relative;flex:1;min-height:400px;touch-action:pan-y;cursor:pointer;background-image:linear-gradient(to right,rgba(17,17,17,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(17,17,17,.045) 1px,transparent 1px);background-size:32px 32px}
.chai-wrap canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.chai-add{border-top:2px solid var(--black);padding:10px 12px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:var(--paper)}
.chai-add b{font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-right:4px}
.chai-add button{font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.03em;border:2px solid var(--black);background:var(--paper);padding:6px 9px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;box-shadow:2px 2px 0 var(--black)}
.chai-add button i{width:10px;height:10px;border:1.5px solid var(--black);border-radius:50%;background:var(--c)}
.chai-add button[aria-pressed="true"]{background:var(--black);color:#fff}
.chai-add button[aria-pressed="true"] i{border-color:#fff}
.chai-add button:active{transform:translate(2px,2px);box-shadow:none}
.chai-card{position:absolute;z-index:3;width:270px;background:var(--paper);border:2px solid var(--black);box-shadow:5px 5px 0 var(--c,var(--black));padding:12px 14px 13px;pointer-events:none}
.chai-card[hidden]{display:none!important}
.chai-card .src{font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.chai-card h4{margin:2px 0 0;font-size:19px;letter-spacing:-.025em;line-height:1.15}
.chai-card .f{font:700 13px var(--mono);margin:2px 0 8px;color:var(--c,var(--black))}
.chai-card p{margin:0;font-size:13px;line-height:1.45;color:#2b2b2b}

/* ---------- yellow ticker ---------- */
.ticker{background:var(--yellow);border-bottom:2px solid var(--black);padding-block:10px;overflow:hidden;user-select:none}
.ticker .tr,.giant .tr{display:flex;width:max-content;animation:mq 30s linear infinite}
.ticker span{display:inline-flex;align-items:center;gap:10px;padding-right:24px;font:700 14px var(--display);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.ticker span::after{content:"";width:8px;height:8px;background:var(--black)}
.ticker:hover .tr,.giant:hover .tr{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}

/* ---------- giant outline marquee (liked) ---------- */
.giant{border-bottom:2px solid var(--black);background:var(--white);overflow:hidden;padding-block:20px}
.giant .tr{animation-duration:34s}
.giant span{font-weight:700;font-size:clamp(48px,7.4vw,104px);letter-spacing:-.05em;line-height:1.05;padding-right:40px;white-space:nowrap;display:inline-flex;align-items:center;gap:40px}
.giant span:nth-child(even){color:transparent;-webkit-text-stroke:2px var(--black)}
.giant span::after{content:"";width:.42em;height:.42em;background:var(--red);border-radius:50%}
.giant span:nth-child(4n+2)::after{background:var(--blue);border-radius:0}
.giant span:nth-child(4n+3)::after{background:var(--yellow);border-radius:0;transform:rotate(45deg)}
.giant span:nth-child(4n)::after{background:var(--teal)}

/* ---------- who's hungry ---------- */
.aud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:2px solid var(--black);box-shadow:var(--sh-lg);background:var(--white)}
.aud > a{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:34px 28px 28px;transition:background .2s,color .2s;color:var(--black)}
.aud > a + a{border-left:2px solid var(--black)}
.aud .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.aud .code{font:700 12px var(--mono);text-transform:uppercase;padding:3px 9px;background:var(--c);color:var(--on,#fff);border:2px solid var(--black);box-shadow:2px 2px 0 var(--black);transition:background .2s,color .2s}
.aud .ri{width:52px;height:52px;--icf:var(--c);transition:transform .3s}
.aud h3{margin:0 0 6px;font-size:21px;font-weight:700;text-transform:uppercase;letter-spacing:-.03em;line-height:1.1}
.aud .who{font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--c-d);margin-bottom:12px;transition:color .2s}
.aud p{margin:0;font-size:14px;line-height:1.6;color:#333;font-weight:500;transition:color .2s}
.aud .go{width:42px;height:42px;border:2px solid var(--black);background:var(--white);display:grid;place-items:center;transition:background .2s,color .2s,transform .2s}
.aud > a:hover{background:var(--c);color:var(--on,#fff)}
.aud > a:hover .ri{--icf:var(--white);--ico:0px;transform:rotate(-8deg) scale(1.06)}
.aud > a:hover .code{background:var(--white);color:var(--black)}
.aud > a:hover p,.aud > a:hover .who{color:var(--on,#fff)}
.aud > a:hover .go{background:var(--black);color:var(--white);transform:translateX(4px)}
.a1{--c:var(--red);--c-d:#D42A0E}.a2{--c:var(--blue);--c-d:var(--blue)}.a3{--c:var(--teal);--c-d:#00805B}.a4{--c:var(--yellow);--c-d:#9A7A00;--on:var(--black)}
.a4:hover .ri{--icf:var(--white)}
.aside{margin:36px 0 0;font:400 12px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:#777;text-align:center}

/* ---------- what's cooking ledger ---------- */
.narrow{max-width:900px;margin:0 auto}
.card-l{background:var(--white);border:2px solid var(--black);box-shadow:var(--sh-lg)}
.led-h{padding:28px 32px;border-bottom:2px solid var(--black);background:var(--yellow);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.led-h .k{font:700 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;background:var(--black);color:var(--white);padding:2px 8px}
.led-h h3{margin:10px 0 0;font-size:clamp(22px,2.6vw,30px);text-transform:uppercase;letter-spacing:-.03em;line-height:1.1}
.led-h .start{font:700 12px var(--mono);text-transform:uppercase;padding:7px 12px;background:var(--red);color:var(--white);border:2px solid var(--black)}
.cols2{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid var(--black);font-family:var(--mono)}
.cols2 > div{padding:24px}
.cols2 > div + div{border-left:2px solid var(--black)}
.cols2 span{display:block;font-size:12px;font-weight:700;text-transform:uppercase;color:#777;margin-bottom:4px}
.cols2 p{margin:0;font-weight:700}
.seats{padding:28px 32px;border-bottom:2px solid var(--black)}
.seats .row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.seats .row b{font-size:18px;text-transform:uppercase}
.legend{display:flex;gap:16px;font:700 12px var(--mono)}
.legend span{display:flex;align-items:center;gap:6px}
.legend i{width:14px;height:14px;border:1.5px solid var(--black);background:var(--white)}
.legend i.k{background:var(--black)}
.grid15{display:grid;grid-template-columns:repeat(15,minmax(0,1fr));gap:8px}
.grid15 div{aspect-ratio:1;max-width:40px;border:2px solid var(--black);display:grid;place-items:center;font:700 12px var(--mono);color:var(--red);background:var(--white);transition:background .15s,transform .15s;cursor:default}
.grid15 div:hover{background:var(--yellow);transform:translateY(-3px)}
.price{padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.price .s{font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.price .v{font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:-.03em}
.price .btns{display:flex;gap:12px;flex-wrap:wrap}
.foot-note{border-top:2px solid var(--black);padding:16px;background:var(--gray);font:400 12px var(--mono);text-align:center;color:#444}

/* ---------- the menu ---------- */
.spice-key{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font:700 11px var(--mono);text-transform:uppercase;margin:-24px 0 32px}
.spice-key span{display:inline-flex;align-items:center;gap:6px}
.chilis{display:inline-flex;gap:0;align-items:center}
.chilis svg{width:22px;height:22px;margin-right:-3px}
.chilis .off{--icf:transparent;--icl:rgba(17,17,17,.28);--ico:0px}
.menu-g{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:48px}
.dish{position:relative;border:2px solid var(--black);background:var(--white);padding:32px;box-shadow:var(--sh-lg);display:flex;flex-direction:column;justify-content:space-between;gap:24px;transition:transform .2s,box-shadow .2s}
.dish:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 var(--black)}
.dish .corner{position:absolute;top:0;right:0;width:34px;height:34px;background:var(--c);border-left:2px solid var(--black);border-bottom:2px solid var(--black)}
.dish .row1{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;padding-right:30px}
.dish .badge{font:700 12px var(--mono);text-transform:uppercase;padding:2px 8px;background:var(--b,var(--black));color:var(--bt,#fff);border:1.5px solid var(--black)}
.dish .spice{display:inline-flex;align-items:center;gap:8px;font:700 12px var(--mono)}
.dish .ttl{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.dish .ttl .ri{width:48px;height:48px;--icf:var(--c)}
.dish h3{margin:0;font-size:clamp(21px,2vw,26px);text-transform:uppercase;letter-spacing:-.035em;line-height:1.05}
.dish p{margin:0 0 22px;font-size:14px;line-height:1.6;color:#333}
.params{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid var(--black);background:var(--gray);font-family:var(--mono)}
.params div{padding:12px 8px;text-align:center;font-size:12px;font-weight:700}
.params div + div{border-left:2px solid var(--black)}
.params span{display:block;font-size:10px;font-weight:400;color:#777;text-transform:uppercase}
.dish .more{width:100%;padding:13px;border:2px solid var(--black);background:var(--white);font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background .15s,color .15s}
.dish .more:hover{background:var(--c);color:var(--on,#fff)}
.d1{--c:var(--red)}.d2{--c:var(--blue)}.d3{--c:var(--teal)}.d4{--c:var(--yellow);--on:var(--black)}
.ballot{border:2px solid var(--black);background:var(--gray);padding:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.ballot h4{margin:0;display:flex;align-items:center;gap:10px;font-size:19px;text-transform:uppercase;letter-spacing:-.02em}
.ballot h4 i{width:12px;height:12px;background:var(--red)}
.ballot p{margin:4px 0 0;font:400 12px var(--mono);text-transform:uppercase;color:#666}
.votes{display:flex;gap:8px;flex-wrap:wrap}
.votes button{display:flex;align-items:center;gap:8px;padding:8px 12px;border:2px solid var(--black);background:var(--white);font:700 12px var(--mono);text-transform:uppercase;box-shadow:var(--sh);cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}
.votes button:hover{transform:translate(2px,2px);box-shadow:none;background:var(--yellow)}
.votes button span{background:var(--black);color:var(--white);font-size:10px;padding:2px 6px}
.votes button.voted{background:var(--teal);color:#fff}

/* ---------- quiz ---------- */
.quiz{max-width:780px;margin:0 auto}
.q-top{padding:24px;border-bottom:2px solid var(--black);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.q-top .t{display:flex;align-items:center;gap:12px}
.q-top .t .ri{width:38px;height:38px}
.q-top h3{margin:0;font-size:19px;text-transform:uppercase;letter-spacing:-.02em}
.q-prog{display:flex;align-items:center;gap:8px;font:700 12px var(--mono);text-transform:uppercase}
.q-prog .bar{width:100px;height:12px;border:2px solid var(--black);background:var(--gray)}
.q-prog .bar i{display:block;height:100%;background:var(--blue);transition:width .3s}
.q-step{padding:28px 32px;border-bottom:2px solid var(--black)}
.q-step span{font:700 12px var(--mono);text-transform:uppercase;color:var(--blue)}
.q-step h4{margin:4px 0 0;font-size:clamp(19px,2.2vw,24px);text-transform:uppercase;letter-spacing:-.03em}
.q-opts{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid var(--black)}
.q-opts button{padding:17px 18px;border:0;border-bottom:2px solid var(--black);background:var(--white);font:700 12px var(--mono);text-transform:uppercase;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;transition:background .15s}
.q-opts button:nth-child(odd){border-right:2px solid var(--black)}
.q-opts button:nth-last-child(-n+2){border-bottom:0}
.q-opts button:hover{background:var(--yellow)}
.q-opts button i{width:16px;height:16px;border:2px solid var(--black);background:var(--white);flex:none}
.q-opts button.sel{background:var(--black);color:var(--white)}
.q-opts button.sel i{background:var(--red);border-color:var(--white)}
.q-out{padding:24px;background:var(--gray);display:flex;gap:16px;align-items:flex-start}
.q-out .ri{width:44px;height:44px}
.q-out small{display:block;font:700 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#777}
.q-out h5{margin:2px 0 4px;font-size:19px;text-transform:uppercase;letter-spacing:-.02em}
.q-out p{margin:0 0 10px;font-size:14px;color:#333}
.q-out .acts{display:flex;gap:10px;flex-wrap:wrap}
.linkbtn{background:none;border:0;padding:0;font:700 12px var(--mono);text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* ---------- how it works: scroll path (liked) ---------- */
.path svg{width:100%;height:auto;display:block;overflow:visible}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:-4px}
.step{border:2px solid var(--black);background:var(--white);padding:24px;transition:box-shadow .35s,transform .35s;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.step.on{box-shadow:8px 8px 0 var(--c);transform:translate(-3px,-3px)}
.step .n{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--black);padding-bottom:8px;margin-bottom:16px;font:700 34px var(--mono);color:var(--c-d,var(--c))}
.step .n small{font-size:11px;letter-spacing:.14em;color:#777}
.step h3{margin:0 0 8px;font-size:23px;text-transform:uppercase;letter-spacing:-.03em}
.step p{margin:0;font-size:14px;line-height:1.6;color:#333}
.step .ph{font:400 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#777}
.s1{--c:var(--red)}.s2{--c:var(--yellow);--c-d:#C99A00}.s3{--c:var(--teal)}

/* ---------- science over chai ---------- */
.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.an{border:2px solid var(--black);background:var(--white);padding:24px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:16px;transition:transform .2s,box-shadow .2s}
.an:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--black)}
.an .hd{border-bottom:2px solid var(--black);padding-bottom:16px;display:flex;justify-content:space-between;gap:12px}
.an .hd .tg{display:inline-block;font:700 10px var(--mono);text-transform:uppercase;padding:2px 8px;margin-bottom:12px;background:var(--b);color:var(--bt,#fff)}
.an h3{margin:0;font-size:20px;text-transform:uppercase;letter-spacing:-.03em;line-height:1.15}
.an .ri{width:48px;height:48px}
.an .bx{background:var(--gray);border:1px solid var(--black);padding:16px;font:400 12px/1.65 var(--mono);color:#333}
.an .bx strong{display:block;text-transform:uppercase;margin-bottom:4px;color:var(--b)}

/* ---------- laboratory spice rack ---------- */
.rack{border:2px solid var(--black);box-shadow:var(--sh-lg);background:var(--white)}
.shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.shelf > div{padding:32px 24px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.shelf > div + div{border-left:2px solid var(--black)}
.jar{position:relative;width:132px;height:156px;margin-bottom:6px}
.jar .lid{position:absolute;left:14px;right:14px;top:0;height:26px;background:var(--c);border:2px solid var(--black);box-shadow:3px 3px 0 var(--black)}
.jar .lid::after{content:"";position:absolute;left:8px;right:8px;top:7px;height:2px;background:rgba(17,17,17,.35);box-shadow:0 6px 0 rgba(17,17,17,.35)}
.jar .body{position:absolute;left:0;right:0;top:30px;bottom:0;border:2px solid var(--black);border-radius:16px 16px 22px 22px;background:#fff;overflow:hidden;box-shadow:5px 5px 0 var(--black)}
.jar .fill{position:absolute;left:0;right:0;bottom:0;height:58%;background:var(--c);opacity:.85;background-image:radial-gradient(rgba(17,17,17,.25) 1.4px,transparent 1.6px);background-size:9px 9px;transition:height 1.2s cubic-bezier(.3,1.4,.5,1)}
.jar .lab{position:absolute;left:10px;right:10px;top:26px;bottom:auto;background:#fff;border:2px solid var(--black);padding:6px 4px;font:700 26px/1 var(--display);letter-spacing:-.04em}
.jar .lab small{display:block;font:700 9px var(--mono);letter-spacing:.06em;color:#666;margin-top:4px}
.jar .shine{position:absolute;top:10px;bottom:14px;left:9px;width:7px;border-radius:4px;background:rgba(255,255,255,.7)}
.shelf > div:hover .fill{height:74%}
.shelf h4{margin:0;font-size:17px;text-transform:uppercase;letter-spacing:-.02em;line-height:1.15}
.shelf p{margin:0;font:400 11px/1.5 var(--mono);text-transform:uppercase;color:#666}
.plank{height:16px;background:var(--black);border-top:2px solid var(--black)}
.evidence{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid var(--black)}
.evidence figure{margin:0;padding:14px}
.evidence figure + figure{border-left:2px solid var(--black)}
.evidence img{width:100%;aspect-ratio:10/7;object-fit:cover;border:2px solid var(--black)}
.evidence figcaption{font:700 11px/1.4 var(--mono);text-transform:uppercase;margin-top:8px}
.rack-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-top:2px solid var(--black);background:var(--gray);font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.06em}

/* ---------- testimonials ---------- */
.rev{border:2px solid var(--black);background:var(--white);padding:24px;box-shadow:var(--sh);display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.rev q{font:italic 400 14px/1.65 var(--mono)}
.rev .who{border-top:2px solid var(--black);padding-top:16px;display:flex;align-items:center;gap:12px}
.av{width:44px;height:44px;border:2px solid var(--black);display:grid;place-items:center;font:700 12px var(--display);background:var(--c);color:var(--on,#fff)}
.rev .who b{display:block;font-size:14px;text-transform:uppercase}
.rev .who small{font:400 10px var(--mono);text-transform:uppercase;color:#777}

/* ---------- recipe card form ---------- */
.rc-top{background:var(--black);color:var(--white);padding:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font:700 12px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.rc-top span:last-child{background:var(--yellow);color:var(--black);font-size:10px;padding:2px 8px;letter-spacing:.04em}
.rc-g{display:grid;grid-template-columns:1fr 1fr}
.rc-l{padding:32px;background:#FFFBEA;display:flex;flex-direction:column;gap:20px;border-right:2px solid var(--black)}
.rc-l .book{display:flex;gap:20px;align-items:flex-start}
.rc-l .book img{width:120px;flex:none;transform:rotate(-4deg);transition:transform .3s}
.rc-l .book:hover img{transform:rotate(0) scale(1.04)}
.rc-l h3{margin:0 0 10px;font-size:clamp(22px,2.4vw,28px);text-transform:uppercase;letter-spacing:-.03em;line-height:1.05}
.rc-l p{margin:0;font-size:14px;line-height:1.6;color:#333}
.rc-l .del{border:2px solid var(--black);background:var(--white);padding:12px;font:400 12px var(--mono);display:flex;gap:8px;align-items:center}
.rc-l .del i{width:10px;height:10px;background:var(--teal)}
.rc-l .spec{font:400 10px var(--mono);text-transform:uppercase;color:#777}
form.rc{padding:32px;display:flex;flex-direction:column;gap:16px}
.fld label{display:block;font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
.fld input,.fld select{width:100%;padding:10px 12px;border:2px solid var(--black);background:var(--white);font:400 13px var(--mono);border-radius:0}
.fld input:focus,.fld select:focus{outline:none;background:#FFF6CC;box-shadow:3px 3px 0 var(--black)}
.consent{display:flex;align-items:center;gap:8px;font:400 11px var(--mono);color:#555}
.consent input{width:18px;height:18px;accent-color:var(--black)}
.consent a{text-decoration:underline}
.ok{display:none;border:2px solid var(--black);background:var(--teal-t);padding:12px;font:700 12px var(--mono)}
.ok.show{display:block}

/* ---------- chef ---------- */
.chef{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:5fr 7fr}
.chef .ph{padding:32px;background:var(--gray);display:flex;align-items:center;justify-content:center;border-right:2px solid var(--black)}
.chef .ph img{width:100%;max-width:260px;border:2px solid var(--black);box-shadow:var(--sh)}
.chef .bio{padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.chef .bio .k{font:700 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.chef h3{margin:8px 0 14px;font-size:clamp(23px,2.6vw,31px);text-transform:uppercase;letter-spacing:-.035em;line-height:1.05}
.chef p{margin:0 0 20px;font-size:15px;line-height:1.65;color:#333;font-weight:500}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:2px solid var(--black);background:var(--white);font:700 12px var(--mono);text-transform:uppercase}
.chips .ri{width:24px;height:24px}
.more-a{display:inline-flex;align-items:center;gap:8px;font:700 12px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--red)}
.more-a:hover{color:var(--black)}

/* ---------- faq ---------- */
.faq{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq details{background:var(--white);border:2px solid var(--black);box-shadow:var(--sh);transition:box-shadow .15s}
.faq details[open]{box-shadow:6px 6px 0 var(--blue)}
.faq summary{list-style:none;cursor:pointer;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700;font-size:16px;text-transform:uppercase;letter-spacing:-.02em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{width:28px;height:28px;border:2px solid var(--black);display:grid;place-items:center;flex:none;transition:transform .2s,background .2s}
.faq details[open] summary .pm{transform:rotate(45deg);background:var(--yellow)}
.faq .a{margin:0 20px 20px;padding-top:16px;border-top:2px solid var(--black);font:400 13px/1.7 var(--mono);color:#333}

/* ---------- final CTA ---------- */
.cta{background:var(--red);color:var(--white);padding-block:84px;border-bottom:2px solid var(--black);position:relative;overflow:hidden;text-align:center}
.cta::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,#111 0 2px,transparent 2px 8px);opacity:.1;pointer-events:none}
.cta .wrap{position:relative;max-width:900px}
.cta .k{display:inline-block;padding:4px 12px;background:var(--black);border:1px solid var(--white);font:700 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px}
.cta h2{margin:0 0 24px;font-size:clamp(38px,5.6vw,68px);text-transform:uppercase;letter-spacing:-.045em;line-height:.98}
.cta p{margin:0 auto 40px;font-size:clamp(17px,1.5vw,20px);font-weight:500;max-width:40rem;color:#FFEDE9}
.cta .ctas{justify-content:center}
.cta .btn-k{border-color:var(--white)}
.cta .btn-k:hover{background:var(--teal);color:var(--white)}

/* ---------- footer ---------- */
footer{background:var(--white);border-top:2px solid var(--black)}
.f-g{display:grid;grid-template-columns:5fr 4fr 3fr;gap:40px;padding-block:64px 48px;border-bottom:2px solid var(--black)}
.f-g p{font:400 14px var(--mono);color:#555;margin:14px 0}
.loc{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 6px;background:var(--gray);border:2px solid var(--black);font:700 12px var(--mono);text-transform:uppercase}
.loc .ri{width:22px;height:22px}
.f-g h4{margin:0 0 16px;font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#999}
.f-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;font:400 12px var(--mono)}
.f-links a:hover{color:var(--red)}
.soc{display:flex;gap:8px;margin-bottom:14px}
.soc a{width:46px;height:46px;border:2px solid var(--black);background:var(--white);display:grid;place-items:center;transition:background .15s,transform .15s}
.soc a:hover{transform:translate(-2px,-2px);box-shadow:var(--sh)}
.soc .ri{width:30px;height:30px}
.f-b{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:28px;font:400 12px var(--mono);color:#555}

/* ---------- floating WhatsApp ---------- */
.float{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:8px;background:var(--yellow);border:2px solid var(--black);padding:10px 16px 10px 10px;box-shadow:var(--sh);font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.06em;transition:transform .15s,box-shadow .15s}
.float:hover{transform:translate(2px,2px);box-shadow:none}
.float .ri{width:28px;height:28px;--icf:var(--teal)}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .menu{display:none}
  .hero-grid{grid-template-columns:minmax(0,1fr)}
  .hero-l{border-right:0;border-bottom:2px solid var(--black);padding:40px 32px}
  .aud{grid-template-columns:1fr 1fr}
  .aud > a:nth-child(3){border-left:0}
  .aud > a:nth-child(n+3){border-top:2px solid var(--black)}
  .shelf,.evidence{grid-template-columns:1fr 1fr}
  .shelf > div:nth-child(3),.evidence figure:nth-child(3){border-left:0}
  .shelf > div:nth-child(n+3),.evidence figure:nth-child(n+3){border-top:2px solid var(--black)}
}
@media (max-width:860px){
  .wrap{padding-inline:20px}
  .sec{padding-block:64px}
  h1.h1 .l{white-space:normal;display:inline}
  .menu-g,.cards3,.steps,.rc-g,.chef,.f-g,.q-opts{grid-template-columns:minmax(0,1fr)}
  .rc-l,.chef .ph{border-right:0;border-bottom:2px solid var(--black)}
  .q-opts button:nth-child(odd){border-right:0}
  .q-opts button:nth-last-child(2){border-bottom:2px solid var(--black)}
  .grid15{grid-template-columns:repeat(8,minmax(0,1fr))}
  .path{display:none}
}
@media (max-width:560px){
  .wrap{padding-inline:16px}
  .hud .hide-s{display:none}
  .hero-l{padding:32px 16px}.hero-r{padding:24px 16px}
  .aud,.shelf,.evidence{grid-template-columns:minmax(0,1fr)}
  .aud > a + a,.shelf > div + div,.evidence figure + figure{border-left:0;border-top:2px solid var(--black)}
  .cols2{grid-template-columns:1fr}.cols2 > div + div{border-left:0;border-top:2px solid var(--black)}
  .led-h,.seats,.price,.q-step{padding:20px}
  .dish{padding:24px}
  .chai-card{left:10px!important;right:10px;top:auto!important;bottom:10px;width:auto}
  .float span{display:none}.float{padding:10px}
  .brand small{display:none}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* ---------- dev marker toggle ---------- */
.devtoggle{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.05em;border:1.5px solid var(--black);background:var(--white);padding:6px 9px;cursor:pointer}
body.clean .chk,body.clean .dum{outline:0}
body.clean .dtag,body.clean img[src*="assets/img/"]+figcaption .dtag{display:none}

/* ---------- spice rack A · ledger ---------- */
.rack-a{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;border-top:2px solid var(--black);border-bottom:2px solid var(--black);padding-block:36px}
.ra{display:flex;flex-direction:column;gap:8px;min-width:0}
.ra-top{display:flex;align-items:center;gap:10px;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#666}
.ra .sqr{width:14px;height:14px;background:var(--c);border:1.5px solid var(--black)}
.ra .num{font-weight:700;font-size:clamp(64px,6.6vw,100px);line-height:.9;letter-spacing:-.06em;align-self:flex-start;padding-right:4px}
.ra:nth-child(even) .num{color:transparent;-webkit-text-stroke:2px var(--black)}
.ra h4{margin:8px 0 0;font-size:18px;text-transform:uppercase;letter-spacing:-.02em}
.ra p{margin:0;font:400 12px/1.5 var(--mono);text-transform:uppercase;color:#666}
.ra figure{margin:14px 0 4px}
.ra img{width:100%;aspect-ratio:16/10;object-fit:cover;border:2px solid var(--black);filter:grayscale(.2);transition:filter .3s,transform .3s}
.ra:hover img{filter:none;transform:translateY(-3px)}
.ra figcaption{font:700 10px var(--mono);text-transform:uppercase;margin-top:6px;color:#555}
.ra .dtag{align-self:flex-start}

/* ---------- spice rack B · masala dabba ---------- */
.rack-b{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:center}
.dabba-wrap{display:flex;flex-direction:column;align-items:center;gap:16px}
.dabba{position:relative;width:min(440px,86vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#F4F6F8,#C9CED4 72%);border:3px solid var(--black);box-shadow:10px 10px 0 var(--black)}
.dabba::after{content:"";position:absolute;inset:4%;border-radius:50%;border:2px solid rgba(17,17,17,.25)}
.bowl{position:absolute;width:31%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--black);background:#E6E9EC;padding:0;cursor:pointer;box-shadow:inset 0 0 0 7px #F6F7F8,inset 0 0 0 9px rgba(17,17,17,.35);transition:transform .25s,box-shadow .25s;z-index:1}
.bowl .spice{position:absolute;inset:16%;border-radius:50%;background:var(--c);background-image:radial-gradient(rgba(17,17,17,.28) 1.3px,transparent 1.6px),radial-gradient(rgba(255,255,255,.35) 1.3px,transparent 1.6px);background-size:8px 8px,11px 11px;background-position:0 0,4px 5px;border:1.5px solid rgba(17,17,17,.4)}
.bowl b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--white);border:2px solid var(--black);padding:2px 8px;font:700 clamp(15px,1.6vw,22px) var(--display);letter-spacing:-.03em;white-space:nowrap}
.bowl:hover{transform:translate(-50%,-50%) scale(1.05)}
.bowl.on{transform:translate(-50%,-50%) scale(1.08);box-shadow:inset 0 0 0 7px var(--yellow),inset 0 0 0 9px var(--black),5px 5px 0 var(--black)}
.bowl.mid{width:25%;cursor:default}
.bowl.mid:hover{transform:translate(-50%,-50%)}
.dabba-cap{margin:0;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:#666;text-align:center}
.rb-panel{border:2px solid var(--black);background:var(--white);box-shadow:var(--sh-lg);display:grid;grid-template-columns:minmax(0,1fr);animation:rbIn .35s ease}
@keyframes rbIn{from{opacity:.3;transform:translateY(8px)}}
.rb-panel img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:2px solid var(--black)}
.rb-txt{padding:24px 28px;display:flex;flex-direction:column;gap:8px}
.rb-n{font-weight:700;font-size:clamp(48px,5vw,72px);line-height:.9;letter-spacing:-.06em}
.rb-n small{font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#666;margin-left:6px}
.rb-n span{box-shadow:inset 0 -14px 0 color-mix(in srgb,var(--c) 45%,transparent)}
.rb-txt h4{margin:0;font-size:22px;text-transform:uppercase;letter-spacing:-.02em}
.rb-txt p{margin:0;font:400 12px/1.6 var(--mono);text-transform:uppercase;color:#666}
.rb-txt .dtag{align-self:flex-start}

/* ---------- spice rack C · pinned polaroids ---------- */
.rack-c{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;padding-top:12px}
.pol{position:relative;margin:0;background:var(--white);border:2px solid var(--black);padding:12px 12px 18px;box-shadow:6px 6px 0 var(--black);transform:rotate(var(--r));transition:transform .3s,box-shadow .3s}
.pol:hover{transform:rotate(0) translateY(-6px);box-shadow:10px 10px 0 var(--black)}
.pol .tape{position:absolute;left:50%;top:-12px;width:84px;height:24px;transform:translateX(-50%) rotate(-3deg);background:rgba(255,204,0,.75);border:1px solid rgba(17,17,17,.25)}
.pol .ph{position:relative}
.pol img{width:100%;aspect-ratio:1;object-fit:cover;border:2px solid var(--black)}
.pol .stk{position:absolute;right:-18px;bottom:-18px;width:92px;height:92px;border-radius:50%;background:var(--c);border:2px solid var(--black);box-shadow:3px 3px 0 var(--black);display:flex;flex-direction:column;align-items:center;justify-content:center;font:700 30px/1 var(--display);letter-spacing:-.04em;color:var(--white);transform:rotate(-8deg)}
.pol:nth-child(1) .stk{color:var(--black)}
.pol .stk small{font:700 9px var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:3px}
.pol figcaption{margin-top:24px;display:flex;flex-direction:column;gap:6px}
.pol figcaption b{font-size:17px;text-transform:uppercase;letter-spacing:-.02em;line-height:1.15}
.pol figcaption span{font:400 11px/1.5 var(--mono);text-transform:uppercase;color:#666}
.pol .dtag{align-self:flex-start}

@media (max-width:1180px){.rack-a,.rack-c{grid-template-columns:1fr 1fr}.rack-b{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.rack-a,.rack-c{grid-template-columns:minmax(0,1fr)}.pol{transform:none}.pol .stk{right:-8px;bottom:-12px;width:78px;height:78px;font-size:24px}}
.ra p{min-height:3em}
.pol img{object-fit:contain;background:#F4F3EE}

/* ---------- responsive additions (v4) ---------- */
.nav-r{display:flex;align-items:center;gap:10px}
.burger{display:none;width:44px;height:44px;border:2px solid var(--black);background:var(--white);box-shadow:var(--sh);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.burger i{width:20px;height:2.5px;background:var(--black);transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.rc-l .book > div{min-width:0}
.rc-l h3{overflow-wrap:anywhere}
@media (max-width:1180px){
  .burger{display:flex}
  .nav .wrap{position:relative}
  .menu.open{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--white);border:0;border-top:2px solid var(--black);border-bottom:2px solid var(--black);box-shadow:0 8px 0 rgba(17,17,17,.08);font-size:13px}
  .menu.open a{padding:16px 32px}
  .menu.open a + a{border-left:0;border-top:2px solid var(--black)}
}
@media (max-width:860px){
  .menu.open a{padding:15px 20px}
  .hero-r{padding:24px 20px}
  .chai-box{min-height:440px}
  .rack-c{gap:44px 28px}
}
@media (max-width:560px){
  .rc-l .book{flex-direction:column}
  .rc-l .book img{width:110px}
  .rc-l,form.rc{padding:22px}
  .chef .bio{padding:24px}
  .chef .ph{padding:24px}
  .q-top,.q-out{padding:18px}
  .step,.an,.rev{padding:20px}
  .ballot{padding:18px}
  .votes button{width:100%;justify-content:space-between}
  .price .btns,.price .btns .btn{width:100%}
  .cta{padding-block:64px}
  .cta .ctas .btn{width:100%}
  .ctas .btn{flex:1 1 100%}
  .giant{padding-block:12px}
  .f-g{padding-block:48px 32px;gap:28px}
  .menu.open a{padding:14px 16px}
}
@media (max-width:420px){
  .brand b{font-size:16px}.mark{width:34px;height:34px;font-size:15px}
  .nav .btn{padding:9px 11px;font-size:11px;gap:6px}
  .burger{width:40px;height:40px}
  .hud{font-size:10px}
  h2.h2{font-size:clamp(28px,8.4vw,34px)}
  .pill{font-size:10px;letter-spacing:.06em}
  .grid15{gap:6px}
  .chai-add button{padding:5px 7px;font-size:10px}
  .pol .stk{width:68px;height:68px;font-size:21px}
}
section:has(.rack-c){overflow-x:clip}
@media (max-width:1180px){.rack-c{padding-inline:8px}.pol{transform:rotate(calc(var(--r) / 2))}.pol .stk{right:-8px}}
@media (max-width:560px){.fig{font-size:10px;letter-spacing:.08em;gap:8px}.fig .tag{letter-spacing:.04em}.devtoggle{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}

/* ===================== Lower sections · Kitchen order rail (chosen v5) ===================== */
/* ===================== V1 · KITCHEN ORDER RAIL ===================== */
.v1-rail{position:relative;height:18px;background:#C9CED4;border:2px solid var(--black);box-shadow:0 5px 0 var(--black);margin:0 -8px 0}
.v1-rail::before,.v1-rail::after{content:"";position:absolute;top:2px;width:10px;height:10px;border-radius:50%;background:var(--black)}
.v1-rail::before{left:10px}.v1-rail::after{right:10px}
.v1-tix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding-inline:20px}
.v1-t{position:relative;transform-origin:50% -18px;animation:swing 4.5s ease-in-out infinite;animation-delay:var(--d)}
.v1-t:hover{animation-play-state:paused}
@keyframes swing{0%,100%{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}}
.v1-t .clip{width:46px;height:22px;margin:0 auto;background:var(--black);border-radius:0 0 6px 6px;position:relative}
.v1-t .clip::after{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:4px;background:#C9CED4}
.v1-paper{background:#FFFDF6;border:2px solid var(--black);border-bottom:0;padding:18px 18px 34px;clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),95% 100%,90% calc(100% - 10px),85% 100%,80% calc(100% - 10px),75% 100%,70% calc(100% - 10px),65% 100%,60% calc(100% - 10px),55% 100%,50% calc(100% - 10px),45% 100%,40% calc(100% - 10px),35% 100%,30% calc(100% - 10px),25% 100%,20% calc(100% - 10px),15% 100%,10% calc(100% - 10px),5% 100%,0 calc(100% - 10px))}
.v1-paper .no{display:flex;justify-content:space-between;font:700 11px var(--mono);text-transform:uppercase;border-bottom:2px dashed var(--black);padding-bottom:10px;margin-bottom:14px}
.v1-paper .no span:last-child{background:var(--c);color:var(--on,#fff);padding:1px 6px}
.v1-paper q{display:block;font:italic 400 14px/1.6 var(--mono);min-height:4.8em}
.v1-paper .by{display:flex;align-items:center;gap:10px;margin-top:16px;font:700 13px var(--display);text-transform:uppercase}
.v1-paper .by small{display:block;font:400 10px var(--mono);color:#777}
.v1-rc{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);border:2px solid var(--black);box-shadow:var(--sh-lg);background:#FFFDF6;background-image:linear-gradient(to right,transparent 58px,rgba(255,59,29,.45) 58px,rgba(255,59,29,.45) 60px,transparent 60px),repeating-linear-gradient(to bottom,transparent 0 31px,rgba(0,68,255,.14) 31px 32px)}
.v1-rc .l{padding:36px 32px 36px 84px;border-right:2px dashed var(--black)}
.v1-rc .tag{display:inline-block;font:700 11px var(--mono);text-transform:uppercase;background:var(--black);color:var(--white);padding:3px 8px;margin-bottom:14px}
.v1-rc h3{margin:0 0 16px;font-size:clamp(26px,2.8vw,36px);line-height:1;text-transform:uppercase;letter-spacing:-.04em}
.v1-book{width:150px;float:right;margin:0 0 10px 18px;perspective:700px}
.v1-book img{width:100%;transform:rotateY(-22deg) rotate(3deg);transition:transform .5s;box-shadow:-10px 10px 0 rgba(17,17,17,.15)}
.v1-book:hover img{transform:rotateY(0) rotate(0) scale(1.05)}
.v1-rc ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font:400 13px var(--mono)}
.v1-rc li{display:flex;gap:10px;align-items:center}
.v1-rc li::before{content:"✓";width:20px;height:20px;flex:none;display:grid;place-items:center;background:var(--teal);color:#fff;border:1.5px solid var(--black);font-size:12px}
.v1-rc form{padding:36px 32px;display:flex;flex-direction:column;gap:14px}
.v1-rc .v1-st{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:end}
.v1-rc .v1-st b{width:34px;height:34px;border:2px solid var(--black);display:grid;place-items:center;font:700 14px var(--mono);background:var(--yellow);margin-bottom:2px}
.v1-chef{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:56px;align-items:center}
.v1-lanyard{display:flex;flex-direction:column;align-items:center}
.v1-strap{width:40px;height:90px;background:repeating-linear-gradient(45deg,var(--red) 0 10px,var(--black) 10px 20px);clip-path:polygon(0 0,100% 0,62% 100%,38% 100%)}
.v1-badge{width:min(300px,100%);background:var(--white);border:2px solid var(--black);box-shadow:var(--sh-lg);transform-origin:50% -60px;animation:swing 5s ease-in-out infinite}
.v1-badge .hole{width:46px;height:10px;border-radius:6px;border:2px solid var(--black);margin:10px auto}
.v1-badge .top{background:var(--yellow);border-block:2px solid var(--black);padding:8px 14px;font:700 11px var(--mono);text-transform:uppercase;display:flex;justify-content:space-between}
.v1-badge img{width:62%;margin:16px auto;border:2px solid var(--black)}
.v1-badge .nm{text-align:center;font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:-.03em}
.v1-badge .rl{text-align:center;font:400 11px var(--mono);text-transform:uppercase;color:#666;margin-bottom:12px}
.v1-badge .bar{height:34px;margin:0 18px 16px;background:repeating-linear-gradient(90deg,var(--black) 0 2px,transparent 2px 4px,var(--black) 4px 7px,transparent 7px 9px,var(--black) 9px 10px,transparent 10px 13px)}
.v1-bio .k{font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--blue)}
.v1-bio h3{margin:8px 0 16px;font-size:clamp(30px,3.6vw,48px);line-height:.98;text-transform:uppercase;letter-spacing:-.045em}
.v1-bio p{font-size:16px;line-height:1.7;color:#333;margin:0 0 22px;max-width:36em}
.v1-skills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid var(--black)}
.v1-skills div{padding:14px;font:700 12px var(--mono);text-transform:uppercase}
.v1-skills div + div{border-left:2px solid var(--black)}
.v1-skills b{display:block;font:700 30px var(--display);letter-spacing:-.04em;color:var(--c)}
.v1-faq{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:40px;align-items:start}
.v1-faq details{border-bottom:2px solid var(--black)}
.v1-faq details:first-child{border-top:2px solid var(--black)}
.v1-faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:56px 1fr 30px;gap:16px;align-items:center;padding:20px 0;font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:-.02em}
.v1-faq summary::-webkit-details-marker{display:none}
.v1-faq summary .n{width:48px;height:48px;border-radius:50%;border:2px solid var(--black);display:grid;place-items:center;font:700 15px var(--mono);background:var(--c);color:var(--on,#fff)}
.v1-faq summary .pm{font:700 24px var(--mono);transition:transform .2s}
.v1-faq details[open] .pm{transform:rotate(45deg)}
.v1-faq .a{padding:0 46px 22px 72px;font:400 14px/1.7 var(--mono);color:#333}
.v1-side{position:sticky;top:90px;border:2px solid var(--black);background:var(--teal);color:var(--white);padding:26px;box-shadow:var(--sh-lg)}
.v1-side h4{margin:0 0 8px;font-size:24px;text-transform:uppercase;letter-spacing:-.03em;line-height:1.05}
.v1-side p{margin:0 0 18px;font-size:14px}

@media (max-width:980px){
  .v1-tix{grid-template-columns:minmax(0,1fr);gap:28px}
  .v1-rc,.v1-chef,.v1-faq{grid-template-columns:minmax(0,1fr)}
  .v1-rc .l{border-right:0;border-bottom:2px dashed var(--black)}
  .v1-side{position:static}
}
@media (max-width:560px){
  .v1-rc .l{padding:28px 20px 28px 72px}.v1-rc form{padding:24px 20px}
  .v1-book{width:110px}
  .v1-skills{grid-template-columns:minmax(0,1fr)}.v1-skills div + div{border-left:0;border-top:2px solid var(--black)}
  .v1-faq summary{grid-template-columns:42px 1fr 24px;font-size:15px}.v1-faq summary .n{width:38px;height:38px;font-size:12px}.v1-faq .a{padding:0 0 18px 58px}
}
@media (prefers-reduced-motion:reduce){.v1-t,.v1-badge{animation:none}}
