/* Foo For Thought — "Grit" redesign
   Vintage diner order pad meets 90's gig poster. */

:root{
  --charcoal:#1A1A1A;
  --parchment:#F4EFEB;
  --red:#C8382B;
  --red-dark:#9e2a20;
  --offwhite:#E0E0E0;
  --card:#FBF8F2;
  --muted:#4a4540;
  --tape:rgba(232,224,205,.85);
  --ease:cubic-bezier(.2,.8,.2,1);
  --section-pad:clamp(56px,8vw,100px) clamp(16px,4vw,40px);
  --f-display:'Bebas Neue',sans-serif;
  --f-label:'Oswald',sans-serif;
  --f-body:'Special Elite',monospace;
  --f-hand:'Reenie Beanie',cursive;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--charcoal);color:var(--charcoal);font-family:var(--f-body);-webkit-font-smoothing:antialiased;}
a{color:var(--red);}
a:hover{color:var(--red-dark);}
input,textarea,button{font:inherit;}
img{max-width:100%;}
:focus-visible{outline:2px dashed var(--red);outline-offset:3px;}
[hidden]{display:none !important;}
[id]{scroll-margin-top:64px;}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

/* clip (not hidden) so tapes/rotations never cause sideways scroll AND sticky nav still works */
.site{position:relative;background:var(--charcoal);overflow-x:clip;}

/* Show/pop-up content expires automatically after the gig (class set in <head>) */
.show-over [data-show]{display:none !important;}

/* ---------- Motion: hide until played (only when JS motion is active) ---------- */
.motion [data-anim]:not([data-done]){opacity:0;}

/* ---------- Ambient film grain (dark background only) ---------- */
.grain{position:fixed;inset:-140px;pointer-events:none;opacity:.13;will-change:translate;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .957 0 0 0 0 .937 0 0 0 0 .922 24 0 0 0 -15.6'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23s)'/%3E%3C/svg%3E");}

/* ---------- Shared pieces ---------- */
.tape{position:absolute;background:var(--tape);}
.kicker{font-family:var(--f-hand);font-size:34px;line-height:1;color:var(--red);transform:rotate(-2deg);}
.kicker--left{transform-origin:left;}
.h2{margin:0;font-family:var(--f-display);font-weight:400;font-size:clamp(64px,9vw,112px);line-height:.9;}
.h2--tight{line-height:.88;}
.rule{width:min(420px,80%);height:8px;margin:6px 0 10px;border-top:4px solid var(--charcoal);border-bottom:1px solid var(--charcoal);}
.rule--red{border-color:var(--red);}
.rule--sm{width:min(300px,70%);}
.rule--left{width:180px;margin:0;}
.section{position:relative;padding:var(--section-pad);}
.section--paper{background-color:var(--parchment);background-image:url(tex/mottle2.png);}
.section--dark{color:var(--parchment);}
.section-head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:clamp(32px,5vw,56px);}
.section-head--lg{margin-bottom:clamp(36px,5vw,60px);}
.intro{margin:0;font-size:19px;line-height:1.5;max-width:560px;text-wrap:pretty;}
.section--dark .intro{color:var(--offwhite);}
.body-copy{margin:0;font-size:19px;line-height:1.6;text-wrap:pretty;}
.section--dark .body-copy{color:var(--offwhite);}
.label-red{font-family:var(--f-label);font-weight:600;font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);}

