/* El Güero Canelo, Site B stylesheet. Star: the bite.
   Lilita One for headlines, buttons and labels. Barlow for everything else.
   Red, white and green lead; yellow for actions and tags; navy for text, borders and the footer.
   Motifs: the bite (a scallop out of a corner), the ring, the tilt, the tricolor hairline.
   Depth: paper grain on the cream, hard offset shadows like the menu-board cutouts.
   Contrast: red on #fcf6ea 4.54, green on #fcf6ea 5.39, navy on yellow 12+, white on red 4.88,
   white on green 5.80. Yellow is never text. */

:root{
  --red:#e30613; --green:#297340; --yellow:#fcbe1a; --navy:#071e2c; --white:#fff;
  --page:#fcf6ea;
  --ink:var(--navy);
  --ink-2:rgba(7,30,44,.74);
  --ink-3:rgba(7,30,44,.58);
  --line:rgba(7,30,44,.14);
  --line-ui:rgba(7,30,44,.55);
  --wash:rgba(252,190,26,.22);
  --on-2:rgba(255,255,255,.9);
  --radius:18px;
  --wrap:1180px; --gutter:16px;
  --header-h:72px; --dock-h:76px;
  --head:"Lilita One",Impact,"Arial Black",sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tilt:-2.5deg;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.55;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.13;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.62' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
body>*{position:relative;z-index:1}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3,h4{margin:0 0 .45em;font-family:var(--head);font-weight:400;line-height:.95;letter-spacing:.005em}
h1{font-size:clamp(2.6rem,7.5vw,5.5rem);color:var(--red)}
h2{font-size:clamp(2rem,5vw,3.6rem);color:var(--red)}
h3{font-size:clamp(1.35rem,2.4vw,1.8rem);color:var(--green)}
h4{font-size:1.15rem}
.lede{font-size:clamp(1.05rem,1.9vw,1.3rem);font-weight:500;color:var(--ink-2);max-width:36em}
.muted{color:var(--ink-3)}
.small{font-size:.9rem}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.narrow{max-width:760px}
.skip{position:absolute;left:-999px;top:8px;background:var(--yellow);color:var(--ink);padding:10px 14px;font-weight:700;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.on-color :focus-visible{outline-color:var(--white)}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}
.kicker{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;color:var(--green);margin-bottom:.8em;display:block}
.center{text-align:center}

/* Motif primitives */
.bite{aspect-ratio:1;overflow:hidden;
  -webkit-mask:radial-gradient(ellipse 50% 50% at 50% 50%,#000 99.2%,transparent 100%),radial-gradient(ellipse 16% 16% at 86% 16%,#000 98%,transparent 100%),radial-gradient(ellipse 11% 11% at 70% 5%,#000 98%,transparent 100%);
  mask:radial-gradient(ellipse 50% 50% at 50% 50%,#000 99.2%,transparent 100%),radial-gradient(ellipse 16% 16% at 86% 16%,#000 98%,transparent 100%),radial-gradient(ellipse 11% 11% at 70% 5%,#000 98%,transparent 100%);
  -webkit-mask-composite:source-out,source-over,source-over;mask-composite:subtract,add,add}
.bite img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%)}
.ring{border-radius:50%;box-shadow:0 0 0 6px var(--yellow),0 0 0 9px var(--green)}
.tricolor,.brush{display:block;height:6px;background:linear-gradient(90deg,var(--green) 0 33.3%,var(--white) 33.3% 66.6%,var(--red) 66.6%);margin:0}
.brush{transform:rotate(-.6deg) scaleX(1.02);margin:10px 0}
.brushed-bottom{position:relative}
.brushed-bottom::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:linear-gradient(90deg,var(--green) 0 33.3%,var(--white) 33.3% 66.6%,var(--red) 66.6%)}
.brushed{position:relative}
.brushed::before,.brushed::after{content:"";position:absolute;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--green) 0 33.3%,var(--white) 33.3% 66.6%,var(--red) 66.6%)}
.brushed::before{top:-6px}.brushed::after{bottom:-6px}
.framed{position:relative}
.framed::after{content:"";position:absolute;inset:10px;border:3px solid var(--yellow);pointer-events:none;z-index:2}
.tilt{transform:rotate(var(--tilt))}
.tag{display:inline-block;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:1.05rem;padding:.25em .7em;transform:rotate(var(--tilt));box-shadow:3px 3px 0 var(--navy)}
.arc,.arc-top{border-radius:0}

/* Color bands */
.band-red,.band-green{position:relative;color:var(--white);isolation:isolate}
.band-red{background:var(--red)}
.band-green{background:var(--green)}
.on-color h1,.on-color h2,.on-color h3{color:var(--white)}
.band-red .lede,.band-red .muted,.band-red p{color:var(--white)}
.band-green .lede,.band-green .muted{color:var(--on-2)}
.on-color h1{text-shadow:5px 5px 0 var(--navy)}

