:root{--cream:#fff8ee;--ink:#2b1d14;--pink:#e83f6f;--orange:#e4572e;--yellow:#f2c14e;--teal:#17bebb;--green:#5aa34a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.6 "Avenir Next","Trebuchet MS",-apple-system,"Segoe UI",sans-serif}
h1,h2,h3{font-family:"Cooper Black","Rockwell Extra Bold","Arial Black",Georgia,serif;line-height:1.05;margin:0 0 .4em}
h1{font-size:clamp(2.6rem,6.5vw,5rem)}h2{font-size:clamp(2rem,4vw,3rem)}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.btn{display:inline-block;text-decoration:none;font-weight:800;padding:14px 22px;border-radius:999px;transition:transform .2s,box-shadow .2s;border:3px solid var(--ink)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink)}
.btn-lg{padding:18px 28px;font-size:1.05rem}
.btn-pink{background:var(--pink);color:#fff}.btn-dark{background:var(--ink);color:#fff}.btn-white{background:#fff;color:var(--ink)}.btn-ghost{background:transparent;color:#fff;border-color:#fff}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,248,238,.92);backdrop-filter:blur(8px);border-bottom:3px solid var(--ink)}
.nav-in{display:flex;align-items:center;gap:26px;height:74px}
.brand{display:flex;align-items:baseline;gap:8px;text-decoration:none;color:var(--ink);font:900 1.6rem "Cooper Black","Arial Black",serif;margin-right:auto}
.brand small{font:700 .8rem sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--orange)}
.nav-links{display:flex;gap:24px}.nav-links a{color:var(--ink);text-decoration:none;font-weight:700}
.hero{position:relative;overflow:hidden;padding:70px 0 90px;background:linear-gradient(180deg,#fff1dc,var(--cream))}
.papel{position:absolute;top:0;left:0;right:0;display:flex;height:70px}
.papel span{flex:1;background:var(--c);clip-path:polygon(0 0,100% 0,100% 70%,85% 100%,70% 72%,50% 100%,30% 72%,15% 100%,0 70%);animation:sway 3s ease-in-out infinite;transform-origin:top;opacity:.92}
.papel span:nth-child(even){animation-delay:.4s}
@keyframes sway{50%{transform:rotate(2deg) translateY(2px)}}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding-top:40px}
.pill{display:inline-block;background:#fff;border:2px solid var(--ink);border-radius:999px;padding:6px 14px;font-weight:800;font-size:.9rem;margin-bottom:18px}
.hl{background:linear-gradient(transparent 60%,var(--yellow) 60%);padding:0 .1em}
.sub{font-size:1.2rem;max-width:30em}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 8px}
.tiny{font-size:.8rem;opacity:.6}
.plate-wrap{position:relative;height:440px;display:grid;place-items:center}
.sun{position:absolute;width:420px;height:420px;border-radius:50%;background:repeating-conic-gradient(var(--yellow) 0 10deg,#ffd77a 10deg 20deg);animation:rot 40s linear infinite;opacity:.8}
@keyframes rot{to{transform:rotate(360deg)}}
.plate{position:relative;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,#fff 0 58%,#f0e3cf 59% 62%,#fff 63%);box-shadow:0 30px 60px rgba(43,29,20,.25),0 0 0 6px var(--teal)}
.t{position:absolute;width:170px;height:110px;filter:drop-shadow(0 6px 6px rgba(0,0,0,.15))}
.t.a{left:28px;top:70px;transform:rotate(-18deg);animation:float 4s ease-in-out infinite}
.t.b{left:120px;top:110px;transform:rotate(14deg);animation:float 4s ease-in-out .6s infinite}
.t.c{left:60px;top:170px;transform:rotate(-4deg);animation:float 4s ease-in-out 1.2s infinite}
@keyframes float{50%{translate:0 -8px}}
.lime{position:absolute;right:40px;top:60px;width:56px;height:56px;border-radius:50%;background:repeating-conic-gradient(#b7e07a 0 30deg,#e9f7c9 30deg 34deg);box-shadow:0 0 0 5px #5aa34a}
.salsa{position:absolute;right:50px;bottom:50px;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle,#c8341b 0 60%,#fff 62% 72%,#ddd 74%)}
.sticker{position:absolute;right:0;bottom:30px;width:120px;height:120px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;text-align:center;font:900 1rem/1.05 "Arial Black",sans-serif;text-transform:uppercase;border:3px solid var(--ink);transform:rotate(12deg);animation:wob 5s ease-in-out infinite}
@keyframes wob{50%{transform:rotate(-6deg) scale(1.05)}}
.favs{padding:60px 0 20px}
.fav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:20px}
.fav{background:#fff;border:3px solid var(--ink);border-radius:22px;padding:18px;box-shadow:6px 6px 0 var(--ink);transition:transform .25s}
.fav:hover{transform:rotate(-1.5deg) translateY(-6px)}
.food{height:170px;border-radius:14px;background:var(--bg);display:grid;place-items:center;margin-bottom:14px;overflow:hidden}
.food svg{width:150px;height:100px}
.burrito{width:160px;height:70px;border-radius:40px;background:linear-gradient(180deg,#f6d79a,#e2b56a);box-shadow:inset -20px 0 0 #f0c983,0 8px 0 rgba(0,0,0,.08);position:relative;transform:rotate(-12deg)}
.burrito::after{content:"";position:absolute;right:-6px;top:10px;width:46px;height:50px;border-radius:50%;background:radial-gradient(circle,#7a3e1d 0 30%,#f2c14e 32% 50%,#5aa34a 52% 65%,#f6d79a 67%)}
.bowl{width:150px;height:110px;position:relative;background:repeating-linear-gradient(100deg,#d99a2b 0 18px,#f2c14e 18px 22px);border-radius:16px;transform:rotate(8deg)}
.bowl::after{content:"";position:absolute;inset:18px 18px auto;height:40px;border-radius:20px;background:#5aa34a;box-shadow:0 30px 0 -6px #fff}
.cup{width:80px;height:120px;background:linear-gradient(#fff 0 12%,#f3e6d0 12%);border-radius:6px 6px 20px 20px;position:relative;border:3px solid var(--ink)}
.cup::before{content:"";position:absolute;left:46px;top:-40px;width:8px;height:60px;background:var(--pink);transform:rotate(12deg);border-radius:4px}
.fav h3{font-size:1.25rem;margin:0}.fav p{margin:4px 0 10px;font-size:.92rem;opacity:.8}.fav b{font:900 1.3rem "Arial Black",sans-serif;color:var(--orange)}
.note{font-size:.82rem;opacity:.6;font-style:italic;margin-top:18px}
.section{padding:90px 0}
.menu-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:2px solid var(--ink);background:#fff;padding:8px 16px;border-radius:999px;font-family:inherit;font-weight:800;cursor:pointer}
.chip.on,.chip:hover{background:var(--ink);color:#fff}
.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px}
.item{display:grid;grid-template-columns:1fr auto;padding:16px 0;border-bottom:2px dashed rgba(43,29,20,.2);animation:pop .35s both}
@keyframes pop{from{opacity:0;transform:scale(.97)}}
.item h3{font-size:1.2rem;margin:0}.item span{font-weight:900;color:var(--orange)}.item p{grid-column:1/-1;margin:2px 0 0;opacity:.75;font-size:.92rem}
.story{background:var(--teal);color:#fff}
.story-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:800;font-size:.8rem}
.story-art{position:relative;height:320px}
.tortilla{position:absolute;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at 30% 40%,#e9c88d 0 4%,transparent 5%),radial-gradient(circle at 60% 65%,#d7ad6a 0 5%,transparent 6%),radial-gradient(circle at 70% 30%,#e3bb7a 0 3%,transparent 4%),#f6dcae;border:4px solid #fff;left:20px;top:10px;box-shadow:0 20px 40px rgba(0,0,0,.2)}
.tortilla.t2{left:80px;top:50px;transform:rotate(30deg)}.tortilla.t3{left:140px;top:90px;transform:rotate(70deg)}
.review{background:#fff;color:var(--ink);border-radius:18px;padding:22px;margin-top:22px;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink)}
.review p{font-size:1.15rem;font-weight:700;margin:8px 0}.review cite{font-style:normal;opacity:.7}
.tag{display:inline-block;background:var(--yellow);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:999px}
.order{background:var(--pink);color:#fff}
.order-in{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.order-btns{display:flex;gap:12px;flex-wrap:wrap}
.visit{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.hours{list-style:none;padding:0;margin:0 0 18px;background:#fff;border:3px solid var(--ink);border-radius:18px;overflow:hidden}
.hours li{display:flex;justify-content:space-between;padding:10px 18px;border-bottom:2px dashed rgba(43,29,20,.12)}
.hours li.today{background:var(--yellow);font-weight:900}
.map{position:relative;height:380px;border-radius:22px;overflow:hidden;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}
.map svg{width:100%;height:100%;display:block}
.pin{position:absolute;left:62%;top:42%;font-size:2.6rem;animation:bounce 1.6s ease-in-out infinite}
@keyframes bounce{50%{transform:translateY(-10px)}}
.foot{background:var(--ink);color:#f6e7d3;padding:40px 0 90px}
.mobile-bar{display:none}
@media(max-width:860px){
 .nav-links{display:none}.nav .btn{padding:10px 14px;font-size:.85rem}
 .hero-in,.story-in,.visit{grid-template-columns:1fr}
 .plate-wrap{height:340px;transform:scale(.8);margin:-30px 0}
 .fav-grid{grid-template-columns:1fr 1fr;gap:14px}.food{height:120px}.food svg{width:110px}
 .menu-grid{grid-template-columns:1fr}.section{padding:64px 0}.story-art{height:260px;transform:scale(.85)}
 .mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--ink);border-top:3px solid var(--yellow)}
 .mobile-bar a{flex:1;text-align:center;color:#fff;text-decoration:none;font-weight:800;padding:16px 0}
 .mobile-bar a.hot{background:var(--pink)}
 .nt-ribbon{bottom:66px}
}
.nav .btn{white-space:nowrap}
@media(max-width:420px){.brand small{display:none}.nav-in{gap:12px}}
@media(max-width:860px){.sun{width:340px;height:340px}.plate-wrap{overflow:visible}}