/* Buttons — "offset print" */
.btn{display:inline-block;transform:rotate(-2deg);background:var(--red);color:var(--parchment);text-decoration:none;border:0;cursor:pointer;
  font-family:var(--f-label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;box-shadow:3px 4px 0 var(--charcoal);}
.btn:hover{background:var(--charcoal);color:var(--parchment);box-shadow:3px 4px 0 var(--red);}
.btn--lg{font-size:22px;padding:14px 30px;}
.btn--md{font-size:19px;padding:12px 24px;}
.btn--submit{font-size:19px;padding:14px 26px;}
.btn--on-dark{box-shadow:3px 4px 0 var(--parchment);}
.btn--on-dark:hover{background:var(--parchment);color:var(--charcoal);box-shadow:3px 4px 0 var(--red);}
.btn[disabled]{opacity:.7;cursor:progress;}
.btn-outline{border:2px solid var(--parchment);color:var(--parchment);text-decoration:none;font-family:var(--f-label);font-weight:600;font-size:16px;letter-spacing:.14em;text-transform:uppercase;padding:10px 18px;}
.btn-outline:hover{background:var(--red);border-color:var(--red);color:var(--parchment);}

/* Order number + stamps */
.order{display:flex;align-items:flex-end;gap:10px;}
.order__label{font-family:var(--f-label);font-weight:600;font-size:22px;line-height:1;}
.order__num{font-family:var(--f-hand);font-size:46px;line-height:.7;border-bottom:2px solid var(--charcoal);padding:0 34px 4px 8px;}
.order--sm .order__label{font-size:20px;}
.order--sm .order__num{font-size:44px;padding:0 28px 4px 8px;}
.order--pop .order__num{padding:0 24px 4px 8px;}
.stamp{border:3px solid var(--red);color:var(--red);font-family:var(--f-label);font-weight:600;opacity:.92;}
.date-stamp{transform:rotate(-3deg);text-align:center;}
.date-stamp__day{font-size:18px;padding:2px 12px;}
.date-stamp__sep{border-top:2px solid var(--red);}
.date-stamp__date{font-size:24px;padding:2px 12px 4px;white-space:nowrap;}
.date-stamp--lg .date-stamp__day{padding:2px 14px;}
.date-stamp--lg .date-stamp__date{font-size:26px;padding:2px 14px 4px;}

/* Venue */
.venue{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-top:2px dashed rgba(26,26,26,.4);padding-top:16px;}
.venue img{width:200px;height:auto;display:block;}
.venue__addr{font-family:var(--f-label);font-weight:600;font-size:20px;line-height:1.2;}
.venue__addr a{color:inherit;text-decoration:none;}
.venue__addr a:hover{color:var(--red);}
.venue--pop{gap:16px;}
.venue--pop img{width:170px;}
.venue--pop .venue__addr{font-size:19px;}

/* ---------- Top bar + nav ---------- */
.ribbon{position:relative;background:var(--red);color:var(--parchment);text-align:center;font-family:var(--f-label);font-weight:500;font-size:15px;letter-spacing:.14em;text-transform:uppercase;padding:9px 16px;}
.nav{position:sticky;top:0;z-index:20;background:rgba(26,26,26,.96);border-bottom:2px solid #2c2a28;}
.nav__inner{max-width:1240px;margin:0 auto;padding:12px clamp(16px,4vw,40px);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.nav__brand{font-family:var(--f-display);font-size:30px;line-height:1;color:var(--parchment);text-decoration:none;letter-spacing:.02em;}
.nav__brand:hover{color:var(--parchment);}
.nav__links{display:flex;align-items:center;gap:clamp(12px,2.2vw,28px);flex-wrap:wrap;font-family:var(--f-label);font-weight:500;font-size:16px;letter-spacing:.08em;text-transform:uppercase;}
.nav__links a{color:var(--offwhite);text-decoration:none;}
.nav__links a:hover{color:var(--red);}
.nav__links a.nav__reserve{color:var(--parchment);border:2px solid var(--red);background:var(--red);padding:6px 14px;}
.nav__links a.nav__reserve:hover{background:transparent;color:var(--parchment);}
.nav__toggle{display:none;width:44px;height:44px;border:2px solid rgba(244,239,235,.5);background:transparent;color:var(--parchment);font-family:var(--f-label);font-size:22px;line-height:1;cursor:pointer;}
.nav__toggle:hover{border-color:var(--red);color:var(--red);}

/* ---------- Hero ---------- */
.hero{position:relative;perspective:1600px;padding:clamp(36px,6vw,72px) clamp(14px,4vw,40px) clamp(48px,7vw,90px);}
.hero__wrap{position:relative;max-width:1080px;margin:0 auto;transform-style:preserve-3d;}
.hero__tape--l{left:-22px;top:18px;width:150px;height:40px;background:rgba(232,224,205,.82);transform:rotate(-28deg);z-index:3;}
.hero__tape--r{right:-18px;top:14px;width:140px;height:40px;background:rgba(232,224,205,.82);transform:rotate(24deg);z-index:3;}
.sheet{position:relative;transform:rotate(-.5deg);background-color:var(--parchment);
  background-image:url(tex/mottle2.png),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.6' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='0.09'/%3E%3C/svg%3E");
  box-shadow:inset 0 0 80px rgba(130,88,40,.3),0 24px 50px rgba(0,0,0,.55);
  padding:clamp(28px,5vw,60px) clamp(20px,5vw,64px) clamp(36px,5vw,60px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;}
.coffee-ring{position:absolute;right:8%;top:-40px;width:220px;height:220px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle, rgba(140,92,40,0) 61%, rgba(140,92,40,.28) 64%, rgba(140,92,40,.11) 68%, rgba(140,92,40,0) 71%);}
.order-row{align-self:stretch;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.hero__stamp{text-decoration:none;transform:rotate(-3deg);font-size:20px;line-height:1.1;padding:6px 14px;text-align:center;}
.hero__stamp:hover{color:var(--red);}
.hero__kicker{font-family:var(--f-label);font-weight:500;font-size:clamp(13px,1.6vw,17px);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:18px;}
.bandname{font-family:var(--f-display);align-self:stretch;container-type:inline-size;line-height:.84;margin:14px 0 4px;white-space:nowrap;text-align:center;}
.bandname__inner{position:relative;display:inline-block;}
.bandname__ink,.bandname__ghost{display:inline-block;font-size:clamp(80px,22vw,290px);font-size:30cqw;line-height:.84;}
.bandname__ghost{position:absolute;left:0;top:0;color:var(--red);opacity:0;mix-blend-mode:multiply;pointer-events:none;}
.bandname__ink{color:transparent;-webkit-background-clip:text;background-clip:text;
  background-image:url(tex/inkgrain.png),linear-gradient(100deg, #1A1A1A 0%, #1A1A1A 58%, #3a1512 72%, #8e2a20 86%, #C8382B 100%);background-size:512px 512px,100% 100%;}
.squeegee{position:absolute;top:-6%;bottom:-6%;left:0;width:12px;margin-left:-6px;background:linear-gradient(90deg,#1A1A1A 0 60%,#C8382B 60% 100%);border-radius:2px;opacity:0;pointer-events:none;box-shadow:6px 0 14px rgba(0,0,0,.25);}
.hero__tagline{font-family:var(--f-display);font-size:clamp(34px,5vw,60px);line-height:1;letter-spacing:.02em;color:var(--charcoal);}
.hero__lede{font-family:var(--f-body);font-size:clamp(17px,2vw,22px);line-height:1.45;max-width:560px;margin:14px 0 22px;text-wrap:pretty;}
.pinholes{position:absolute;inset:0;pointer-events:none;background-image:url(tex/pinhole2.png);}

/* ---------- The Menu ---------- */
.wrap-1240{max-width:1240px;margin:0 auto;}
.wrap-1160{max-width:1160px;margin:0 auto;}
.menu-cards{display:flex;flex-wrap:wrap;gap:clamp(22px,3vw,36px);align-items:stretch;}
/* 3 equal columns when the row is >= 980px, otherwise 1 column. Never 2 + 1. */
.menu-card{flex:1 1 calc((980px - 100%) * 999);min-width:0;position:relative;background:var(--card);box-shadow:0 10px 24px rgba(60,40,20,.22);padding:26px 26px 30px;border-top:10px solid var(--charcoal);
  transition:transform .45s var(--ease),box-shadow .45s;}
.menu-card--a{transform:rotate(-.8deg);}
.menu-card--b{transform:rotate(.5deg);border-top-color:var(--red);}
.menu-card--c{transform:rotate(-.4deg);}
.menu-card:hover{transform:rotate(0deg) translateY(-8px);box-shadow:0 24px 44px rgba(60,40,20,.3);}
.menu-card__head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px dashed rgba(26,26,26,.4);padding-bottom:10px;margin-bottom:12px;}
.menu-card__title{margin:0;font-family:var(--f-display);font-weight:400;font-size:46px;line-height:1;}
.genre{font-family:var(--f-label);font-weight:600;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);border:2px solid var(--red);padding:2px 8px;}
.genre--a{transform:rotate(-3deg);}
.genre--b{transform:rotate(2deg);}
.genre--c{transform:rotate(-2deg);}
.songs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:17px;line-height:1.3;}
.song{display:flex;gap:8px;align-items:baseline;}
.song__dots{flex:1;border-bottom:2px dotted rgba(26,26,26,.3);}
.song__yr{color:var(--red);}
.specials{margin-top:22px;padding-top:16px;border-top:2px dashed rgba(26,26,26,.4);font-size:16px;line-height:1.5;text-wrap:pretty;}
.specials strong{font-family:var(--f-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--red);}

/* ---------- Our Recipe ---------- */
.recipe{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(32px,5vw,64px);align-items:center;}
.recipe__photo{order:2;position:relative;transform:rotate(2deg);background:var(--offwhite);padding:12px 12px 52px;box-shadow:0 18px 36px rgba(0,0,0,.55);}
.recipe__tape{left:50%;top:-16px;width:140px;height:34px;margin-left:-70px;transform:rotate(-3deg);}
.recipe__photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;filter:grayscale(1) sepia(.12) contrast(1.05);}
.recipe__caption{position:absolute;left:0;right:0;bottom:10px;text-align:center;font-family:var(--f-hand);font-size:32px;color:var(--charcoal);}
.recipe__text{display:flex;flex-direction:column;gap:18px;}
.recipe__text .h2{color:var(--parchment);}
.signoff{font-family:var(--f-hand);font-size:40px;line-height:1;color:var(--parchment);transform:rotate(-3deg);transform-origin:left;margin-top:6px;}

/* ---------- Meet The Chefs ---------- */
/* 4 across when the row is >= 1000px, otherwise 2 across. Never 3 + 1. */
.chefs{display:flex;flex-wrap:wrap;gap:40px;}
.chef{flex:1 1 clamp(calc(25% - 30px), calc((1000px - 100%) * 999), calc(50% - 20px));min-width:0;display:flex;flex-direction:column;gap:14px;}
.chef__photo{position:relative;background:var(--offwhite);padding:9px;box-shadow:0 10px 22px rgba(0,0,0,.3);transition:transform .45s var(--ease),box-shadow .45s;}
.chefs .chef .chef__photo:hover{transform:rotate(0deg) translateY(-10px) scale(1.02);box-shadow:0 26px 40px rgba(0,0,0,.35);}
.chef__tape{left:50%;top:-14px;width:96px;height:28px;margin-left:-48px;z-index:1;}
.chef__frame{aspect-ratio:2/3;overflow:hidden;}
.chef__frame img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block;filter:grayscale(1) sepia(.12) contrast(1.05);}
/* Per-member framing (tuned so heads match in scale and height) */
.chef--rob .chef__photo{transform:rotate(-2.5deg);}  .chef--rob .chef__tape{transform:rotate(-4deg);}
.chef--rob .chef__frame img{transform:scale(1.5);transform-origin:62% 20%;}
.chef--sharx .chef__photo{transform:rotate(2deg);}   .chef--sharx .chef__tape{transform:rotate(3deg);}
.chef--syed .chef__photo{transform:rotate(-1.5deg);} .chef--syed .chef__tape{transform:rotate(-2deg);}
.chef--jake .chef__photo{transform:rotate(2.5deg);}  .chef--jake .chef__tape{transform:rotate(4deg);}
.chef--jake .chef__frame img{transform:scale(1.34);transform-origin:50% 52%;}
.chef__text{display:flex;flex-direction:column;gap:4px;padding:6px 4px 0;}
.chef__name{margin:0;font-family:var(--f-display);font-weight:400;font-size:44px;line-height:.95;}
.chef__role{font-family:var(--f-label);font-weight:600;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);}
.chef__bio{margin:6px 0 0;font-size:16px;line-height:1.5;text-wrap:pretty;}

/* ---------- Open Seatings ---------- */
.shows-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:clamp(28px,4vw,44px);align-items:stretch;}
.ticket{position:relative;transform:rotate(-.8deg);background-color:var(--parchment);background-image:url(tex/mottle2.png);color:var(--charcoal);
  box-shadow:inset 0 0 60px rgba(130,88,40,.28),0 18px 36px rgba(0,0,0,.5);padding:30px 30px 34px;display:flex;flex-direction:column;gap:14px;}
.ticket__tape{left:-14px;top:12px;width:110px;height:32px;transform:rotate(-30deg);}
.ticket__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;}
.ticket__title{margin:6px 0 0;font-family:var(--f-display);font-weight:400;font-size:clamp(48px,6vw,68px);line-height:.9;}
.ticket__foot{margin-top:auto;padding-top:8px;display:flex;}
.slogan-stamp{transform:rotate(-3deg);border:3px solid var(--red);color:var(--red);font-size:17px;letter-spacing:.04em;padding:5px 12px 4px;opacity:.92;}
.private{position:relative;border:2px dashed rgba(244,239,235,.4);padding:30px 30px 34px;display:flex;flex-direction:column;gap:14px;}
.private__title{margin:0;font-family:var(--f-display);font-weight:400;font-size:clamp(44px,5vw,60px);line-height:.92;color:var(--parchment);}
.private__copy{margin:0;font-size:18px;line-height:1.6;color:var(--offwhite);text-wrap:pretty;}
.private__cta{margin-top:auto;padding-top:10px;}