/* Buttons: hard offset shadow, the menu-board cutout look */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:52px;padding:.6em 1.4em;border-radius:999px;border:3px solid var(--navy);font:400 1.15rem/1.1 var(--head);letter-spacing:.01em;text-decoration:none;cursor:pointer;color:var(--ink);background:var(--white);box-shadow:5px 5px 0 var(--navy);transition:transform .12s,box-shadow .12s;text-align:center}
.btn:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--navy)}
.btn:active{transform:translate(4px,4px);box-shadow:1px 1px 0 var(--navy)}
.btn-order{background:var(--yellow)}
.btn-line{color:var(--red)}
.btn-red{background:var(--red);color:var(--white)}
.btn-sm{min-height:44px;font-size:1rem;padding:.5em 1.1em;box-shadow:4px 4px 0 var(--navy)}
.on-color .btn{border-color:var(--white);box-shadow:5px 5px 0 var(--navy)}
.on-color .btn-line{color:var(--red)}
.band-green .btn-line,.door-green .btn-line{color:var(--green)}
.textlink{color:var(--red);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.on-color .textlink{color:var(--white)}
.change{font-size:.85rem;font-weight:500;color:var(--ink-2);white-space:nowrap}
.change a{color:var(--red);font-weight:700}

/* Header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(252,246,234,.92);backdrop-filter:saturate(1.3) blur(10px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;gap:18px;min-height:var(--header-h)}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:56px;height:56px;border-radius:50%}
.nav{display:none}
.nav a{font-family:var(--head);font-size:1.1rem;color:var(--ink);text-decoration:none;padding:8px 12px;border-radius:999px}
.nav a:hover{background:rgba(252,190,26,.35)}
.nav a[aria-current="page"]{color:var(--red);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:5px}
.head-tools{margin-left:auto;display:flex;align-items:center;gap:12px}
.lang{display:inline-flex;border:2px solid var(--navy);border-radius:999px;overflow:hidden;font-weight:700;font-size:.85rem;color:var(--ink)}
.lang a,.lang span{padding:5px 10px;text-decoration:none;line-height:1.2}
.lang [aria-current="true"]{background:var(--navy);color:var(--white)}
.head-order{display:none;align-items:center;gap:10px}
.menu-btn{display:inline-flex;align-items:center;justify-content:center;background:none;border:3px solid var(--navy);border-radius:999px;width:46px;height:46px;cursor:pointer;color:var(--ink)}
.menu-btn .bars{display:inline-grid;gap:4px}
.menu-btn .bars i{display:block;width:20px;height:3px;background:currentColor;border-radius:2px}
@media (min-width:1000px){
  :root{--header-h:80px;--gutter:32px}
  .brand img{width:64px;height:64px}
  .nav{display:flex;gap:2px;margin-left:6px}
  .head-order{display:flex}
  .menu-btn{display:none}
}

/* Drawer (phones) */
.drawer{position:fixed;inset:0;z-index:60;display:none}
.drawer.open{display:block}
.drawer .scrim{position:absolute;inset:0;background:rgba(7,30,44,.5)}
.drawer .panel{position:absolute;top:0;right:0;bottom:0;width:min(86vw,360px);background:var(--green);color:var(--white);padding:20px 24px 32px;display:flex;flex-direction:column;gap:4px;overflow:auto}
.drawer .panel a{color:var(--white);text-decoration:none;font-family:var(--head);font-size:1.7rem;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.25)}
.drawer .panel a[aria-current="page"]{color:var(--yellow)}
.drawer .close{align-self:flex-end;background:none;border:2px solid var(--white);color:var(--white);border-radius:999px;padding:8px 14px;font:400 1rem var(--head);cursor:pointer;min-height:44px;margin-bottom:8px}
.drawer .panel .minor{font-family:var(--body);font-size:1rem;font-weight:600;color:var(--on-2)}
body.locked{overflow:hidden}

/* Dock: the pinned Order bar on phones */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--page);border-top:3px solid var(--navy);padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;transition:transform .2s ease}
.dock .btn{flex:1 1 auto}
.dock .change{flex:0 1 auto;white-space:normal;line-height:1.25;max-width:42%}
body{padding-bottom:var(--dock-h)}
body.dock-hidden .dock{transform:translateY(110%)}
@media (min-width:1000px){.dock{display:none}body{padding-bottom:0}}

/* Home hero: the dialogue on the page, the carousel inside the bitten disc */
.hero{padding:clamp(28px,5vw,72px) 0 clamp(20px,4vw,48px);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(20px,3vw,40px);align-items:center}
.dialog{line-height:.9;margin:0}
.dialog .l1{display:block;font-size:clamp(2rem,4.3vw,3.5rem);color:var(--ink)}
.dialog .l2{display:inline-block;font-family:var(--body);font-weight:600;font-size:clamp(1.1rem,2vw,1.5rem);color:var(--ink-3);margin:.5em 0 .35em .15em;letter-spacing:.08em;text-transform:uppercase}
.dialog .l3{display:block;font-size:clamp(4rem,12vw,10rem);color:var(--red);text-shadow:.06em .06em 0 var(--yellow),.1em .16em .22em rgba(7,30,44,.32);transform:rotate(var(--tilt));transform-origin:left bottom;margin-bottom:.12em}
.hero .lede{margin-top:1.4em}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px 18px;margin-top:1.6em}
.hero-cta .change{display:block;margin-top:12px}
.hero-art{position:relative}
.hero-art .bite{width:min(100%,680px);margin:0 auto;filter:drop-shadow(10px 14px 0 rgba(7,30,44,.14));position:relative;background:var(--navy)}
.dog{aspect-ratio:1000/440;overflow:hidden;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 440' preserveAspectRatio='none'><path fill-rule='evenodd' d='M220,0 H780 A220,220 0 0 1 780,440 H220 A220,220 0 0 1 220,0 Z M955,105 m-108,0 a108,108 0 1 0 216,0 a108,108 0 1 0 -216,0 Z M845,-22 m-64,0 a64,64 0 1 0 128,0 a64,64 0 1 0 -128,0 Z'/></svg>") center/100% 100% no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 440' preserveAspectRatio='none'><path fill-rule='evenodd' d='M220,0 H780 A220,220 0 0 1 780,440 H220 A220,220 0 0 1 220,0 Z M955,105 m-108,0 a108,108 0 1 0 216,0 a108,108 0 1 0 -216,0 Z M845,-22 m-64,0 a64,64 0 1 0 128,0 a64,64 0 1 0 -128,0 Z'/></svg>") center/100% 100% no-repeat}
.hero-art .dog{width:100%;margin:0 auto;position:relative;background:var(--navy);transform:rotate(-7deg);filter:drop-shadow(10px 14px 0 rgba(7,30,44,.14))}
.hero-art.is-dog{padding:40px 0 30px}
.hero-art.is-dog .stamp{right:0;bottom:-4%}
.hero-art.is-dog .crumb.a{right:-2%;top:30%}.hero-art.is-dog .crumb.b{right:4%;top:22%}.hero-art.is-dog .crumb.c{right:-4%;top:40%}
.slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);opacity:0;animation:fade 36s infinite}
.slides img:nth-child(1){animation-name:fade1;opacity:1}
.slides img:nth-child(2){animation-delay:6s}.slides img:nth-child(3){animation-delay:12s}.slides img:nth-child(4){animation-delay:18s}.slides img:nth-child(5){animation-delay:24s}.slides img:nth-child(6){animation-delay:30s}
@keyframes fade{0%{opacity:0}4%{opacity:1}16.7%{opacity:1}20.7%{opacity:0}100%{opacity:0}}
@keyframes fade1{0%{opacity:1}16.7%{opacity:1}20.7%{opacity:0}96%{opacity:0}100%{opacity:1}}
@media (prefers-reduced-motion:reduce){.slides img{animation:none}.slides img:nth-child(1){opacity:1}}
.hero-art .stamp{position:absolute;right:2%;bottom:8%;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:clamp(1rem,1.6vw,1.3rem);padding:.5em .9em;transform:rotate(8deg);box-shadow:4px 4px 0 var(--navy);line-height:1.05;text-align:center}
.hero-art .stamp small{display:block;font-family:var(--body);font-weight:600;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;margin-top:.2em}
.hero-art .crumb{position:absolute;border-radius:50%;background:var(--red)}
.hero-art .crumb.a{width:14px;height:14px;right:4%;top:28%}
.hero-art .crumb.b{width:9px;height:9px;right:12%;top:36%}
.hero-art .crumb.c{width:6px;height:6px;right:1%;top:40%}
html[lang="es"] .dialog .l3{font-size:clamp(3.2rem,9.2vw,7.4rem)}
html[lang="es"] .dialog .l1{font-size:clamp(1.8rem,3.8vw,3rem)}

