:root{--bg:#f8f8f8;--ink:#010101;--accent:#b72926;--font-display:Montserrat,"Montserrat Fallback",Arial,sans-serif;--font-body:Montserrat,"Montserrat Fallback",Arial,sans-serif;--font-serif:Montserrat,"Montserrat Fallback",Arial,sans-serif;--ease-out:cubic-bezier(0.16, 1, 0.3, 1);--ease-in-out:cubic-bezier(0.65, 0, 0.35, 1);--bg-page:var(--bg);--bg-surface:var(--bg);--bg-raised:var(--bg);--bg-elevated:var(--bg);--text-primary:var(--ink);--text-muted:var(--ink);--text-faint:var(--ink);--border:var(--ink);--border-med:var(--ink);--header-bg:var(--bg);--mobile-nav-bg:var(--bg);--shadow-card:0 16px 40px var(--ink);--ember:var(--accent);--ember-lt:var(--accent);--ember-dk:var(--ink);--cream:var(--bg);--white:var(--bg);--coal:var(--ink);--ash:var(--bg);--smoke:var(--ink);--bark:var(--ink);--tan:var(--accent);--radius:14px;--header-h:76px;--fs-sm:.78rem;--fs-md:1rem;--fs-lg:clamp(2rem, 5vw, 3.8rem)}.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.16, 1, .3, 1),transform .8s cubic-bezier(.16, 1, .3, 1)!important}.reveal.in-view{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:0.1s!important}.reveal-delay-2{transition-delay:0.2s!important}.reveal-delay-3{transition-delay:0.3s!important}.reveal-delay-4{transition-delay:0.4s!important}.form-group select{color:var(--ink);color-scheme:dark}.form-group select option:checked{background-color:var(--ember)!important;color:var(--bg)}.form-group select{accent-color:var(--ember)}.form-group select option{color:var(--ink)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-body);font-weight:300;line-height:1.7;overflow-x:hidden}img{display:block;width:100%;object-fit:cover}a{text-decoration:none;color:inherit}ul{list-style:none}button{cursor:pointer;border:none;background:0 0;font-family:inherit}.container{width:min(1240px,94%);margin:0 auto}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--coal)}::-webkit-scrollbar-thumb{background:var(--ember);border-radius:2px}body::before{content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");opacity:.35}#header{position:fixed;top:0;left:0;right:0;z-index:1250;padding:0;transition:background .4s var(--ease-out),padding .4s var(--ease-out),box-shadow .4s}#header.scrolled{background:rgba(1, 1, 1,.96);backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(183, 41, 38,.15);padding:0}#header nav{display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 clamp(16px,4vw,40px)}.logo{font-family:var(--font-display);font-size:clamp(1.1rem, 2.5vw, 1.4rem);font-weight:900;color:var(--white);letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.footer-logo{font-family:var(--font-display);font-size:clamp(1.1rem, 2.5vw, 1.4rem);font-weight:900;color:var(--cream);letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.logo .fire-icon{color:var(--ember);font-size:1.1em;filter:drop-shadow(0 0 8px rgba(183, 41, 38, .6));animation:flicker 3s ease-in-out infinite}@keyframes flicker{0%,100%{opacity:1;transform:scale(1)}25%{opacity:.85;transform:scale(.96) rotate(-2deg)}50%{opacity:1;transform:scale(1.04)}75%{opacity:.9;transform:scale(.98) rotate(1deg)}}.nav-links{display:flex;align-items:center;gap:clamp(12px,2vw,32px)}.nav-links a{font-size:.82rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:rgba(248, 248, 248,.7);position:relative;transition:color .25s}.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:100%;height:1px;background:var(--ember);transition:right .3s var(--ease-out)}.nav-links a:hover{color:var(--cream)}.nav-links a:hover::after{right:0}.nav-links .cta-pill{background:var(--ember);color:var(--white)!important;padding:8px 20px;border-radius:2px;letter-spacing:.14em;font-size:.78rem;transition:background .25s,transform .2s!important}.nav-links .cta-pill::after{display:none}.nav-links .cta-pill:hover{background:var(--ember-lt);transform:translateY(-1px)}.menu-toggle{display:none;flex-direction:column;gap:5px;width:28px;cursor:pointer;z-index:200}.menu-toggle span{display:block;height:1.5px;background:var(--bg);transition:all .35s var(--ease-out);transform-origin:center}.menu-toggle.active span:first-child{transform:translateY(6.5px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-nav{display:flex;position:fixed;inset:0;z-index:999;background:rgba(1, 1, 1,.98);backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:center;gap:0;opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out)}.mobile-nav.open{opacity:1;pointer-events:all}.mobile-nav a{font-family:var(--font-display);font-size:clamp(1.8rem, 8vw, 2.8rem);font-weight:700;color:var(--bg);padding:8px 0;transition:color .2s,transform .2s;transform:translateY(20px);opacity:0;transition:color .25s,transform .5s var(--ease-out),opacity .5s var(--ease-out)}.mobile-nav.open a{transform:translateY(0);opacity:1}.mobile-nav a:hover{color:var(--ember)}.mobile-nav.open a:first-child{transition-delay:50ms}.mobile-nav.open a:nth-child(2){transition-delay:0.1s}.mobile-nav.open a:nth-child(3){transition-delay:0.15s}.mobile-nav.open a:nth-child(4){transition-delay:0.2s}.mobile-nav.open a:nth-child(5){transition-delay:0.25s}.mobile-nav.open a:nth-child(6){transition-delay:0.3s}.mobile-nav.open a:nth-child(7){transition-delay:0.35s}.mobile-nav .mobile-cta{margin-top:20px;background:var(--ember);color:var(--bg)!important;padding:14px 40px;font-family:var(--font-body)!important;font-size:.85rem!important;font-weight:500;letter-spacing:.18em;text-transform:uppercase;border-radius:2px}.hero{position:relative;height:100svh;min-height:560px;overflow:hidden}.hero-slideshow{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.4s var(--ease-in-out),transform 8s linear;transform:scale(1.06)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(160deg,rgba(1, 1, 1,.72) 0,rgba(1, 1, 1,.45) 50%,rgba(1, 1, 1,.82) 100%)}.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:40%;z-index:2;background:linear-gradient(to top,rgba(183, 41, 38,.22),transparent);pointer-events:none}.hero-content{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 clamp(20px,6vw,100px);max-width:760px}.hero-eyebrow{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.28em;color:var(--bg)!important;margin-bottom:20px;display:flex;align-items:center;gap:12px;opacity:0;animation:fadeUp .8s .3s var(--ease-out) forwards}.hero h1{font-family:var(--font-display);font-size:clamp(2.6rem, 7vw, 5.2rem);font-weight:900;line-height:1.06;letter-spacing:-.02em;color:var(--bg);margin-bottom:24px;opacity:0;animation:fadeUp .9s .5s var(--ease-out) forwards}.hero h1 em{font-style:italic;color:var(--ember-lt)}.hero-sub{font-size:clamp(.9rem, 1.8vw, 1.05rem);color:var(--bg);max-width:480px;margin-bottom:40px;line-height:1.8;opacity:0;animation:fadeUp .9s .7s var(--ease-out) forwards}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap;opacity:0;animation:fadeUp .9s .9s var(--ease-out) forwards}.btn-primary{background:var(--ember);color:var(--bg);padding:16px 36px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;border-radius:2px;transition:background .25s,transform .2s,box-shadow .25s;box-shadow:0 4px 24px rgba(183, 41, 38,.35)}.btn-primary:hover{background:var(--ember-lt);transform:translateY(-2px);box-shadow:0 8px 32px rgba(183, 41, 38,.45)}.btn-secondary{background:0 0;color:var(--bg);padding:16px 36px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;border:1px solid rgba(248, 248, 248,.35);border-radius:2px;transition:border-color .25s,color .25s,transform .2s}.btn-secondary:hover{border-color:var(--tan);color:var(--white);transform:translateY(-2px)}.hero-dots{position:absolute;bottom:32px;left:clamp(20px,6vw,100px);z-index:4;display:flex;gap:8px;opacity:0;animation:fadeUp .8s 1.2s var(--ease-out) forwards}.scroll-cue{position:absolute;bottom:30px;right:clamp(20px,6vw,60px);z-index:4;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;animation:fadeUp .8s 1.4s var(--ease-out) forwards}.scroll-cue span{font-size:.62rem;text-transform:uppercase;letter-spacing:.22em;color:rgba(248, 248, 248,.45);writing-mode:vertical-rl}.scroll-cue-line{width:1px;height:48px;background:linear-gradient(to bottom,rgba(248, 248, 248,.4),transparent);animation:scrollLine 2s ease-in-out infinite}@keyframes scrollLine{0%,100%{transform:scaleY(1);transform-origin:top;opacity:1}50%{transform:scaleY(.3);transform-origin:top;opacity:.5}}.section-title{text-align:center;margin-bottom:clamp(40px,6vw,72px)}.section-label{font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.3em;color:var(--ember);display:block;margin-bottom:14px}.section-title h2{font-family:var(--font-display);font-size:clamp(2rem, 4.5vw, 3.2rem);font-weight:900;line-height:1.1;letter-spacing:-.02em;color:var(--cream);margin-bottom:16px}.section-title p{font-size:clamp(.88rem, 1.6vw, 1rem);color:rgba(248, 248, 248,.75);max-width:520px;margin:0 auto;font-family:var(--font-serif);font-style:italic}.title-divider{width:48px;height:2px;background:var(--ember);margin:20px auto 0;border-radius:1px}.about{padding:clamp(60px,10vw,120px) 0;background:var(--ash);position:relative;overflow:hidden;margin:20px;border-radius:10px}.about::before{content:'BBQ';position:absolute;top:50%;left:-2%;transform:translateY(-50%);font-family:var(--font-display);font-size:clamp(120px, 18vw, 220px);font-weight:900;color:rgba(183, 41, 38,.035);pointer-events:none;line-height:1;user-select:none}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}.about-text .eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.28em;color:var(--ember);display:flex;align-items:center;gap:10px;margin-bottom:20px}.about-text .eyebrow::before{content:'';width:28px;height:1px;background:var(--ember)}.about-text h2{font-family:var(--font-display);font-size:clamp(1.8rem, 3.5vw, 2.8rem);font-weight:900;line-height:1.12;letter-spacing:-.02em;color:var(--cream);margin-bottom:24px}.about-text h2 em{font-style:italic;color:var(--ember-lt)}.about-text p{font-size:clamp(.88rem, 1.5vw, .96rem);color:rgba(248, 248, 248,.8);margin-bottom:18px;font-family:var(--font-serif);line-height:1.85}.stats-row{margin-top:36px}.stat-number{font-family:var(--font-display);color:var(--ember);line-height:1}.stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:rgba(248, 248, 248,.6)}.about-image-wrap{position:relative}.about-image-wrap::before{content:'';position:absolute;top:-16px;right:-16px;width:80%;height:80%;border:1px solid rgba(183, 41, 38,.25);border-radius:2px;z-index:0}.about-image-wrap img{position:relative;z-index:1;height:clamp(320px,50vw,500px);border-radius:2px;filter:grayscale(20%) contrast(1.05);transition:filter .5s}.about-image-wrap img:hover{filter:grayscale(0%) contrast(1.1)}.features{padding:clamp(60px,10vw,100px) 0;background:var(--smoke);margin:20px;border-radius:10px}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(248, 248, 248,.08);border:1px solid rgba(248, 248, 248,.08);border-radius:4px;overflow:hidden;margin-top:clamp(32px,5vw,64px)}.feature-card{background:var(--smoke);padding:clamp(24px,4vw,44px) clamp(20px,3vw,32px);text-align:center;transition:background .35s;position:relative}.feature-card::after{content:'';position:absolute;bottom:0;left:50%;right:50%;height:2px;background:var(--ember);transition:left .4s var(--ease-out),right .4s var(--ease-out)}.feature-card:hover{background:var(--bark)}.feature-card:hover::after{left:0;right:0}.feature-icon{width:52px;height:52px;background:rgba(183, 41, 38,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:var(--ember);font-size:1.2rem;transition:background .35s,transform .35s}.feature-card:hover .feature-icon{background:rgba(183, 41, 38,.2);transform:scale(1.1)}.feature-card h3{font-family:var(--font-display);font-size:clamp(.95rem, 1.5vw, 1.15rem);font-weight:700;color:var(--cream);margin-bottom:12px}.feature-card p{font-size:.82rem;color:rgba(248, 248, 248,.65);line-height:1.75}.menu-section{padding:clamp(60px,10vw,120px) 0;background:var(--coal);margin:20px;border-radius:10px}.menu-tabs{display:flex;gap:4px;justify-content:center;margin-bottom:clamp(36px,5vw,60px);background:rgba(248, 248, 248,.06);border:1px solid rgba(248, 248, 248,.1);border-radius:3px;padding:5px;width:fit-content;margin-left:auto;margin-right:auto}.tab-btn{padding:10px 28px;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:rgba(248, 248, 248,.55);border-radius:2px;transition:all .25s}.tab-btn.active{background:var(--ember);color:var(--white);box-shadow:0 2px 12px rgba(183, 41, 38,.35)}.tab-btn:hover:not(.active){color:var(--cream)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,28px)}.menu-item{background:var(--ash);border:1px solid rgba(248, 248, 248,.08);border-radius:4px;overflow:hidden;transition:transform .35s var(--ease-out),border-color .35s,box-shadow .35s}.menu-item:hover{transform:translateY(-6px);border-color:rgba(183, 41, 38,.25);box-shadow:0 20px 48px rgba(0,0,0,.4)}.menu-item.visible{display:block}.menu-img-wrap{height:clamp(160px,22vw,220px);overflow:hidden;position:relative}.menu-img-wrap img{height:100%;transition:transform .6s var(--ease-out)}.menu-item:hover .menu-img-wrap img{transform:scale(1.08)}.menu-badge{position:absolute;top:12px;left:12px;background:var(--ember);color:var(--white);font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;padding:4px 10px;border-radius:1px}.menu-body{padding:clamp(16px,2.5vw,24px)}.menu-body h4{font-family:var(--font-display);font-size:clamp(1rem, 1.6vw, 1.2rem);font-weight:700;color:var(--cream);margin-bottom:8px;line-height:1.3}.menu-body p{font-size:.8rem;color:rgba(248, 248, 248,.65);line-height:1.7;margin-bottom:18px;font-family:var(--font-serif);font-style:italic}.menu-footer{display:flex;align-items:center;justify-content:space-between}.price{font-family:var(--font-display);font-size:1.3rem;font-weight:900;color:var(--ember)}.order-btn{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:var(--ember);border:1px solid rgba(183, 41, 38,.4);padding:8px 18px;border-radius:2px;transition:all .25s}.order-btn:hover{background:var(--ember);color:var(--white)}.drinks-section{padding:clamp(60px,10vw,120px) 0;background:var(--ash);margin:20px;border-radius:10px}.carousel-outer{position:relative;border-radius:4px;overflow:hidden}.carousel-track{display:flex;transition:transform .7s var(--ease-out)}.carousel-slide{min-width:100%;position:relative}.carousel-slide img{height:clamp(280px,50vw,520px);object-position:center}.slide-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(1, 1, 1,.88) 0,rgba(1, 1, 1,.2) 60%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(24px,5vw,52px)}.slide-title{font-family:var(--font-display);font-size:clamp(1.4rem, 3.5vw, 2.4rem);font-weight:900;color:var(--white);margin-bottom:10px}.slide-desc{font-size:clamp(.8rem, 1.5vw, .95rem);color:rgba(248, 248, 248,.72);max-width:440px;font-family:var(--font-serif);font-style:italic}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.slide-counter{position:absolute;top:16px;right:20px;z-index:3;padding:5px 12px;border-radius:999px;font-size:.7rem;letter-spacing:.2em;color:rgba(248, 248, 248,.5)}.process{padding:clamp(60px,10vw,120px) 0;background:var(--ember-dk);background-image:radial-gradient(circle at 20% 50%,rgba(183, 41, 38,.18) 0,transparent 60%),radial-gradient(circle at 80% 50%,rgba(183, 41, 38,.25) 0,transparent 60%);position:relative;overflow:hidden}.process::before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.process .section-title h2{color:var(--white)}.process .section-title p{color:rgba(255,255,255,.65)}.process .title-divider{background:rgba(255,255,255,.4)}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;position:relative}.steps-grid::before{content:'';position:absolute;top:36px;left:12.5%;right:12.5%;height:1px;background:rgba(255,255,255,.15);z-index:0}.process-step{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:clamp(24px,4vw,44px) clamp(16px,2.5vw,28px);text-align:center;position:relative;z-index:1;transition:background .35s}.process-step:hover{background:rgba(255,255,255,.08)}.step-num{width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-family:var(--font-display);font-size:1.2rem;font-weight:900;color:var(--white);background:rgba(1, 1, 1,.35);transition:border-color .35s,background .35s}.process-step:hover .step-num{border-color:var(--white);background:rgba(1, 1, 1,.55)}.process-step h4{font-family:var(--font-display);font-size:clamp(.9rem, 1.4vw, 1.1rem);font-weight:700;color:var(--white);margin-bottom:12px}.process-step p{font-size:.8rem;color:rgba(255,255,255,.6);line-height:1.75}.reviews{padding:clamp(60px,10vw,120px) 0;background:var(--smoke)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,28px)}.review-card{background:var(--ash);border:1px solid rgba(248, 248, 248,.08);border-radius:4px;padding:clamp(24px,4vw,36px);position:relative;transition:transform .35s var(--ease-out),border-color .35s}.review-card::before{content:'\201C';position:absolute;top:18px;right:24px;font-family:var(--font-display);font-size:5rem;line-height:1;color:rgba(183, 41, 38,.12);pointer-events:none}.review-card:hover{transform:translateY(-4px);border-color:rgba(183, 41, 38,.2)}.star-row{display:flex;gap:3px;margin-bottom:16px;color:var(--ember);font-size:.75rem}.review-text{font-size:.88rem;color:rgba(248, 248, 248,.75);line-height:1.85;margin-bottom:24px;font-family:var(--font-serif);font-style:italic}.reviewer{display:flex;align-items:center;gap:14px}.reviewer img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(183, 41, 38,.3)}.reviewer-name{font-weight:700;font-size:.88rem;color:var(--cream);display:block}.reviewer-role{font-size:.72rem;color:rgba(248, 248, 248,.5);text-transform:uppercase;letter-spacing:.14em}.contact{padding:clamp(60px,10vw,120px) 0;background:var(--coal)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(32px,6vw,80px);align-items:start}.contact-info-items{display:flex;flex-direction:column;gap:28px}.contact-info-item{display:flex;gap:18px;align-items:flex-start}.c-icon{width:44px;height:44px;flex-shrink:0;background:rgba(183, 41, 38,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ember);font-size:.9rem;margin-top:2px}.contact-info-item h4{font-family:var(--font-display);font-size:.95rem;font-weight:700;color:var(--cream);margin-bottom:6px}.contact-info-item p{font-size:.82rem;color:rgba(248, 248, 248,.7);line-height:1.8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:rgba(248, 248, 248,.6);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(248, 248, 248,.12);border-radius:2px;padding:13px 16px;font-family:var(--font-body);font-size:.88rem;color:var(--cream);outline:0;transition:border-color .25s,background .25s;appearance:none}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23c4a882' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(248, 248, 248,.3)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:rgba(183, 41, 38,.5);background:rgba(183, 41, 38,.04)}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{width:100%;background:var(--ember);color:var(--white);padding:16px;font-size:.78rem;text-transform:uppercase;letter-spacing:.22em;font-weight:500;border-radius:2px;transition:background .25s,transform .2s,box-shadow .25s;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 20px rgba(183, 41, 38,.3)}.submit-btn:hover{background:var(--ember-lt);transform:translateY(-2px);box-shadow:0 8px 28px rgba(183, 41, 38,.4)}.form-success{display:none;text-align:center;padding:clamp(32px,5vw,48px) clamp(24px,4vw,36px);background:var(--bg);border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);border-radius:14px;box-shadow:0 20px 48px color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);opacity:0;transform:translateY(14px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}.form-success.show{opacity:1;transform:translateY(0)}.form-success:focus{outline:0}.form-success-icon{width:64px;height:64px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent)}.form-success i{font-size:1.9rem;color:var(--accent)}.form-success h3{font-family:var(--font-display);font-size:1.4rem;color:var(--ink);margin-bottom:8px}.form-success p{color:var(--ink);opacity:.7;font-size:.92rem;line-height:1.6;max-width:320px;margin-inline:auto}.location{padding:clamp(60px,10vw,120px) 0;background:var(--ash);margin:20px;border-radius:10px}.location-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(32px,5vw,64px);align-items:start}.location-items{display:flex;flex-direction:column;gap:28px}.location-item{display:flex;gap:16px;align-items:flex-start}.l-icon{width:40px;height:40px;flex-shrink:0;border:1px solid rgba(183, 41, 38,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ember);font-size:.85rem}.location-item h4{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--ember);margin-bottom:6px}.location-item p{font-size:.85rem;color:rgba(248, 248, 248,.7);line-height:1.8}.map-wrap{border-radius:4px;overflow:hidden;border:1px solid rgba(248, 248, 248,.1);height:clamp(280px,45vw,440px)}.map-wrap iframe{width:100%;height:100%;border:0;filter:none}.newsletter{padding:clamp(60px,8vw,100px) 0;background:var(--bark);background-image:radial-gradient(ellipse at center,rgba(183, 41, 38,.12) 0,transparent 70%);text-align:center;margin:20px;border-radius:10px}.newsletter .section-title{margin-bottom:36px}.newsletter .section-title h2{color:var(--white)}.newsletter .section-title p{color:rgba(255,255,255,.55)}.newsletter-form{display:flex;max-width:480px;margin:0 auto;gap:0}.newsletter-form input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(248, 248, 248,.2);border-right:none;border-radius:2px 0 0 2px;padding:14px 20px;font-family:var(--font-body);font-size:.88rem;color:var(--cream);outline:0;transition:border-color .25s}.newsletter-form input::placeholder{color:rgba(248, 248, 248,.4)}.newsletter-form input:focus{border-color:rgba(183, 41, 38,.4)}.newsletter-form button{background:var(--ember);color:var(--white);padding:14px 28px;border-radius:0 2px 2px 0;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500;white-space:nowrap;transition:background .25s}.newsletter-form button:hover{background:var(--ember-lt)}footer{background:var(--coal);border-top:1px solid rgba(248, 248, 248,.08);padding:clamp(48px,7vw,80px) 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(24px,4vw,48px);margin-bottom:48px}.footer-brand p{font-size:.85rem;color:rgba(248, 248, 248,.55);line-height:1.8;margin:16px 0 24px}.social-row{display:flex;gap:10px}.social-row a{width:36px;height:36px;border:1px solid rgba(248, 248, 248,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(248, 248, 248,.55);font-size:.8rem;transition:all .25s}.social-row a:hover{background:var(--ember);border-color:var(--ember);color:var(--white)}.footer-col h4{font-size:.68rem;text-transform:uppercase;letter-spacing:.22em;color:var(--cream);margin-bottom:20px}.footer-col a{display:block;font-size:.83rem;color:rgba(248, 248, 248,.55);margin-bottom:10px;transition:color .2s}.footer-col a:hover{color:var(--ember)}.footer-col p{font-size:.83rem;color:rgba(248, 248, 248,.55);line-height:1.8}.footer-bottom{border-top:1px solid rgba(248, 248, 248,.08);padding:20px 0;text-align:center;font-size:.75rem;color:rgba(248, 248, 248,.35)}.back-to-top{position:fixed;bottom:28px;right:28px;width:44px;height:44px;background:var(--ember);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:.85rem;z-index:998;opacity:0;transform:translateY(16px);transition:opacity .35s,transform .35s,background .25s;pointer-events:none;box-shadow:0 4px 20px rgba(183, 41, 38,.35)}.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:all}.back-to-top:hover{background:var(--ember-lt)}.live-chat-btn{position:fixed;bottom:28px;left:28px;width:52px;height:52px;background:var(--smoke);border:1px solid rgba(248, 248, 248,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--cream);font-size:1.1rem;z-index:998;box-shadow:0 4px 20px rgba(0,0,0,.4);transition:background .25s,border-color .25s}.live-chat-btn:hover{background:var(--bark);border-color:rgba(183, 41, 38,.4)}.chat-modal{position:fixed;bottom:90px;left:28px;width:min(340px,calc(100vw - 48px));background:var(--ash);border:1px solid rgba(248, 248, 248,.12);border-radius:8px;overflow:hidden;z-index:997;box-shadow:0 20px 60px rgba(0,0,0,.5);transform:scale(.9) translateY(20px);transform-origin:bottom left;opacity:0;pointer-events:none;transition:all .35s var(--ease-out)}.chat-modal.open{transform:scale(1) translateY(0);opacity:1;pointer-events:all}.chat-header{background:var(--ember);padding:14px 18px;display:flex;align-items:center;justify-content:space-between}.chat-header h3{font-family:var(--font-display);font-size:.95rem;font-weight:700;color:var(--white)}.chat-close{color:rgba(255,255,255,.8);font-size:1.2rem;line-height:1;transition:color .2s}.chat-close:hover{color:#f8f8f8}.chat-messages{height:220px;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.chat-messages::-webkit-scrollbar{width:3px}.chat-messages::-webkit-scrollbar-thumb{background:rgba(183, 41, 38,.4)}.msg{max-width:85%;padding:10px 14px;border-radius:12px;font-size:.82rem;line-height:1.6}.msg.bot{background:rgba(255,255,255,.06);border:1px solid rgba(248, 248, 248,.1);color:var(--cream);align-self:flex-start;border-radius:2px 12px 12px 12px}.msg.user{background:var(--ember);color:#f8f8f8;align-self:flex-end;border-radius:12px 2px 12px 12px}.chat-typing{display:none;align-self:flex-start;padding:10px 14px;background:rgba(255,255,255,.06);border-radius:2px 12px 12px 12px;gap:4px}.chat-typing.show{display:flex}.typing-dot{width:6px;height:6px;background:rgba(248, 248, 248,.5);border-radius:50%;animation:typingBounce 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,100%,80%{transform:translateY(0)}40%{transform:translateY(-6px)}}.chat-input-row{display:flex;border-top:1px solid rgba(248, 248, 248,.1)}.chat-input{flex:1;background:0 0;border:none;padding:12px 16px;font-family:var(--font-body);font-size:.82rem;color:var(--cream);outline:0}.chat-input::placeholder{color:rgba(248, 248, 248,.35)}.chat-send{padding:0 16px;color:var(--ember);font-size:.9rem;transition:color .2s}.chat-send:hover{color:var(--ember-lt)}@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.features-grid{grid-template-columns:repeat(2,1fr)}.menu-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.nav-links{display:none}.menu-toggle{display:flex}.mobile-nav{display:flex}.about-grid,.contact-grid,.location-grid{grid-template-columns:1fr}.about-image-wrap::before{display:none}.steps-grid{grid-template-columns:repeat(2,1fr)}.steps-grid::before{display:none}.reviews-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}}@media (max-width:540px){.menu-grid{grid-template-columns:1fr}.features-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.newsletter-form{flex-direction:column}.newsletter-form input{border-right:1px solid rgba(248, 248, 248,.2);border-radius:2px}.newsletter-form button{border-radius:2px}.menu-tabs{flex-wrap:wrap}.hero-buttons{flex-direction:column}.btn-primary,.btn-secondary{text-align:center}}@media (max-width:340px){html{font-size:14px}.hero h1{font-size:2rem}.chat-modal{left:12px;right:12px;width:auto}}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px)}body{font-family:var(--font-body);font-size:var(--fs-md);line-height:1.65;color:var(--ink);background:var(--bg)}body::before{opacity:.035;mix-blend-mode:multiply}img{max-width:100%}button,input,select,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;left:16px;top:10px;z-index:10000;padding:10px 14px;background:var(--ink);color:var(--bg);border-radius:8px;transform:translateY(-150%);transition:transform .2s}.skip-link:focus{transform:none}section[id]{scroll-margin-top:calc(var(--header-h) + 18px)}.about-text h2,.footer-logo,.logo,.newsletter h2,.section-title h2,.slide-title,h1,h2,h3,h4,h5,h6{font-family:var(--font-display)!important}.eyebrow,.hero-eyebrow,.nav-links,.section-label,.stat-label,a,body,button,input,label,li,p,select,textarea{font-family:var(--font-body)!important}h1,h2,h3,h4,h5,h6{color:var(--ink)}.about-text h2,.newsletter h2,.section-title h2{font-size:var(--fs-lg)!important;line-height:1.08!important;letter-spacing:-.025em}.about-text p,.contact-info-item p,.feature-card p,.footer-brand p,.location-item p,.menu-body p,.review-text,.section-title p{font-size:var(--fs-md)!important;color:var(--ink)!important;opacity:.76}.eyebrow,.hero-eyebrow,.section-label{font-size:var(--fs-sm)!important;font-weight:700!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--accent)!important}.title-divider{background:var(--accent)!important}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.about,.contact,.drinks-section,.features,.location,.menu-section,.newsletter,.reviews{padding-block:clamp(64px,9vw,108px)!important}#header{height:var(--header-h);padding:0!important;background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}#header.scrolled{background:color-mix(in srgb,var(--bg) 98%,transparent)!important;box-shadow:0 10px 30px color-mix(in srgb,var(--ink) 12%,transparent)}#header nav{height:var(--header-h);width:min(1180px,calc(100% - 40px));margin-inline:auto;padding:0!important}.footer-logo,.logo{color:var(--ink)!important;font-size:1.1rem!important}.footer-logo .fire-icon,.logo .fire-icon{color:var(--accent)!important;filter:none!important}.nav-links{gap:clamp(10px,2vw,26px)}.nav-links a{color:var(--ink)!important;opacity:.78;font-size:var(--fs-sm)!important;font-weight:700!important;letter-spacing:.1em!important}.nav-links a:hover{color:var(--accent)!important;opacity:1}.nav-links a::after{background:var(--accent)!important}.btn-primary,.nav-links .cta-pill,.newsletter-form button,.order-btn,.submit-btn{background:var(--accent)!important;color:var(--bg)!important;border:1px solid var(--accent)!important;font-family:var(--font-body)!important;font-weight:700!important}.nav-links .cta-pill{min-height:40px;padding:9px 16px!important;border-radius:8px!important;letter-spacing:.08em}.btn-primary:hover,.nav-links .cta-pill:hover,.newsletter-form button:hover,.order-btn:hover,.submit-btn:hover{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--bg)!important;transform:translateY(-2px)}.menu-toggle{display:none;position:relative;z-index:1201;width:44px!important;height:44px;margin:0!important;padding:10px!important;border:1px solid var(--ink)!important;border-radius:8px!important;background:var(--bg)!important;align-items:center;justify-content:center;gap:5px}.menu-toggle span{display:block;width:21px;height:2px;background:var(--ink)!important}.menu-toggle.active span{background:var(--accent)!important}.mobile-nav{z-index:1200!important;background:var(--bg)!important}.mobile-nav a{color:var(--ink)!important}.mobile-nav a:focus,.mobile-nav a:hover{color:var(--accent)!important}.mobile-nav .mobile-cta{background:var(--accent)!important;color:var(--bg)!important;border-radius:8px!important}.mobile-nav a{font-family:var(--font-body)!important;font-weight:500!important}.hero-content{max-width:760px;padding:clamp(90px,10vw,130px) 0 70px;justify-content:center;text-align:center;align-items:center;margin-inline:auto}.hero h1{font-size:var(--fs-lg)!important;line-height:1.02!important;color:var(--bg)!important;max-width:720px}.hero h1 em{color:color-mix(in srgb,var(--accent) 55%,#f8f8f8 45%)!important;text-shadow:0 2px 24px color-mix(in srgb,var(--ink) 45%,transparent)}.hero-sub{font-size:var(--fs-md)!important;color:var(--bg)!important;opacity:.9;max-width:590px}.hero-eyebrow{display:inline-flex;align-items:center;width:max-content;padding:7px 10px;color:var(--bg)!important;opacity:1!important}.hero-overlay{background:linear-gradient(90deg,color-mix(in srgb,var(--ink) 72%,transparent),color-mix(in srgb,var(--ink) 30%,transparent) 70%,transparent)!important}.hero-buttons{gap:12px}.btn-primary,.btn-secondary{min-height:48px;padding:13px 22px!important;border-radius:8px!important;display:inline-flex;align-items:center;justify-content:center}.btn-primary{box-shadow:0 10px 26px color-mix(in srgb,var(--ink) 22%,transparent)!important}.btn-secondary{background:var(--bg)!important;border:1px solid var(--bg)!important;color:var(--ink)!important}.btn-secondary:hover{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--bg)!important}.hero-dots{left:50%!important;right:auto!important;transform:translateX(-50%);justify-content:center}.about{background:var(--bg)!important;margin:0!important;border-radius:0!important}.about::before{color:var(--accent)!important;opacity:.1}.about-grid{gap:clamp(36px,7vw,88px)}.about-text h2 em{color:var(--accent)!important}.about-image-wrap::before{border-color:var(--accent)!important;opacity:.3}.about-image-wrap img{border-radius:14px!important;filter:none!important}.stats-row{border-top:0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px!important;padding-top:28px!important;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important}.stat{min-width:0;padding:0 clamp(6px,2vw,18px);text-align:center;border-left:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.stat:first-child{border-left:0;padding-left:0}.stat-number{display:inline-flex!important;align-items:baseline;gap:2px;color:var(--accent)!important;font-size:clamp(1.9rem, 3.4vw, 2.6rem)!important;font-family:var(--font-display)!important;font-weight:800}.stat-suffix{font-size:.55em;font-weight:700;color:color-mix(in srgb,var(--accent) 75%,var(--ink) 25%)}.stat-label{display:block;margin-top:6px!important;font-size:clamp(.66rem, 1.4vw, var(--fs-sm))!important;line-height:1.3;color:var(--ink)!important;opacity:.72}.features{background:var(--ink)!important;color:var(--bg)}.feature-card h3,.feature-card p,.features .section-title h2,.features .section-title p{color:var(--bg)!important}.feature-card p,.features .section-title p{opacity:.72}.features-grid{margin-top:48px!important;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid color-mix(in srgb,var(--bg) 14%,transparent)!important;background:color-mix(in srgb,var(--bg) 4%,transparent)!important;border-radius:14px!important}.feature-card{background:var(--ink)!important;padding:36px 26px!important}.feature-card:hover{background:color-mix(in srgb,var(--ink) 92%,var(--bg))!important}.feature-icon{background:color-mix(in srgb,var(--accent) 14%,transparent)!important;color:var(--accent)!important}.menu-section{background:var(--bg)!important}.menu-tabs{border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important;background:var(--bg)!important;border-radius:999px!important;padding:5px!important}.tab-btn{color:var(--ink)!important;opacity:.72;border-radius:999px!important;min-height:42px;padding-inline:16px!important}.tab-btn.active{background:var(--ink)!important;color:var(--bg)!important;opacity:1}.menu-item{background:var(--bg)!important;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important;border-radius:14px!important;box-shadow:0 8px 25px color-mix(in srgb,var(--ink) 7%,transparent)}.menu-item:hover{border-color:var(--accent)!important;box-shadow:0 18px 42px color-mix(in srgb,var(--ink) 12%,transparent)!important}.menu-body h4,.price{color:var(--ink)!important}.menu-body p{opacity:.76}.menu-badge{background:var(--accent)!important;color:var(--bg)!important}.price{color:var(--accent)!important}.order-btn{min-height:40px;border-radius:8px!important;padding:8px 14px!important}.drinks-section{background:var(--ink)!important;color:var(--bg)}.drinks-section .section-title h2,.drinks-section .section-title p,.slide-desc,.slide-title{color:var(--bg)!important}.drinks-section .section-title p,.slide-desc{opacity:.82}.carousel-outer{border-radius:16px!important;box-shadow:0 20px 50px color-mix(in srgb,var(--ink) 24%,transparent)}.slide-overlay{background:linear-gradient(to top,color-mix(in srgb,var(--ink) 96%,transparent),color-mix(in srgb,var(--ink) 42%,transparent) 64%,transparent)!important}.slide-title{font-size:var(--fs-lg)!important}.slide-counter{background:var(--ink)!important;color:var(--bg)!important}.location,.reviews{background:var(--bg)!important}.location{margin:0!important;border-radius:0!important}.review-card{background:var(--bg)!important;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important}.review-text,.reviewer-role{color:var(--ink)!important;opacity:.76}.star-row{color:var(--accent)!important}.reviewer-name{color:var(--ink)!important}.contact{background:var(--bg)!important}.contact-info-item h4,.form-group label{color:var(--ink)!important}.c-icon{background:color-mix(in srgb,var(--accent) 10%,transparent)!important;color:var(--accent)!important}.form-group input,.form-group select,.form-group textarea{background:var(--bg)!important;color:var(--ink)!important;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent)!important;border-radius:8px!important}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.submit-btn{border-radius:8px!important}.map-wrap{border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important;border-radius:14px!important;box-shadow:0 16px 40px color-mix(in srgb,var(--ink) 14%,transparent);position:relative}.map-wrap::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:14px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}.map-wrap iframe{filter:none!important;-webkit-filter:none!important;opacity:1!important;mix-blend-mode:normal!important}.newsletter{background:var(--bg)!important}.newsletter-card{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,6vw,72px);align-items:center;padding:clamp(28px,5vw,58px);background:var(--ink);border:1px solid var(--ink);border-radius:20px;box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 18%,transparent)}.newsletter-card h2,.newsletter-card p,.newsletter-points{color:var(--bg)!important}.newsletter-card p,.newsletter-points{opacity:.8}/* Newsletter checkmark is rendered via the Lucide Check mask below. */.newsletter-form{display:flex!important;flex-direction:column!important;align-items:stretch;gap:0;max-width:420px;margin:0}.newsletter-input-wrap{display:flex;align-items:center;gap:8px;padding:6px;background:var(--bg);border:1px solid var(--bg);border-radius:11px}.newsletter-form input{min-width:0;flex:1;background:0 0!important;border:0!important;color:var(--ink)!important;padding:11px 13px!important;outline:0}.newsletter-form input::placeholder{color:var(--ink)!important;opacity:.5}.newsletter-form button{border-radius:8px!important;padding:12px 18px!important;min-height:46px}.newsletter-note,.newsletter-status{font-size:var(--fs-sm)!important;margin:10px 4px 0;color:var(--bg)!important;opacity:.65}.newsletter-status{min-height:1.4em;color:var(--accent)!important;opacity:1}.newsletter-status:empty{display:none;min-height:0;margin:0}footer{background:var(--ink)!important;border-top:1px solid color-mix(in srgb,var(--bg) 10%,transparent)!important;padding-top:70px!important}.footer-col h4{color:var(--bg)!important;font-size:var(--fs-sm)!important}.footer-brand p,.footer-col a,.footer-col p{color:var(--bg)!important;opacity:.7;font-size:var(--fs-md)!important}.footer-col a:hover{color:var(--accent)!important;opacity:1}.footer-bottom{border-top-color:color-mix(in srgb,var(--bg) 10%,transparent)!important}.footer-bottom p{color:var(--bg)!important;opacity:.55;font-size:var(--fs-sm)!important}.social-row a{border-color:color-mix(in srgb,var(--bg) 16%,transparent)!important;color:var(--bg)!important}.back-to-top,.live-chat-btn{width:48px!important;height:48px!important;border-radius:50%!important;background:var(--accent)!important;color:var(--bg)!important;box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 22%,transparent)!important;bottom:var(--utility-bottom,24px)!important;z-index:1100!important}.live-chat-btn{border:0!important}.back-to-top:hover,.live-chat-btn:hover{background:var(--ink)!important;color:var(--bg)!important}.chat-modal{bottom:calc(var(--utility-bottom,24px) + 60px)!important;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent)!important;background:var(--bg)!important}.chat-header{background:var(--ink)!important;color:var(--bg)!important}.chat-header h3{color:var(--bg)!important}.chat-input-row{background:var(--bg)!important}.chat-input{color:var(--ink)!important}.chat-send{background:var(--accent)!important;color:var(--bg)!important}.msg.bot{background:color-mix(in srgb,var(--ink) 7%,transparent)!important;color:var(--ink)!important}@media(max-width:960px){:root{--header-h:68px}.nav-links{display:none}.menu-toggle{display:flex!important}#header nav{width:min(1180px,calc(100% - 40px))}.features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.newsletter-card{grid-template-columns:1fr}}@media(max-width:720px){.container{width:calc(100% - 28px)}#header nav{width:calc(100% - 28px)}.hero{min-height:540px}.hero-content{padding-inline:0}.hero-eyebrow{color:var(--bg)!important}.hero-dots{bottom:18px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:max-content}.hero-buttons{display:grid;grid-template-columns:1fr;width:min(100%,360px)}.hero-buttons a{width:100%}.about-grid,.contact-grid,.location-grid{grid-template-columns:1fr}.about-image-wrap{order:-1}.about-text .eyebrow{justify-content:center;margin-inline:auto}.about-text h2{text-align:center}.features-grid,.menu-grid{grid-template-columns:1fr}.menu-tabs{overflow:auto;justify-content:flex-start;scrollbar-width:none}.menu-tabs::-webkit-scrollbar{display:none}.slide-overlay{padding:22px!important}.newsletter-input-wrap{flex-direction:column;padding:8px}.newsletter-form button{width:100%}.footer-grid{grid-template-columns:1fr;gap:34px}.map-wrap{height:320px}.chat-modal{right:12px!important;left:12px!important;width:auto!important}}@media (max-width:720px) and (orientation:portrait){.footer-grid{grid-template-columns:1fr 1fr!important;column-gap:20px!important;row-gap:32px!important}.footer-brand{grid-column:1/-1!important;display:flex!important;flex-direction:column;align-items:center;text-align:center;padding-bottom:28px!important;border-bottom:1px solid color-mix(in srgb,var(--bg) 12%,transparent)}.footer-brand p{margin-inline:auto!important;max-width:320px}.footer-brand .social-row{justify-content:center}.footer-col:not(:last-of-type){text-align:center}.footer-col:last-of-type{grid-column:1/-1!important;text-align:center;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--bg) 12%,transparent)}.footer-col:last-of-type p{margin-inline:auto}.contact-info-item,.location-item{flex-direction:column;align-items:center;text-align:center}.c-icon,.l-icon{margin-top:0}}@media(max-width:360px){#header nav,.container{width:calc(100% - 22px)}.logo{font-size:1rem!important}.hero{min-height:500px}.hero-eyebrow{letter-spacing:.11em!important}.hero-sub{max-width:100%}.btn-primary,.btn-secondary{padding-inline:16px!important}}@media(orientation:landscape) and (max-height:600px){:root{--header-h:60px}#header nav{height:var(--header-h)}.menu-toggle{display:flex!important;opacity:1!important;visibility:visible!important;position:relative;z-index:1201}.hero{min-height:420px;height:100svh}.hero-content{padding-top:74px;padding-bottom:54px;max-width:700px}.hero-sub{margin-bottom:18px!important}.hero-buttons{gap:10px}.hero-buttons a{min-height:42px}.hero-dots{bottom:12px!important}.mobile-nav{overflow:auto;padding-block:70px 20px;z-index:1200!important}.mobile-nav a{font-size:clamp(1.5rem,7vh,2.4rem)!important}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:NaNs!important;animation-iteration-count:1!important;transition-duration:NaNs!important}.hero-slide{transform:none!important}}#header nav{display:flex!important;align-items:center!important;justify-content:space-between!important}#header nav>.nav-links{margin-left:auto!important}.menu-toggle{flex:0 0 44px}.menu-toggle span{transition:transform .22s ease,opacity .22s ease;transform-origin:center}.menu-toggle.active span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{pointer-events:none;visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.mobile-nav.open{pointer-events:auto;visibility:visible;opacity:1;transform:translateY(0)}body.menu-open{overflow:hidden}.about-text h2,.contact .section-title h2,.location .section-title h2,.menu-section .section-title h2,.reviews .section-title h2{color:var(--ink)!important}.footer-logo{color:var(--bg)!important}.footer-logo .fire-icon{color:var(--accent)!important}.drinks-section .section-label{color:var(--accent)!important;background:0 0!important}.hero-dots{z-index:8!important;display:flex!important;align-items:center;gap:8px!important}.carousel-dots{justify-content:center!important}.c-dot,.hero-dot{width:10px!important;height:10px!important;padding:0!important;border-radius:50%!important;border:2px solid transparent;cursor:pointer;transition:width .3s var(--ease-out),background .3s var(--ease-out),border-color .3s var(--ease-out),box-shadow .3s var(--ease-out);box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 25%,transparent)}.c-dot:hover,.hero-dot:hover{border-color:var(--accent)!important}.c-dot.active,.hero-dot.active{width:28px!important;border-radius:999px!important;background:var(--accent)!important;border-color:var(--accent)!important}.c-dot,.hero-dot{background:color-mix(in srgb,var(--bg) 35%,transparent)!important;border-color:color-mix(in srgb,var(--bg) 70%,transparent)!important}@media (max-width:720px){.hero-content{text-align:center!important;align-items:center!important;margin-inline:auto!important}.hero-eyebrow{margin-inline:auto!important}.hero-sub{margin-inline:auto!important}.hero-buttons{margin-inline:auto!important}.hero-dots{bottom:16px!important}.menu-tabs{width:100%!important;overflow-x:auto!important;flex-wrap:nowrap!important;justify-content:flex-start!important;scrollbar-width:none}.menu-tabs::-webkit-scrollbar{display:none}.tab-btn{flex:0 0 auto!important;white-space:nowrap!important}.newsletter-card{gap:24px!important;padding:24px!important}.newsletter-form{width:100%!important;display:block!important}.newsletter-input-wrap{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:0!important;background:0 0!important;border:0!important}.newsletter-form input{width:100%!important;min-height:48px!important;box-sizing:border-box!important;background:var(--bg)!important;border:1px solid var(--bg)!important;border-radius:8px!important;padding:12px 14px!important}.newsletter-form button{width:100%!important;min-height:48px!important}.newsletter-note{margin:12px 0 0!important;line-height:1.5!important}}.back-to-top,.live-chat-btn{position:fixed!important;bottom:var(--utility-bottom,24px)!important;z-index:1500!important}.back-to-top{right:24px!important}.live-chat-btn{right:84px!important}.chat-modal{right:24px!important;bottom:calc(var(--utility-bottom,24px) + 60px)!important;z-index:1499!important}.demo-toast{position:fixed;left:50%;bottom:24px;z-index:3000;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:11px 16px;border-radius:8px;background:var(--ink);color:var(--bg);font:700 var(--fs-sm)/1.3 var(--font-body);box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 24%,transparent);transition:opacity .2s ease,transform .2s ease}.demo-toast.show{opacity:1;transform:translate(-50%,0)}@media (max-width:960px) and (orientation:landscape){:root{--header-h:64px}.menu-toggle{display:flex!important}.mobile-nav{top:var(--header-h)!important;max-height:calc(100dvh - var(--header-h));overflow-y:auto}.hero{min-height:max(430px,100dvh)!important}.hero-content{padding-top:88px!important;padding-bottom:78px!important;text-align:center!important;align-items:center!important;margin-inline:auto!important}.hero h1{max-width:720px}.hero-buttons,.hero-eyebrow,.hero-sub{margin-inline:auto!important}.newsletter{padding-block:40px!important;margin:14px!important}.newsletter-card{grid-template-columns:1fr!important;gap:20px!important;padding:clamp(20px,4vw,32px)!important;text-align:center}.newsletter-copy{text-align:center}.newsletter .section-title,.newsletter-copy .section-label,.newsletter-copy h2{margin-bottom:8px}.newsletter-points{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:6px 20px!important}.newsletter-points li{list-style:none}.newsletter-form{max-width:480px!important;margin:0 auto!important}.newsletter-input-wrap{flex-direction:row!important;padding:6px!important}.newsletter-form input{min-height:42px!important}.newsletter-form button{width:auto!important;min-height:42px!important}.newsletter-note{margin-top:8px!important}}@media (max-width:540px){.container{width:calc(100% - 28px)!important}#header nav{width:calc(100% - 28px)!important}.stats-row{margin-top:24px!important}.back-to-top{right:16px!important}.live-chat-btn{right:72px!important}.chat-modal{left:12px!important;right:12px!important;width:auto!important}.demo-toast{left:14px;right:14px;bottom:16px;transform:translateY(20px);text-align:center}.demo-toast.show{transform:translateY(0)}}@media (max-width:340px){#header nav,.container{width:calc(100% - 24px)!important}.hero h1{font-size:2rem!important}.hero-content{padding-top:76px!important}.hero-buttons a{min-height:44px!important;padding-inline:14px!important}.tab-btn{padding-inline:13px!important}.stats-row{gap:8px!important}.stat{padding:13px 7px!important}}.menu-img-wrap{aspect-ratio:16/10;height:auto}.menu-img-wrap img{height:100%;width:100%}.about-image-wrap img{aspect-ratio:4/3;width:100%;object-fit:cover}.reviewer img{width:64px;height:64px;object-fit:cover}.contact,.drinks-section,.features,.location,.menu-section,.newsletter,.reviews,footer{content-visibility:auto;contain-intrinsic-size:900px}.icon{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.logo .icon,.star-row .icon{fill:currentColor;stroke:none}.back-to-top{font-family:inherit!important;font-size:1.25rem!important;line-height:1!important}.social-glyph{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;line-height:1}.loading-spinner{display:inline-block;width:.9em;height:.9em;margin-right:.35em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-.12em;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero{background:radial-gradient(circle at 72% 38%,rgba(183, 41, 38,.22),transparent 34%),linear-gradient(145deg,#010101 0,#010101 55%,#010101 100%)}.hero-slide{background-color:#010101}.about .about-text h2,.about .about-text p,.about .stat-label,.drinks-section .section-title h2,.drinks-section .section-title p,.location .section-title h2,.location .section-title p,.location-item p{color:#010101}.menu-item h4,.menu-item p,.review-card .review-text,.review-card .reviewer-name,.review-card .reviewer-role{color:#010101}.contact-info-item p,.feature-card p,.footer-brand p,.footer-col a,.footer-col p,.form-group label,.menu-body p,.review-text,.reviewer-role,.section-title p,.tab-btn{color:color-mix(in srgb,var(--ink) 48%,var(--bg))}.contact .section-title p,.newsletter .section-title p,.process .section-title p,.process-step p{color:#f8f8f8}.form-group input::placeholder,.form-group textarea::placeholder,.newsletter-form input::placeholder{color:color-mix(in srgb,var(--ink) 48%,var(--bg))}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.carousel-dots,.hero-dots{gap:0!important}.carousel-dots .c-dot,.hero-dots .hero-dot{position:relative;width:24px!important;height:24px!important;background:0 0!important;border:0!important;box-shadow:none!important;border-radius:0!important}.carousel-dots .c-dot.active,.hero-dots .hero-dot.active{width:36px!important;background:0 0!important}.carousel-dots .c-dot::before,.hero-dots .hero-dot::before{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;transform:translate(-50%,-50%);box-sizing:border-box;border-radius:999px;background:color-mix(in srgb,var(--bg) 35%,transparent);border:2px solid color-mix(in srgb,var(--bg) 70%,transparent);box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 25%,transparent);transition:width .3s var(--ease-out),background .3s var(--ease-out)}.carousel-dots .c-dot:hover::before,.hero-dots .hero-dot:hover::before{border-color:var(--accent)}.carousel-dots .c-dot.active::before,.hero-dots .hero-dot.active::before{width:28px;background:var(--accent);border-color:var(--accent)}.newsletter-card .section-label{color:#b72926!important}.newsletter-points li::before{color:#b72926}.hero-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.about-text p,.footer-brand p,.footer-col a,.footer-col p,.hero-sub,.menu-body p,.mobile-nav a,.price,.review-card .reviewer-name,.review-card .reviewer-role,.review-text,.section-title p,.slide-desc,.stat-number,.step-num{font-family:var(--font-body)!important}.price,.stat-number{font-weight:700;font-variant-numeric:lining-nums}.social-row a{display:inline-flex;align-items:center;justify-content:center}.social-svg{width:17px;height:17px;fill:currentColor;display:block}.fire-icon{fill:currentColor!important;stroke:none!important}.mobile-nav a.mobile-link:not(.mobile-cta){font-size:clamp(1.2rem,3.8vh,1.6rem)!important;font-weight:500!important;letter-spacing:.02em}.mobile-nav .mobile-cta{font-size:1rem!important;font-weight:700!important;letter-spacing:.14em!important;padding:16px 48px!important;margin-top:24px}.hero-buttons .btn-primary,.hero-buttons .btn-secondary{font-weight:700!important;letter-spacing:.16em!important;font-size:.8rem!important}section[id]{scroll-margin-top:calc(var(--header-h) + 18px)}.contact,.drinks-section,.features,.location,.menu-section,.newsletter,.reviews,footer{contain-intrinsic-size:auto 900px}.hero h1,.hero-eyebrow,.hero-sub{text-shadow:0 1px 2px rgba(1, 1, 1,.55),0 3px 10px rgba(1, 1, 1,.4),0 8px 28px rgba(1, 1, 1,.35)}.hero h1 em{text-shadow:0 1px 2px rgba(1, 1, 1,.6),0 3px 10px rgba(1, 1, 1,.45),0 8px 28px rgba(1, 1, 1,.4)!important}

/* Requested brand palette + compact, image-led hero (desktop, tablet and mobile). */
:root {
  --bg: #f8f8f8;
  --ink: #010101;
  --accent: #b72926;
  --bg-page: var(--bg);
  --bg-surface: var(--bg);
  --bg-raised: var(--bg);
  --bg-elevated: var(--bg);
  --text-primary: var(--ink);
  --text-muted: color-mix(in srgb, var(--ink) 64%, var(--bg));
  --text-faint: color-mix(in srgb, var(--ink) 48%, var(--bg));
  --border: color-mix(in srgb, var(--ink) 16%, transparent);
  --border-med: color-mix(in srgb, var(--ink) 28%, transparent);
  --header-bg: var(--bg);
  --mobile-nav-bg: var(--bg);
  --ember: var(--accent);
  --ember-lt: var(--accent);
  --ember-dk: var(--ink);
  --cream: var(--bg);
  --white: var(--bg);
  --coal: var(--ink);
  --ash: var(--bg);
  --smoke: var(--ink);
  --bark: var(--ink);
  --tan: var(--accent);
  color-scheme: light;
}

:focus-visible { outline-color: var(--accent) !important; }
::selection { background: var(--accent); color: var(--bg); }

/* Match the reference's clean light navigation above a shorter photo carousel. */
#header {
  background: var(--bg) !important;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--ink) 12%, transparent);
}
#header.scrolled {
  background: color-mix(in srgb, var(--bg) 98%, transparent) !important;
  box-shadow: 0 8px 24px color-mix(in srgb, var(--ink) 10%, transparent) !important;
}
#header nav { height: var(--header-h) !important; }
.logo, .nav-links a { color: var(--ink) !important; }
.nav-links .cta-pill { background: var(--accent) !important; color: var(--bg) !important; }

