/* ==================================================================
   TAQUERIA TOMATEROS — Sinaloa Style · Al Estilo Culiacán
   Tomato red · deep matte red · white · charcoal · chrome · leaf green
   Big Shoulders Display (condensed, heavy) + Archivo (clean grotesque)
   ================================================================== */
:root{
  --tomato:#E3242B; --red:#B8151C; --deep:#7A0D12; --ink:#121214; --ink2:#1A1A1E; --char:#26262C;
  --white:#FFFFFF; --off:#F6F4F0; --line:rgba(18,18,20,.1); --mute:#6E6E76; --mute-d:#A9A9B2;
  --leaf:#3FA34D; --leaf-d:#2A7A36; --chrome-1:#F7F7F8; --chrome-2:#A3A4AA;
  --chrome:linear-gradient(135deg,#FFFFFF 0%,#C9CACE 22%,#F4F4F6 40%,#9C9DA3 58%,#E9EAEC 78%,#B9BABF 100%);
  --ease:cubic-bezier(.23,1,.32,1); --ease-io:cubic-bezier(.77,0,.175,1);
  --d:'Big Shoulders Display','Arial Narrow',Impact,sans-serif; --b:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --wrap:1180px; --pad:clamp(18px,5vw,48px); --r:20px; --cut:4.5vw;
}
*{box-sizing:border-box;margin:0}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:calc(74px + env(safe-area-inset-top));-webkit-text-size-adjust:100%;color-scheme:light;background:var(--ink)}
html.no-scroll{overflow:hidden}
body{background:var(--ink);color:var(--ink);font:400 16px/1.6 var(--b);overflow-x:hidden;padding-bottom:calc(68px + env(safe-area-inset-bottom));-webkit-font-smoothing:antialiased}
img,svg,iframe,picture,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
ul{list-style:none;padding:0}
:focus-visible{outline:3px solid var(--tomato);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;z-index:10000;background:var(--tomato);color:#fff;padding:10px 14px;font-weight:700;border-radius:8px}
.skip:focus{left:8px}
.wrap{width:min(100% - 2*var(--pad),var(--wrap));margin-inline:auto;position:relative}
.sec{position:relative;padding:clamp(64px,9vw,120px) 0}
.sec-h{margin-bottom:clamp(26px,4vw,44px)}
@media (min-width:900px){body{padding-bottom:0}}
/* superficies */
.dark{background:var(--ink);color:#fff}
.light{background:var(--white);color:var(--ink)}
.off{background:var(--off);color:var(--ink)}
.redsec{background:linear-gradient(160deg,var(--tomato),var(--red) 55%,var(--deep));color:#fff}
.deepsec{background:linear-gradient(180deg,var(--deep),#3A0508 70%,var(--ink));color:#fff}
/* transición entre secciones: corte diagonal, la siguiente se mete por debajo */
.cut-b{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut)),0 100%);padding-bottom:calc(clamp(64px,9vw,120px) + var(--cut));margin-bottom:calc(-1*var(--cut));position:relative;z-index:2}
.cut-b + .sec{padding-top:calc(clamp(64px,9vw,120px) + var(--cut)*.6)}

/* ---------- tipografía ---------- */
.d{font-family:var(--d);font-weight:900;text-transform:uppercase;letter-spacing:.012em;line-height:.94;text-wrap:balance}
h1.d{font-size:clamp(64px,19vw,190px);line-height:.84}
h2.d{font-size:clamp(46px,11vw,112px)}
h3.d{font-size:clamp(26px,6vw,44px);font-weight:800;line-height:.95}
.eyebrow{font:700 11px/1 var(--b);letter-spacing:.22em;text-transform:uppercase;color:var(--tomato);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--tomato);border-radius:2px}
.dark .eyebrow,.redsec .eyebrow,.deepsec .eyebrow{color:#fff}.dark .eyebrow::before{background:var(--tomato)}.redsec .eyebrow::before,.deepsec .eyebrow::before{background:#fff}
.lead{font-size:clamp(17px,4.4vw,21px);line-height:1.5;max-width:40ch}
.dark .lead{color:rgba(255,255,255,.82)}.light .lead,.off .lead{color:#3B3B42}
.sub{font-size:15px;color:var(--mute);margin-top:10px}
.dark .sub{color:var(--mute-d)}
.chrome-t{background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
/* palabras que entran una por una */
.words span{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .02em 0;margin:-.06em -.02em 0}
.words em{display:inline-block;font-style:normal}
.js .words em{transform:translateY(105%);transition:transform .8s var(--ease)}
.js .words.in em{transform:none}
.words span:nth-child(2) em{transition-delay:.08s}.words span:nth-child(3) em{transition-delay:.16s}.words span:nth-child(4) em{transition-delay:.24s}.words span:nth-child(5) em{transition-delay:.32s}.words span:nth-child(6) em{transition-delay:.4s}
/* revelado */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .8s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.js .rv-l{opacity:0;transform:translateX(-26px);transition:opacity .7s var(--ease),transform .8s var(--ease)}
.js .rv-l.in{opacity:1;transform:none}
.stagger>*{transition-delay:calc(var(--i,0)*70ms)}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 22px;border-radius:14px;font:800 13px/1 var(--b);letter-spacing:.1em;text-transform:uppercase;border:2px solid transparent;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:transform .14s var(--ease),background-color .2s,border-color .2s,box-shadow .25s,color .2s;position:relative}
.btn svg{width:18px;height:18px;flex:none}
.btn:active{transform:scale(.97)}
.btn-red{background:var(--tomato);color:#fff;box-shadow:0 12px 28px -12px rgba(227,36,43,.7)}
.btn-white{background:#fff;color:var(--ink)}
.btn-ink{background:var(--ink);color:#fff}
.btn-line{border-color:rgba(255,255,255,.4);color:#fff}
.light .btn-line,.off .btn-line{border-color:rgba(18,18,20,.22);color:var(--ink)}
.btn-chrome{background:var(--chrome);color:var(--ink)}
@media (hover:hover) and (pointer:fine){
  .btn-red:hover{background:#F03038;box-shadow:0 16px 34px -12px rgba(227,36,43,.85)}
  .btn-white:hover{background:#F2F2F2}.btn-ink:hover{background:#2A2A30}
  .btn-line:hover{border-color:currentColor;background:rgba(255,255,255,.08)}
  .light .btn-line:hover,.off .btn-line:hover{background:rgba(18,18,20,.05)}
}
.btn.sm{min-height:42px;padding:0 15px;font-size:11.5px;border-radius:11px}
.btn.xl{min-height:64px;padding:0 30px;font-size:15px;border-radius:16px}
.cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:520px}
.cta-row .btn:nth-child(3):last-child{grid-column:1/-1}
@media (min-width:640px){.cta-row{display:flex;flex-wrap:wrap;max-width:none}}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto;z-index:900;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(8px + env(safe-area-inset-top)) var(--pad) 8px;transition:background-color .35s,box-shadow .35s;color:#fff}
.hdr.scrolled{background:rgba(18,18,20,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.brand{display:flex;align-items:center;gap:9px;flex:none}
.brand picture,.brand img.brand-logo{width:92px;flex:none;display:block;height:auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.6))}
.brand img{width:100%;height:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}
.brand-t{display:flex;flex-direction:column;line-height:1}

.brand-t small{font:700 9.5px/1.1 var(--b);letter-spacing:.2em;text-transform:uppercase;color:var(--tomato)}
.nav{display:none;gap:22px}
.nav a{font:700 11.5px var(--b);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75);position:relative;padding:8px 0;transition:color .25s}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--tomato);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a.on{color:#fff}.nav a.on::after{transform:scaleX(1)}
@media (hover:hover) and (pointer:fine){.nav a:hover{color:#fff}.nav a:hover::after{transform:scaleX(1)}}
.hdr-r{display:flex;align-items:center;gap:8px}
.lang{display:inline-flex;border:1px solid rgba(255,255,255,.3);border-radius:10px;overflow:hidden}
.lang button{background:transparent;border:0;color:rgba(255,255,255,.7);font:800 11px var(--b);letter-spacing:.1em;padding:9px 10px;cursor:pointer;min-width:40px}
.lang button[aria-pressed="true"]{background:#fff;color:var(--ink)}
.hdr-cta{display:none;gap:8px}
.burger{width:46px;height:46px;border:1px solid rgba(255,255,255,.3);border-radius:12px;background:rgba(18,18,20,.5);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform .35s var(--ease)}
.burger[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
@media (min-width:1120px){.nav,.hdr-cta{display:flex}.burger{display:none}}
.mnav{position:fixed;inset:0;z-index:850;background:radial-gradient(90% 70% at 100% 0%,rgba(227,36,43,.5),transparent 60%),var(--ink);color:#fff;padding:calc(84px + env(safe-area-inset-top)) var(--pad) calc(32px + env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
[hidden]{display:none!important}.mnav[hidden]{display:none!important}
.mnav nav{display:flex;flex-direction:column;position:relative;z-index:1}
.mnav nav a{font:900 clamp(34px,9.4vw,52px)/1.05 var(--d);text-transform:uppercase;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease),transform .55s var(--ease);display:flex;justify-content:space-between;align-items:center}
.mnav nav a::after{content:"→";font:700 22px var(--b);color:var(--tomato)}
.mnav nav a:nth-child(2){transition-delay:.04s}.mnav nav a:nth-child(3){transition-delay:.08s}.mnav nav a:nth-child(4){transition-delay:.12s}.mnav nav a:nth-child(5){transition-delay:.16s}.mnav nav a:nth-child(6){transition-delay:.2s}.mnav nav a:nth-child(7){transition-delay:.24s}
.mnav.open nav a{opacity:1;transform:none}
.mnav-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:26px;position:relative;z-index:1}
.mnav-cta .btn:first-child{grid-column:1/-1}
.mnav-social{display:flex;gap:14px;margin-top:18px;position:relative;z-index:1;font:700 12px var(--b);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:grid;align-items:center;padding:calc(96px + env(safe-area-inset-top)) 0 70px;overflow:hidden;isolation:isolate;color:#fff;background:var(--ink)}
.hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(70px);will-change:transform;opacity:.85}
.b1{width:70vw;height:70vw;max-width:720px;max-height:720px;left:-25%;top:-18%;background:radial-gradient(circle,rgba(227,36,43,.55),transparent 62%);animation:blob1 26s ease-in-out infinite alternate}
.b2{width:60vw;height:60vw;max-width:600px;max-height:600px;right:-22%;bottom:-16%;background:radial-gradient(circle,rgba(184,21,28,.5),transparent 62%);animation:blob2 32s ease-in-out infinite alternate}
.b3{width:34vw;height:34vw;max-width:340px;max-height:340px;left:55%;top:8%;background:radial-gradient(circle,rgba(63,163,77,.22),transparent 62%);animation:blob1 40s ease-in-out infinite alternate-reverse}
@keyframes blob1{to{transform:translate3d(12%,10%,0) scale(1.15)}}
@keyframes blob2{to{transform:translate3d(-14%,-12%,0) scale(1.1)}}
.ring-bg{position:absolute;left:50%;top:44%;width:min(150vw,1100px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1.5px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 40px rgba(227,36,43,.05);animation:spin 90s linear infinite;pointer-events:none}
.ring-bg::before{content:"";position:absolute;inset:-1px;border-radius:50%;border:2px solid transparent;border-top-color:rgba(227,36,43,.55);border-right-color:rgba(255,255,255,.15);filter:blur(.5px)}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.grain{position:absolute;inset:0;opacity:.28;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hero-in{position:relative;display:grid;gap:16px;text-align:center;justify-items:center}
.hero-logo{width:min(84vw,440px);position:relative}
.hero-logo .par{will-change:transform}
.hero-logo img{width:100%;height:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.6)) drop-shadow(0 0 40px rgba(227,36,43,.25));animation:float 8s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px) rotate(-.6deg)}}
.hero .tag{font:800 clamp(12px,3.2vw,15px)/1.4 var(--b);letter-spacing:.3em;text-transform:uppercase;color:#fff;display:grid;gap:2px}
.hero .tag small{font-size:.8em;letter-spacing:.32em;color:var(--tomato)}
.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}
.hero h1{margin-top:-4px}
.hero h1 .l2{color:var(--tomato)}
.hero .lead{text-align:center;color:rgba(255,255,255,.8);font-size:clamp(15px,4vw,19px);max-width:44ch;margin-top:14px}
.hero .cta-main,.hero .cta-sec{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:520px}
.hero .cta-sec .btn{min-height:48px;font-size:12px}
@media (min-width:640px){.hero .cta-main,.hero .cta-sec{display:flex;justify-content:center;flex-wrap:wrap;max-width:none}}
.scroll-ind{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;font:700 9px var(--b);letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.scroll-ind i{width:1px;height:38px;background:linear-gradient(180deg,var(--tomato),transparent);position:relative;overflow:hidden}
.scroll-ind i::after{content:"";position:absolute;left:0;top:-100%;width:100%;height:100%;background:#fff;animation:drop 1.8s var(--ease-io) infinite}
@keyframes drop{to{top:100%}}
/* entrada del hero: logo (escala + profundidad) → titular → botones */
.js .hero-logo{opacity:0;transform:scale(.72) translateY(20px);filter:blur(6px)}
.js .hero .tag,.js .hero .lead,.js .hero .cta-main,.js .hero .cta-sec,.js .scroll-ind{opacity:0;transform:translateY(16px)}
.js .hero.play .hero-logo{animation:logoIn 1s var(--ease) forwards}
@keyframes logoIn{to{opacity:1;transform:none;filter:blur(0)}}
.js .hero.play .tag{animation:up .7s var(--ease) .45s forwards}
.js .hero.play .lead{animation:up .7s var(--ease) .8s forwards}
.js .hero.play .cta-main{animation:up .7s var(--ease) .92s forwards}
.js .hero.play .cta-sec{animation:up .7s var(--ease) 1.02s forwards}
.js .hero.play .scroll-ind{animation:up .7s var(--ease) 1.3s forwards}
@keyframes up{to{opacity:1;transform:none}}
@media (min-width:900px){
  .hero-in{grid-template-columns:1.05fr 1fr;text-align:left;justify-items:start;align-items:center;gap:40px}
  .hero-logo{width:min(44vw,600px);justify-self:center;grid-row:1/span 6;grid-column:2}
  .hero .lead{text-align:left}
  .hero .tag{grid-column:1}
}

/* ---------- vitrina de comida (tarjetas horizontales) ---------- */
.showcase{padding-top:clamp(40px,6vw,72px)}
.cards{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px var(--pad) 26px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.cards::-webkit-scrollbar{display:none}
.fcard{flex:0 0 min(74vw,300px);aspect-ratio:4/5;scroll-snap-align:start;position:relative;border-radius:var(--r);overflow:hidden;background:var(--char);box-shadow:0 24px 40px -22px rgba(0,0,0,.8);isolation:isolate}
.fcard img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.fcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(18,18,20,.85));z-index:1}
.fcard .t{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;font:900 clamp(26px,6.4vw,34px)/.92 var(--d);text-transform:uppercase;color:#fff;letter-spacing:.005em}
.fcard .t small{display:block;font:700 10px var(--b);letter-spacing:.2em;color:var(--tomato);margin-bottom:6px}
.fcard.type{background:linear-gradient(160deg,var(--tomato),var(--deep));display:grid;place-items:center;padding:20px}
.fcard.type::after{background:radial-gradient(60% 50% at 70% 20%,rgba(255,255,255,.18),transparent 60%)}
.fcard.type .t{position:static;font-size:clamp(40px,10vw,56px);text-align:center;line-height:.86}
.fcard.type .num{position:absolute;top:14px;left:18px;font:900 14px var(--d);letter-spacing:.1em;color:rgba(255,255,255,.55)}
.js .fcard{opacity:0;transform:translateY(22px) scale(.98);transition:opacity .7s var(--ease) calc(var(--i,0)*60ms),transform .8s var(--ease) calc(var(--i,0)*60ms)}
.js .fcard.in{opacity:1;transform:none;transition:opacity .7s,transform .5s var(--ease),box-shadow .3s}
@media (hover:hover) and (pointer:fine){.fcard.in:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 30px 50px -22px rgba(0,0,0,.9)}.fcard:hover img{transform:scale(1.06)}}
@media (min-width:900px){.cards{display:grid;grid-template-columns:repeat(4,1fr);overflow:visible;padding:8px 0 0;width:min(100% - 2*var(--pad),var(--wrap));margin-inline:auto}.fcard{flex:auto}.fcard:nth-child(1){grid-column:span 2;aspect-ratio:8/5}}

/* ---------- favoritos ---------- */
.favs{display:grid;gap:12px}
.fav{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:start;padding:18px 0;border-top:1px solid var(--line);position:relative}
.fav:last-child{border-bottom:1px solid var(--line)}
.fav .n{font:900 clamp(24px,6vw,32px)/.95 var(--d);text-transform:uppercase;letter-spacing:.005em}
.fav .p{font:800 16px var(--b);color:var(--tomato);white-space:nowrap;padding-top:6px}
.fav .dsc{grid-column:1/-1;font-size:15px;color:var(--mute);line-height:1.5;max-width:52ch}
.pop{display:inline-flex;align-items:center;gap:6px;font:800 9.5px var(--b);letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--tomato);padding:5px 8px;border-radius:999px;vertical-align:middle;margin-left:8px;position:relative;top:-6px}
.fav .note{font:700 11px var(--b);letter-spacing:.12em;text-transform:uppercase;color:var(--leaf-d);grid-column:1/-1}
@media (min-width:900px){.favs{grid-template-columns:1fr 1fr;gap:0 48px}.fav:nth-last-child(2){border-bottom:1px solid var(--line)}}

/* ---------- menú completo ---------- */
.menu-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px 0 14px;position:sticky;top:calc(66px + env(safe-area-inset-top));background:linear-gradient(var(--off) 80%,rgba(246,244,240,0));z-index:5;margin-bottom:8px}
.menu-tabs::-webkit-scrollbar{display:none}
.menu-tabs button{flex:none;border:1px solid rgba(18,18,20,.16);background:#fff;padding:11px 14px;border-radius:999px;font:800 11.5px var(--b);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.menu-tabs button[aria-selected="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.mcat{margin-top:30px;scroll-margin-top:calc(140px + env(safe-area-inset-top))}
.mcat h3{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}
.mcat h3 small{font:700 11px var(--b);letter-spacing:.16em;color:var(--mute);text-transform:uppercase}
.mgrid{display:grid;gap:10px}
.mi{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:start;transition:transform .3s var(--ease),box-shadow .3s}
.mi .n{font:800 18px/1.2 var(--b);letter-spacing:0}
.mi .p{font:800 16px var(--b);color:var(--tomato);white-space:nowrap}
.mi .dsc{grid-column:1/-1;font-size:14px;color:var(--mute);line-height:1.5}
.mi .note{grid-column:1/-1;font:700 10.5px var(--b);letter-spacing:.12em;text-transform:uppercase;color:var(--leaf-d)}
.mi.has-img{grid-template-columns:84px 1fr auto}
.mi.has-img img{width:84px;height:84px;object-fit:cover;border-radius:12px;grid-row:1/span 3}
.mi.has-img .dsc,.mi.has-img .note{grid-column:2/-1}
@media (hover:hover) and (pointer:fine){.mi:hover{transform:translateY(-2px);box-shadow:0 18px 30px -22px rgba(18,18,20,.35)}}
@media (min-width:760px){.mgrid{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.mgrid{grid-template-columns:repeat(3,1fr)}}
.menu-note{margin-top:22px;font-size:13px;color:var(--mute)}

/* ---------- ordenar ---------- */
.order{text-align:center;overflow:hidden}
.order .wrap{display:grid;justify-items:center;gap:14px}
.order h2{font-size:clamp(60px,17vw,170px);color:#fff}
.order .lead{color:rgba(255,255,255,.88);text-align:center}
.order-btns{display:grid;gap:10px;width:100%;max-width:460px;margin-top:6px}
.order-btns .btn-white{color:var(--tomato)}
.order .ring-bg{opacity:.5;top:50%;width:min(180vw,1300px)}

/* ---------- catering ---------- */
.cat-grid{display:grid;gap:26px}
.cat-copy .lead{color:rgba(255,255,255,.85)}
.cat-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px}
.cat-tags li{font:700 11px var(--b);letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(255,255,255,.3);padding:8px 11px;border-radius:999px;color:rgba(255,255,255,.9)}
.cat-art{border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;background:var(--char);box-shadow:0 30px 50px -24px rgba(0,0,0,.8);position:relative}
.cat-art img{width:100%;height:100%;object-fit:cover}
.cat-art.type{background:radial-gradient(70% 60% at 30% 20%,rgba(255,255,255,.14),transparent 60%),linear-gradient(160deg,#1E1E23,var(--ink));display:grid;place-items:center;padding:24px;text-align:center}
.cat-art.type img{width:70%;height:auto;object-fit:contain;filter:drop-shadow(0 30px 40px rgba(0,0,0,.6))}
.form{display:grid;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:clamp(18px,4vw,28px);backdrop-filter:blur(10px)}
.light .form,.off .form{background:#fff;border-color:var(--line)}
.f2{display:grid;gap:12px}
@media (min-width:560px){.f2{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:6px}
.field label{font:700 11px var(--b);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.light .field label,.off .field label{color:var(--mute)}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(18,18,20,.35);color:#fff;font-size:16px}
.light .field input,.light .field select,.light .field textarea,.off .field input,.off .field select,.off .field textarea{background:var(--off);border-color:rgba(18,18,20,.16);color:var(--ink)}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--tomato);box-shadow:0 0 0 3px rgba(227,36,43,.25)}
.field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E3242B' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}
.field input[type=file]{padding:10px;font-size:14px}
.field input[type=file]::file-selector-button{font:800 11px var(--b);letter-spacing:.1em;text-transform:uppercase;background:var(--tomato);color:#fff;border:0;border-radius:8px;padding:9px 12px;margin-right:12px;cursor:pointer}
.form .btn{width:100%;margin-top:4px}
.form-note{font-size:12.5px;color:rgba(255,255,255,.65);text-align:center}
.light .form-note,.off .form-note{color:var(--mute)}
.form-ok{display:none;padding:18px;border-radius:12px;background:rgba(63,163,77,.18);border:1px solid rgba(63,163,77,.5);font-weight:600;text-align:center}
.form.sent .form-ok{display:block}.form.sent .f-body{display:none}
.hp{position:absolute;left:-9999px}
@media (min-width:900px){.cat-grid{grid-template-columns:1fr 1.15fr;gap:48px;align-items:start}.cat-art{aspect-ratio:3/4;position:sticky;top:100px}}

/* ---------- nosotros ---------- */
.about-grid{display:grid;gap:28px}
.about .lead{max-width:56ch}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.pillars li{padding:16px;border-radius:14px;background:var(--off);border:1px solid var(--line);font:800 13px/1.3 var(--b);letter-spacing:.02em}
.pillars li b{display:block;font:900 26px var(--d);text-transform:uppercase;color:var(--tomato);margin-bottom:4px}
@media (min-width:900px){.about-grid{grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}}

/* ---------- el modo tomatero (mascota) ---------- */
.story{overflow:hidden}
.story-grid{display:grid;gap:26px;align-items:center}
.mascot-wrap{position:relative;width:min(78vw,420px);margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-block:4%}
.mascot-wrap::before{content:"";position:absolute;left:50%;top:-4%;width:108%;aspect-ratio:1;translate:-50% 0;border-radius:50%;background:radial-gradient(circle,rgba(227,36,43,.5),rgba(227,36,43,0) 70%);filter:blur(24px)}
.mascot-wrap::after{content:"";position:absolute;left:50%;top:0;width:100%;aspect-ratio:1;translate:-50% 0;border-radius:50%;border:2px solid transparent;border-top-color:rgba(255,255,255,.35);border-left-color:rgba(227,36,43,.6);animation:spin 40s linear infinite}
.mascot-wrap img{width:94%;height:auto;position:relative;filter:drop-shadow(0 26px 38px rgba(0,0,0,.72));
  transform:rotate(var(--rot,0deg)) translateY(var(--ty,0px));transition:transform .2s linear}
/* el nombre igual que en la portada: blanco sobre rojo, condensada y apilada */
.brand-lockup{position:relative;margin:2px 0 0;text-align:center;font-family:var(--d);font-weight:900;
  text-transform:uppercase;letter-spacing:.012em;line-height:.94}
.brand-lockup span,.brand-lockup em{display:block;font-style:normal}
.brand-lockup span{color:#fff;font-size:clamp(30px,8.4vw,44px)}
.brand-lockup em{color:var(--tomato);font-size:clamp(38px,10.8vw,58px)}
.values{display:grid;gap:12px}
.values li{padding:20px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);display:grid;gap:6px}
.values li b{font:900 clamp(30px,7vw,40px)/.95 var(--d);text-transform:uppercase}
.values li:nth-child(1) b{color:var(--leaf)}.values li:nth-child(2) b{color:var(--tomato)}.values li:nth-child(3) b{color:#fff}
.values li p{font-size:15px;color:rgba(255,255,255,.75);line-height:1.5}
@media (min-width:900px){.story-grid{grid-template-columns:1fr 1fr;gap:56px}}

/* ---------- ubicaciones ---------- */
.loc-grid{display:grid;gap:18px}
.loc{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 30px 50px -30px rgba(18,18,20,.35);display:grid}
.loc-hd{padding:22px 22px 0;display:grid;gap:8px}
.loc-hd .city{font:900 clamp(38px,10vw,64px)/.9 var(--d);text-transform:uppercase}
.loc-hd .city small{display:block;font:700 11px var(--b);letter-spacing:.2em;color:var(--tomato);margin-bottom:6px}
.addr{font:600 17px/1.4 var(--b);font-style:normal}
.addr a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(227,36,43,.5);text-underline-offset:4px}
.status{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border-radius:999px;background:var(--off);font:800 11.5px var(--b);letter-spacing:.1em;text-transform:uppercase;width:max-content}
.status i{width:8px;height:8px;border-radius:50%;background:#2FB55B;box-shadow:0 0 8px #2FB55B}.status.closed i{background:var(--tomato);box-shadow:0 0 8px var(--tomato)}
.status small{font:500 12px var(--b);letter-spacing:0;text-transform:none;color:var(--mute)}
.hours{margin:6px 0 0}
.hours li{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line);font-size:14.5px;color:#3B3B42}
.hours li.today{font-weight:800;color:var(--ink)}
.hours li.today span:first-child::after{content:attr(data-today);color:var(--tomato);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;margin-left:8px}
.loc .cta-row{padding:18px 22px 22px;max-width:none}
.loc .map{aspect-ratio:16/10;background:var(--off)}
.loc .map iframe{width:100%;height:100%;border:0}
.loc.mobile{background:linear-gradient(160deg,var(--ink2),var(--ink));color:#fff;border-color:rgba(255,255,255,.08)}
.loc.mobile .addr,.loc.mobile .hours li{color:rgba(255,255,255,.8)}
.loc.mobile .addr a{color:#fff}
.loc.mobile .status{background:rgba(255,255,255,.08)}
.loc.mobile .btn-line{border-color:rgba(255,255,255,.35);color:#fff}
.loc-art{position:relative;min-height:180px;background:radial-gradient(70% 70% at 70% 30%,rgba(227,36,43,.45),transparent 60%),var(--ink2);overflow:hidden}
.loc-art img{position:absolute;right:-8%;bottom:-18%;width:60%;max-width:280px;filter:drop-shadow(0 20px 30px rgba(0,0,0,.6))}
@media (min-width:900px){.loc-grid{grid-template-columns:1fr;align-items:start}.loc.main{grid-template-columns:1fr 1fr}.loc.main .loc-hd{grid-row:1}.loc.main .cta-row{grid-row:2}.loc.main .map{grid-column:2;grid-row:1/span 2;aspect-ratio:auto;min-height:100%}}

/* ---------- reseñas ---------- */
.rating{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.rating .big{font:900 clamp(56px,14vw,96px)/.85 var(--d);color:var(--tomato)}
.rating .stars{color:#F2B300;font-size:22px;letter-spacing:2px}
.rating small{display:block;font:600 13px var(--b);color:var(--mute);margin-top:4px}
.reviews{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--pad) 22px;margin-inline:calc(-1*var(--pad));scrollbar-width:none}
.reviews::-webkit-scrollbar{display:none}
.rev{flex:0 0 min(82vw,380px);scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:12px;box-shadow:0 20px 40px -30px rgba(18,18,20,.3)}
.rev q{font:500 clamp(16px,4.2vw,18px)/1.5 var(--b);quotes:"“" "”";color:var(--ink)}
.rev q::before{color:var(--tomato);font:900 40px/0 var(--d);vertical-align:-14px;margin-right:4px}
.rev .who{display:flex;justify-content:space-between;align-items:center;font:700 12px var(--b);letter-spacing:.06em;color:var(--mute)}
.rev .who .st{color:#F2B300;letter-spacing:1px}
@media (min-width:900px){.reviews{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;margin:0;padding:0}.rev{flex:auto}}
.rev-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}

/* ---------- social ---------- */
.social-grid{display:grid;gap:14px}
.ig-card{display:grid;gap:10px;padding:26px;border-radius:var(--r);background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);color:#fff;position:relative;overflow:hidden}
.ig-card .h{font:900 clamp(24px,6.4vw,34px)/1 var(--d);letter-spacing:.01em}
.ig-card small{font:700 11px var(--b);letter-spacing:.18em;text-transform:uppercase;color:var(--tomato)}
.ig-card .go{font:800 12px var(--b);letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-top:6px}
.ig-card .ic{position:absolute;right:18px;top:18px;width:40px;height:40px;border-radius:12px;background:var(--tomato);display:grid;place-items:center}
.ig-card .ic svg{width:20px;height:20px}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px}
.ig-grid a{aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--char)}
.ig-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
@media (hover:hover) and (pointer:fine){.ig-grid a:hover img{transform:scale(1.06)}}
@media (min-width:900px){.social-grid{grid-template-columns:1fr 1fr;gap:20px}.ig-grid{grid-column:1/-1;grid-template-columns:repeat(6,1fr)}}

/* ---------- contacto ---------- */
.contact-grid{display:grid;gap:10px}
.crow{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff}
.crow .ic{width:44px;height:44px;border-radius:12px;background:var(--tomato);display:grid;place-items:center}
.crow .ic svg{width:20px;height:20px}
.crow small{display:block;font:700 10px var(--b);letter-spacing:.2em;text-transform:uppercase;color:var(--mute-d)}
.crow b{font:800 16px var(--b)}
.crow .go{font:800 11px var(--b);letter-spacing:.14em;text-transform:uppercase;color:var(--tomato)}
@media (min-width:760px){.contact-grid{grid-template-columns:1fr 1fr}}

/* ---------- footer ---------- */
.ftr{background:var(--ink);color:#fff;padding:64px 0 40px;border-top:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}
.ftr .wrap{display:grid;gap:26px}
.ftr-logo{width:min(60vw,260px)}
.ftr-logo img{width:100%;height:auto;filter:drop-shadow(0 16px 30px rgba(0,0,0,.6))}
.ftr-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ftr-cols small{display:block;font:700 10px var(--b);letter-spacing:.2em;text-transform:uppercase;color:var(--tomato);margin-bottom:10px}
.ftr-cols a{display:block;padding:5px 0;font:600 14px var(--b);color:rgba(255,255,255,.8)}
.ftr-line{font:900 clamp(22px,6vw,34px)/1 var(--d);text-transform:uppercase}
.ftr-line span{color:var(--tomato)}
.copy{font-size:12px;color:var(--mute-d)}
@media (min-width:760px){.ftr-cols{grid-template-columns:repeat(4,1fr)}.ftr .wrap{grid-template-columns:1fr 2fr;align-items:start}.ftr-cols{grid-column:2}.ftr-logo{grid-row:1/span 3}}

/* ---------- barra móvil ---------- */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:800;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:rgba(18,18,20,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.1);color:#fff}
.mbar a{display:grid;justify-items:center;gap:5px;padding:8px 4px 7px;border-radius:12px;font:800 10px var(--b);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8);-webkit-tap-highlight-color:transparent;transition:transform .14s var(--ease)}
.mbar a:active{transform:scale(.96)}
.mbar a svg{width:22px;height:22px}
.mbar a.order{background:var(--tomato);color:#fff}
@media (min-width:900px){.mbar{display:none}}

/* ---------- menos movimiento ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .rv,.js .rv-l,.js .words em,.js .fcard,.js .hero-logo,.js .hero .tag,.js .hero .lead,.js .hero .cta-main,.js .hero .cta-sec,.js .scroll-ind{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;animation:none!important}
  .blob,.ring-bg,.hero-logo img,.scroll-ind i::after,.mascot-wrap::after{animation:none!important}
  .mascot-wrap img{transform:none!important}
}

/* ---------- ajustes finales ---------- */
.hero h1 span:nth-of-type(2) em{color:var(--tomato)}
.meats{font-size:14px;color:var(--mute);margin-top:14px;max-width:70ch;line-height:1.6}
.meats b{color:var(--ink);font-weight:800}
.meats .prem{display:block;margin-top:2px}
.meats .prem b{color:var(--tomato)}
.uber{display:inline-flex;align-items:center;min-height:44px;margin-top:4px;padding:0 4px;font:800 12px var(--b);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.9);box-shadow:inset 0 -2px 0 rgba(255,255,255,.5)}
.about-art{position:relative;display:grid;gap:12px}
.about-art img{width:100%;height:auto;border-radius:var(--r);object-fit:cover;box-shadow:0 30px 50px -28px rgba(18,18,20,.45)}
.about-art img:first-child{aspect-ratio:16/10}
.about-art .about-art-2{display:none}
@media (min-width:900px){.about-art{grid-template-columns:1.4fr 1fr;align-items:end}.about-art img:first-child{aspect-ratio:4/5}.about-art .about-art-2{display:block;aspect-ratio:4/5;transform:translateY(24px)}}
.pillars li{font-weight:600;color:#3B3B42}
.social-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.cat-copy .cat-art{margin-top:26px}
@media (min-width:900px){.cat-copy .cat-art{position:static;aspect-ratio:3/4}}
.loc.mobile .loc-hd .eyebrow{margin-bottom:6px}
/* pantallas muy angostas (320px): los botones de dos columnas se apilan */
@media (max-width:359px){
  .hero .cta-main,.hero .cta-sec,.cta-row,.mnav-cta,.contact-grid,.pillars{grid-template-columns:1fr}
  .cta-row .btn:nth-child(3):last-child,.mnav-cta .btn:first-child{grid-column:auto}
  .btn{padding-inline:16px}
}
/* escritorio: las columnas del hero no pueden crecer por la palabra TOMATEROS, y el titular cabe en su columna */
@media (min-width:900px){
  .hero-in{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
  h1.d{font-size:clamp(96px,10.2vw,148px)}
  .hero-logo{width:min(42vw,580px);max-width:100%}
}
/* las columnas 1fr no pueden crecer por textos largos (contacto, menú, favoritos) */
.crow{grid-template-columns:44px minmax(0,1fr) auto}
.crow b,.crow small{overflow-wrap:anywhere}
.mi{grid-template-columns:minmax(0,1fr) auto}
.mi.has-img{grid-template-columns:84px minmax(0,1fr) auto}
.fav{grid-template-columns:minmax(0,1fr) auto}
.ig-card .h{overflow-wrap:anywhere}
/* correcciones de la revisión adversarial */
img{height:auto}
.loc-art{min-height:220px}
.loc-art img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:70% 62%;filter:none;right:auto;bottom:auto}
.loc-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,26,30,0) 45%,#1A1A1E)}
.redsec :focus-visible,.deepsec :focus-visible{outline-color:#fff}
.redsec .btn-white:focus-visible{box-shadow:0 0 0 6px rgba(18,18,20,.55)}
.lang button{min-height:40px}
.menu-tabs button{min-height:40px}
.mnav-social a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
.ftr-cols a{padding:9px 0}


/* ---- plataformas de pedido (DoorDash · Grubhub · Uber Eats) ---- */
.apps{display:flex;flex-direction:column;align-items:center;gap:9px;width:100%;max-width:520px;margin-top:4px}
.apps__k{font:700 10px/1 var(--b);letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.apps__l{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.app{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:11px 16px;border-radius:999px;
  font:700 12.5px/1 var(--b);letter-spacing:.04em;color:#fff;white-space:nowrap;
  background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.2);
  transition:transform .25s var(--ease),box-shadow .25s ease,background-color .25s ease;-webkit-tap-highlight-color:transparent}
.app i{width:9px;height:9px;border-radius:50%;flex:none}
.app--dd i{background:#EB1700;box-shadow:0 0 10px 1px rgba(235,23,0,.75)}
.app--gh i{background:#F63440;box-shadow:0 0 10px 1px rgba(246,52,64,.7)}
.app--ue i{background:#06C167;box-shadow:0 0 10px 1px rgba(6,193,103,.7)}
.app:active{transform:translateY(1px) scale(.985)}
@media (hover:hover) and (pointer:fine){
  .app:hover{transform:translateY(-2px);background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.42)}
}
/* sobre el rojo de la sección de pedidos */
.redsec .apps__k{color:rgba(255,255,255,.75)}
.redsec .app{background:rgba(0,0,0,.28);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3)}
/* botones de la sección de pedidos con el nombre de la plataforma arriba */
.order-btns .btn.xl{flex-direction:column;gap:3px;line-height:1.1;padding-block:13px}
.order-btns .btn.xl b{font:900 17px/1 var(--d);letter-spacing:.03em;text-transform:uppercase}
.order-btns .btn.xl span{font:600 11px/1 var(--b);letter-spacing:.1em;text-transform:uppercase;opacity:.72}
.js .hero .apps{opacity:0;transform:translateY(16px)}
.js .hero.play .apps{opacity:1;transform:none;transition:opacity .7s var(--ease) .5s,transform .7s var(--ease) .5s}
@media (prefers-reduced-motion:reduce){.js .hero .apps{opacity:1!important;transform:none!important;transition:none!important}}

/* la insignia completa necesita aire: en pantallas muy angostas se queda sola */
/* la bajada solo aparece donde de verdad cabe: no bajo 410 px, y no entre 1000 y 1239
   donde el nav completo ya ocupa el centro de la cabecera */
.brand-t{display:none}
@media (min-width:410px) and (max-width:999px){.brand-t{display:block}}
@media (min-width:1240px){.brand-t{display:block}}
@media (max-width:409px){.brand picture,.brand img.brand-logo{width:82px}}
@media (min-width:1060px){.brand picture,.brand img.brand-logo{width:112px}.brand-t small{font-size:10px}}

/* ---- área táctil mínima en enlaces de texto (móvil sobre todo) ---- */
.addr a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px;padding-right:4px}
footer a{display:inline-flex;align-items:center;min-height:40px}
footer .fsoc a,footer nav a,footer li a{padding-block:2px}


/* ===== logo nuevo por todas partes (2026-09-22) ===== */
.dark,.redsec,.deepsec,.ftr{position:relative}
.dark>.wrap,.redsec>.wrap,.deepsec>.wrap,.ftr>.wrap,.hero>.wrap{position:relative;z-index:1}
.hero::before{display:none}
.story .mascot-wrap::before{width:118%;top:-8%}


/* ===== letras de tomate (2026-09-22): Titan One, rojo brillante con brillo, hojitas verdes encima de cada letra ===== */
:root{--t:"Titan One","Arial Rounded MT Bold","Helvetica Neue",Arial,sans-serif;--calyx:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 56'%3E%3Cpath d='M50 34 C38 30 22 32 6 40 C22 28 34 22 46 24 C34 14 24 8 10 6 C28 4 42 10 50 20 C52 8 56 2 62 0 C60 10 58 18 55 24 C66 16 80 12 96 14 C82 18 70 26 58 32 C72 34 84 40 94 50 C80 44 66 40 54 40 Z' fill='%234CB94F'/%3E%3Cpath d='M50 34 C38 30 22 32 6 40 C22 28 34 22 46 24 C34 14 24 8 10 6 C28 4 42 10 50 20 C52 8 56 2 62 0 C60 10 58 18 55 24 C66 16 80 12 96 14 C82 18 70 26 58 32 C72 34 84 40 94 50 C80 44 66 40 54 40 Z' fill='%232E8B34' opacity='.45' transform='translate(2 3)'/%3E%3Cpath d='M48 30c-2-10-1-18 4-26' stroke='%23246B2A' stroke-width='5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E")}
h1.d,h2.d,.brand-lockup{font-family:var(--t);font-weight:400;letter-spacing:.02em;line-height:1.02;text-transform:uppercase;filter:drop-shadow(0 .02em 0 #7A0D12) drop-shadow(0 .05em 0 #4A0508) drop-shadow(0 .16em .22em rgba(0,0,0,.55))}
h1.d{font-size:clamp(42px,11.2vw,124px);line-height:1}
h2.d{font-size:clamp(32px,8.2vw,74px)}
.d.words span,.d.words em,.brand-lockup span,.brand-lockup em{white-space:nowrap}
@media (min-width:1060px){h1.d{font-size:clamp(64px,6.4vw,96px)}h2.d{font-size:clamp(40px,4.9vw,68px)}}
.words span{padding-top:.12em;margin-top:-.12em}
.tom{font-family:var(--t);font-weight:400;letter-spacing:.02em;filter:drop-shadow(0 .5px 0 #7A0D12) drop-shadow(0 1px 0 #4A0508)}.tom .w{white-space:nowrap}
.fav .n .tom{font-size:1.28em;line-height:1.15}.mi .n .tom{font-size:1.2em;line-height:1.15}
.d .l,.brand-lockup .l,.tom .l{position:relative;display:inline-block;color:#fff!important;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-stroke:.085em #D71F27;paint-order:stroke fill;text-shadow:0 .04em 0 #8E0E19}
.light .d .l,.off .d .l{background:none}
.d .l::before,.brand-lockup .l::before,.tom .l::before{content:"";position:absolute;left:57%;top:0;width:.38em;height:.21em;translate:-50% 0;rotate:var(--cr,0deg);scale:var(--cs,1);background:var(--calyx) center/contain no-repeat;pointer-events:none;z-index:2;filter:drop-shadow(0 .02em .02em rgba(0,0,0,.6))}
.d .l:nth-child(3n)::before,.tom .l:nth-child(3n)::before{--cr:-12deg;--cs:.9}.d .l:nth-child(3n+1)::before,.tom .l:nth-child(3n+1)::before{--cr:9deg;--cs:1.08}.d .l:nth-child(5n+2)::before,.tom .l:nth-child(5n+2)::before{--cr:-5deg}
.hero h1 .l2,.hero h1 span:nth-of-type(2) em{color:inherit}
.brand-lockup span,.brand-lockup em{color:transparent}
.brand-lockup span{font-size:clamp(28px,7.6vw,40px)}.brand-lockup em{font-size:clamp(36px,10vw,54px)}
.dark .d .l::before,.deepsec .d .l::before,.redsec .d .l::before{filter:drop-shadow(0 .02em .03em rgba(0,0,0,.8))}
h1.d,h2.d{position:relative;isolation:isolate}
.fav,.mcat,.mi{position:relative}
@media (max-width:759px){}
@media (prefers-reduced-motion:no-preference){}