/* Marquee: the catchphrase from the shirts */
.marquee{background:var(--red);color:var(--white);overflow:hidden;transform:rotate(var(--tilt)) scale(1.03);margin:18px 0 26px;padding:10px 0;border-top:3px solid var(--yellow);border-bottom:3px solid var(--yellow)}
.marquee .track{display:flex;white-space:nowrap;width:max-content;animation:slide 26s linear infinite}
.marquee span{font-family:var(--head);font-size:clamp(1.4rem,3vw,2.3rem);padding:0 .6em;letter-spacing:.02em}
.marquee .dot{color:var(--yellow)}
@keyframes slide{to{transform:translateX(-50%)}}

/* Sections */
.section{padding:clamp(44px,7vw,96px) 0}
.section-tight{padding:clamp(28px,4vw,56px) 0}
.split{display:grid;gap:32px;align-items:center}
@media (min-width:860px){.split{grid-template-columns:1fr 1fr;gap:64px}.split.flip>:first-child{order:2}}
.welcome-logo{width:min(300px,74%);margin:0 auto}
@media (min-width:860px){.welcome-logo{width:min(440px,100%)}}

/* Home: store tickets */
.tickets{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.ticket{background:var(--white);border:3px solid var(--navy);padding:0 22px 20px;position:relative;box-shadow:7px 7px 0 var(--red);text-decoration:none;color:var(--ink);display:block;
  -webkit-mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px);mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px)}
.ticket:nth-child(2){transform:rotate(1deg)}
.ticket:nth-child(3){transform:rotate(-1deg)}
.ticket .tph{margin:0 -22px 16px;aspect-ratio:16/10;overflow:hidden;border-bottom:3px solid var(--navy)}
.ticket .tph img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%)}
.ticket h3{color:var(--red);font-size:1.9rem}
.ticket .addr{color:var(--ink-2);margin:.3em 0 .6em;font-weight:500}
.ticket .hrs{font-weight:700;font-size:1.05rem;display:block}
.status{display:inline-flex;align-items:center;gap:.4em;font-weight:700;color:var(--ink-3);margin-top:.4em}
.status::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--ink-3);box-shadow:0 0 0 3px rgba(7,30,44,.15)}
.status.is-open{color:var(--green)}
.status.is-open::before{background:var(--green);box-shadow:0 0 0 3px var(--yellow)}
.status:empty{display:none}
.ticket .go{margin-top:16px}
.ticket.is-mine{box-shadow:7px 7px 0 var(--green)}
.ticket .mine-tag{position:absolute;left:12px;top:12px;z-index:2}

/* Home: serve (the personality block) */
.serve{background:var(--green);color:var(--white);position:relative;overflow:hidden}
.serve .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,72px);align-items:center}
.serve h2{color:var(--yellow)}
.serve p{color:rgba(255,255,255,.92);font-size:1.15rem;max-width:36em}
.serve .portrait{width:min(100%,420px);margin:0 auto;position:relative}
.serve .pbite{background:var(--white);filter:drop-shadow(8px 10px 0 rgba(7,30,44,.35))}
.serve .bubble{position:absolute;right:-6%;top:-4%;background:var(--white);color:var(--ink);font-family:var(--head);font-size:clamp(1.1rem,2vw,1.5rem);padding:.6em .9em;border-radius:22px;transform:rotate(5deg);box-shadow:5px 5px 0 var(--navy);line-height:1.05;max-width:11em}
.serve .bubble::after{content:"";position:absolute;left:18px;bottom:-16px;border:10px solid transparent;border-top-color:var(--white);border-left-color:var(--white)}
.serve .big{font-family:var(--head);font-size:clamp(5rem,14vw,11rem);line-height:.8;color:rgba(255,255,255,.08);position:absolute;right:-.1em;bottom:-.18em;pointer-events:none;white-space:nowrap}

/* Home: menu tiles */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:34px}
.tile{position:relative;text-decoration:none;color:var(--ink)}
.tile .ph{aspect-ratio:4/3;overflow:hidden;border:3px solid var(--navy);box-shadow:7px 7px 0 var(--navy);background:var(--white);display:block;padding:0;
  -webkit-mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px);mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px)}
.tile .ph img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.tile:hover .ph img{transform:scale(1.04)}
.tile .tag{position:absolute;left:14px;top:14px;z-index:2}
.tile h3{margin-top:18px;color:var(--ink)}
.tile p{color:var(--ink-3);margin:.25em 0 0;font-weight:500}
.tiles .tile:nth-child(2){transform:translateY(18px)}

