/* Hustle Burgers — static styles */
:root{
  --bg:#fdfcf8;
  --cream:#fbf7ee;
  --fg:#1a1714;
  --ink:#15110d;
  --muted:#6b6359;
  --border:#ece7dc;
  --primary:#e8431f;       /* orange-red */
  --primary-fg:#fff8ee;
  --mustard:#f1bf2a;
  --shadow-soft:0 10px 30px -10px rgba(0,0,0,.18);
  --shadow-pop:0 24px 60px -20px rgba(232,67,31,.45);
  --radius:1rem;
}
*,*::before,*::after{box-sizing:border-box;border:0 solid var(--border)}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--fg);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.5;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;background:none;border:0;color:inherit}
input,textarea{font:inherit}
h1,h2,h3,.font-display{font-family:'Archivo Black','Inter',sans-serif;letter-spacing:-.02em;margin:0;line-height:.95}
ul{margin:0;padding:0;list-style:none}

.container{max-width:1200px;margin:0 auto;padding:0 20px}
@media(min-width:1024px){.container{padding:0 32px}}
.container-md{max-width:960px;margin:0 auto;padding:0 20px}
.container-sm{max-width:720px;margin:0 auto;padding:0 20px}

.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;padding:1rem 1.75rem;font-weight:600;font-size:.95rem;transition:transform .2s,background .2s,color .2s,box-shadow .2s;white-space:nowrap}
.btn .arrow{display:inline-block;transition:transform .2s}
.btn:hover .arrow{transform:translateX(4px)}
.btn-primary{background:var(--primary);color:var(--primary-fg);box-shadow:var(--shadow-pop)}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ink{background:var(--ink);color:var(--cream)}
.btn-ink:hover{background:#000}
.btn-sm{padding:.65rem 1.25rem;font-size:.85rem}

.tag{display:inline-flex;align-items:center;gap:.5rem;background:var(--ink);color:var(--cream);padding:.4rem 1rem;border-radius:9999px;font-size:.72rem;font-weight:600;letter-spacing:.12em}
.eyebrow{font-size:.78rem;font-weight:600;color:var(--primary);letter-spacing:.18em;text-transform:uppercase}

.text-primary{color:var(--primary)}
.text-mustard{color:var(--mustard)}
.text-ink{color:var(--ink)}
.text-cream{color:var(--cream)}
.bg-ink{background:var(--ink)}
.bg-cream{background:var(--cream)}
.bg-mustard{background:var(--mustard)}
.shadow-soft{box-shadow:var(--shadow-soft)}
.shadow-pop{box-shadow:var(--shadow-pop)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,box-shadow .3s,border-color .3s}
.nav.scrolled{background:rgba(253,252,248,.92);backdrop-filter:blur(10px);box-shadow:var(--shadow-soft);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
@media(min-width:1024px){.nav-inner{height:80px}}
.logo{display:flex;align-items:center;gap:.5rem;font-family:'Archivo Black',sans-serif;font-size:1.25rem}
.logo .badge{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--primary);color:var(--primary-fg)}
.nav-links{display:none;align-items:center;gap:1.6rem;font-size:.92rem;font-weight:500}
.nav-links a{color:rgba(21,17,13,.8)}
.nav-links a:hover{color:var(--primary)}
.nav-cta{display:none;align-items:center;gap:.75rem}
@media(min-width:1200px){.nav-links,.nav-cta{display:flex}}
.menu-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--ink);color:var(--cream)}
@media(min-width:1200px){.menu-btn{display:none}}
.mobile-menu{display:none;background:var(--bg);border-top:1px solid var(--border);padding:1rem 20px}
.mobile-menu.open{display:block}
.mobile-menu a{display:block;padding:.85rem 0;border-bottom:1px solid var(--border);font-weight:500}
.mobile-menu .btn{display:flex;justify-content:center;margin-top:1rem}

