*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}:root{--green:#388E3C;--green-dark:#1B5E20;--green-light:#4CAF50;--red:#D32F2F;--red-dark:#B71C1C;--red-light:#EF5350;--gold:#F9A825;--gold-light:#FFD54F;--blue:#1565C0;--blue-light:#42A5F5;--cream:#F5F0E8;--cream-dark:#EDE5D0;--warm-bg:#1A1A1A;--surface:#242424;--surface-2:#2E2E2E;--deep:#111111;--text-dark:#F0EBE0;--text-mid:rgba(240,235,224,.65);--text-faint:rgba(240,235,224,.38);--border:rgba(249,168,37,.15);}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;background:var(--warm-bg);color:var(--text-dark);overflow-x:hidden}.ticker{position:fixed;top:0;left:0;right:0;z-index:300;background:var(--green-dark);border-bottom:3px solid var(--gold);height:34px;overflow:hidden;display:flex;align-items:center;}.ticker-inner{display:inline-flex;animation:ticker 28s linear infinite;white-space:nowrap}.ticker-item{font-size:.62rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);padding:0 2.5rem}.ticker-dot{color:rgba(212,160,23,.4);margin:0 .2rem}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}nav{position:fixed;top:34px;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:.85rem 3rem;background:rgba(26,26,26,0.97);backdrop-filter:blur(20px);border-bottom:3px solid var(--gold);transition:padding .3s,background .3s;}nav.scrolled{padding:.6rem 3rem;background:rgba(20,20,20,0.99);box-shadow:0 2px 24px rgba(0,0,0,.4)}.nav-brand{display:flex;align-items:center;gap:.9rem;text-decoration:none}.nav-brand-badge{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--red-dark));border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1rem;font-weight:900;font-style:italic;color:#fff;flex-shrink:0;}.nav-brand-text{line-height:1}.nav-brand-name{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:700;color:#F0EBE0;display:block}.nav-brand-sub{font-size:.56rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(240,235,224,.4)}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{font-size:.69rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:rgba(240,235,224,.6);transition:color .2s,opacity .2s}.nav-links a:hover{color:var(--gold)}.nav-actions{display:flex;gap:.6rem;align-items:center}.nav-social{background:none;border:1px solid rgba(212,160,23,.3);color:var(--gold);padding:.45rem .9rem;font-family:'DM Sans',sans-serif;font-size:.65rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;text-decoration:none;display:flex;align-items:center;gap:.35rem}.nav-social:hover{background:rgba(212,160,23,.12)}.nav-cta{background:var(--red);color:#fff;border:none;padding:.5rem 1.3rem;font-family:'DM Sans',sans-serif;font-size:.69rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem}.nav-cta:hover{background:var(--red-dark)}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding-top:100px;background:linear-gradient(160deg,#1A1A1A 0%,#1F1A0E 55%,#1A1200 100%);}.hero-pattern{position:absolute;inset:0;opacity:.04;background-image:repeating-linear-gradient(0deg,var(--gold) 0,var(--gold) 1px,transparent 1px,transparent 40px),repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 1px,transparent 1px,transparent 40px);}.hero-stripe-top{position:absolute;top:34px;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,var(--red) 0,var(--red) 16px,var(--gold) 16px,var(--gold) 32px,var(--green) 32px,var(--green) 48px,var(--blue) 48px,var(--blue) 64px)}.hero-stripe-bot{position:absolute;bottom:0;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,var(--blue) 0,var(--blue) 16px,var(--green) 16px,var(--green) 32px,var(--gold) 32px,var(--gold) 48px,var(--red) 48px,var(--red) 64px)}.hero-glow{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(249,168,37,.1) 0%,rgba(211,47,47,.05) 50%,transparent 70%);pointer-events:none}.hero-content{position:relative;z-index:2;text-align:center;max-width:860px;padding:5rem 2rem 7rem}.hero-award-pill{display:inline-flex;align-items:center;gap:.7rem;background:rgba(249,168,37,.12);border:2px solid rgba(249,168,37,.5);padding:.55rem 1.2rem;margin-bottom:2rem;animation:fadeUp .7s ease both;}.hero-award-pill-star{font-size:1rem}.hero-award-pill-text{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.hero-eyebrow{font-size:.68rem;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;display:flex;align-items:center;justify-content:center;gap:1.2rem;animation:fadeUp .7s .1s ease both;}.hero-eyebrow::before,.hero-eyebrow::after{content:'';display:block;width:36px;height:1px;background:var(--gold);opacity:.5}h1.hero-title{font-family:'Playfair Display',serif;font-size:clamp(3rem,8vw,6.5rem);font-weight:900;line-height:.95;letter-spacing:-.02em;color:#F0EBE0;margin-bottom:1rem;animation:fadeUp .7s .18s ease both;}h1.hero-title em{color:var(--gold);font-style:italic}.hero-sub{font-size:1rem;font-weight:300;color:rgba(240,235,224,.55);max-width:400px;margin:0 auto 2.5rem;line-height:1.9;animation:fadeUp .7s .26s ease both;}.hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;animation:fadeUp .7s .34s ease both}.btn-primary{background:var(--red);color:#fff;border:none;padding:.95rem 2.4rem;font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .15s;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--red-dark);transform:translateY(-2px)}.btn-outline{background:transparent;color:#F0EBE0;border:1px solid rgba(240,235,224,.25);padding:.95rem 2.4rem;font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.btn-outline:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.hero-stats{display:flex;justify-content:center;gap:4rem;margin-top:4rem;padding-top:2.5rem;border-top:1px solid rgba(249,168,37,.2);animation:fadeUp .7s .42s ease both;}.hero-stat-n{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:900;color:var(--gold);line-height:1;display:block}.hero-stat-l{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(240,235,224,.38);margin-top:.3rem;display:block}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.aztec-band{background:var(--blue);padding:.85rem 0;overflow:hidden;white-space:nowrap;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);}.aztec-inner{display:inline-flex;animation:ticker 22s linear infinite}.aztec-item{font-size:.65rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);padding:0 2rem}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--surface,#242424);color:#F0EBE0}.about-text{padding:7rem 5rem;display:flex;flex-direction:column;justify-content:center}.section-tag{font-size:.62rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;display:block}.section-h{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,4vw,3rem);font-weight:700;line-height:1.1;margin-bottom:1.5rem;color:#F0EBE0}.about-body{font-size:.95rem;line-height:1.9;color:rgba(240,235,224,.62);margin-bottom:2.5rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem}.stat{border-top:3px solid var(--gold);padding-top:.9rem}.stat-n{font-family:'Playfair Display',serif;font-size:2.1rem;font-weight:900;color:var(--gold);line-height:1}.stat-l{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(240,235,224,.38);margin-top:.35rem}.about-img-col{position:relative;overflow:hidden;min-height:620px;background:var(--green-dark)}.about-img-placeholder{width:100%;height:100%;min-height:620px;background:linear-gradient(160deg,var(--green-dark) 0%,#1a4a2a 60%,var(--green) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;}.about-img-icon{font-size:5rem;opacity:.25}.about-img-text{font-family:'Playfair Display',serif;font-size:1.4rem;font-style:italic;color:rgba(251,245,230,.3);text-align:center;line-height:1.5}.about-badge{position:absolute;bottom:2rem;right:2rem;background:var(--gold);color:var(--text-dark);width:120px;height:120px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.55rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1.6;box-shadow:0 6px 30px rgba(0,0,0,.35);}.about-badge strong{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:900;display:block;line-height:1}.about-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(249,168,37,.3);padding-bottom:.2rem;transition:border-color .2s}.about-link:hover{border-color:var(--red)}.award-strip{background:#111111;color:#F0EBE0;padding:4rem 4rem;display:flex;align-items:center;justify-content:center;gap:5rem;flex-wrap:wrap;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold);}.award-emblem{width:140px;height:140px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#b8860b);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex-shrink:0;box-shadow:0 8px 32px rgba(212,160,23,.3);}.award-emblem-star{font-size:2rem;display:block;margin-bottom:.3rem}.award-emblem-year{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:900;color:var(--text-dark);line-height:1}.award-emblem-sub{font-size:.48rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(26,10,0,.6);margin-top:.2rem;display:block}.award-text .section-tag{color:var(--red)}.award-title{font-family:'Playfair Display',serif;font-size:2.1rem;font-weight:900;color:#F0EBE0;line-height:1.1;margin-bottom:.6rem}.award-desc{font-size:.92rem;color:rgba(240,235,224,.55);line-height:1.75;max-width:440px}.award-stars{color:var(--gold);font-size:1.2rem;margin-top:.8rem;letter-spacing:.15em}.specials{background:var(--green-dark);padding:6rem 3rem;position:relative;overflow:hidden;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold);}.specials::before{content:'';position:absolute;inset:0;opacity:.05;background-image:repeating-linear-gradient(45deg,var(--gold) 0,var(--gold) 1px,transparent 1px,transparent 14px);}.specials-inner{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center;position:relative;z-index:1}.spec-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3rem);font-weight:900;font-style:italic;color:#fff;line-height:1.05}.spec-subtitle{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:1rem;display:block}.spec-list{display:flex;flex-direction:column;gap:1.4rem}.spec-item{display:grid;grid-template-columns:90px 1px 1fr;gap:1.2rem;align-items:center}.spec-day{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45);text-align:right}.spec-rule{height:44px;width:1px;background:rgba(255,255,255,.18)}.spec-info strong{display:block;font-size:.95rem;font-weight:500;color:#fff;margin-bottom:.15rem}.spec-info span{font-size:.75rem;color:rgba(255,255,255,.5)}.menu-section{background:#1B2A1C;padding:7rem 3rem}.menu-top{max-width:860px;margin:0 auto 3rem;text-align:center}.menu-top .section-tag{display:inline-block}.menu-top .section-h{color:var(--cream)}.menu-desc{font-size:.9rem;color:rgba(255,253,247,.5);line-height:1.75;max-width:520px;margin:0 auto 2rem}.acc-controls{max-width:860px;margin:0 auto 1rem;display:flex;gap:.6rem;justify-content:flex-end}.acc-btn{background:none;border:1px solid rgba(251,245,230,.15);color:rgba(251,245,230,.45);padding:.38rem .9rem;font-family:'DM Sans',sans-serif;font-size:.64rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:all .2s}.acc-btn:hover{border-color:var(--gold);color:var(--gold)}.accordion{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:3px}.acc-header{width:100%;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.04);border:1px solid rgba(251,245,230,.07);padding:1.1rem 1.5rem;cursor:pointer;transition:background .25s,border-color .25s;text-align:left;}.acc-header:hover,.acc-header.open{background:rgba(155,28,28,.12);border-color:rgba(155,28,28,.3)}.acc-header.open{border-bottom-color:transparent}.acc-header-left{display:flex;align-items:center;gap:.9rem}.acc-emoji{font-size:1.2rem;width:1.8rem;text-align:center;flex-shrink:0}.acc-title{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:var(--cream)}.acc-count{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(251,245,230,.3);margin-left:.3rem}.acc-chevron{width:22px;height:22px;border:1px solid rgba(251,245,230,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold);font-size:.75rem;transition:transform .3s,border-color .3s;}.acc-header.open .acc-chevron{transform:rotate(180deg);border-color:var(--gold)}.acc-body{max-height:0;overflow:hidden;border:1px solid rgba(155,28,28,.2);border-top:none;transition:max-height .45s cubic-bezier(.4,0,.2,1);background:rgba(0,0,0,.22);}.acc-body.open{max-height:5000px}.acc-items{padding:.4rem 0}.acc-item{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:start;padding:.95rem 1.5rem;border-bottom:1px solid rgba(251,245,230,.04);transition:background .2s;}.acc-item:last-child{border-bottom:none}.acc-item:hover{background:rgba(155,28,28,.07)}.acc-item-tag{font-size:.56rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.3rem}.acc-item-name{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--cream);margin-bottom:.3rem;line-height:1.2}.acc-item-desc{font-size:.77rem;color:rgba(251,245,230,.38);line-height:1.65}.acc-item-price{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--red-light);white-space:nowrap;padding-top:.2rem;text-align:right;min-width:65px}.order-section{background:#161616;padding:6rem 3rem;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold);}.order-inner{max-width:1000px;margin:0 auto;text-align:center}.order-title{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;color:#F0EBE0;margin-bottom:.6rem}.order-sub{font-size:.9rem;color:rgba(240,235,224,.5);margin-bottom:3rem;line-height:1.75}.order-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin-bottom:3rem}.order-card{background:#242424;border:1px solid rgba(249,168,37,.12);padding:2rem 1.4rem;text-decoration:none;color:#F0EBE0;transition:background .25s,border-color .25s,transform .2s;display:flex;flex-direction:column;align-items:center;gap:.8rem;}.order-card:hover{background:#2E2E2E;border-color:var(--gold);transform:translateY(-3px)}.order-card-icon{font-size:1.8rem;width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.order-card-name{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:#F0EBE0}.order-card-desc{font-size:.7rem;color:rgba(240,235,224,.45);letter-spacing:.04em;text-align:center;line-height:1.55}.order-card-btn{font-size:.65rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.order-divider{display:flex;align-items:center;gap:1.5rem;margin:0 auto 2.5rem;max-width:500px}.order-divider::before,.order-divider::after{content:'';flex:1;height:1px;background:rgba(249,168,37,.15)}.order-divider span{font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(240,235,224,.35);white-space:nowrap}.reservation-box{background:rgba(198,40,40,.08);border:2px solid rgba(198,40,40,.22);padding:2.2rem 2.5rem;max-width:540px;margin:0 auto;display:flex;align-items:center;gap:2rem;flex-wrap:wrap;justify-content:center;}.res-icon{font-size:2.2rem;flex-shrink:0}.res-title{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;color:#F0EBE0;margin-bottom:.3rem}.res-desc{font-size:.78rem;color:rgba(240,235,224,.5);line-height:1.65;margin-bottom:.9rem}.res-call{display:inline-flex;align-items:center;gap:.5rem;background:var(--red);color:#fff;padding:.65rem 1.5rem;font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .2s}.res-call:hover{background:var(--red-dark)}.reviews-section{background:var(--surface,#242424);color:#F0EBE0;padding:7rem 3rem}.reviews-inner{max-width:1100px;margin:0 auto}.reviews-section .section-tag{color:var(--gold)}.reviews-top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.5rem;margin-bottom:3rem}.rating-summary{display:flex;align-items:center;gap:1.5rem}.rating-big{font-family:'Playfair Display',serif;font-size:4.5rem;font-weight:900;color:var(--gold);line-height:1}.rating-stars{color:var(--gold);font-size:1.25rem;letter-spacing:.08em;display:block}.rating-count{font-size:.72rem;color:rgba(240,235,224,.4);letter-spacing:.08em;margin-top:.2rem;display:block}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.4rem;margin-bottom:2.5rem}.review-card{background:#2E2E2E;border:1px solid rgba(249,168,37,.1);padding:1.8rem;position:relative;border-top:3px solid var(--gold)}.review-stars{color:var(--gold);font-size:.9rem;letter-spacing:.06em;margin-bottom:.8rem}.review-text{font-size:.85rem;line-height:1.8;color:rgba(240,235,224,.65);margin-bottom:1.2rem;font-style:italic}.review-text::before{content:'\201C';font-family:'Playfair Display',serif;font-size:2.2rem;color:var(--gold);line-height:0;vertical-align:-.45rem;margin-right:.15rem}.review-author{display:flex;align-items:center;gap:.75rem}.review-avatar{width:36px;height:36px;border-radius:50%;background:var(--green-dark);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;font-weight:700;flex-shrink:0}.review-name{font-size:.78rem;font-weight:500;color:#F0EBE0}.review-source{font-size:.62rem;color:rgba(240,235,224,.35);letter-spacing:.08em;text-transform:uppercase}.reviews-cta{text-align:center}.reviews-cta a{display:inline-flex;align-items:center;gap:.6rem;background:var(--gold);color:#111;padding:.9rem 2.2rem;font-family:'DM Sans',sans-serif;font-size:.76rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .2s}.reviews-cta a:hover{background:var(--gold-light)}.location{background:var(--green-dark);display:grid;grid-template-columns:1fr 1fr}.loc-info{padding:6rem 5rem;display:flex;flex-direction:column;justify-content:center}.loc-info .section-tag{color:var(--gold)}.loc-info .section-h{color:var(--cream)}.info-block{margin-bottom:2rem}.info-label{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(251,245,230,.35);margin-bottom:.45rem}.info-val{font-size:.95rem;line-height:1.75;color:var(--cream)}.info-val a{color:var(--gold);text-decoration:none;font-weight:500}.info-val a:hover{text-decoration:underline}.hours-grid{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1.2rem;margin-top:.5rem}.hours-day{font-size:.82rem;color:rgba(251,245,230,.45);font-size:.8rem}.hours-time{font-size:.8rem;color:var(--cream)}.hours-today{color:var(--gold);font-weight:500}.loc-map-side{background:var(--green);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;min-height:520px;text-decoration:none;transition:background .25s;border-left:1px solid rgba(212,160,23,.12);position:relative;overflow:hidden;}.loc-map-side::before{content:'';position:absolute;inset:0;opacity:.05;background-image:repeating-linear-gradient(45deg,var(--gold) 0,var(--gold) 1px,transparent 1px,transparent 20px);}.loc-map-side:hover{background:var(--green-light)}.loc-pin{font-size:3.5rem;position:relative;z-index:1}.loc-name{font-family:'Playfair Display',serif;font-size:1.5rem;font-style:italic;color:var(--cream);position:relative;z-index:1}.loc-addr{font-size:.82rem;color:rgba(251,245,230,.5);text-align:center;line-height:1.7;position:relative;z-index:1}.loc-hint{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(251,245,230,.28);margin-top:.3rem;position:relative;z-index:1}.press-section{background:var(--green-dark);padding:5rem 3rem}.press-inner{max-width:960px;margin:0 auto;text-align:center}.press-section .section-tag{display:inline-block;color:var(--gold)}.press-title{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:700;color:var(--cream);margin-bottom:.4rem}.press-sub{font-size:.8rem;color:rgba(251,245,230,.35);margin-bottom:2.5rem;letter-spacing:.06em}.press-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem}.press-badge{background:rgba(255,255,255,.03);border:1px solid rgba(212,160,23,.15);padding:1.5rem 1.8rem;display:flex;flex-direction:column;align-items:center;gap:.55rem;min-width:170px;max-width:210px;flex:1;text-decoration:none;transition:background .25s,border-color .25s,transform .2s;}.press-badge:hover{background:rgba(212,160,23,.06);border-color:var(--gold);transform:translateY(-3px)}.press-badge-icon{font-size:1.8rem}.press-badge-source{font-size:.54rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.1rem}.press-badge-title{font-family:'Playfair Display',serif;font-size:.9rem;font-weight:700;color:var(--cream);text-align:center;line-height:1.3}.press-badge-year{font-size:.64rem;color:rgba(251,245,230,.3)}.contact-section{background:#1E1E1E;color:#F0EBE0;padding:7rem 3rem}.contact-inner{max-width:700px;margin:0 auto;display:block}.contact-info .section-tag{color:var(--gold)}.contact-body{font-size:.92rem;line-height:1.85;color:rgba(240,235,224,.62);margin-bottom:2rem}.contact-detail{display:flex;align-items:flex-start;gap:.9rem;margin-bottom:1.2rem}.contact-detail-icon{font-size:1.1rem;flex-shrink:0;margin-top:.1rem}.contact-detail-label{font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.2rem}.contact-detail-text{font-size:.86rem;line-height:1.6;color:rgba(240,235,224,.7)}.contact-detail-text a{color:var(--gold);text-decoration:none;font-weight:500}.contact-detail-text a:hover{color:var(--gold-light)}.contact-social{display:flex;gap:.7rem;margin-top:1.5rem;flex-wrap:wrap}.contact-social-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.52rem 1rem;border:1px solid rgba(249,168,37,.25);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:rgba(240,235,224,.7);transition:all .2s}.contact-social-btn:hover{background:var(--gold);color:#111;border-color:var(--gold)}.contact-form-title{font-family:'Playfair Display',serif;font-size:1.45rem;font-weight:700;color:#F0EBE0;margin-bottom:1.5rem}.form-group{margin-bottom:1.1rem}.form-label{display:block;font-size:.64rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(240,235,224,.45);margin-bottom:.42rem}.form-input,.form-select,.form-textarea{width:100%;padding:.72rem 1rem;border:1px solid rgba(249,168,37,.2);background:#2A2A2A;font-family:'DM Sans',sans-serif;font-size:.86rem;color:#F0EBE0;transition:border-color .2s,box-shadow .2s;outline:none;appearance:none;-webkit-appearance:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(249,168,37,.15)}.form-textarea{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-submit{width:100%;background:var(--red);color:#fff;border:none;padding:1rem;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:background .2s;margin-top:.5rem}.form-submit:hover{background:var(--red-dark)}.form-success{display:none;background:var(--green-dark);color:#fff;padding:1.2rem;text-align:center;font-size:.86rem;line-height:1.65;margin-top:1rem}.form-success.show{display:block}.foot-stripe{height:8px;background:repeating-linear-gradient(90deg,var(--red) 0,var(--red) 16px,var(--gold) 16px,var(--gold) 32px,var(--green) 32px,var(--green) 48px,var(--blue) 48px,var(--blue) 64px)}footer{background:#0D1F0E;color:rgba(255,253,247,.35);padding:2.5rem 3rem;border-top:1px solid rgba(249,168,37,.15)}.foot-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.2rem}.foot-brand{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;font-style:italic;color:rgba(251,245,230,.5)}.foot-copy{font-size:.65rem;line-height:1.65;text-align:center}.foot-links{display:flex;gap:1.5rem;flex-wrap:wrap}.foot-links a{color:rgba(251,245,230,.3);text-decoration:none;font-size:.65rem;transition:color .2s}.foot-links a:hover{color:var(--gold)}@media(max-width:960px){nav{padding:.8rem 1.2rem}.nav-links{display:none}.hero-stats{gap:2rem}.about{grid-template-columns:1fr}.about-img-col{order:-1}.about-img-placeholder{min-height:280px}.about-text{padding:4rem 1.8rem}.specials-inner{grid-template-columns:1fr;gap:3rem}.location{grid-template-columns:1fr}.loc-map-side{min-height:220px}.loc-info{padding:4rem 2rem}.contact-inner{grid-template-columns:1fr;gap:3rem}.menu-section{padding:5rem 1rem}.award-strip{gap:2.5rem;padding:3rem 2rem}.reviews-section,.contact-section{padding:5rem 1.5rem}footer{padding:2rem 1.2rem}.foot-inner{flex-direction:column;text-align:center}}@media(max-width:560px){.hero-stats{flex-direction:column;gap:1.5rem}.form-row{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.specials{padding:4rem 1.5rem}}
/* ===== additions: specials board, reviews marquee, location pin, page header, brockchain footer ===== */
.week-note{display:inline-flex;align-items:center;gap:.5rem;background:rgba(249,168,37,.12);border:1px solid rgba(249,168,37,.4);color:var(--gold);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;padding:.45rem 1rem;margin-top:1.4rem}
.spec-price{font-family:'Playfair Display',serif;font-weight:900;color:var(--gold-light);white-space:nowrap;font-size:1rem;text-align:right}
.spec-item{grid-template-columns:90px 1px 1fr auto}
.marquee{overflow:hidden;position:relative;padding:.5rem 0 2.5rem}
.marquee::before,.marquee::after{content:'';position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.marquee::before{left:0;background:linear-gradient(90deg,var(--surface),transparent)}
.marquee::after{right:0;background:linear-gradient(270deg,var(--surface),transparent)}
.marquee-track{display:flex;gap:1.4rem;width:max-content;animation:ticker 55s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee .review-card{width:340px;flex-shrink:0}
.page-hero{padding:170px 2rem 4rem;text-align:center;background:linear-gradient(160deg,#1A1A1A 0%,#1F1A0E 55%,#1A1200 100%);position:relative;overflow:hidden}
.page-hero .hero-stripe-bot{position:absolute}
.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,6vw,4rem);font-weight:900;color:#F0EBE0;line-height:1;margin:.8rem 0 1rem}
.page-hero h1 em{color:var(--gold);font-style:italic}
.page-hero p{font-size:.92rem;color:rgba(240,235,224,.5);max-width:480px;margin:0 auto;line-height:1.8}
.menu-cta-bar{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:2rem}
.brock-sig{display:inline-flex;align-items:center;gap:.55rem;font-family:'DM Sans',sans-serif;font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(249,168,37,.55);text-decoration:none;border:1px solid rgba(249,168,37,.2);padding:.5rem 1.1rem;transition:all .25s}
.brock-sig:hover{color:var(--gold);border-color:var(--gold);box-shadow:0 0 18px rgba(249,168,37,.25)}
.brock-sig .chain{font-size:.8rem}
.loc-pin{animation:pinBounce 2.6s ease-in-out infinite}
@keyframes pinBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.logo-img[src=""]{display:none!important}

/* ===== photos update: about photo, award plaque, events posters, instagram banner ===== */
.about-photo{width:100%;height:100%;min-height:620px;object-fit:cover;display:block}
.award-photo{width:280px;max-width:80vw;display:block;border-radius:12px;border:3px solid rgba(249,168,37,.5);box-shadow:0 0 60px rgba(249,168,37,.3),0 14px 40px rgba(0,0,0,.5);transition:transform .25s;margin:0 auto}
.award-photo:hover{transform:scale(1.03)}
.events-section{background:var(--cream);padding:6rem 3rem;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold)}
.events-inner{max-width:1100px;margin:0 auto}
.events-section .section-h{color:#241a10}
.events-sub{font-size:.9rem;color:rgba(36,26,16,.6);line-height:1.75;max-width:520px;margin:0 auto}
.poster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.4rem}
.poster-card{display:flex;flex-direction:column;gap:.7rem;text-decoration:none;transition:transform .25s}
.poster-card img{width:100%;display:block;border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.28);border:1px solid rgba(36,26,16,.12)}
.poster-card:hover{transform:translateY(-5px) rotate(-.5deg)}
.poster-label{font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#241a10;text-align:center}
.ig-banner{background:#161616;padding:5.5rem 3rem;display:flex;align-items:center;justify-content:center;gap:4rem;flex-wrap:wrap;border-top:4px solid var(--gold)}
.ig-banner-card{flex-shrink:0}
.ig-banner-card img{width:300px;max-width:80vw;display:block;border-radius:16px;border:2px solid rgba(249,168,37,.4);box-shadow:0 0 50px rgba(249,168,37,.22),0 14px 40px rgba(0,0,0,.5);transition:transform .25s}
.ig-banner-card img:hover{transform:scale(1.03) rotate(.6deg)}
.ig-banner-text{max-width:420px}
.ig-follow-btn{display:inline-flex;align-items:center;gap:.6rem;background:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF);color:#fff;padding:.9rem 2rem;font-family:'DM Sans',sans-serif;font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-radius:4px;transition:transform .2s,box-shadow .2s}
.ig-follow-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(221,42,123,.4)}
@media(max-width:960px){.events-section{padding:4rem 1.5rem}.ig-banner{padding:4rem 1.5rem;gap:2.5rem}.about-photo{min-height:320px}}
.nav-links a,.nav-cta,.nav-social{white-space:nowrap}

/* ===== nav: always one line, scales with device width ===== */
nav{flex-wrap:nowrap;padding:.85rem clamp(.5rem,2.5vw,3rem);gap:clamp(.3rem,1vw,1.2rem)}
nav.scrolled{padding:.6rem clamp(.5rem,2.5vw,3rem)}
.nav-brand{gap:clamp(.3rem,.8vw,.9rem);flex-shrink:0}
.nav-brand-badge{width:clamp(24px,3.6vw,48px)!important;height:clamp(24px,3.6vw,48px)!important}
.nav-brand-name{font-size:clamp(.52rem,1.15vw,.95rem)}
.nav-brand-sub{font-size:clamp(.3rem,.66vw,.56rem);white-space:nowrap;letter-spacing:clamp(.06em,.2vw,.25em);line-height:1.7;display:block}
.nav-links{display:flex!important;gap:clamp(.4rem,1.6vw,2rem);flex-shrink:1;min-width:0}
.nav-links a{font-size:clamp(.4rem,.82vw,.69rem);letter-spacing:clamp(.02em,.14vw,.18em)}
.nav-actions{gap:clamp(.2rem,.5vw,.6rem);flex-shrink:0}
.nav-social{font-size:clamp(.38rem,.77vw,.65rem);padding:.62em 1.2em;gap:.45em}
.nav-social svg{width:1.1em;height:1.1em;flex-shrink:0}
.nav-cta{font-size:clamp(.4rem,.82vw,.69rem);padding:.72em 1.7em}
#open-indicator{font-size:clamp(.36rem,.76vw,.64rem)!important;padding:.62em 1.15em!important;gap:.5em!important}
#open-dot{width:.75em!important;height:.75em!important}
@media(max-width:760px){
  .ns-label,.cta-label{display:none}
  .nav-social{padding:.62em .8em}
  .nav-cta{padding:.72em .9em}
  .nav-links{gap:clamp(.35rem,1.8vw,.8rem)}
  .nav-links a{font-size:clamp(.36rem,1.5vw,.5rem);letter-spacing:.02em}
  #open-text{font-size:inherit}
}
.nav-links{padding-right:clamp(.35rem,1vw,1rem)}

/* world cup posters as a scrolling ticker */
.poster-marquee{padding:.5rem 0 1rem}
.poster-marquee::before{background:linear-gradient(90deg,var(--cream),transparent)}
.poster-marquee::after{background:linear-gradient(270deg,var(--cream),transparent)}
.poster-track{animation-duration:60s}
.poster-marquee .poster-card{width:min(280px,72vw);flex-shrink:0}
.poster-marquee .poster-card:hover{transform:translateY(-4px)}

/* reviews: two cards side by side, rotating every 5s */
.review-duo{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;max-width:1100px;margin:0 auto 2.5rem;padding:0 1rem}
.review-slot{min-height:230px;display:flex}
.review-slot .review-card{flex:1;display:flex;flex-direction:column}
.review-slot .review-text{flex:1}
.review-enter{animation:revIn .5s ease both}
.review-exit{animation:revOut .42s ease both}
@keyframes revIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes revOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}
@media(max-width:680px){.review-duo{grid-template-columns:1fr}.review-slot{min-height:0}}

/* proudly-serving strip: one cool line, scales with device */
.serving-strip{background:#111;padding:1.3rem clamp(.5rem,2vw,3rem);border-bottom:1px solid rgba(249,168,37,.12)}
.serving-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;white-space:nowrap;gap:clamp(.35rem,1.4vw,1.6rem)}
.serving-label{font-size:clamp(.38rem,.72vw,.6rem);font-weight:600;letter-spacing:clamp(.08em,.28vw,.28em);text-transform:uppercase;color:rgba(249,168,37,.6);flex-shrink:0}
.serving-sep{color:rgba(240,235,224,.15)}
.serving-city{font-size:clamp(.42rem,.88vw,.72rem);font-weight:500;color:rgba(240,235,224,.55);text-decoration:none;letter-spacing:clamp(.02em,.08vw,.06em);transition:color .2s}
.serving-city:hover{color:var(--gold)}
.serving-star{color:rgba(249,168,37,.3);font-size:clamp(.38rem,.75vw,.68rem)}
/* no lonely last words in centered intro copy */
.hero-sub,.events-sub,.menu-desc,.order-sub{text-wrap:balance}
@media(max-width:560px){
  .serving-strip{padding:1rem .35rem}
  .serving-inner{gap:.28rem}
  .serving-label{font-size:.32rem;letter-spacing:.06em}
  .serving-city{font-size:.36rem;letter-spacing:0}
  .serving-star{font-size:.3rem}
  .serving-sep{font-size:.4rem}
}

/* world cup sub: one scaling line + big Vamos */
.events-oneline{white-space:nowrap;max-width:none;font-size:clamp(.45rem,1.05vw,.9rem)}
.vamos{font-family:'Playfair Display',serif;font-style:italic;font-weight:900;font-size:clamp(2.2rem,6vw,4rem);color:var(--red);line-height:1;margin-top:1rem;text-shadow:0 3px 0 rgba(0,0,0,.12);animation:vamosPunch 1.8s ease-in-out infinite}
@keyframes vamosPunch{0%,100%{transform:scale(1)}50%{transform:scale(1.16)}}

/* party form extras */
.form-range{width:100%;accent-color:var(--gold);cursor:pointer;margin-top:.4rem}
.form-range-ends{display:flex;justify-content:space-between;font-size:.62rem;color:rgba(240,235,224,.35);margin-top:.2rem}
#party-form{max-width:640px;margin:0 auto}
.form-input::placeholder,.form-textarea::placeholder{color:rgba(240,235,224,.25)}
.form-select{background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}
input[type="date"].form-input{color-scheme:dark}

/* ===== mobile: hamburger menu, big order button ===== */
.nav-order-mobile,.nav-burger{display:none}
.nav-burger{background:none;border:1px solid rgba(249,168,37,.45);padding:.62rem .7rem;cursor:pointer;flex-direction:column;gap:4px;border-radius:3px}
.nav-burger span{display:block;width:18px;height:2px;background:var(--gold)}
@media(max-width:1080px){
  .nav-links{display:none!important}
  .nav-social,#open-indicator,.nav-cta{display:none!important}
  .nav-order-mobile{display:inline-flex;align-items:center;gap:.4rem;background:var(--red);color:#fff;text-decoration:none;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.1rem;border-radius:3px}
  .nav-burger{display:flex}
  .nav-brand-name{font-size:.85rem}
  .nav-brand-sub{font-size:.45rem}
  .nav-brand-badge{width:38px!important;height:38px!important}
}
.mobile-menu{position:fixed;inset:0;z-index:600;background:rgba(15,15,15,.98);backdrop-filter:blur(14px);padding:4.5rem 2rem 2.5rem;transform:translateX(102%);transition:transform .35s cubic-bezier(.4,0,.2,1);overflow-y:auto;display:flex;flex-direction:column}
.mobile-menu.open{transform:none}
.mm-close{position:absolute;top:1.1rem;right:1.1rem;background:none;border:1px solid rgba(249,168,37,.4);color:var(--gold);width:42px;height:42px;border-radius:50%;font-size:1.1rem;cursor:pointer}
.mm-brand{font-family:'Playfair Display',serif;font-size:1.6rem;font-weight:900;font-style:italic;color:var(--cream)}
.mm-sub{font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(240,235,224,.4);margin:.3rem 0 1.6rem}
.mm-ctas{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.8rem}
.mm-cta{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem;font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:6px}
.mm-cta-order{background:var(--red);color:#fff}
.mm-cta-party{background:var(--gold);color:#111}
.mm-cta-call{background:none;border:1px solid rgba(240,235,224,.25);color:var(--cream)}
.mm-links a{display:block;padding:1.05rem 0;font-size:.95rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(240,235,224,.75);text-decoration:none;border-bottom:1px solid rgba(249,168,37,.14)}
.mm-links a:active,.mm-links a:hover{color:var(--gold)}
.mm-social{display:flex;gap:1.6rem;margin-top:1.6rem}
.mm-social a{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(249,168,37,.7);text-decoration:none}

/* reserve a table */
.reserve-section{background:var(--green-dark);padding:6rem 3rem;border-top:4px solid var(--gold)}
.reserve-inner{max-width:640px;margin:0 auto}
.reserve-section .section-h{color:var(--cream)}
.reserve-sub{font-size:.9rem;color:rgba(251,245,230,.55);line-height:1.8;max-width:480px;margin:0 auto;text-wrap:balance}
.reserve-box{background:rgba(0,0,0,.25);border:1px solid rgba(249,168,37,.2);border-radius:12px;padding:1.8rem}
.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:.55rem;margin-top:.3rem}
.slot{background:#2A2A2A;border:1px solid rgba(249,168,37,.25);color:var(--cream);padding:.6rem .3rem;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;text-align:center;transition:all .15s}
.slot small{display:block;font-size:.6rem;font-weight:400;color:rgba(240,235,224,.45);margin-top:.15rem}
.slot:hover{border-color:var(--gold)}
.slot.sel{background:var(--gold);color:#111;border-color:var(--gold)}
.slot.sel small{color:rgba(0,0,0,.6)}
.slot:disabled{opacity:.32;cursor:not-allowed;text-decoration:line-through}
.rv-error{display:none;background:rgba(183,28,28,.25);border:1px solid rgba(239,83,80,.5);color:#ffb4a8;padding:.8rem 1rem;border-radius:7px;font-size:.82rem;margin-top:.8rem}
.rv-error.show{display:block}
.mm-cta-reserve{background:var(--green);color:#fff}

/* ===== chat concierge ===== */
#zb-fab{position:fixed;bottom:1.2rem;right:1.2rem;z-index:700;background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;border:2px solid var(--gold);border-radius:999px;padding:.8rem 1.25rem;font-size:1.25rem;display:flex;align-items:center;gap:.5rem;cursor:pointer;box-shadow:0 8px 30px rgba(0,0,0,.45);transition:transform .2s}
#zb-fab span{font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
#zb-fab:hover{transform:translateY(-3px)}
#zb-fab.hidden{display:none}
#zb-panel{position:fixed;bottom:1.2rem;right:1.2rem;z-index:701;width:min(380px,calc(100vw - 1.6rem));height:min(540px,calc(100vh - 6rem));background:#1E1E1E;border:1px solid rgba(249,168,37,.35);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.6);display:none;flex-direction:column;overflow:hidden}
#zb-panel.open{display:flex}
#zb-head{background:linear-gradient(135deg,var(--green-dark),#143d17);padding:.9rem 1.1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--gold)}
#zb-head b{font-family:'Playfair Display',serif;color:var(--cream);font-size:1rem;display:block}
#zb-head small{color:rgba(251,245,230,.55);font-size:.66rem;letter-spacing:.06em}
#zb-x{background:none;border:none;color:var(--gold);font-size:1rem;cursor:pointer;padding:.3rem .5rem}
#zb-log{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem}
.zb-msg{max-width:88%;padding:.65rem .9rem;border-radius:12px;font-size:.82rem;line-height:1.6;color:#F0EBE0}
.zb-msg.bot{background:#2A2A2A;border:1px solid rgba(249,168,37,.18);border-bottom-left-radius:3px;align-self:flex-start}
.zb-msg.me{background:var(--red);border-bottom-right-radius:3px;align-self:flex-end;color:#fff}
.zb-msg a{color:var(--gold);font-weight:600;text-decoration:none}
.zb-msg a:hover{text-decoration:underline}
#zb-chips{padding:.4rem .8rem;display:flex;gap:.4rem;flex-wrap:wrap;border-top:1px solid rgba(249,168,37,.12)}
.zb-chip{background:none;border:1px solid rgba(249,168,37,.35);color:var(--gold);font-family:'DM Sans',sans-serif;font-size:.64rem;font-weight:500;padding:.35rem .7rem;border-radius:999px;cursor:pointer;transition:background .15s}
.zb-chip:hover{background:rgba(249,168,37,.15)}
#zb-in{display:flex;border-top:1px solid rgba(249,168,37,.12)}
#zb-q{flex:1;background:#161616;border:none;outline:none;color:#F0EBE0;font-family:'DM Sans',sans-serif;font-size:.85rem;padding:.9rem 1rem}
#zb-send{background:var(--gold);color:#111;border:none;padding:0 1.2rem;font-size:1rem;cursor:pointer}

/* ===== la familia email club ===== */
.club-band{background:var(--red-dark);padding:2.6rem 1.5rem;text-align:center;border-top:3px solid var(--gold)}
.club-band h3{font-family:'Playfair Display',serif;font-size:clamp(1.2rem,3vw,1.7rem);font-weight:900;color:#fff;margin-bottom:.3rem}
.club-band p{font-size:.8rem;color:rgba(255,255,255,.75);margin-bottom:1.2rem;text-wrap:balance}
.club-form{display:flex;gap:.5rem;max-width:440px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.club-form input{flex:1;min-width:200px;padding:.8rem 1rem;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.25);color:#fff;border-radius:6px;font-family:'DM Sans',sans-serif;font-size:.85rem;outline:none}
.club-form input::placeholder{color:rgba(255,255,255,.5)}
.club-form button{background:var(--gold);color:#111;border:none;padding:.8rem 1.5rem;font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-radius:6px;cursor:pointer}
.club-form button:hover{background:var(--gold-light)}
.club-ok{display:none;color:#FFD54F;font-size:.85rem;margin-top:.8rem}
.club-ok.show{display:block}
@media(max-width:1420px){.ns-label{display:none}.nav-social{padding:.62em .85em}}

/* game day board */
.gameday{background:#fff;border:2px solid #241a10;border-radius:14px;max-width:720px;margin:0 auto 3rem;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.18)}
.gameday-head{background:#241a10;color:var(--cream);font-family:'Playfair Display',serif;font-weight:700;font-size:1.05rem;padding:.9rem 1.2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.gameday-live{font-family:'DM Sans',sans-serif;font-size:.56rem;font-weight:700;letter-spacing:.18em;background:var(--red);color:#fff;padding:.3rem .6rem;border-radius:999px;animation:vamosPunch 2.4s ease-in-out infinite}
.gd-day{font-size:.64rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8a7a63;padding:.8rem 1.2rem .3rem}
.gd-day.today{color:var(--red)}
.gd-row{display:flex;align-items:center;gap:.8rem;padding:.55rem 1.2rem;border-bottom:1px solid #f0e8d5;font-size:.86rem;color:#241a10}
.gd-row:last-child{border-bottom:none}
.gd-emoji{font-size:1.1rem;flex-shrink:0}
.gd-time{font-weight:600;color:#B71C1C;white-space:nowrap;min-width:74px}
.gd-name{flex:1}
.gd-league{font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:#f0e8d5;color:#5a4d3a;padding:.2rem .55rem;border-radius:999px;white-space:nowrap}
.gd-row.live .gd-time{color:#fff;background:var(--red);border-radius:5px;padding:.15rem .45rem;min-width:0}
.gameday-foot{font-size:.72rem;color:#8a7a63;padding:.7rem 1.2rem 1rem;text-align:center;font-style:italic}

/* ===== nav: hamburger on every screen size ===== */
.nav-links{display:none!important}
.nav-cta{display:none!important}
.nav-order-mobile{display:inline-flex;align-items:center;gap:.4rem;background:var(--red);color:#fff;text-decoration:none;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.1rem;border-radius:3px}
.nav-order-mobile:hover{background:var(--red-dark)}
.nav-burger{display:flex}
.nav-burger:hover{background:rgba(249,168,37,.12)}

/* ===== animated story scene ===== */
.story-scene{position:relative;min-height:620px;overflow:hidden;background:#2a1a08}
.story-scene svg{position:absolute;inset:0;width:100%;height:100%}
.s-sun{transform-origin:300px 230px;animation:sunPulse 6s ease-in-out infinite}
@keyframes sunPulse{0%,100%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
.tw{animation:twinkle 3s ease-in-out infinite}
.t2{animation-delay:1s}.t3{animation-delay:2s}
@keyframes twinkle{0%,100%{opacity:.25}50%{opacity:1}}
.bulbs circle{animation:bulb 2.4s ease-in-out infinite}
.bulbs circle:nth-child(2n){animation-delay:.8s}.bulbs circle:nth-child(3n){animation-delay:1.5s}
@keyframes bulb{0%,100%{opacity:.55}50%{opacity:1}}
.banner{transform-origin:300px 175px;animation:sway 5s ease-in-out infinite}
.flag{transform-origin:top center;animation:flag 3.5s ease-in-out infinite}
@keyframes sway{0%,100%{transform:rotate(-.8deg)}50%{transform:rotate(.8deg)}}
@keyframes flag{0%,100%{transform:skewX(-3deg)}50%{transform:skewX(3deg)}}
.glow{animation:glow 4s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:.8}50%{opacity:1}}
.guitar{transform-origin:486px 470px;animation:lean 7s ease-in-out infinite}
@keyframes lean{0%,100%{transform:translate(486px,470px) rotate(13deg)}50%{transform:translate(486px,470px) rotate(15deg)}}
.st{animation:steam 3s ease-in-out infinite}
.st2{animation-delay:.6s}.st3{animation-delay:1.2s}
@keyframes steam{0%{opacity:0;transform:translateY(6px)}30%{opacity:.6}100%{opacity:0;transform:translateY(-16px)}}
.community-ribbon{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(90deg,var(--green-dark),var(--green));color:#fff;font-size:.74rem;font-weight:600;letter-spacing:.06em;text-align:center;padding:.7rem 1rem;text-decoration:none;border-top:2px solid var(--gold);transition:background .2s}
.community-ribbon:hover{background:linear-gradient(90deg,var(--green),var(--green-light))}
@media(prefers-reduced-motion:reduce){.s-sun,.tw,.bulbs circle,.banner,.flag,.glow,.guitar,.st{animation:none}}
@media(max-width:960px){.story-scene{min-height:380px}}

/* ===== community page ===== */
.comm-hero{padding:150px 2rem 3.5rem;text-align:center;background:linear-gradient(160deg,#0D1A0E,#1B5E20)}
.comm-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.4rem);font-weight:900;color:var(--cream);line-height:1.05;margin:.6rem 0}
.comm-hero h1 em{color:var(--gold);font-style:italic}
.comm-hero p{max-width:540px;margin:0 auto;color:rgba(251,245,230,.65);line-height:1.85;font-size:.95rem;text-wrap:balance}
.comm-wrap{max-width:1000px;margin:0 auto;padding:4rem 1.5rem}
.comm-feature{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;background:var(--surface);border:1px solid rgba(249,168,37,.15);border-radius:16px;overflow:hidden;margin-bottom:3rem}
.comm-feature img{width:100%;height:auto;object-fit:contain;display:block}
.comm-feature .cf-img{align-self:stretch;display:flex;align-items:center;background:#1a1a1a}
.comm-feature .cf-text{padding:2.5rem}
.comm-badge{display:inline-block;background:rgba(249,168,37,.15);border:1px solid var(--gold);color:var(--gold);font-size:.62rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:.4rem .9rem;border-radius:999px;margin-bottom:1rem}
.comm-feature h2{font-family:'Playfair Display',serif;font-size:1.7rem;color:var(--cream);margin-bottom:1rem;line-height:1.2}
.comm-feature p{color:rgba(240,235,224,.62);line-height:1.85;font-size:.92rem;margin-bottom:1rem}
.comm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;margin-bottom:3rem}
.comm-card{background:var(--surface);border:1px solid rgba(249,168,37,.12);border-top:3px solid var(--gold);border-radius:12px;padding:1.8rem 1.5rem;text-align:center}
.comm-card .ico{font-size:2rem;display:block;margin-bottom:.7rem}
.comm-card h3{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--cream);margin-bottom:.5rem}
.comm-card p{font-size:.82rem;color:rgba(240,235,224,.55);line-height:1.7}
.comm-cta{text-align:center;background:var(--red-dark);border-radius:16px;padding:2.6rem 1.5rem;margin-top:1rem}
.comm-cta h2{font-family:'Playfair Display',serif;font-size:1.6rem;color:#fff;margin-bottom:.5rem}
.comm-cta p{color:rgba(255,255,255,.8);margin-bottom:1.4rem;font-size:.9rem}
@media(max-width:760px){.comm-feature{grid-template-columns:1fr}}

/* ===== animated STORY SKIT (4-act loop, ~20s) ===== */
.story-scene .act{opacity:0}
.story-scene .cap{opacity:0}
/* act windows: 0-25 / 25-50 / 50-75 / 75-100 with cross-fades */
.sc1{animation:sceneA 20s infinite}
.sc2{animation:sceneB 20s infinite}
.sc3{animation:sceneC 20s infinite}
.sc4{animation:sceneD 20s infinite}
.cap1{animation:sceneA 20s infinite}
.cap2{animation:sceneB 20s infinite}
.cap3{animation:sceneC 20s infinite}
.cap4{animation:sceneD 20s infinite}
@keyframes sceneA{0%{opacity:1}21%{opacity:1}25%{opacity:0}96%{opacity:0}100%{opacity:1}}
@keyframes sceneB{0%,23%{opacity:0}27%{opacity:1}46%{opacity:1}50%{opacity:0}100%{opacity:0}}
@keyframes sceneC{0%,48%{opacity:0}52%{opacity:1}71%{opacity:1}75%{opacity:0}100%{opacity:0}}
@keyframes sceneD{0%,73%{opacity:0}77%{opacity:1}97%{opacity:1}100%{opacity:0}}
/* sub-animations (run whenever visible) */
.story-scene [class*="wave-arm"],.story-scene .tray,.story-scene .keyspin,.story-scene .guitar2,.story-scene .badgepulse{transform-box:fill-box}
.wave-arm{transform-origin:50% 10%;animation:wavearm 1s ease-in-out infinite}
.wave-arm.c2{animation-delay:.3s}.wave-arm.c3{animation-delay:.6s}
@keyframes wavearm{0%,100%{transform:rotate(12deg)}50%{transform:rotate(-26deg)}}
.tray{transform-origin:50% 100%;animation:trayw 1.4s ease-in-out infinite}
@keyframes trayw{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
.think{transform-origin:465px 240px;animation:think 2.2s ease-in-out infinite}
@keyframes think{0%,100%{transform:scale(.96);opacity:.9}50%{transform:scale(1.04);opacity:1}}
.hop{animation:hop 1.1s ease-in-out infinite}
@keyframes hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-16px)}55%{transform:translateY(-16px)}}
.keyspin{transform-origin:50% 50%;animation:keyspin 1.1s ease-in-out infinite}
@keyframes keyspin{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-10px) rotate(8deg)}}
.heart{animation:heartfloat 2.4s ease-in-out infinite;opacity:0}
@keyframes heartfloat{0%{opacity:0;transform:translateY(10px) scale(.6)}25%{opacity:1}100%{opacity:0;transform:translateY(-40px) scale(1)}}
.conf{transform-box:fill-box;transform-origin:50% 50%;animation:conffall 2.6s linear infinite;opacity:0}
@keyframes conffall{0%{opacity:0;transform:translateY(0) rotate(0)}10%{opacity:1}100%{opacity:1;transform:translateY(360px) rotate(540deg)}}
.signpop{transform-box:fill-box;transform-origin:50% 60%;animation:signpop 3s ease-out infinite}
@keyframes signpop{0%{transform:scale(.2);opacity:0}18%{transform:scale(1.15)}30%{transform:scale(1);opacity:1}100%{transform:scale(1);opacity:1}}
.popL{transform-box:fill-box;transform-origin:50% 100%;animation:popin 3s ease-out infinite}
.popR{animation:popinR 3s ease-out infinite}
@keyframes popin{0%,10%{transform:scale(0)}30%{transform:scale(1.1)}40%,100%{transform:scale(1)}}
@keyframes popinR{0%,20%{transform:translate(486px,486px) rotate(14deg) scale(0)}40%{transform:translate(486px,486px) rotate(14deg) scale(1.05)}50%,100%{transform:translate(486px,486px) rotate(14deg) scale(1)}}
.guitar2{transform-origin:50% 100%}
.badgepulse2{transform-box:fill-box;transform-origin:50% 50%;animation:badgep 1.8s ease-in-out infinite}
@keyframes badgep{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
.vamos2{transform-box:fill-box;transform-origin:50% 50%;animation:vamos2 2.4s ease-in-out infinite}
@keyframes vamos2{0%,100%{transform:scale(1) rotate(-2deg)}50%{transform:scale(1.08) rotate(2deg)}}
.s-sun{transform-origin:300px 250px;animation:sunPulse 6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.story-scene *{animation:none!important}.sc1,.cap1{opacity:1!important}}