/* Home: specials, two promo tickets on the cream */
.promo-cards{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:30px;align-items:start}
.promo{position:relative;display:block;text-decoration:none;color:var(--white);border:3px solid var(--navy);box-shadow:9px 9px 0 var(--navy);overflow:hidden;-webkit-mask:radial-gradient(circle at 100% 0,transparent 36px,#000 37px);mask:radial-gradient(circle at 100% 0,transparent 36px,#000 37px)}
.promo.g{background:var(--green);transform:rotate(-1.2deg)}
.promo.r{background:var(--red);transform:rotate(1.2deg);margin-top:26px}
.promo img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:var(--pos,50% 50%);border-bottom:3px solid var(--navy)}
.promo .pbody{padding:18px 22px 24px;display:grid;grid-template-columns:auto 1fr;gap:8px 18px;align-items:center}
.promo .price{font-family:var(--head);font-size:clamp(3.4rem,6.5vw,5.4rem);line-height:.9;color:var(--yellow);text-shadow:5px 5px 0 var(--navy);grid-row:span 2}
.promo .day{font-family:var(--head);font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1}
.promo .what{color:rgba(255,255,255,.9);font-weight:600;font-size:1rem}
.promo .tag{position:absolute;left:14px;top:14px;z-index:2}
.promo .today-flag{position:absolute;right:52px;top:14px;z-index:2;margin:0}
.specials-cta{margin-top:34px}
/* The pop-up: slides in once the hero scrolls away, dismiss sticks for the session */
.promo-pop{position:fixed;left:16px;bottom:calc(var(--dock-h) + 14px);z-index:44;max-width:min(92vw,360px);background:var(--yellow);color:var(--ink);border:3px solid var(--navy);box-shadow:7px 7px 0 var(--navy);padding:14px 44px 14px 16px;transform:rotate(-2deg) translateY(140%);opacity:0;transition:transform .45s cubic-bezier(.2,.9,.3,1.2),opacity .3s}
.promo-pop.show{transform:rotate(-2deg) translateY(0);opacity:1}
.promo-pop .pp-day{font-family:var(--head);font-size:1.45rem;line-height:1}
.promo-pop .pp-price{font-family:var(--head);font-size:2.2rem;line-height:1;color:var(--red);text-shadow:3px 3px 0 var(--white)}
.promo-pop .pp-what{font-weight:600;font-size:.95rem;margin:4px 0 8px}
.promo-pop .pp-x{position:absolute;right:8px;top:8px;width:30px;height:30px;border:2px solid var(--navy);border-radius:50%;background:var(--white);font:700 1rem var(--body);cursor:pointer;line-height:1}
@media (min-width:1000px){.promo-pop{bottom:24px;left:24px}}
@media (prefers-reduced-motion:reduce){.promo-pop{transition:none}}
/* old yellow strip, kept for other pages that reuse .specials */
.specials{background:var(--yellow);color:var(--ink);border-top:4px solid var(--navy);border-bottom:4px solid var(--navy)}
.specials .wrap{display:grid;grid-template-columns:1fr 1fr auto;gap:26px;align-items:center}
.specials .special{border:0;padding:0;background:none;box-shadow:none;overflow:visible;transform:none}
.specials .price{font-family:var(--head);font-size:clamp(3rem,7vw,5.5rem);line-height:.9;color:var(--red);text-shadow:4px 4px 0 var(--white)}
.specials .day{font-family:var(--head);font-size:1.5rem}
.specials .what{color:var(--ink-2);font-weight:600}

/* Home: catering and market */
.cater .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:center}
.cater .bite{width:min(100%,480px);filter:drop-shadow(10px 14px 0 rgba(227,6,19,.18))}
.cater ul{list-style:none;padding:0;margin:1em 0 1.6em;font-weight:600;font-size:1.1rem}
.cater li{padding:.35em 0 .35em 1.6em;position:relative}
.cater li::before{content:"";position:absolute;left:0;top:.62em;width:14px;height:14px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 3px var(--green)}
.market{background:var(--white);border-top:3px solid var(--navy)}
.market .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:18px 40px;padding-top:28px;padding-bottom:28px}
.market h2{font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--green);margin:0}
.market .meta{color:var(--ink-2);font-weight:500;margin:0}

/* Page heads: red band, big white Lilita */
.page-head{padding:36px 0 44px}
.page-head .lede{margin-bottom:0}
.page-head h1{transform:rotate(-1.5deg);transform-origin:left bottom;display:inline-block;margin-bottom:.35em}
@media (min-width:1000px){.page-head{padding:64px 0 72px}}

/* Dish photos (specials page) */
.dishes{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--gutter) 18px;margin:0 calc(var(--gutter) * -1)}
.dish{scroll-snap-align:start;margin:0}
.dish img{width:100%;aspect-ratio:4/3;object-fit:cover;border:3px solid var(--navy);box-shadow:6px 6px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 30px,#000 31px);mask:radial-gradient(circle at 100% 0,transparent 30px,#000 31px)}
.dish figcaption{font-family:var(--head);margin-top:14px;font-size:1.15rem;color:var(--ink)}
@media (min-width:860px){.dishes{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);grid-auto-columns:auto;overflow:visible;padding:0;margin:24px 0 0}}

/* Cards */
.cards{display:grid;gap:22px}
@media (min-width:760px){.cards.c2{grid-template-columns:1fr 1fr}.cards.c2.one{grid-template-columns:minmax(0,520px)}.cards.c3{grid-template-columns:repeat(3,1fr)}}
.card{border:3px solid var(--navy);padding:24px;background:var(--white);box-shadow:7px 7px 0 var(--red);-webkit-mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px);mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px)}
.card.band-green{background:var(--green);box-shadow:7px 7px 0 var(--yellow)}
.card.band-red{background:var(--red);box-shadow:7px 7px 0 var(--yellow)}
.card.accent-red{box-shadow:7px 7px 0 var(--green)}
.card h3{margin-bottom:.35em;color:var(--red)}
.card .addr{color:var(--ink-2);margin-bottom:.6em}
.card .meta{display:grid;gap:4px;margin:0 0 18px;font-size:.95rem}
.card .actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.card.is-mine{box-shadow:7px 7px 0 var(--green)}
.mine-tag{display:inline-block;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:.9rem;padding:.2em .6em;transform:rotate(var(--tilt));box-shadow:3px 3px 0 var(--navy);margin-bottom:8px}
.phone{font-weight:700;color:var(--ink);text-decoration:none;border-bottom:3px solid var(--yellow)}