/* HERO */
.hero{position:relative;min-height:100vh;padding-top:96px;overflow:hidden;background:var(--cream)}
.hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero-bg::before,.hero-bg::after{content:"";position:absolute;border-radius:50%;filter:blur(80px)}
.hero-bg::before{top:-128px;right:-128px;width:640px;height:640px;background:rgba(232,67,31,.18)}
.hero-bg::after{bottom:-160px;left:-128px;width:580px;height:580px;background:rgba(241,191,42,.35)}
.hero-grid{display:grid;gap:2.5rem;align-items:center;min-height:calc(100vh - 112px)}
@media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;gap:3rem}}
.hero h1{margin-top:1.5rem;font-size:clamp(3.5rem,9vw,8rem);line-height:.85}
.hero .lead{margin-top:1.6rem;font-size:1.1rem;color:rgba(21,17,13,.7);max-width:36rem;line-height:1.6}
@media(min-width:1024px){.hero .lead{font-size:1.2rem}}
.hero .ctas{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}
.hero .meta{margin-top:2.2rem;display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.9rem;color:rgba(21,17,13,.7)}
.hero .meta div{display:flex;align-items:center;gap:.5rem}
.hero-img-wrap{position:relative}
.hero-img-wrap::before{content:"";position:absolute;inset:0;display:block;margin:auto;width:85%;aspect-ratio:1;border-radius:50%;background:rgba(241,191,42,.55);z-index:-1}
.hero-img{width:100%;max-width:520px;margin:0 auto;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 30px 30px rgba(0,0,0,.25))}
.hero-badge{position:absolute;bottom:-16px;left:-16px;display:none;align-items:center;gap:.75rem;background:var(--bg);border-radius:18px;padding:1rem 1.5rem 1rem 1rem;box-shadow:var(--shadow-pop)}
@media(min-width:768px){.hero-badge{display:flex}}
.hero-badge .ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--primary);color:var(--primary-fg)}
.hero-badge .t{font-family:'Archivo Black',sans-serif;font-size:1.25rem}
.hero-badge .s{font-size:.75rem;color:rgba(21,17,13,.6)}

.marquee{position:absolute;bottom:0;left:0;right:0;background:var(--ink);color:var(--cream);padding:1rem 0;overflow:hidden}
.marquee-track{display:flex;gap:3rem;white-space:nowrap;animation:marquee 30s linear infinite;font-family:'Archivo Black',sans-serif;font-size:1.25rem}
.marquee-track > div{display:flex;gap:3rem;flex-shrink:0}
.marquee-track .star{color:var(--mustard)}

/* SECTIONS */
section{padding:96px 0}
@media(min-width:1024px){section{padding:128px 0}}
.section-head{text-align:center;max-width:48rem;margin:0 auto 3.5rem}
.section-head h2{margin-top:.75rem;font-size:clamp(2.5rem,6vw,4.5rem)}

/* ABOUT */
.about-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.about-grid{grid-template-columns:7fr 5fr}}
.about-grid h2{margin-top:1rem;font-size:clamp(2.5rem,6vw,4.5rem)}
.about-grid p{margin-top:1.6rem;font-size:1.1rem;color:rgba(21,17,13,.7);max-width:36rem;line-height:1.6}
.stats{margin-top:2.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:32rem}
.stats .n{font-family:'Archivo Black',sans-serif;font-size:clamp(2rem,4vw,3rem)}
.stats .l{font-size:.85rem;color:rgba(21,17,13,.6);margin-top:.25rem}
.about-img{position:relative}
.about-img .frame{aspect-ratio:4/5;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-pop)}
.about-img .frame img{width:100%;height:100%;object-fit:cover}
.est{position:absolute;top:-24px;left:-24px;background:var(--mustard);color:var(--ink);border-radius:18px;padding:.85rem 1.25rem;box-shadow:var(--shadow-soft);transform:rotate(-4deg)}
.est .t{font-family:'Archivo Black',sans-serif;font-size:1.4rem}
.est .s{font-size:.7rem}