/* ---------- Reservations (order pad) ---------- */
.res{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:clamp(32px,5vw,64px);align-items:center;}
.res__text{display:flex;flex-direction:column;gap:16px;}
.res__sub{margin:0;font-family:var(--f-label);font-weight:600;font-size:28px;line-height:1.2;text-transform:uppercase;}
.pad{position:relative;transform:rotate(.8deg);background:var(--card);box-shadow:0 18px 36px rgba(60,40,20,.28);padding:0 0 30px;display:flex;flex-direction:column;}
.pad__tape{right:30px;top:-16px;width:120px;height:32px;background:rgba(200,190,170,.7);transform:rotate(4deg);z-index:1;}
.pad__head{background:var(--charcoal);color:var(--parchment);padding:18px 28px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;}
.pad__title{margin:0;font-family:var(--f-display);font-weight:400;font-size:42px;line-height:1;}
.pad__sub{font-size:15px;color:var(--offwhite);}
.pad__dots{text-align:center;letter-spacing:.6em;color:var(--red);padding:10px 0 4px;}
.pad__fields{display:flex;flex-direction:column;gap:20px;padding:6px 28px 0;}
.field{display:flex;flex-direction:column;gap:4px;}
.field__label{font-family:var(--f-label);font-weight:600;font-size:14px;letter-spacing:.16em;text-transform:uppercase;}
.field__input{border:0;border-bottom:2px solid var(--charcoal);border-radius:0;background:transparent;padding:6px 2px;font-family:var(--f-hand);font-size:32px;outline:none;color:var(--charcoal);}
.field__input--date{padding:8px 2px;font-family:var(--f-body);font-size:18px;}
.field__input:focus{border-bottom-color:var(--red);}
.field__textarea{border:0;border-radius:0;background:transparent;background-image:repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 39px, rgba(26,26,26,.35) 39px 41px);
  line-height:41px;padding:0 2px;font-family:var(--f-hand);font-size:30px;outline:none;resize:vertical;color:var(--charcoal);}