/* Order chooser */
.store-cards{margin-top:40px;position:relative;z-index:2}
.store-card{display:flex;flex-direction:column}
.store-card h2{font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:.25em}
.store-card .actions{margin-top:auto}
.note{background:var(--yellow);border:3px solid var(--navy);padding:16px 20px;font-weight:600;box-shadow:5px 5px 0 var(--navy);display:inline-block;transform:rotate(-.6deg)}
#rewards{margin-top:28px}

/* Hours tables */
.hours{width:100%;border-collapse:collapse;font-size:.95rem;margin:4px 0 18px;border-top:3px solid var(--navy)}
.hours th,.hours td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}
.hours th{font-weight:600}
.hours td{font-weight:500;color:var(--ink-2);text-align:right}
.hours tr.is-today th,.hours tr.is-today td{background:var(--wash);color:var(--ink);font-weight:800}
.loc{padding:40px 0;border-top:3px solid var(--line)}
.loc:first-of-type{border-top:0}
.loc-grid{display:grid;gap:24px}
@media (min-width:860px){.loc-grid{grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}}
.loc h2{font-size:clamp(2rem,4.4vw,3rem)}
.card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}

/* Specials page */
.special{padding:28px 24px;position:relative;overflow:hidden;border:3px solid var(--navy);box-shadow:8px 8px 0 var(--navy)}
.special>*:not(.ring){position:relative;z-index:1}
.special .price{font-family:var(--head);font-size:clamp(5rem,18vw,9rem);line-height:.9;text-shadow:5px 5px 0 var(--navy)}
.special h2{margin-top:.2em}
.special p{font-weight:500;max-width:30em}
.special .walkin{font-family:var(--head);font-size:1.1rem}
.special-white{background:var(--white)}
.special-white .price{color:var(--red);text-shadow:5px 5px 0 var(--yellow)}
.special.band-green{box-shadow:8px 8px 0 var(--yellow)}
.special.band-green .price{color:var(--yellow);text-shadow:5px 5px 0 var(--navy)}
.today-flag{display:inline-block;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:.95rem;padding:.25em .7em;transform:rotate(var(--tilt));box-shadow:3px 3px 0 var(--navy);margin-bottom:10px}
.special .ring{display:none}
@media (min-width:860px){.special{padding:44px}.cards .special:nth-child(1){transform:rotate(-1deg)}.cards .special:nth-child(2){transform:rotate(1deg)}}

/* Catering doors */
.doors{display:grid;gap:22px;margin-top:40px;position:relative;z-index:2}
@media (min-width:860px){.doors{grid-template-columns:1fr 1fr;gap:28px}.door-red{transform:rotate(-1deg)}.door-green{transform:rotate(1deg)}}
.door{position:relative;padding:0 22px 26px;display:flex;flex-direction:column;border:3px solid var(--navy);box-shadow:8px 8px 0 var(--yellow);-webkit-mask:radial-gradient(circle at 100% 0,transparent 32px,#000 33px);mask:radial-gradient(circle at 100% 0,transparent 32px,#000 33px)}
.door-red{background:var(--red);color:var(--white)}
.door-green{background:var(--green);color:var(--white)}
.door-green p{color:var(--on-2)}
.door-red p,.door-red .muted{color:var(--white)}
.door h2{font-size:clamp(1.8rem,3.6vw,2.4rem)}
.door .door-body{flex:1}
.door .pkgs{margin-top:8px}
.door-photo{width:calc(100% + 44px);max-width:none;margin:0 -22px 20px;aspect-ratio:16/9;object-fit:cover;border-bottom:3px solid var(--navy)}
.seg{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 16px;border:0;padding:0}
.seg legend{font-family:var(--head);font-size:1.05rem;margin-bottom:8px;padding:0}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;cursor:pointer}
.seg span{display:inline-block;padding:8px 14px;border:2px solid var(--white);border-radius:999px;font-weight:700;font-size:.92rem;color:var(--white)}
.seg input:checked+span{background:var(--white);color:var(--red)}
.seg input:focus-visible+span{outline:3px solid var(--white);outline-offset:2px}
.pkgs{display:grid;gap:10px}
.pkg-btn{justify-content:space-between;width:100%}
.pkg-btn .amt{font-family:var(--body);font-weight:700}

/* Forms */
.form{display:grid;gap:26px}
.form fieldset{border:0;padding:0;margin:0;display:grid;gap:16px}
.form legend{font-family:var(--head);font-size:1.5rem;margin-bottom:6px;padding:0;color:var(--green)}
.row{display:grid;gap:16px}
@media (min-width:640px){.row.r2{grid-template-columns:1fr 1fr}.row.r3{grid-template-columns:2fr 1fr 1fr}}
.field{display:grid;gap:6px}
.field label,.field .label{font-weight:700;font-size:.95rem}
.field .hint{font-size:.85rem;color:var(--ink-3);font-weight:500}
.req{color:var(--red)}
input[type=text],input[type=email],input[type=tel],input[type=date],input[type=time],input[type=number],select,textarea{width:100%;font:500 1rem var(--body);color:var(--ink);background:var(--white);border:2px solid var(--navy);border-radius:12px;padding:12px 14px;min-height:50px}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:3px solid var(--yellow);outline-offset:0}
input[type=file]{font:500 .95rem var(--body);padding:10px 0}
.check{display:flex;gap:12px;align-items:flex-start;font-weight:500}
.check input{width:22px;height:22px;margin-top:2px;flex:0 0 auto;accent-color:var(--green)}
.radios{display:grid;gap:10px}
@media (min-width:640px){.radios{grid-template-columns:repeat(2,1fr)}}
.radio{display:flex;gap:10px;align-items:center;border:2px solid var(--navy);border-radius:12px;padding:12px 14px;font-weight:700;cursor:pointer;background:var(--white)}
.radio input{width:20px;height:20px;accent-color:var(--green)}
.radio:has(input:checked){background:var(--yellow)}
.yesno{grid-template-columns:1fr 1fr}
@media (min-width:640px){.radios.yesno{grid-template-columns:repeat(2,minmax(0,200px))}}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.turnstile{border:2px dashed var(--line-ui);border-radius:12px;padding:16px;font-size:.9rem;color:var(--ink-2);font-weight:500;min-height:70px;display:flex;align-items:center}
.error{color:var(--red);font-weight:700;font-size:.9rem}
.success{border:3px solid var(--navy);padding:28px 24px;background:var(--white);box-shadow:7px 7px 0 var(--green)}
.success h2{color:var(--green);font-size:clamp(1.8rem,4vw,2.4rem)}
.assign{border-left:6px solid var(--yellow);padding:6px 0 6px 16px;font-weight:500;color:var(--ink-2)}
.careers-split{align-items:start}
.careers-split p+h2{margin-top:1.2em}