/* MENU */
.menu-head{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:flex-end;margin-bottom:3.5rem}
.menu-head h2{margin-top:.75rem;font-size:clamp(2.5rem,6vw,4.5rem)}
.menu-head p{max-width:28rem;color:rgba(21,17,13,.7)}
.menu-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:640px){.menu-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.menu-grid{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--bg);border-radius:24px;padding:1.25rem;box-shadow:var(--shadow-soft);transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-pop)}
.card .pic{position:relative;aspect-ratio:1;border-radius:18px;overflow:hidden;background:#f6f0e3}
.card .pic img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .pic img{transform:scale(1.05)}
.card .pill{position:absolute;top:12px;left:12px;background:var(--ink);color:var(--cream);font-size:10px;font-weight:700;letter-spacing:.12em;padding:.3rem .6rem;border-radius:9999px}
.card .row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-top:1.2rem}
.card h3{font-family:'Archivo Black',sans-serif;font-size:1.2rem;line-height:1.15}
.card .price{font-family:'Archivo Black',sans-serif;font-size:1.25rem;color:var(--primary)}
.card .desc{margin-top:.5rem;font-size:.88rem;color:rgba(21,17,13,.65);line-height:1.5}
.card .add{margin-top:1rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.88rem;font-weight:600;color:var(--ink)}
.card .add:hover{color:var(--primary)}

/* ZONES */
.zones-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:768px){.zones-grid{grid-template-columns:repeat(3,1fr)}}
.zone{border-radius:24px;padding:2rem;box-shadow:var(--shadow-soft);transition:box-shadow .25s}
.zone:hover{box-shadow:var(--shadow-pop)}
.zone.z1{background:var(--primary);color:var(--primary-fg)}
.zone.z2{background:var(--ink);color:var(--cream)}
.zone.z3{background:var(--mustard);color:var(--ink)}
.zone h3{margin-top:1.25rem;font-family:'Archivo Black',sans-serif;font-size:2.25rem}
.zone ul{margin-top:1.25rem;display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;opacity:.92}
.zone li{display:flex;align-items:center;gap:.6rem}
.zone li::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}
.delivery-bar{margin-top:2.5rem;border-radius:18px;background:var(--cream);border:1px solid var(--border);padding:1.25rem 1.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem 2.5rem;font-weight:500;color:var(--ink)}
.delivery-bar span{display:flex;align-items:center;gap:.5rem}

/* GALLERY */
.masonry{column-count:2;column-gap:1rem}
@media(min-width:768px){.masonry{column-count:3}}
.masonry .item{break-inside:avoid;border-radius:18px;overflow:hidden;margin-bottom:1rem;box-shadow:var(--shadow-soft);transition:box-shadow .25s}
.masonry .item:hover{box-shadow:var(--shadow-pop)}
.masonry img{width:100%;height:auto;transition:transform .5s}
.masonry .item:hover img{transform:scale(1.05)}

/* REVIEWS */
.reviews-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:768px){.reviews-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.reviews-grid{grid-template-columns:repeat(3,1fr)}}
.review{border-radius:24px;padding:1.75rem;background:var(--cream);border:1px solid var(--border);box-shadow:var(--shadow-soft)}
.review.dark{background:var(--ink);color:var(--cream)}
@media(min-width:1024px){.review.dark{grid-row:span 2}}
.stars{display:flex;gap:.2rem;color:var(--mustard);margin-bottom:1rem}
.review p{font-size:1.05rem;line-height:1.6;color:rgba(21,17,13,.8);margin:0}
.review.dark p{color:var(--cream)}
.review .who{margin-top:1.5rem;font-family:'Archivo Black',sans-serif;font-size:1.1rem}
.review .city{font-size:.78rem;color:rgba(21,17,13,.6)}
.review.dark .city{color:rgba(251,247,238,.7)}

