
/* Layout: one long groovy scroll. Cream paper base, chunky color bands, sticker cards with hard offset shadows, checkerboard trim. Single committed look. */
:root{
  --cream:#ffffff; --paper:#ffffff; --ink:#3f052d; --ink-soft:#3f052d;
  /* exact logo colors */ --pink:#fa1f7c; --orange:#fd7401; --yellow:#fdc101; --purple:#ab15a4; --teal:#18acbc; --red:#f14400;
  --display:"Shrikhand","Cooper Black",Georgia,serif; --label:"Bungee","Arial Black",Impact,sans-serif; --body:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gut:max(16px,env(safe-area-inset-left,0px)); --gutr:max(16px,env(safe-area-inset-right,0px));
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{background:var(--cream);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.5;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.in{max-width:1180px;margin:0 auto;padding-left:var(--gut);padding-right:var(--gutr)}
h1,h2,h3{text-wrap:balance;margin:0}
.lbl{font-family:var(--label);letter-spacing:.04em;text-transform:uppercase}
.price{font-family:var(--label);font-variant-numeric:tabular-nums;white-space:nowrap}

/* checker trim */
.checker{height:22px;background:repeating-conic-gradient(var(--ink) 0 25%,var(--paper) 0 50%) 0 0/22px 22px}

/* NAV */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--ink)}
nav.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--ink);color:var(--paper)}
nav.top .in{display:flex;align-items:center;gap:18px;padding-block:8px}
nav.top .brand img{height:46px;width:auto}
nav.top .links{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
nav.top .links a{font-family:var(--label);font-size:14px;text-decoration:none;padding:8px 12px;border-radius:999px}
nav.top .links a:hover,nav.top .links a:focus-visible{background:var(--pink);outline:none}
.status{font-family:var(--label);font-size:13px;padding:7px 12px;border-radius:999px;background:var(--purple);white-space:nowrap}
.status.open{background:var(--teal);color:var(--ink)}
.status.closed{background:var(--red);color:#fff}
@media (max-width:760px){nav.top .links{display:none}nav.top .status{margin-left:auto}}

/* HERO */
.hero{position:relative;overflow:hidden;border-bottom:4px solid var(--ink);background:var(--ink) url(img/hero-bg.jpg) 70% center/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(63,5,45,.72) 0%,rgba(63,5,45,.45) 38%,rgba(63,5,45,0) 62%)}
.hero .in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,540px);align-items:center;padding-block:44px 52px}
.hero-card{background:var(--paper);border:4px solid var(--ink);border-radius:28px;padding:26px 26px 30px;box-shadow:10px 10px 0 var(--ink);min-width:0}
.hero-card .logo{width:min(320px,100%);height:auto;aspect-ratio:900/611;object-fit:contain;margin:-6px 0 8px;animation:bob 4s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px) rotate(-1deg)}}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(32px,4.2vw,50px);line-height:1.02;color:var(--ink)}
.hero h1 .hl{color:var(--pink);-webkit-text-stroke:0}
.hero p.sub{margin:14px 0 0;font-size:19px;color:var(--ink-soft);max-width:46ch}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.btn{font-family:var(--label);font-size:16px;text-decoration:none;padding:14px 20px;border:3px solid var(--ink);border-radius:16px;background:var(--yellow);color:var(--ink);box-shadow:5px 5px 0 var(--ink);transition:transform .12s,box-shadow .12s;display:inline-block;cursor:pointer}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}
.btn:focus-visible{outline:4px solid var(--teal);outline-offset:3px}
.btn.pink{background:var(--pink);color:#fff}
.hero-photo{position:relative;min-width:0}
.hero-photo img{width:100%;aspect-ratio:1122/420;object-fit:cover;border:4px solid var(--ink);border-radius:26px;box-shadow:10px 10px 0 var(--ink);transform:rotate(2deg)}
.sticker{position:absolute;font-family:var(--label);background:var(--yellow);border:3px solid var(--ink);border-radius:999px;padding:10px 14px;box-shadow:4px 4px 0 var(--ink);font-size:14px;transform:rotate(-8deg)}
.sticker.s1{left:-10px;top:-18px}
.sticker.s2{right:-6px;bottom:-22px;background:var(--teal);color:#fff;transform:rotate(6deg)}
@media (max-width:860px){.hero{background-image:url(img/hero-bg-m.jpg);background-size:100% auto;background-position:top center;background-color:var(--ink)}.hero::after{background:linear-gradient(180deg,rgba(63,5,45,0) 0,rgba(63,5,45,0) 150px,var(--ink) 260px)}.hero .in{grid-template-columns:1fr}}

/* MARQUEE */
.marquee{background:var(--pink);color:#fff;border-block:4px solid var(--ink);overflow:hidden;white-space:nowrap}
.marquee .track{display:inline-flex;gap:34px;padding-block:12px;animation:slide 26s linear infinite;font-family:var(--label);font-size:20px}
.marquee .track span::after{content:"\2605";margin-left:34px;color:var(--yellow)}
@keyframes slide{to{transform:translateX(-50%)}}

/* SECTIONS */
section.band{padding-block:64px}
.head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px;margin-bottom:26px}
.head h2{font-family:var(--display);font-weight:400;font-size:clamp(34px,5vw,54px);line-height:1;color:var(--ink)}
.head h2 .alt{color:var(--orange)}
.head p{margin:0;max-width:44ch;color:var(--ink-soft)}
.band.dark{background:var(--ink);color:var(--paper)}
.band.dark .head h2{color:var(--yellow)}
.band.dark .head p{color:#fff}
.band.orange{background:var(--orange)}
.band.purple{background:var(--purple);color:#fff}
.band.purple .head h2{color:#fff}.band.purple .head p{color:#fff}

/* specialty dogs */
.dogs{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;align-items:stretch}
.dog-list{display:grid;gap:14px;min-width:0}
.dog{display:grid;grid-template-columns:1fr auto auto;gap:6px 18px;align-items:baseline;background:var(--paper);border:3px solid var(--ink);border-radius:18px;padding:14px 18px;box-shadow:5px 5px 0 var(--ink);transition:transform .15s}
.dog:hover{transform:rotate(-.6deg) translateY(-2px)}
.dog h3{font-family:var(--display);font-weight:400;font-size:24px;color:var(--ink)}
.dog .desc{grid-column:1/-1;margin:-2px 0 0;color:var(--ink-soft);font-size:15px}
.dog .price{font-size:18px}
.dog .combo{color:var(--orange)}
.colhead{display:grid;grid-template-columns:1fr auto auto;gap:18px;padding:0 18px;font-family:var(--label);font-size:12px;color:var(--ink-soft)}
.colhead span:nth-child(2),.colhead span:nth-child(3){width:64px;text-align:right}
.dog .price{width:64px;text-align:right}
.chi{position:relative;border:4px solid var(--ink);border-radius:26px;overflow:hidden;box-shadow:10px 10px 0 var(--ink);background:var(--ink);min-height:320px}
.chi img{width:100%;height:100%;object-fit:cover}
.chi .tag{position:absolute;left:16px;bottom:16px;right:16px;background:var(--yellow);border:3px solid var(--ink);border-radius:16px;padding:12px 14px;font-weight:600}
.chi .tag b{font-family:var(--display);font-weight:400;font-size:22px;display:block}
.note{font-size:14px;color:var(--ink-soft);margin:12px 0 0}
@media (max-width:860px){.dogs{grid-template-columns:1fr}.chi{min-height:0;aspect-ratio:4/3}}

/* runners & burgers cards */
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:980px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.cards{grid-template-columns:1fr}}
.card{background:var(--paper);color:var(--ink);border:4px solid var(--ink);border-radius:22px;overflow:hidden;box-shadow:7px 7px 0 var(--ink);display:flex;flex-direction:column;transition:transform .15s}
.card:nth-child(odd):hover{transform:rotate(-1.2deg) scale(1.02)}
.card:nth-child(even):hover{transform:rotate(1.2deg) scale(1.02)}
.card .ph{aspect-ratio:4/3;overflow:hidden;border-bottom:4px solid var(--ink);background:var(--ink)}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card .bd{padding:14px 16px 18px;display:grid;gap:6px;flex:1}
.card h3{font-family:var(--label);font-size:17px;line-height:1.15}
.card p{margin:0;font-size:15px;color:var(--ink-soft)}
.card .pp{margin-top:auto;justify-self:start;background:var(--yellow);border:3px solid var(--ink);border-radius:999px;padding:5px 12px;font-size:17px}
.band.dark .card{box-shadow:7px 7px 0 var(--pink)}
.band.purple .card{box-shadow:7px 7px 0 var(--yellow)}

/* full menu tabs */
.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.tab{font-family:var(--label);font-size:15px;padding:11px 16px;border:3px solid var(--ink);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);min-height:44px}
.tab[aria-selected="true"]{background:var(--pink);color:#fff}
.tab:focus-visible{outline:4px solid var(--teal);outline-offset:2px}
.panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
@media (max-width:820px){.panel{grid-template-columns:1fr}}
.box{background:var(--paper);border:4px solid var(--ink);border-radius:22px;box-shadow:7px 7px 0 var(--ink);overflow:hidden;min-width:0}
.box h3{font-family:var(--label);font-size:20px;background:var(--orange);color:#fff;padding:12px 18px;border-bottom:4px solid var(--ink);display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.box h3 small{font-family:var(--body);font-weight:600;font-size:13px;text-transform:none;letter-spacing:0;opacity:.95}
.box.g h3{background:var(--orange)}.box.p h3{background:var(--purple)}.box.t h3{background:var(--teal)}
.rows{padding:10px 18px 4px}
.row{display:flex;gap:10px;align-items:baseline;padding:7px 0;border-bottom:2px dotted var(--yellow)}
.row:last-child{border-bottom:0}
.row .n{font-weight:600}
.row .n small{font-weight:400;color:var(--ink-soft)}
.row .dots{flex:1}
.row .price{font-size:16px}
.row .price + .price{color:var(--orange);min-width:62px;text-align:right}
.row.hdr{font-family:var(--label);font-size:12px;color:var(--ink-soft);border-bottom:2px solid var(--ink)}
.box .fine{margin:0;padding:6px 18px 16px;font-size:14px;color:var(--ink-soft)}
.box .pic{height:150px;border-bottom:4px solid var(--ink)}
.box .pic img{width:100%;height:100%;object-fit:cover}

/* builder */
.builder{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:start}
@media (max-width:900px){.builder{grid-template-columns:1fr}}
.step{background:var(--paper);color:var(--ink);border:4px solid var(--ink);border-radius:22px;padding:18px 18px 20px;box-shadow:7px 7px 0 var(--ink);margin-bottom:18px}
.step h3{font-family:var(--label);font-size:17px;margin-bottom:12px;display:flex;gap:10px;align-items:center}
.step h3 .num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pink);color:#fff;font-size:15px;border:3px solid var(--ink)}
.opts{display:flex;flex-wrap:wrap;gap:10px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.opt span{display:inline-flex;gap:8px;align-items:center;font-weight:600;padding:10px 14px;border:3px solid var(--ink);border-radius:14px;background:#fff;min-height:44px;transition:background .12s,transform .12s}
.opt span em{font-style:normal;font-family:var(--label);font-size:12px;color:var(--ink-soft)}
.opt input:checked + span{background:var(--yellow);transform:translateY(-2px);box-shadow:3px 3px 0 var(--ink)}
.opt input:focus-visible + span{outline:4px solid var(--teal);outline-offset:2px}
.opt input:disabled + span{opacity:.4}
.ticket{position:sticky;top:calc(env(safe-area-inset-top,0px) + 80px);background:var(--paper);color:var(--ink);border:4px solid var(--ink);border-radius:22px;box-shadow:10px 10px 0 var(--yellow);overflow:hidden}
.ticket .tt{background:var(--ink);color:var(--yellow);font-family:var(--label);padding:12px 18px;font-size:18px}
.ticket ul{list-style:none;margin:0;padding:14px 18px;display:grid;gap:6px;min-height:120px}
.ticket li{display:flex;justify-content:space-between;gap:12px;font-size:15px}
.ticket li .price{font-size:14px}
.ticket .total{border-top:3px dashed var(--ink);padding:14px 18px 18px;display:flex;justify-content:space-between;align-items:baseline}
.ticket .total b{font-family:var(--display);font-weight:400;font-size:22px}
.ticket .total .price{font-size:30px;color:var(--pink)}
.ticket .fine{margin:0;padding:0 18px 16px;font-size:13px;color:var(--ink-soft)}

/* hours */
.hours{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
@media (max-width:860px){.hours{grid-template-columns:1fr}}
.hcard{background:var(--paper);border:4px solid var(--ink);border-radius:26px;box-shadow:10px 10px 0 var(--ink);overflow:hidden}
.hcard table{width:100%;border-collapse:collapse}
.hcard td{padding:13px 22px;border-bottom:2px solid var(--yellow);font-family:var(--label);font-size:17px}
.hcard td:last-child{text-align:right}
.hcard tr.today td{background:var(--yellow)}
.hcard td.cl{color:var(--red)}
.hstat{padding:18px 22px;border-bottom:4px solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--display);font-size:24px}
.hstat .dot{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--red);margin-right:10px;vertical-align:middle}
.hstat.open .dot{background:var(--teal);box-shadow:0 0 0 6px rgba(24,172,188,.25)}
.hstat.closed .dot{background:var(--red)}
.find{background:var(--teal);border:4px solid var(--ink);border-radius:26px;box-shadow:10px 10px 0 var(--ink);padding:26px;color:var(--ink);display:grid;gap:12px;align-content:start;position:relative;overflow:hidden}
.find h3{font-family:var(--display);font-weight:400;font-size:40px;line-height:1;color:#fff;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}
.find p{margin:0;font-size:18px;font-weight:600}
.find .soon{display:inline-block;background:var(--paper);border:3px solid var(--ink);border-radius:12px;padding:8px 12px;font-family:var(--label);font-size:14px;justify-self:start}

footer{background:var(--ink);color:var(--paper);padding-block:34px 40px}
footer .in{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
footer img{height:70px;width:auto}
footer p{margin:0;font-size:14px;color:#fff}
footer .dom{font-family:var(--label);color:var(--yellow);font-size:18px}

/* ---- multi-page additions ---- */
nav.top .links a[aria-current="page"]{background:var(--yellow);color:var(--ink)}
@media (max-width:760px){
  nav.top .in{flex-wrap:wrap;row-gap:4px}
  nav.top .links{display:flex;order:3;width:100%;margin-left:0;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:4px}
  nav.top .links a{white-space:nowrap;background:var(--purple)}
}
.pagehead{background:var(--pink);border-bottom:4px solid var(--ink)}
.pagehead .in{padding-block:38px 34px;display:flex;flex-wrap:wrap;gap:16px;align-items:end;justify-content:space-between}
.pagehead h1{font-family:var(--display);font-weight:400;font-size:clamp(40px,7vw,76px);line-height:.95;color:#fff;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:6px 6px 0 var(--ink)}
.pagehead p{margin:0;max-width:44ch;color:#fff;font-weight:600;font-size:18px}
.pagehead.orange{background:var(--orange)}
.pagehead.teal{background:var(--teal)}
.more{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px}
.visitstrip{background:var(--yellow);border-block:4px solid var(--ink)}
.visitstrip .in{padding-block:26px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.visitstrip b{font-family:var(--display);font-weight:400;font-size:30px}
.visitstrip span{font-family:var(--label);font-size:16px;display:block;margin-top:4px}
.pagehead + .band{padding-top:36px}
@media (max-width:760px){.hero-card .logo{width:min(280px,80%);margin-inline:auto}.hero .in{padding-block:min(200px,50vw) 36px}section.band{padding-block:44px}}

/* ---------- order button (nav) ---------- */
.order-btn{font-family:var(--label);font-size:14px;text-decoration:none;padding:8px 14px;border-radius:999px;background:var(--pink);color:#fff;border:2px solid var(--paper);white-space:nowrap}
.order-btn:hover,.order-btn:focus-visible{background:var(--yellow);color:var(--ink);outline:none}
.order-btn.soon,.btn.soon{opacity:.75;cursor:default}
.btn.ghost{background:var(--paper)}
@media (max-width:760px){nav.top .order-btn{order:2;margin-left:auto}}

/* ---------- dog of the week ---------- */
.dotw{background:var(--cream);padding-block:56px 20px}
.dotw-card{display:grid;grid-template-columns:1.1fr 1fr;background:var(--yellow);border:4px solid var(--ink);border-radius:28px;overflow:hidden;box-shadow:10px 10px 0 var(--ink)}
.dotw-ph{position:relative;border-right:4px solid var(--ink);min-height:260px;background:var(--ink)}
.dotw-ph img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.dotw-badge{position:absolute;top:16px;left:16px;background:var(--pink);color:#fff;border:3px solid var(--ink);border-radius:999px;padding:8px 16px;font-family:var(--label);font-size:13px;line-height:1.15;transform:rotate(-4deg);box-shadow:4px 4px 0 var(--ink);text-align:center}
.dotw-badge b{display:block;font-size:17px;font-weight:400}
.dotw-bd{padding:30px 30px 34px;display:grid;align-content:center;gap:12px}
.kicker{margin:0;font-size:14px;color:var(--purple)}
.dotw-bd h2{font-family:var(--display);font-weight:400;font-size:clamp(32px,4.4vw,50px);line-height:1}
.dotw-bd p{margin:0;font-size:18px;color:var(--ink-soft)}
.dotw-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:8px}
.price.big{font-size:34px}
@media (max-width:760px){.dotw-card{grid-template-columns:1fr}.dotw-ph{border-right:0;border-bottom:4px solid var(--ink);min-height:0;aspect-ratio:4/3}.dotw-bd{padding:22px 20px 26px}}

/* ---------- reviews ---------- */
.reviews{background:var(--paper);border-top:4px solid var(--ink)}
.rev-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.rev{background:#fff;border:3px solid var(--ink);border-radius:20px;padding:18px 18px 16px;box-shadow:6px 6px 0 var(--ink);margin:0}
.rev .stars{color:var(--orange);font-size:20px;letter-spacing:2px}
.rev blockquote{margin:8px 0 10px;font-size:17px}
.rev figcaption{font-family:var(--label);font-size:13px;color:var(--ink-soft)}

/* ---------- text club ---------- */
.textclub{background:var(--purple);color:#fff;border-top:4px solid var(--ink)}
.textclub .in{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;padding-block:56px}
.textclub .kicker{color:var(--yellow)}
.textclub h2{font-family:var(--display);font-weight:400;font-size:clamp(32px,4.6vw,52px);line-height:1;margin:8px 0 12px}
.textclub .tc-copy p{color:#fff;font-size:18px;margin:0}
.tc-form{background:var(--paper);color:var(--ink);border:4px solid var(--ink);border-radius:24px;padding:22px;box-shadow:8px 8px 0 var(--ink);display:grid;gap:14px}
.tc-form label{display:grid;gap:6px;font-family:var(--label);font-size:14px}
.tc-form input[type=tel],.tc-form input:not([type]){font:inherit;font-family:var(--body);font-size:17px;padding:12px 14px;border:3px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink);min-width:0}
.tc-form input:focus-visible{outline:4px solid var(--teal);outline-offset:1px}
.tc-form .consent{display:flex;gap:10px;align-items:flex-start;font-family:var(--body);font-size:13px;line-height:1.4;color:var(--ink-soft)}
.tc-form .consent input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--pink)}
.tc-msg{margin:0;font-weight:600;min-height:1.4em}
@media (max-width:760px){.textclub .in{grid-template-columns:1fr;padding-block:44px}}

/* ---------- our story ---------- */
.pagehead.purple{background:var(--purple)}
.story-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start}
.story-logo img{width:100%;height:auto;animation:bob 4s ease-in-out infinite}
.story-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.story-chips span{font-family:var(--label);font-size:14px;padding:9px 14px;border:3px solid var(--ink);border-radius:999px;box-shadow:4px 4px 0 var(--ink);background:var(--yellow)}
.story-chips span:nth-child(2){background:var(--teal)}
.story-chips span:nth-child(3){background:var(--pink);color:#fff}
.story-chips span:nth-child(4){background:var(--orange)}
.story-copy p{font-size:19px;margin:0 0 16px;max-width:60ch}
.story-copy p.lead{font-size:22px;font-weight:600}
.story-copy .kicker{margin-bottom:8px}
.story-rule{height:6px;width:120px;border-radius:3px;background:var(--yellow);margin:26px 0}
.kicker-line{font-family:var(--display);font-size:clamp(26px,3.4vw,36px)!important;line-height:1.1;color:var(--pink)}
.storyteaser{background:var(--paper);border-top:4px solid var(--ink)}
.st-card{background:var(--purple);color:#fff;border:4px solid var(--ink);border-radius:28px;box-shadow:10px 10px 0 var(--ink);padding:34px 34px 38px;display:grid;gap:14px;justify-items:start}
.st-card .kicker{color:var(--yellow)}
.st-card h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,4.4vw,50px);line-height:1}
.st-card h2 .alt{color:var(--yellow)}
.st-card p{margin:0;font-size:19px;max-width:62ch}
footer .tagline{font-family:var(--label);color:var(--yellow);font-size:15px;margin-bottom:4px}
@media (max-width:760px){.story-grid{grid-template-columns:1fr;gap:26px}.story-logo{max-width:340px}.st-card{padding:24px 20px 28px}}

/* ---------- photo rows ---------- */
.photorow{padding-block:44px 8px;background:var(--paper);overflow:hidden}
.photorow.alt{padding-block:8px 56px}
.pr-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:26px;align-items:stretch}
.photorow.alt .pr-grid{grid-template-columns:1fr 1.25fr}
.pr-grid figure{margin:0;position:relative;border:4px solid var(--ink);border-radius:24px;overflow:hidden;box-shadow:8px 8px 0 var(--ink);background:var(--ink);aspect-ratio:3/2}
.pr-grid figure.pr-b{transform:rotate(1.2deg)}
.pr-grid img{width:100%;height:100%;object-fit:cover}
.pr-grid figcaption{position:absolute;left:14px;bottom:14px;background:var(--yellow);color:var(--ink);border:3px solid var(--ink);border-radius:999px;padding:7px 14px;font-family:var(--label);font-size:14px;box-shadow:3px 3px 0 var(--ink)}
.pr-grid figure.pr-b figcaption{background:var(--pink);color:#fff}
@media (max-width:760px){.pr-grid,.photorow.alt .pr-grid{grid-template-columns:1fr;gap:20px}.pr-grid figure.pr-b{transform:none}}

/* ---------- menu page upgrade ---------- */
.pagehead.photo{position:relative;background:var(--ink) url(img/footlong-duo.jpg) center 60%/cover no-repeat;overflow:hidden}
.pagehead.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(63,5,45,.92) 0%,rgba(63,5,45,.6) 45%,rgba(63,5,45,.15) 100%)}
.pagehead.photo .in{position:relative;padding-block:70px 60px}
#menu .tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:30px;position:sticky;top:70px;z-index:20;background:var(--paper);padding:10px 0}
#menu .tab{display:flex;flex-direction:column;align-items:stretch;padding:0;border-radius:18px;overflow:hidden;text-align:center;box-shadow:4px 4px 0 var(--ink);transition:transform .12s}
#menu .tab img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-bottom:3px solid var(--ink)}
#menu .tab span{padding:8px 6px;font-size:13px;line-height:1.15}
#menu .tab:hover{transform:translateY(-3px)}
#menu .tab[aria-selected="true"]{background:var(--pink);color:#fff;transform:translateY(-3px);box-shadow:4px 6px 0 var(--ink)}
.panel-hero{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;height:330px;border:4px solid var(--ink);border-radius:26px;overflow:hidden;box-shadow:8px 8px 0 var(--ink);min-height:260px;background:var(--pink);color:#fff}
.panel-hero img{width:100%;height:100%;object-fit:cover;border-right:4px solid var(--ink);min-height:240px}
.panel-hero .ph-copy{padding:28px 30px;display:grid;align-content:center;gap:8px}
.panel-hero .kicker{color:var(--yellow)}
.panel-hero h2{font-family:var(--display);font-weight:400;font-size:clamp(36px,4.6vw,58px);line-height:1}
.panel-hero p{margin:0;font-size:18px}
.panel-hero.orange{background:var(--orange)}.panel-hero.purple{background:var(--purple)}.panel-hero.teal{background:var(--teal);color:var(--ink)}
.panel-hero.teal .kicker{color:var(--ink)}.panel-hero.orange .kicker{color:var(--ink)}
.sig-cards{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.linkbox{display:block;text-decoration:none;color:inherit;transition:transform .12s}
.linkbox:hover{transform:rotate(-1deg) scale(1.01)}
@media (max-width:980px){#menu .tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.sig-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  #menu .tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:10px;top:107px;scroll-snap-type:x mandatory;padding:8px 2px 12px}
  #menu .tab{flex:0 0 112px;scroll-snap-align:start}
  #menu .tab span{font-size:12px}
  .panel-hero{grid-template-columns:1fr;height:auto}.panel-hero img{border-right:0;border-bottom:4px solid var(--ink);aspect-ratio:16/10;min-height:0}
  .panel-hero .ph-copy{padding:20px}
  .pagehead.photo .in{padding-block:48px 40px}
}
@media (max-width:520px){.sig-cards{grid-template-columns:1fr 1fr;gap:12px}.sig-cards .card h3{font-size:14px}.sig-cards .card p{font-size:13px}}

/* ---------- mobile nav (no cut-off text) ---------- */
.navtoggle{display:none}
@media (max-width:760px){
  nav.top .in{flex-wrap:wrap;gap:10px;row-gap:0;padding-block:8px}
  nav.top .brand img{height:40px}
  nav.top .status{order:2;margin-left:auto;font-size:12px;padding:6px 10px}
  nav.top .order-btn{order:3;margin-left:0;font-size:12px;padding:6px 10px}
  .navtoggle{order:4;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:40px;padding:0 10px;border:2px solid var(--paper);border-radius:12px;background:var(--purple);cursor:pointer}
  .navtoggle span{display:block;height:3px;border-radius:2px;background:#fff;transition:transform .2s,opacity .2s}
  nav.top.open .navtoggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  nav.top.open .navtoggle span:nth-child(2){opacity:0}
  nav.top.open .navtoggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .navtoggle:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
  nav.top .links{display:none;order:5;width:100%;flex-direction:column;flex-wrap:nowrap;overflow:visible;gap:8px;margin:10px 0 6px;padding:0}
  nav.top.open .links{display:flex}
  nav.top .links a{display:block;width:100%;text-align:center;font-size:17px;padding:13px 16px;white-space:normal;background:var(--purple);border:2px solid var(--paper)}
  nav.top .links a[aria-current="page"]{background:var(--yellow);color:var(--ink);border-color:var(--ink)}
}
@media (max-width:370px){nav.top .status{display:none}nav.top .order-btn{margin-left:auto}}
/* menu tabs: full grid on phones, nothing cut off */
@media (max-width:760px){
  #menu .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:8px;position:static;padding:0}
  #menu .tab{flex:none}
  #menu .tab span{font-size:11px;padding:6px 4px;overflow-wrap:anywhere}
}