/* Placeholders */
.ph{display:flex;align-items:center;justify-content:center;text-align:center;aspect-ratio:4/3;border:2px dashed var(--line-ui);padding:24px;color:var(--ink-2);font-weight:600;background:var(--wash)}
.pending{background:var(--wash);color:var(--ink);padding:0 .3em;border-radius:6px;font-weight:600}

/* Story */
.year{font-family:var(--head);font-size:clamp(6rem,26vw,17rem);line-height:.8;color:rgba(255,255,255,.18);margin:0;text-shadow:none}
.story-block{padding:48px 0;border-top:3px solid var(--line)}
.story-block:first-of-type{border-top:0}
.photo{width:100%;object-fit:cover;display:block;background:var(--white);border:3px solid var(--navy);box-shadow:8px 8px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px);mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px)}
.photo-wide{aspect-ratio:21/9}
.photo-43{aspect-ratio:4/3}
.photo-band{margin:0}
.photo-band img{width:100%;aspect-ratio:16/9;object-fit:cover;border:3px solid var(--navy);box-shadow:8px 8px 0 var(--red);-webkit-mask:radial-gradient(circle at 100% 0,transparent 46px,#000 47px);mask:radial-gradient(circle at 100% 0,transparent 46px,#000 47px)}
@media (min-width:860px){.photo-band img{aspect-ratio:21/8}}
.photo-band.tall img{aspect-ratio:1/1}
@media (min-width:860px){.photo-band.tall img{aspect-ratio:1/1}}
.photo-band figcaption,.figure-note{font-size:.85rem;color:var(--ink-3);font-weight:500;margin-top:14px}
.story-band{margin:24px 0}
.special-photo{width:calc(100% + 48px);max-width:none;margin:-28px -24px 20px;aspect-ratio:16/10;object-fit:cover;border-bottom:3px solid var(--navy);position:relative;z-index:1}
@media (min-width:860px){.special-photo{width:calc(100% + 88px);margin:-44px -44px 24px}}
.card-photo{width:calc(100% + 48px);margin:-24px -24px 20px;aspect-ratio:16/9;object-fit:cover;max-width:none;border-bottom:3px solid var(--navy)}
.form-photo{margin:6px 0 28px}
.form .brush{margin:6px 0}

/* Blog */
.post-list{display:grid;gap:22px}
.post-card{display:block;text-decoration:none;border:3px solid var(--navy);padding:24px;background:var(--white);box-shadow:7px 7px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px);mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px)}
.post-card:hover{box-shadow:7px 7px 0 var(--red)}
.post-card h2{font-size:1.7rem;margin-bottom:.3em}
.langnote{display:inline-block;font-size:.85rem;font-weight:700;color:var(--green);margin-bottom:8px}
.example{display:inline-block;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:.9rem;padding:.2em .7em;transform:rotate(var(--tilt));box-shadow:3px 3px 0 var(--navy);margin-bottom:12px}
.prose{max-width:68ch}
.prose h1{font-size:clamp(2.2rem,5vw,3.4rem)}
.prose h2{font-size:1.8rem;margin-top:1.4em}

/* Text pages */
.text-page h2{font-size:1.8rem;margin-top:1.6em}
.text-page ul{padding-left:1.2em}
.text-page li{margin:.3em 0}

/* Menu wall (order page) */
.menu-wall{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;grid-auto-flow:dense}
.menu-wall figure{margin:0;background:var(--white);overflow:hidden;border:3px solid var(--navy);box-shadow:5px 5px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 22px,#000 23px);mask:radial-gradient(circle at 100% 0,transparent 22px,#000 23px)}
.menu-wall img{width:100%;aspect-ratio:4/3;object-fit:cover}
.menu-wall figcaption{padding:8px 12px 10px;font-family:var(--head);font-size:1rem;color:var(--ink);line-height:1.25}
.menu-wall .big{grid-column:span 2}
.menu-wall .big img{aspect-ratio:16/9}
@media (min-width:760px){.menu-wall{grid-template-columns:repeat(4,1fr);gap:18px}.menu-wall .big{grid-column:span 2;grid-row:span 2}.menu-wall .big img{aspect-ratio:auto;height:calc(100% - 44px)}}
@media (max-width:759px){
  .compact .card{padding:18px 18px 16px}
  .compact .card .addr{margin-bottom:.3em}
  .compact .card .meta{margin-bottom:12px}
  .compact .card .actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px}
}