/* ORDER */
.order-card{position:relative;overflow:hidden;border-radius:40px;background:var(--primary);color:var(--primary-fg);padding:2.5rem;box-shadow:var(--shadow-pop)}
@media(min-width:1024px){.order-card{padding:4rem}}
.order-card::before,.order-card::after{content:"";position:absolute;border-radius:50%;filter:blur(80px)}
.order-card::before{right:-80px;bottom:-80px;width:450px;height:450px;background:rgba(241,191,42,.3)}
.order-card::after{left:-40px;top:-40px;width:288px;height:288px;background:rgba(0,0,0,.18)}
.order-grid{position:relative;display:grid;gap:2.5rem;align-items:center}
@media(min-width:1024px){.order-grid{grid-template-columns:3fr 2fr}}
.order-card h2{margin-top:1.25rem;font-size:clamp(2.5rem,6vw,4.5rem);line-height:.9}
.order-card .lead{margin-top:1.25rem;font-size:1.1rem;max-width:28rem;color:rgba(255,248,238,.88)}
.order-form{margin-top:1.75rem;display:flex;flex-direction:column;gap:.75rem;max-width:32rem}
@media(min-width:640px){.order-form{flex-direction:row}}
.order-form input{flex:1;border-radius:9999px;background:var(--bg);color:var(--ink);padding:1rem 1.5rem;outline:none;border:0}
.order-form input:focus{box-shadow:0 0 0 4px var(--mustard)}
.order-form input::placeholder{color:rgba(21,17,13,.4)}
.order-note{margin-top:1.5rem;font-size:.9rem;color:rgba(255,248,238,.85)}
.order-img{width:100%;max-width:420px;margin:0 auto;animation:float 6s ease-in-out infinite}
.tag-light{background:rgba(0,0,0,.2)}

/* FAQ */
.faq{display:flex;flex-direction:column;gap:.75rem}
.faq .item{border-radius:18px;background:var(--cream);border:1px solid var(--border);overflow:hidden}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;text-align:left}
.faq .q{font-family:'Archivo Black',sans-serif;font-size:1.1rem;color:var(--ink)}
.faq .chev{transition:transform .2s;color:var(--primary);flex-shrink:0}
.faq .item.open .chev{transform:rotate(180deg)}
.faq .a{padding:0 1.5rem 1.5rem;color:rgba(21,17,13,.7);line-height:1.6;display:none}
.faq .item.open .a{display:block;animation:fade-up .3s ease-out}

/* CONTACT */
.contact-grid{display:grid;gap:3rem}
@media(min-width:1024px){.contact-grid{grid-template-columns:1fr 1fr}}
.contact-grid h2{margin-top:.75rem;font-size:clamp(2.5rem,6vw,4.5rem)}
.contact-grid .lead{margin-top:1.25rem;color:rgba(21,17,13,.7);max-width:28rem}
.contact-list{margin-top:2.5rem;display:flex;flex-direction:column;gap:1.25rem}
.contact-list li{display:flex;gap:1rem;align-items:flex-start}
.contact-list .ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;flex-shrink:0}
.contact-list .ico.p{background:var(--primary);color:var(--primary-fg)}
.contact-list .ico.k{background:var(--ink);color:var(--cream)}
.contact-list .ico.m{background:var(--mustard);color:var(--ink)}
.contact-list .lab{font-weight:600;color:var(--ink)}
.contact-list .val{color:rgba(21,17,13,.7)}
.contact-list a:hover{color:var(--primary)}
.contact-form{background:var(--bg);border-radius:24px;padding:2rem;box-shadow:var(--shadow-soft);border:1px solid var(--border);display:flex;flex-direction:column;gap:1rem}
.contact-form input,.contact-form textarea{width:100%;border-radius:14px;background:var(--cream);border:1px solid var(--border);padding:.85rem 1rem;outline:none;transition:border-color .2s}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary)}
.contact-form textarea{resize:none}
.contact-form .row2{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:640px){.contact-form .row2{grid-template-columns:1fr 1fr}}
.contact-form button{width:100%;border-radius:9999px;background:var(--primary);color:var(--primary-fg);padding:1rem 1.75rem;font-weight:600;transition:background .2s}
.contact-form button:hover{background:#cf3a18}

/* FOOTER */
.foot{background:var(--ink);color:var(--cream);padding:56px 0}
.foot-inner{display:flex;flex-direction:column;gap:1.5rem;align-items:center;text-align:center}
@media(min-width:768px){.foot-inner{flex-direction:row;justify-content:space-between;text-align:left}}
.foot .logo .badge{background:var(--primary)}
.foot .sub{font-size:.75rem;color:rgba(251,247,238,.6)}
.foot .copy{font-size:.85rem;color:rgba(251,247,238,.7)}

/* anims */
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(2deg)}}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.fade-up{animation:fade-up .7s ease-out both}

/* icons */
.i{width:1em;height:1em;display:inline-block;vertical-align:-0.125em;flex-shrink:0}