.hero {
  margin-top: var(--header-h) !important;
  height: clamp(420px, 58svh, 660px) !important;
  min-height: 420px !important;
  max-height: none !important;
  background: var(--ink) !important;
  isolation: isolate;
}
.hero-slideshow, .hero-slide { position: absolute; inset: 0; }
.hero-slide { background-color: var(--ink) !important; background-position: center 54%; }
.hero-slide > img { width: 100%; height: 100%; object-fit: cover; object-position: center 54%; }
.hero-overlay {
  background: linear-gradient(90deg,
    rgba(1, 1, 1, .78) 0%,
    rgba(1, 1, 1, .62) 34%,
    rgba(1, 1, 1, .28) 70%,
    rgba(1, 1, 1, .12) 100%) !important;
}
.hero::after {
  height: 24% !important;
  background: linear-gradient(to top, rgba(1, 1, 1, .22), transparent) !important;
}
.hero-content {
  width: min(1240px, 94%) !important;
  max-width: 1240px !important;
  height: 100% !important;
  margin-inline: auto !important;
  padding: clamp(28px, 4.5vw, 58px) 0 clamp(56px, 6vh, 76px) !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
  gap: 0;
}
.hero-eyebrow {
  width: auto !important;
  display: inline-flex !important;
  padding: 0 0 0 11px !important;
  margin: 0 0 14px !important;
  border-left: 3px solid var(--accent);
  color: var(--bg) !important;
  font-size: clamp(.62rem, .8vw, .76rem) !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: .16em !important;
  opacity: 1 !important;
  animation: none !important;
  text-shadow: 0 2px 12px rgba(1, 1, 1, .45) !important;
}
.hero h1 {
  max-width: 720px !important;
  margin: 0 0 14px !important;
  color: var(--bg) !important;
  font-family: var(--font-body) !important;
  font-size: clamp(2.25rem, 4.5vw, 4.25rem) !important;
  font-weight: 900 !important;
  line-height: .99 !important;
  letter-spacing: -.025em !important;
  text-transform: uppercase;
  opacity: 1 !important;
  animation: none !important;
  text-shadow: 0 2px 4px rgba(1, 1, 1, .5), 0 8px 26px rgba(1, 1, 1, .3) !important;
}
.hero h1 em {
  color: var(--bg) !important;
  font-style: normal !important;
  text-shadow: 0 2px 4px rgba(1, 1, 1, .45) !important;
}
.hero-sub {
  max-width: 480px !important;
  margin: 0 0 24px !important;
  color: var(--bg) !important;
  font-size: clamp(.83rem, 1.15vw, .98rem) !important;
  line-height: 1.55 !important;
  opacity: .94 !important;
  animation: none !important;
  text-shadow: 0 1px 8px rgba(1, 1, 1, .6) !important;
}
.hero-buttons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  opacity: 1 !important;
  animation: none !important;
}
.hero-buttons .btn-primary,
.hero-buttons .btn-secondary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 138px;
  min-height: 44px !important;
  padding: 11px 19px !important;
  border-radius: 3px !important;
  font-size: .73rem !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  line-height: 1.2 !important;
  text-decoration: none;
}
.hero-buttons .btn-primary {
  background: var(--accent) !important;
  border: 1px solid var(--accent) !important;
  color: var(--bg) !important;
  box-shadow: 0 6px 18px rgba(1, 1, 1, .18) !important;
}
.hero-buttons .btn-primary:hover { background: var(--ink) !important; border-color: var(--ink) !important; }
.hero-buttons .btn-secondary {
  background: rgba(248, 248, 248, .96) !important;
  border: 1px solid var(--bg) !important;
  color: var(--ink) !important;
}
.hero-buttons .btn-secondary:hover { background: var(--ink) !important; border-color: var(--ink) !important; color: var(--bg) !important; }
.hero-dots {
  left: max(3vw, 20px) !important;
  right: auto !important;
  bottom: 15px !important;
  transform: none !important;
  justify-content: flex-start !important;
  animation: none !important;
  opacity: 1 !important;
}
.hero-dots .hero-dot::before { border-color: rgba(248, 248, 248, .8) !important; }
.hero-dots .hero-dot.active::before { background: var(--accent) !important; border-color: var(--accent) !important; }

