:root{--c-crema: #fffaf2;--c-crema-alt: #fdecd2;--c-ink: #2b1710;--c-ink-soft: #6b4a3a;--c-chile: #d62839;--c-chile-dark: #a81f2d;--c-mango: #ffa630;--c-elote: #f6c327;--c-elote-dark: #d9a30f;--c-chamoy: #e8437a;--c-lima: #7eb356;--c-cielo: #3aa6c9;--font-display: "Baloo 2", sans-serif;--font-body: "Poppins", sans-serif;--font-mono: "Space Mono", monospace;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--shadow-sm: 0 2px 8px rgba(43, 23, 16, .08);--shadow-card: 0 10px 24px rgba(43, 23, 16, .1);--shadow-card-hover: 0 18px 34px rgba(43, 23, 16, .16);--shadow-pop: 0 12px 28px rgba(214, 40, 57, .28);--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:118px}body{margin:0;background:var(--c-crema);color:var(--c-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);margin:0;letter-spacing:.2px}p{margin:0}button{font-family:inherit}a{color:inherit}img{max-width:100%;display:block}.container{max-width:1160px;margin:0 auto;padding:0 24px}code{font-family:var(--font-mono);background:#2b17100f;padding:1px 6px;border-radius:6px;font-size:.85em}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--c-cielo);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.drip-divider{display:block;width:100%;height:30px;line-height:0}.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,var(--c-elote) 0%,#f0b91e 100%);color:var(--c-ink);box-shadow:0 4px 18px #2b171024}.header-top{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;gap:16px;max-width:1160px;margin:0 auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand-mark{width:46px;height:46px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:22px;flex-shrink:0;border:3px solid #fff;box-shadow:var(--shadow-sm);overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:cover}.brand-text h1{font-size:1.4rem;letter-spacing:.3px}.brand-text span{display:block;font-size:.74rem;font-family:var(--font-mono);opacity:.75;letter-spacing:.4px;margin-top:2px}.header-status{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:.78rem;font-weight:700;background:#ffffff8c;padding:8px 14px;border-radius:999px;box-shadow:var(--shadow-sm)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--c-lima);box-shadow:0 0 0 4px #7eb3564d;animation:pulse 2s var(--ease) infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 4px #7eb3564d}50%{box-shadow:0 0 0 7px #7eb3561f}}.cat-nav{display:flex;gap:10px;overflow-x:auto;padding:4px 24px 18px;scrollbar-width:none;max-width:1160px;margin:0 auto}.cat-nav::-webkit-scrollbar{display:none}.cat-chip{flex-shrink:0;display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:999px;border:2px solid rgba(43,23,16,.18);background:#ffffff59;color:var(--c-ink);font-weight:600;font-size:.88rem;cursor:pointer;transition:transform .18s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease);white-space:nowrap}.cat-chip:hover{transform:translateY(-2px);background:#fff9;box-shadow:var(--shadow-sm)}.cat-chip.active{background:var(--c-ink);color:var(--c-elote);border-color:var(--c-ink);box-shadow:var(--shadow-card)}.hero{position:relative;padding:72px 0 56px;background:radial-gradient(circle at 85% 15%,rgba(232,67,122,.1) 0%,transparent 45%),radial-gradient(circle at 10% 90%,rgba(126,179,86,.1) 0%,transparent 45%),linear-gradient(180deg,var(--c-crema-alt) 0%,var(--c-crema) 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-weight:700;font-size:.78rem;color:var(--c-chile-dark);background:#fff;padding:8px 14px;border-radius:999px;margin-bottom:20px;box-shadow:var(--shadow-sm)}.hero h2{font-size:clamp(2.3rem,4.4vw,3.5rem);line-height:1.06;color:var(--c-ink)}.hero h2 em{font-style:normal;background:linear-gradient(180deg,transparent 62%,rgba(246,195,39,.55) 62%);color:var(--c-chile);padding:0 2px}.hero p.lead{margin-top:20px;font-size:1.08rem;line-height:1.6;color:var(--c-ink-soft);max-width:46ch}.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 26px;border-radius:14px;font-weight:700;font-size:.96rem;border:none;cursor:pointer;text-decoration:none;transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease)}.btn:hover{transform:translateY(-3px)}.btn:active{transform:translateY(-1px)}.btn-primary{background:linear-gradient(180deg,var(--c-chile) 0%,var(--c-chile-dark) 100%);color:#fff;box-shadow:var(--shadow-pop)}.btn-primary:hover{box-shadow:0 16px 34px #d6283959}.btn-secondary{background:#fff;color:var(--c-ink);border:2px solid rgba(43,23,16,.15);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--c-ink)}.hero-visual{position:relative;display:flex;justify-content:center}.hero-badge{position:absolute;z-index:2;background:var(--c-elote);color:var(--c-ink);font-family:var(--font-mono);font-weight:700;padding:11px 16px;border-radius:12px;border:3px solid var(--c-ink);font-size:.84rem;box-shadow:var(--shadow-card)}.hero-badge.b1{top:-6px;left:-14px;transform:rotate(-8deg)}.hero-badge.b2{bottom:16px;right:-18px;transform:rotate(6deg);background:var(--c-chamoy);color:#fff;border-color:var(--c-chamoy)}.hero-cup{width:min(380px,78vw);height:min(380px,78vw);object-fit:cover;border-radius:28px;box-shadow:var(--shadow-card-hover);border:6px solid #fff}.section{padding:64px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px;gap:18px;flex-wrap:wrap}.section-head .kicker{font-family:var(--font-mono);font-weight:700;font-size:.78rem;color:var(--c-chile-dark);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px;display:block}.section-head h2{font-size:clamp(1.7rem,3vw,2.3rem)}.section-head p{color:var(--c-ink-soft);margin-top:8px;max-width:54ch;line-height:1.55}.promo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.promo-card{background:#fff;border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-card);border-top:5px solid var(--c-mango);position:relative;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.promo-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.promo-emoji{font-size:1.9rem;display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;background:var(--c-crema-alt);border-radius:14px}.promo-tag{display:inline-block;margin-top:12px;font-family:var(--font-mono);font-weight:700;font-size:.7rem;background:var(--c-crema-alt);color:var(--c-chile-dark);padding:4px 10px;border-radius:999px}.promo-card h3{font-size:1.18rem;margin:14px 0 6px}.promo-card p.body{color:var(--c-ink-soft);font-size:.93rem;line-height:1.5}.menu-toolbar{display:flex;gap:12px;margin-bottom:28px;flex-wrap:wrap;align-items:center}.search-input{flex:1;min-width:240px;padding:14px 18px;border-radius:var(--radius-sm);border:2px solid rgba(43,23,16,.1);background:#fff;font-size:.96rem;font-family:var(--font-body);box-shadow:var(--shadow-sm);transition:border-color .18s var(--ease)}.search-input:focus{border-color:var(--c-chile);outline:none}.search-input::placeholder{color:#2b171066}.menu-category-block{margin-bottom:52px;scroll-margin-top:150px}.menu-category-title{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:12px;border-bottom:2px solid rgba(43,23,16,.08)}.menu-category-title .dot{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:1.1rem;flex-shrink:0;box-shadow:var(--shadow-sm)}.menu-category-title h3{font-size:1.45rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.product-card{background:#fff;border-radius:var(--radius-md);padding:18px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:8px;border:1px solid rgba(43,23,16,.05);transition:transform .22s var(--ease),box-shadow .22s var(--ease);overflow:hidden}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card-hover)}.product-image{width:calc(100% + 36px);height:160px;object-fit:cover;border-radius:var(--radius-md) var(--radius-md) 0 0;margin:-18px -18px 4px;transition:transform .35s var(--ease)}.product-card:hover .product-image{transform:scale(1.05)}.product-image-placeholder{width:calc(100% + 36px);height:160px;border-radius:var(--radius-md) var(--radius-md) 0 0;margin:-18px -18px 4px;background:linear-gradient(135deg,var(--c-crema-alt) 0%,#fdf3e4 100%);display:grid;place-items:center;font-size:2.8rem}.product-card h4{font-size:1.03rem;font-family:var(--font-body);font-weight:600;line-height:1.3}.product-card p.desc{font-size:.83rem;color:var(--c-ink-soft);line-height:1.45}.price-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:10px}.price-pill{display:inline-flex;align-items:baseline;gap:5px;background:var(--c-crema-alt);padding:6px 11px;border-radius:var(--radius-sm);font-family:var(--font-mono)}.price-pill .lbl{font-size:.65rem;color:var(--c-ink-soft);text-transform:uppercase;font-weight:700}.price-pill .val{font-size:.94rem;font-weight:700;color:var(--c-chile-dark)}.no-results{text-align:center;padding:48px 20px;color:var(--c-ink-soft);font-size:1.02rem}.locations-section{background:linear-gradient(180deg,var(--c-crema-alt) 0%,#fbe7c8 100%)}.branch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}.branch-card{background:#fff;border-radius:var(--radius-md);padding:26px;box-shadow:var(--shadow-card);border-left:5px solid var(--c-lima);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.branch-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.branch-card h3{font-size:1.22rem;margin-bottom:12px}.branch-row{display:flex;gap:10px;align-items:flex-start;margin-top:9px;font-size:.93rem;color:var(--c-ink-soft);line-height:1.5}.branch-row .icon{flex-shrink:0}.branch-card .btn{margin-top:18px;padding:11px 18px;font-size:.86rem}.hours-banner{margin-top:28px;background:var(--c-ink);color:var(--c-crema);border-radius:var(--radius-md);padding:20px 26px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;box-shadow:var(--shadow-card)}.hours-banner .label{font-family:var(--font-mono);font-size:.86rem;letter-spacing:.5px}.hours-banner strong{font-size:1.05rem}.payment-grid{display:flex;gap:16px;flex-wrap:wrap}.payment-chip{display:flex;align-items:center;gap:11px;background:#fff;padding:16px 22px;border-radius:var(--radius-md);box-shadow:var(--shadow-card);font-weight:600;border-bottom:4px solid var(--c-cielo);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.payment-chip:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.payment-chip .icon{font-size:1.5rem}.site-footer{background:var(--c-ink);color:var(--c-crema);padding:48px 0 28px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin-bottom:28px}.footer-grid h4{font-size:.98rem;margin-bottom:14px;color:var(--c-elote)}.footer-grid p,.footer-grid a{font-size:.89rem;color:#fffaf2bf;line-height:1.8;text-decoration:none;display:block;transition:color .15s var(--ease)}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,250,242,.15);padding-top:20px;font-size:.78rem;color:#fffaf280;font-family:var(--font-mono);text-align:center}@media (max-width: 860px){.hero-grid{grid-template-columns:1fr}.hero-visual{order:-1;margin-bottom:20px}.section{padding:48px 0}}@media (max-width: 520px){.header-top{flex-wrap:wrap}.header-status{display:none}.brand-text h1{font-size:1.15rem}.hero{padding:48px 0 40px}}