.field__textarea:focus{background-image:repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 39px, rgba(200,56,43,.6) 39px 41px);}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.pad__submit{align-self:flex-start;margin-top:6px;}
.pad__error{margin:0;font-size:16px;line-height:1.5;color:var(--red);}
.pad__error a{color:var(--red);}
.pad__sent{padding:40px 28px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;}
.pad__sent p{margin:0;font-size:18px;line-height:1.5;}
.orderup{transform:rotate(-6deg);border:5px solid var(--red);color:var(--red);font-family:var(--f-display);font-size:64px;line-height:1;padding:8px 26px 4px;opacity:.92;}

/* ---------- Watch ---------- */
.watch{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:clamp(28px,4vw,44px);}
.watch .section-head{margin-bottom:0;}
.video-polaroid{position:relative;width:100%;transform:rotate(-.6deg);background:var(--offwhite);padding:12px;box-shadow:0 18px 36px rgba(0,0,0,.55);}
.video-polaroid__tape--tl{left:-16px;top:-6px;width:120px;height:34px;transform:rotate(-28deg);z-index:1;}
.video-polaroid__tape--br{right:-16px;bottom:-6px;width:120px;height:34px;transform:rotate(-28deg);z-index:1;}
.video-polaroid iframe{width:100%;aspect-ratio:16/9;border:0;display:block;background:#000;}
.follow{display:flex;flex-direction:column;align-items:center;gap:16px;}
.follow__title{font-family:var(--f-hand);font-size:36px;line-height:1;color:var(--parchment);}
.socials{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}

/* ---------- Footer ---------- */
.footer{position:relative;border-top:2px dashed rgba(244,239,235,.25);padding:28px clamp(16px,4vw,40px);text-align:center;font-size:15px;color:var(--offwhite);}

/* ---------- Gig pop-up ---------- */
.gig{position:fixed;inset:0;z-index:100;display:flex;align-items:center;align-items:safe center;justify-content:center;padding:28px 20px;overflow-y:auto;overscroll-behavior:contain;}
.gig[hidden]{display:none;}
.gig__backdrop{position:fixed;inset:0;background:rgba(14,13,12,.78);}
.gig__panel{position:relative;width:min(520px,100%);margin:auto 0;flex-shrink:0;transform:rotate(-1deg);background-color:var(--parchment);background-image:url(tex/mottle2.png);color:var(--charcoal);
  box-shadow:inset 0 0 60px rgba(130,88,40,.28),0 30px 60px rgba(0,0,0,.6);padding:34px 30px 30px;display:flex;flex-direction:column;gap:16px;font-family:var(--f-body);}
.gig__tape{left:50%;top:-14px;width:130px;height:32px;margin-left:-65px;background:rgba(232,224,205,.9);transform:rotate(-3deg);}
.gig__close{position:absolute;right:-14px;top:-14px;z-index:2;width:44px;height:44px;border:0;background:var(--charcoal);cursor:pointer;transform:rotate(4deg);
  font-family:var(--f-label);font-weight:600;font-size:28px;line-height:1;color:var(--parchment);box-shadow:0 4px 10px rgba(0,0,0,.4);}
.gig__close:hover{background:var(--red);}
.gig__top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;}
.gig__kicker{font-family:var(--f-hand);font-size:32px;line-height:1;color:var(--red);transform:rotate(-2deg);transform-origin:left;}
.gig__title{margin:0;font-family:var(--f-display);font-weight:400;font-size:clamp(52px,12vw,76px);line-height:.88;}
.gig__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:6px;}
.gig__rsvp{font-size:19px;padding:13px 24px;}
.gig__later{border:0;background:transparent;cursor:pointer;padding:10px 4px;font-family:var(--f-body);font-size:16px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;}
.gig__later:hover{color:var(--red);}