/* Keep inherited legacy selectors in the new neutral/red palette. */
.form-group select option:checked { background-color: var(--accent) !important; color: var(--bg) !important; }
.newsletter-card .section-label, .newsletter-points li::before { color: var(--accent) !important; }
.about-text h2 em, .about-text .eyebrow, .section-label, .title-divider { color: var(--accent); }

@media (max-width: 960px) {
  .hero { height: clamp(420px, 58svh, 610px) !important; min-height: 420px !important; }
  .hero-content { width: calc(100% - 48px) !important; }
  .hero h1 { font-size: clamp(2.2rem, 5.4vw, 3.6rem) !important; max-width: 14ch !important; }
  .hero-sub { max-width: 430px !important; }
}
@media (max-width: 720px) {
  .hero { height: clamp(430px, 58svh, 590px) !important; min-height: 430px !important; }
  .hero-content {
    width: calc(100% - 36px) !important;
    padding: 32px 0 58px !important;
    align-items: flex-start !important;
    justify-content: center !important;
    text-align: left !important;
  }
  .hero-eyebrow { margin-inline: 0 !important; font-size: .62rem !important; letter-spacing: .12em !important; }
  .hero h1 { max-width: 12ch !important; font-size: clamp(2rem, 8.2vw, 3.05rem) !important; line-height: 1 !important; margin-bottom: 12px !important; }
  .hero-sub { max-width: 330px !important; margin: 0 0 20px !important; font-size: .85rem !important; line-height: 1.5 !important; }
  .hero-buttons { width: min(100%, 280px) !important; display: grid !important; grid-template-columns: 1fr !important; gap: 9px !important; }
  .hero-buttons .btn-primary, .hero-buttons .btn-secondary { width: 100% !important; min-height: 43px !important; }
  .hero-dots { left: 18px !important; bottom: 10px !important; transform: none !important; }
}
@media (max-width: 380px) {
  .hero { height: clamp(410px, 58svh, 480px) !important; min-height: 410px !important; }
  .hero-content { width: calc(100% - 30px) !important; padding-bottom: 52px !important; }
  .hero h1 { font-size: clamp(1.8rem, 8.5vw, 2.25rem) !important; }
  .hero-sub { font-size: .8rem !important; }
  .hero-buttons { max-width: 250px !important; }
}
@media (orientation: landscape) and (max-height: 600px) {
  .hero { height: min(74svh, 520px) !important; min-height: 360px !important; }
  .hero-content { padding-top: 26px !important; padding-bottom: 54px !important; }
  .hero h1 { font-size: clamp(1.8rem, 5vw, 3rem) !important; }
  .hero-sub { margin-bottom: 14px !important; }
}