/* Footer: navy */
.site-footer{margin-top:40px;padding:56px 0 40px;background:var(--navy);color:var(--white)}
@media (min-width:1000px){.site-footer{padding:80px 0 48px}}
.site-footer.band-green{background:var(--navy)}
.foot-grid{display:grid;gap:28px}
@media (min-width:860px){.foot-grid{grid-template-columns:auto 1fr 1fr 1fr;gap:48px}}
.foot-logo{width:110px;height:110px}
.site-footer h2{font-family:var(--head);font-size:1.15rem;margin:0 0 .6em;color:var(--yellow);text-shadow:none}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.site-footer a{color:var(--white);text-decoration:none;font-weight:600}
.site-footer a:hover{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px}
.site-footer .lbl{display:block;font-size:.85rem;color:rgba(255,255,255,.7);font-weight:500}
.fine{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:.85rem;color:rgba(255,255,255,.65)}

/* Phones */
@media (max-width:860px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-art{order:-1}
  .hero-art .bite{width:min(88vw,460px)}
  .tickets,.tiles{grid-template-columns:1fr}
  .tiles .tile:nth-child(2){transform:none}
  .serve .wrap,.cater .wrap{grid-template-columns:1fr}
  .serve .portrait{width:min(70vw,320px)}
  .specials .wrap{grid-template-columns:1fr}
  .promo-cards{grid-template-columns:1fr}
  .promo.r{margin-top:0}
  .hero-art .dog{transform:rotate(-5deg)}
}

/* Catering: fiesta. Papel picado on a string, a sarape stripe, event tags, a photo mosaic. */
.picado{height:96px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='640' height='96' viewBox='0 0 640 96'><path d='M0,4 Q320.0,64 640,4' fill='none' stroke='%23071e2c' stroke-width='2'/><path transform='translate(40.0,11.0) rotate(9.3)' fill='%23297340' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(120.0,22.3) rotate(6.7)' fill='%23ffffff' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(200.0,29.8) rotate(4.0)' fill='%23e30613' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(280.0,33.5) rotate(1.3)' fill='%23fcbe1a' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(360.0,33.5) rotate(-1.3)' fill='%23297340' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(440.0,29.8) rotate(-4.0)' fill='%23ffffff' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(520.0,22.3) rotate(-6.7)' fill='%23e30613' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/><path transform='translate(600.0,11.0) rotate(-9.3)' fill='%23fcbe1a' fill-rule='evenodd' stroke='%23071e2c' stroke-width='1.5' d='M-30,0 H30 V36 L24,44 L18,36 L12,44 L6,36 L0,44 L-6,36 L-12,44 L-18,36 L-24,44 L-30,36 Z M0,10 m-5,0 a5,5 0 1 0 10,0 a5,5 0 1 0 -10,0 Z M-16,24 l5,-5 l5,5 l-5,5 Z M6,24 l5,-5 l5,5 l-5,5 Z'/></svg>") repeat-x center top/640px 96px;margin:0}
.picado.top{margin-bottom:-2px;position:relative;z-index:2}
.sarape{height:12px;background:repeating-linear-gradient(90deg,var(--red) 0 16px,var(--yellow) 16px 22px,var(--green) 22px 38px,var(--white) 38px 42px,var(--navy) 42px 46px,var(--white) 46px 50px)}
.fiesta .lede{max-width:40em}
.event-tags{list-style:none;padding:0;margin:18px 0 30px;display:flex;flex-wrap:wrap;gap:14px 18px}
.event-tags .tag{font-size:1.15rem;padding:.3em .8em}
.event-tags li:nth-child(2n){transform:rotate(2deg);background:var(--green);color:var(--white)}
.event-tags li:nth-child(3n){transform:rotate(-1.5deg);background:var(--red);color:var(--white)}
.event-tags li:nth-child(6){background:var(--white);color:var(--ink)}
.fiesta-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;grid-template-rows:auto auto;gap:22px}
.fiesta-grid img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;border:3px solid var(--navy);box-shadow:7px 7px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 34px,#000 35px);mask:radial-gradient(circle at 100% 0,transparent 34px,#000 35px)}
.fiesta-grid img.tall{grid-row:span 2;aspect-ratio:auto;box-shadow:7px 7px 0 var(--red);transform:rotate(-1.2deg)}
.fiesta-grid img:nth-child(3){transform:rotate(1deg);box-shadow:7px 7px 0 var(--green)}
.fiesta-grid img:nth-child(4){transform:rotate(-.8deg);box-shadow:7px 7px 0 var(--yellow)}
.fiesta-grid img:nth-child(5){transform:rotate(1.1deg)}
@media (max-width:860px){.fiesta-grid{grid-template-columns:1fr 1fr}.fiesta-grid img.tall{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}.picado{height:72px;background-size:480px 72px}}