/* ---------- Small screens ---------- */
@media (max-width:560px){
  /* Compact sticky header: wordmark + menu button instead of three wrapped rows of links */
  .nav__inner{flex-wrap:nowrap;padding-top:8px;padding-bottom:8px;}
  .nav__toggle{display:block;}
  .nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;
    background:#1A1A1A;border-bottom:2px solid #2c2a28;padding:6px clamp(16px,4vw,40px) 16px;box-shadow:0 18px 30px rgba(0,0,0,.45);}
  .nav__links.open{display:flex;}
  .nav__links a{padding:13px 2px;border-bottom:1px dashed rgba(244,239,235,.18);}
  .nav__links a.nav__reserve{margin-top:12px;text-align:center;border-bottom:2px solid var(--red);padding:12px;}
  .ribbon{font-size:12px;letter-spacing:.08em;padding:8px 10px;}
  /* keep the corner tape off the ORDER # line */
  .sheet{padding-top:48px;}
  .hero__tape--l{left:-14px;top:2px;width:110px;height:32px;}
  .hero__tape--r{right:-12px;top:0;width:104px;height:32px;}
  .chefs{gap:28px 18px;}
  .chef__name{font-size:38px;}
  .chef__role{font-size:13px;letter-spacing:.12em;}
  .chef__bio{font-size:15px;}
}

.gig__panel:focus{outline:none;}