:root{--font-body:Montserrat,"Montserrat Fallback",Arial,sans-serif;--font-display:var(--font-body);--font-serif:var(--font-body)}html,body,body *,body *::before,body *::after{font-family:var(--font-body)!important}.icon{width:1.12em!important;height:1.12em!important;display:inline-block;flex:0 0 auto;vertical-align:-.16em;fill:none!important;stroke:currentColor!important;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.logo .icon,.fire-icon{fill:none!important;stroke:currentColor!important}.star-row .icon{fill:currentColor!important;stroke:currentColor!important;stroke-width:1.5}.menu-toggle>.menu-toggle-icon{width:22px!important;height:22px!important}.menu-toggle.active>.menu-toggle-icon{color:var(--accent)!important}.back-to-top>.icon,.chat-close>.icon{width:1.15em!important;height:1.15em!important;vertical-align:middle}

.newsletter-points li::before{content:""!important;display:inline-block;width:1em;height:1em;margin:0 10px 0 0;vertical-align:-.14em;flex:0 0 auto;background-color:var(--accent);-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M20%206%209%2017l-5-5%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M20%206%209%2017l-5-5%27/%3E%3C/svg%3E") center/contain no-repeat}
/* Final refinement pass */.chat-header .fire-icon{color:var(--accent)!important}.about-text .eyebrow{display:block!important;width:fit-content;margin-bottom:14px!important;font-size:var(--fs-sm)!important;font-weight:700!important;line-height:1.4!important;letter-spacing:.16em!important;text-transform:uppercase}.about-text .eyebrow:before{content:none!important;display:none!important}.section-title h2,.about-text h2,.newsletter-card h2{font-weight:650!important}.back-to-top>.icon{stroke-width:3!important}.map-wrap{border-color:#010101!important;outline:2px solid #010101!important;outline-offset:2px}.newsletter{text-align:left!important}.newsletter-card{text-align:left!important;align-items:start!important}.newsletter-copy{width:100%;min-width:0;text-align:left!important}.newsletter-copy .section-label,.newsletter-copy h2,.newsletter-copy p{text-align:left!important;margin-left:0!important;margin-right:0!important}.newsletter-copy .section-label{display:block!important;width:fit-content}.newsletter-copy h2{margin-top:0!important}.newsletter-copy p{max-width:52ch}.newsletter-points{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:flex-start!important;justify-content:flex-start!important;gap:8px!important;width:100%;margin:16px 0 0!important;padding:0!important;text-align:left!important}.newsletter-points li{list-style:none!important;text-align:left!important}.newsletter-form{justify-self:start!important;align-self:start!important;margin-left:0!important;margin-right:0!important;text-align:left!important}.newsletter-note,.newsletter-status{text-align:left!important;margin-left:0!important;margin-right:0!important}@media(max-width:1024px){.newsletter-card{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}.newsletter-copy{text-align:left!important}.newsletter-form{width:min(100%,560px)!important;max-width:560px!important;margin:18px 0 0!important}.newsletter-input-wrap{width:100%}}@media(max-width:720px){.newsletter-card{text-align:left!important}.newsletter-form{width:100%!important;max-width:none!important;margin:18px 0 0!important}.newsletter-input-wrap{width:100%!important}}

/* Smokehouse contrast + alignment refinement: left-aligned feature content and readable accent badges on dark sections. */
.features-grid,
.feature-card {
  text-align: left !important;
}

.feature-card .feature-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 0 20px !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 12px !important;
  background: #f8f8f8 !important;
  color: #b72926 !important;
  border: 1px solid rgba(1, 1, 1, .08) !important;
  box-shadow: 0 8px 20px rgba(1, 1, 1, .16) !important;
}

.feature-card:hover .feature-icon,
.feature-card:focus-within .feature-icon {
  background: #f8f8f8 !important;
  color: #b72926 !important;
  transform: translateY(-2px);
}

.feature-card .feature-icon .icon {
  color: #b72926 !important;
  stroke: currentColor !important;
}

.features .section-title .section-label,
.drinks-section .section-title .section-label,
.newsletter-card .newsletter-copy .section-label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100%;
  padding: .46rem .76rem !important;
  margin: 0 0 14px !important;
  border: 1px solid rgba(1, 1, 1, .08) !important;
  border-radius: 9px !important;
  background: #f8f8f8 !important;
  color: #b72926 !important;
  box-shadow: 0 5px 16px rgba(1, 1, 1, .14) !important;
  letter-spacing: .14em !important;
  line-height: 1.35 !important;
}

/* Keep newsletter benefits left-aligned with a high-contrast check inside each white rounded tile. */
.newsletter-points li {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-align: left !important;
}

.newsletter-points li::before {
  content: "" !important;
  position: relative !important;
  inset: auto !important;
  display: block !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  border: 1px solid rgba(1, 1, 1, .08) !important;
  border-radius: 7px !important;
  background: #f8f8f8 !important;
  -webkit-mask: none !important;
  mask: none !important;
  vertical-align: middle !important;
}

.newsletter-points li::after {
  content: "" !important;
  position: absolute !important;
  left: 6px !important;
  top: 50% !important;
  width: 12px !important;
  height: 12px !important;
  transform: translateY(-50%) !important;
  background: #b72926 !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272.4%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M20%206%209%2017l-5-5%27/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272.4%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M20%206%209%2017l-5-5%27/%3E%3C/svg%3E") center / contain no-repeat !important;
  pointer-events: none !important;
}

/* Center the footer column groups, while keeping each heading/link list left-aligned. */
footer .footer-col {
  width: fit-content !important;
  max-width: 100%;
  justify-self: center !important;
  text-align: left !important;
}

footer .footer-col h4,
footer .footer-col a,
footer .footer-col p {
  text-align: left !important;
}

footer .footer-col a {
  width: fit-content;
  max-width: 100%;
}

footer .footer-col p {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* The footer flame uses the same red mark on a light rounded tile for contrast. */
footer .footer-logo {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}

footer .footer-logo .fire-icon {
  box-sizing: content-box !important;
  width: 20px !important;
  height: 20px !important;
  padding: 8px !important;
  border: 1px solid rgba(1, 1, 1, .08) !important;
  border-radius: 10px !important;
  background: #f8f8f8 !important;
  color: #b72926 !important;
  stroke: currentColor !important;
  box-shadow: 0 6px 18px rgba(1, 1, 1, .16) !important;
}

@media (max-width: 720px) {
  footer .footer-col:not(:last-of-type) {
    width: fit-content !important;
    justify-self: center !important;
    text-align: left !important;
  }

  footer .footer-col:last-of-type {
    grid-column: 1 / -1 !important;
    width: fit-content !important;
    max-width: 100%;
    justify-self: center !important;
    text-align: left !important;
  }

  footer .footer-col:last-of-type p {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
.newsletter-card{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr) !important;align-items:stretch !important;gap:clamp(28px,4vw,64px) !important;min-height:360px !important;}.newsletter-copy{align-self:center !important;max-width:42rem !important;}.newsletter-copy h2{max-width:12ch;text-wrap:balance;}.newsletter-form{align-self:center !important;justify-self:stretch !important;width:100% !important;max-width:none !important;min-width:0 !important;margin:0 !important;padding:clamp(20px,2.6vw,30px) !important;border:1px solid rgba(248,248,248,.16) !important;border-radius:16px !important;background:#0c0c0c !important;box-sizing:border-box !important;}.newsletter-input-wrap{width:100% !important;box-sizing:border-box !important;}.newsletter-note,.newsletter-status{max-width:50ch;}@media (min-width:721px) and (max-width:1024px){.newsletter{padding-block:clamp(42px,5.5vw,68px) !important;}.newsletter-card{grid-template-columns:minmax(0,1fr) !important;gap:18px !important;min-height:0 !important;padding:clamp(24px,4vw,36px) !important;align-items:start !important;}.newsletter-copy{max-width:none !important;}.newsletter-copy h2{max-width:14ch;}.newsletter-form{width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}.newsletter-input-wrap{width:100% !important;flex-direction:row !important;}.newsletter-form button{width:auto !important;flex:0 0 auto !important;}}@media (max-width:720px){.newsletter-card{grid-template-columns:minmax(0,1fr) !important;gap:18px !important;min-height:0 !important;}.newsletter-copy{max-width:none !important;}.newsletter-copy h2{max-width:12ch;}.newsletter-form{width:100% !important;max-width:none !important;margin:18px 0 0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}.newsletter-input-wrap{width:100% !important;flex-direction:column !important;}.newsletter-form button{width:100% !important;}}

html body *{font-weight:400 !important;}html body h1,html body h2,html body h3,html body h4,html body h5,html body h6{font-weight:600 !important;}html body strong,html body b{font-weight:500 !important;}html body .logo{font-weight:600 !important;}html body .section-label,html body .eyebrow,html body .hero-eyebrow,html body .about-text .eyebrow,html body .newsletter-card .section-label{font-weight:500 !important;}html body .hero h1{font-weight:600 !important;}html body .section-title h2,html body .about-text h2,html body .newsletter-card h2{font-weight:550 !important;}html body .nav-links a,html body .mobile-nav a,html body .nav-links .cta-pill,html body .btn-primary,html body .btn-secondary,html body .submit-btn,html body .newsletter-form button,html body .order-btn,html body .hero-buttons .btn-primary,html body .hero-buttons .btn-secondary,html body .mobile-nav .mobile-cta{font-weight:500 !important;}html body .stat-number,html body .price,html body .reviewer-name,html body .footer-col h3,html body .footer-col h4,html body .feature-card h3,html body .menu-item h3,html body .menu-item h4,html body .contact-info-item h4{font-weight:550 !important;}html body .demo-toast{font-weight:500 !important;}@media (min-width:721px) and (max-width:1024px){.newsletter{padding-block:clamp(28px,3.4vw,38px) !important;}.newsletter-card{grid-template-columns:minmax(0,1fr) !important;gap:14px !important;min-height:0 !important;padding:clamp(22px,3vw,30px) !important;align-items:start !important;}.newsletter-copy{max-width:none !important;}.newsletter-copy h2{max-width:18ch !important;margin-bottom:6px !important;font-size:clamp(1.8rem,3.2vw,2.25rem) !important;line-height:1.08 !important;}.newsletter-copy p{max-width:66ch !important;margin-bottom:0 !important;line-height:1.45 !important;}.newsletter-points{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;align-items:start !important;gap:12px !important;margin-top:12px !important;}.newsletter-points li{min-width:0 !important;align-items:flex-start !important;line-height:1.4 !important;gap:8px !important;}.newsletter-points li::before{margin-top:1px !important;}.newsletter-points li::after{top:12px !important;transform:translateY(-50%) !important;}.newsletter-form{width:100% !important;max-width:none !important;margin:4px 0 0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}.newsletter-input-wrap{display:flex !important;flex-direction:row !important;align-items:center !important;width:100% !important;padding:6px !important;}.newsletter-form input{min-height:44px !important;}.newsletter-form button{width:auto !important;min-height:44px !important;flex:0 0 auto !important;}.newsletter-note,.newsletter-status{margin-top:8px !important;line-height:1.45 !important;}}@media (min-width:721px) and (max-width:1024px){footer{padding-top:42px !important;}footer .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;column-gap:clamp(16px,2.8vw,26px) !important;row-gap:26px !important;margin-bottom:30px !important;}footer .footer-brand{grid-column:1 / -1 !important;display:flex !important;flex-direction:column !important;align-items:center !important;width:100% !important;padding:0 0 24px !important;border-bottom:1px solid color-mix(in srgb,var(--bg) 12%,transparent) !important;text-align:center !important;}footer .footer-brand p{width:min(100%,440px) !important;margin:12px auto 18px !important;text-align:center !important;line-height:1.6 !important;}footer .footer-brand .social-row{justify-content:center !important;}footer .footer-col{width:fit-content !important;max-width:100% !important;min-width:0 !important;justify-self:center !important;text-align:left !important;}footer .footer-col h3,footer .footer-col h4{margin-bottom:12px !important;letter-spacing:.13em !important;}footer .footer-col a,footer .footer-col p{line-height:1.6 !important;overflow-wrap:anywhere;}footer .footer-bottom{padding:16px 0 !important;}footer .footer-bottom p{max-width:100% !important;line-height:1.7 !important;}}@media (max-width:720px){footer{padding-top:36px !important;}footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;column-gap:clamp(16px,5vw,24px) !important;row-gap:24px !important;margin-bottom:28px !important;}footer .footer-brand{grid-column:1 / -1 !important;display:flex !important;flex-direction:column !important;align-items:center !important;width:100% !important;padding:0 0 22px !important;border-bottom:1px solid color-mix(in srgb,var(--bg) 12%,transparent) !important;text-align:center !important;}footer .footer-brand p{width:min(100%,320px) !important;margin:12px auto 16px !important;text-align:center !important;line-height:1.6 !important;}footer .footer-brand .social-row{justify-content:center !important;}footer .footer-col:not(:last-of-type){grid-column:auto !important;width:fit-content !important;max-width:100% !important;justify-self:center !important;text-align:left !important;}footer .footer-col:last-of-type{grid-column:1 / -1 !important;width:min(100%,320px) !important;max-width:100% !important;justify-self:center !important;padding-top:18px !important;border-top:1px solid color-mix(in srgb,var(--bg) 12%,transparent) !important;text-align:left !important;}footer .footer-col h3,footer .footer-col h4{margin-bottom:10px !important;letter-spacing:.12em !important;}footer .footer-col a,footer .footer-col p{line-height:1.6 !important;overflow-wrap:anywhere;}footer .footer-col p{margin-left:0 !important;margin-right:0 !important;}footer .footer-bottom{padding:14px 0 18px !important;}footer .footer-bottom p{max-width:100% !important;line-height:1.7 !important;}}

/* Final interaction and contrast refinements */
html body svg.icon.solid-icon {
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
}
html body .star-row svg.icon.solid-icon { fill: var(--accent) !important; }
html body .feature-icon svg.icon.solid-icon { color: #b72926 !important; }
html body .c-icon svg.icon.solid-icon,
html body .l-icon svg.icon.solid-icon { color: #b72926 !important; }
html body .logo svg.solid-icon,
html body .footer-logo svg.solid-icon,
html body .chat-header svg.solid-icon { color: #b72926 !important; }
html body .back-to-top svg.solid-icon,
html body .live-chat-btn svg.solid-icon,
html body .chat-send svg.solid-icon,
html body .chat-close svg.solid-icon { color: #f8f8f8 !important; }

/* Form labels match the weight of Call Us, Email Us, and Business Hours. */
html body .form-group label { font-weight: 600 !important; }

/* The desktop and tablet contact intro is intentionally two lines. */
.contact-intro-desktop { display: inline !important; }
.contact-intro-mobile { display: none !important; }
.contact-intro-break { display: block !important; }

/* Footer labels and contents must remain legible against the black footer. */
html body footer .footer-col h3,
html body footer .footer-col h4 { color: #f8f8f8 !important; opacity: 1 !important; }
html body footer .footer-col a,
html body footer .footer-col p,
html body footer .footer-col p a { color: #f8f8f8 !important; opacity: .78 !important; }
html body footer .footer-col a:hover { color: #b72926 !important; opacity: 1 !important; }

@media (max-width: 720px) {
  .contact-intro-desktop { display: none !important; }
  .contact-intro-mobile { display: inline !important; }
  .contact .contact-info-items {
    width: 100% !important;
    max-width: 420px !important;
    margin-inline: auto !important;
    align-items: center !important;
  }
  .contact .contact-info-item {
    width: 100% !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
  .contact .contact-info-item > div:last-child {
    width: min(100%, 280px) !important;
    margin-inline: auto !important;
  }
  .contact .contact-info-item h3,
  .contact .contact-info-item h4 {
    width: 100% !important;
    text-align: center !important;
  }
  .contact .contact-info-item p {
    width: 100% !important;
    margin-inline: auto !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
  }
  /* Keep the footer grid untouched; only center the three contact detail lines. */
  footer .footer-col:last-of-type p,
  footer .footer-col:last-of-type p a { text-align: center !important; }
}

/* Latest responsive polish: tablet testimonials, unified contact/location cards, and compact newsletter heading. */
html body .contact .c-icon,
html body .location .l-icon {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin: 0 !important;
  border: 1px solid rgba(1, 1, 1, .14) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #b72926 !important;
  box-shadow: 0 5px 14px rgba(1, 1, 1, .08) !important;
}
html body .contact .c-icon svg,
html body .location .l-icon svg {
  width: 20px !important;
  height: 20px !important;
  color: #b72926 !important;
  fill: currentColor !important;
  stroke: none !important;
}

/* Tablet testimonials: two roomy columns and reviewer metadata that stays together. */
@media (min-width: 769px) and (max-width: 1024px) {
  html body .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
  }
  html body .review-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    padding: clamp(22px, 3vw, 30px) !important;
  }
  html body .review-text {
    line-height: 1.7 !important;
    margin-bottom: 20px !important;
  }
  html body .reviewer {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
    margin-top: auto !important;
  }
  html body .reviewer > div {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  html body .reviewer-name {
    display: block !important;
    font-size: clamp(.82rem, 1.15vw, .94rem) !important;
    line-height: 1.35 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  html body .reviewer-role {
    display: block !important;
    margin-top: 4px !important;
    font-size: clamp(.61rem, .82vw, .69rem) !important;
    line-height: 1.45 !important;
    letter-spacing: .075em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

/* Phone contact and location rows share the same icon, heading, and copy alignment. */
@media (max-width: 720px) {
  html body .contact .contact-info-items,
  html body .location .location-items {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
    margin-inline: auto !important;
    gap: 24px !important;
  }
  html body .contact .contact-info-item,
  html body .location .location-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100% !important;
    gap: 14px !important;
    text-align: left !important;
  }
  html body .contact .contact-info-item > div:last-child,
  html body .location .location-item > div:last-child {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: left !important;
  }
  html body .contact .contact-info-item h3,
  html body .contact .contact-info-item h4,
  html body .location .location-item h3,
  html body .location .location-item h4 {
    width: 100% !important;
    margin: 0 0 6px !important;
    text-align: left !important;
  }
  html body .contact .contact-info-item p,
  html body .location .location-item p {
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.7 !important;
    overflow-wrap: anywhere !important;
  }
}

/* On tablet and phone, keep the full newsletter headline on one line and center its eyebrow badge. */
@media (max-width: 1024px) {
  html body .newsletter-copy .section-label {
    display: table !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  html body .newsletter-copy h2 {
    max-width: none !important;
    width: 100% !important;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
    font-size: clamp(1.05rem, 4.5vw, 1.55rem) !important;
    line-height: 1.15 !important;
    letter-spacing: -.04em !important;
  }
  html body .newsletter-copy h2 br {
    display: none !important;
  }
}
/* Final content rail and mobile Contact Info heading alignment. */
:root{--site-content-max:1180px;--site-content-gutter:40px}main>section:not(.hero)>.container,footer>.container{width:min(var(--site-content-max),calc(100% - var(--site-content-gutter)))!important;max-width:var(--site-content-max)!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}@media(max-width:720px){:root{--site-content-gutter:28px}html body footer .footer-col:last-of-type h3,html body footer .footer-col:last-of-type h4{width:100%!important;text-align:center!important}}@media(max-width:360px){:root{--site-content-gutter:22px}}@media(max-width:340px){:root{--site-content-gutter:24px}}

/* Newsletter-edge alignment correction:
   The newsletter card sits inside a section with a 20px outer margin plus
   the normal container gutter. Match that final visible card edge for every
   other section and the footer, rather than reusing only the inner gutter. */
main > section:not(.hero):not(.features):not(.menu-section):not(.drinks-section):not(.newsletter) > .container,
footer > .container {
  width: min(var(--site-content-max), calc(100% - var(--site-content-gutter) - 40px)) !important;
  max-width: var(--site-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* These sections already carry the same 20px outer margin as the newsletter,
   so their inner container uses the newsletter's existing gutter unchanged. */
main > section.features > .container,
main > section.menu-section > .container,
main > section.drinks-section > .container,
main > section.newsletter > .container {
  width: min(var(--site-content-max), calc(100% - var(--site-content-gutter))) !important;
  max-width: var(--site-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* In landscape, the newsletter outer margin is 14px rather than 20px.
   Compensate for that six-pixel change so every visible container edge still
   lands on the exact same rail. */
@media (max-width: 960px) and (orientation: landscape) {
  main > section:not(.hero):not(.features):not(.menu-section):not(.drinks-section):not(.newsletter) > .container,
  footer > .container {
    width: min(var(--site-content-max), calc(100% - var(--site-content-gutter) - 28px)) !important;
  }

  main > section.features > .container,
  main > section.menu-section > .container,
  main > section.drinks-section > .container {
    width: min(var(--site-content-max), calc(100% - var(--site-content-gutter) + 12px)) !important;
  }
}


/* Finishing touches: neutral map rendering, tighter section rhythm, and a clean newsletter surround. */
html body .map-wrap iframe {
  filter: none !important;
  -webkit-filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* Keep horizontal section rails intact while closing the oversized vertical gaps. */
html body main > section:not(.hero) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: clamp(44px, 5.3vw, 72px) !important;
  padding-bottom: clamp(44px, 5.3vw, 72px) !important;
}

/* The newsletter's black card is the only distinct surface in this section. */
html body main > section.newsletter {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (min-width: 721px) and (max-width: 1024px) {
  html body main > section:not(.hero) {
    padding-top: clamp(38px, 4.8vw, 56px) !important;
    padding-bottom: clamp(38px, 4.8vw, 56px) !important;
  }
}

@media (max-width: 720px) {
  html body main > section:not(.hero) {
    padding-top: clamp(34px, 8vw, 48px) !important;
    padding-bottom: clamp(34px, 8vw, 48px) !important;
  }

  html body footer .footer-col:last-of-type p:last-child {
    width: 100% !important;
    text-align: center !important;
  }

  html body footer .footer-col:last-of-type p:last-child a {
    display: inline-block !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
  }
}

/* Heritage watermark: anchor it to the two-paragraph story so it stays at the left-middle between them at every breakpoint. */
.about::before { content: none !important; display: none !important; }
.about-story { position: relative !important; display: flow-root; isolation: isolate; }
.about-story::before {
  content: "BBQ";
  position: absolute;
  z-index: 0;
  top: 50%;
  left: clamp(-54px, -3.6vw, -24px);
  transform: translateY(-50%);
  font-family: var(--font-display) !important;
  font-size: clamp(112px, 14vw, 190px);
  font-weight: 900 !important;
  line-height: .82;
  letter-spacing: -.08em;
  white-space: nowrap;
  color: var(--accent) !important;
  opacity: .085;
  pointer-events: none;
  user-select: none;
}
.about-story > p { position: relative; z-index: 1; }
.about-story > p:last-child { margin-bottom: 0 !important; }
@media (min-width: 721px) and (max-width: 1024px) {
  .about-story::before { left: -34px; font-size: clamp(116px, 15vw, 154px); opacity: .08; }
}
@media (max-width: 720px) {
  .about-story::before { left: -22px; font-size: clamp(96px, 25vw, 132px); opacity: .075; }
}
/* Brand mark asset: use the supplied transparent Smokehouse flame in navigation and footer. */html body a.logo .brand-mark{display:inline-block!important;width:16px!important;height:23px!important;flex:0 0 16px!important;object-fit:contain!important;object-position:center!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;vertical-align:middle!important}html body footer a.footer-logo .brand-mark{display:inline-block!important;box-sizing:content-box!important;width:20px!important;height:28px!important;flex:0 0 20px!important;object-fit:contain!important;object-position:center!important;margin:0!important;padding:3px 7px!important;border:1px solid rgba(1,1,1,.08)!important;border-radius:10px!important;background:#f8f8f8!important;box-shadow:0 6px 18px rgba(1,1,1,.16)!important}/* Portrait phones: center footer navigation groups; landscape remains unchanged. */@media (max-width:720px) and (orientation:portrait){html body footer .footer-col:not(:last-of-type){width:100%!important;justify-self:stretch!important;text-align:center!important}html body footer .footer-col:not(:last-of-type) h3,html body footer .footer-col:not(:last-of-type) h4,html body footer .footer-col:not(:last-of-type) a{width:100%!important;text-align:center!important}html body footer .footer-col:not(:last-of-type) a{display:block!important;margin-inline:auto!important}html body footer .footer-col:last-of-type{width:min(100%,320px)!important;justify-self:center!important;text-align:center!important}html body footer .footer-col:last-of-type h3,html body footer .footer-col:last-of-type h4,html body footer .footer-col:last-of-type p,html body footer .footer-col:last-of-type p a{width:100%!important;text-align:center!important}}

/* Final refinements: mobile hero headline, brand-mark reuse, and chat input alignment. */
.hero-mobile-break { display: none !important; }

/* Use the exact Smokehouse flame asset in the feature and support UI. */
.feature-card .feature-icon .feature-brand-mark {
  display: block !important;
  width: 24px !important;
  height: 30px !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
}
.chat-header h3 { display: flex !important; align-items: center !important; gap: 8px !important; }
.chat-header .chat-header-brand-mark {
  display: inline-block !important;
  width: 14px !important;
  height: 20px !important;
  object-fit: contain !important;
  flex: 0 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.live-chat-btn .chat-brand-mark {
  display: block !important;
  width: 22px !important;
  height: 30px !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Keep keyboard focus visible inside the input, not between input and send button. */
.chat-input-row {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
  overflow: hidden !important;
  border-radius: 0 0 8px 8px !important;
}
.chat-input-row .chat-input {
  min-width: 0 !important;
  width: 0 !important;
  flex: 1 1 auto !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline-offset: -3px !important;
}
.chat-input-row .chat-input:focus-visible {
  outline: 2px solid var(--accent) !important;
  outline-offset: -3px !important;
  box-shadow: none !important;
}
.chat-input-row:focus-within {
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent) !important;
}
.chat-input-row .chat-send {
  flex: 0 0 auto !important;
  align-self: stretch !important;
  border-radius: 0 !important;
  margin: 0 !important;
  outline-offset: -3px !important;
}

@media (max-width: 720px) {
  .hero-content { text-align: left !important; align-items: flex-start !important; }
  .hero h1 {
    width: 100% !important;
    max-width: none !important;
    font-size: clamp(1.7rem, 7.6vw, 2.35rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -.035em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}
@media (max-width: 480px) { .hero-mobile-break { display: block !important; } }
@media (max-width: 360px) {
  .hero h1 { font-size: clamp(1.55rem, 7.5vw, 1.85rem) !important; }
}

/* Mobile layout fix: let single-column grid tracks shrink so content never overflows the viewport. */
@media (max-width: 768px) {
  .about-grid, .contact-grid, .location-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .about-grid > *, .contact-grid > *, .location-grid > * { min-width: 0 !important; max-width: 100% !important; }
  .about-text, .about-story, .stats-row, .about-image-wrap { min-width: 0; max-width: 100%; }
  .about-text p, .about-text h2 { overflow-wrap: break-word; }
  .about-image-wrap img { display: block; width: 100%; max-width: 100%; height: auto; }
  .stats-row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .stat-label { overflow-wrap: break-word; letter-spacing: .08em !important; }
}

/* Grid items must be allowed to shrink below their content size at every width. */
.about-grid > *, .contact-grid > *, .location-grid > * { min-width: 0; }
.about-image-wrap img { max-width: 100%; }

/* Newsletter check tiles: exactly the same solid color as the "Stay Connected" badge (no list-level fade). */
.newsletter-card .newsletter-points { opacity: 1 !important; color: rgba(248, 248, 248, .8) !important; }
.newsletter-card .newsletter-points li::before {
  background: #f8f8f8 !important;
  border: 1px solid rgba(1, 1, 1, .08) !important;
  box-shadow: 0 5px 16px rgba(1, 1, 1, .14) !important;
}

/* Floating buttons are pinned to the bottom of the screen. They never dock above the footer,
   even if an older cached script still sets --utility-bottom. */
html body .back-to-top,
html body .live-chat-btn { bottom: 24px !important; }
html body .chat-modal { bottom: 84px !important; }