/* Locations: postcards, nearest-store control, the carnicería card */
.postcard{background:var(--white);border:3px solid var(--navy);box-shadow:9px 9px 0 var(--navy);margin:34px 0;padding:0 0 28px;border-top:0;-webkit-mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px);mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px)}
.postcard:nth-of-type(odd){transform:rotate(-.6deg)}
.postcard:nth-of-type(even){transform:rotate(.6deg);box-shadow:9px 9px 0 var(--red)}
.postcard .loc-grid{padding:0 28px}
.postcard .loc-photo{margin:0 0 26px;position:relative}
.postcard .loc-photo img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:var(--pos,50% 50%);border:0;border-bottom:3px solid var(--navy);box-shadow:none;-webkit-mask:none;mask:none;display:block}
.postcard .loc-photo .tag{position:absolute;left:22px;bottom:-14px;font-size:clamp(1.3rem,2.4vw,1.9rem);padding:.3em .9em;z-index:2}
.postcard .hours{margin-top:0}
.postcard .loc-grid>div:first-child h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.postcard .loc-grid>div:first-child .lede{margin-top:10px}
.postcard.is-nearest{box-shadow:9px 9px 0 var(--green)}
.nearest{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin:26px 0 6px;padding:18px 22px;background:var(--yellow);border:3px solid var(--navy);box-shadow:6px 6px 0 var(--navy);transform:rotate(-.4deg)}
.nearest strong{font-family:var(--head);font-weight:400;font-size:1.4rem;display:block;line-height:1.1}
.nearest .hint{display:block;font-size:.9rem;color:var(--ink-2);font-weight:500;max-width:34em}
.nearest>div{flex:1 1 320px}
.nearest-msg{flex-basis:100%;margin:4px 0 0;font-weight:700}
.market-card{background:var(--green);color:var(--white);border:3px solid var(--navy);box-shadow:9px 9px 0 var(--yellow);margin:34px 0;padding:30px 28px;border-top:3px solid var(--navy);transform:rotate(.5deg);-webkit-mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px);mask:radial-gradient(circle at 100% 0,transparent 40px,#000 41px)}
.market-card h2,.market-card .lede,.market-card p{color:var(--white)}
.market-card .phone{color:var(--white);border-bottom-color:var(--yellow)}
.market-card .status.is-open{color:var(--yellow)}.market-card .status.is-open::before{background:var(--yellow);box-shadow:0 0 0 3px var(--white)}
.market-card .hours{border-top-color:var(--white)}.market-card .hours th,.market-card .hours td{border-bottom-color:rgba(255,255,255,.25);color:var(--white)}
.market-card .hours tr.is-today th,.market-card .hours tr.is-today td{background:rgba(255,255,255,.14);color:var(--white)}
.market-card .mk-logo{width:min(220px,60%);margin:0 0 14px;transform:rotate(-3deg)}
.market-card .btn-line{color:var(--green)}
@media (max-width:860px){.postcard .loc-photo img{aspect-ratio:4/3}.postcard .loc-grid{padding:0 18px}.postcard{padding-bottom:20px}.nearest{padding:16px}}

/* Specials page: wall calendar cards */
.special.cal{padding:0 0 28px;overflow:visible}
.special.cal .cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 24px 10px;border-bottom:3px solid var(--navy)}
.special.cal .cal-day{font-family:var(--head);font-size:clamp(2.6rem,6vw,4.6rem);line-height:.9;letter-spacing:.01em;text-transform:uppercase}
.special.cal.band-green .cal-day{color:var(--yellow);text-shadow:4px 4px 0 var(--navy)}
.special.cal.special-white .cal-day{color:var(--red);text-shadow:4px 4px 0 var(--yellow)}
.special.cal .today-flag{position:static;margin:0;font-size:1.1rem}
.special.cal .cal-price{font-family:var(--head);font-size:clamp(4.5rem,13vw,8.5rem);line-height:.9;padding:18px 24px 0;color:var(--yellow);text-shadow:6px 6px 0 var(--navy)}
.special.cal.special-white .cal-price{color:var(--red);text-shadow:6px 6px 0 var(--yellow)}
.special.cal h2{padding:0 24px;margin:.2em 0 .5em;font-size:clamp(1.8rem,3.6vw,2.6rem)}
.special.cal .cal-photo{margin:0 24px 18px}
.special.cal .cal-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:var(--pos,50% 50%);border:3px solid var(--navy);box-shadow:6px 6px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 30px,#000 31px);mask:radial-gradient(circle at 100% 0,transparent 30px,#000 31px);transform:rotate(-1.2deg)}
.special.cal.special-white .cal-photo img{transform:rotate(1.2deg);box-shadow:6px 6px 0 var(--red)}
.special.cal p{padding:0 24px}
.special.cal .walkin{margin-bottom:.3em}
@media (min-width:860px){.special.cal{padding:0 0 36px}.special.cal .cal-head,.special.cal .cal-price,.special.cal h2,.special.cal p{padding-left:36px;padding-right:36px}.special.cal .cal-photo{margin:0 36px 22px}}
.next-up{margin:14px 0 0;display:inline-block;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:clamp(1.1rem,2vw,1.4rem);padding:.4em .9em;transform:rotate(-1.5deg);box-shadow:4px 4px 0 var(--navy)}
.page-head .next-up{color:var(--ink)}

/* Story: the timeline */
.timeline{padding:40px 0 20px}
.tl{list-style:none;margin:30px 0 0;padding:0;position:relative}
.tl::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:4px;background:var(--navy);transform:translateX(-50%)}
.tl-item{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0 70px;margin:0 0 40px}
.tl-item .tl-year{position:absolute;left:50%;top:6px;transform:translateX(-50%) rotate(var(--tilt));z-index:2;font-size:1.3rem;padding:.3em .8em;box-shadow:4px 4px 0 var(--navy)}
.tl-item .tl-year.pend{background:var(--white);font-size:1rem;padding:.3em .7em;white-space:nowrap}
.tl-item .tl-year.pend .pending{background:none;padding:0}
.tl-card{grid-column:1;background:var(--white);border:3px solid var(--navy);padding:22px 24px 24px;box-shadow:7px 7px 0 var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px);mask:radial-gradient(circle at 100% 0,transparent 26px,#000 27px);transform:rotate(-.6deg)}
.tl-item:nth-child(even) .tl-card{grid-column:2;transform:rotate(.6deg);box-shadow:7px 7px 0 var(--red)}
.tl-item:nth-child(3n) .tl-card{box-shadow:7px 7px 0 var(--green)}
.tl-card h3{color:var(--red);font-size:clamp(1.4rem,2.6vw,1.9rem);margin:.2em 0 .3em}
.tl-card p{color:var(--ink-2);font-weight:500;margin-bottom:14px}
.tl-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border:3px solid var(--navy);-webkit-mask:radial-gradient(circle at 100% 0,transparent 22px,#000 23px);mask:radial-gradient(circle at 100% 0,transparent 22px,#000 23px)}
.tl-card .ph{aspect-ratio:16/10;font-size:.95rem}
.tl-card p:last-child{margin-bottom:0}
@media (max-width:860px){
  .tl::before{left:14px;transform:none}
  .tl-item{grid-template-columns:1fr;padding-left:44px;margin-bottom:30px}
  .tl-item .tl-year{left:0;top:-12px;transform:rotate(var(--tilt));font-size:1.05rem}
  .tl-card,.tl-item:nth-child(even) .tl-card{grid-column:1}
}
