
:root{
  --red:#d83a2f;
  --green:#2f8e49;
  --ink:#171717;
  --soft:#555;
  --line:#e7e5e2;
  --white:#ffffff;
  --cream:#fff8f6;
  --card:#ffffffee;
  --shadow:0 18px 38px rgba(0,0,0,.08);
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behaviour:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    linear-gradient(rgba(255,255,255,.95),rgba(255,255,255,.95)),
    url('assets/logo-bg.png') center 120px / 760px no-repeat fixed,
    linear-gradient(180deg,#fff 0%,#fcfbfa 100%);
  font-family:'Trebuchet MS','Segoe UI',Arial,sans-serif;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.container{width:min(1180px,calc(100% - 2rem));margin:0 auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:inline-flex;align-items:center;gap:.8rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.brand img{width:54px;height:54px;object-fit:contain}
.brand span{font-size:.98rem}
nav{display:flex;gap:1.2rem;flex-wrap:wrap}
nav a{font-weight:700;color:var(--soft)}
nav a:hover{color:var(--red)}
.hero,.page-hero{padding:3.7rem 0 2rem}
.page-hero.slim{padding-bottom:.8rem}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:2rem;align-items:center}
.eyebrow{margin:0 0 .55rem;color:var(--green);text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;font-weight:800}
h1,h2,h4{margin:0;line-height:.96;font-family:Impact,Haettenschweiler,'Arial Narrow Bold','Arial Black',sans-serif;letter-spacing:.04em;text-transform:uppercase}
h1{font-size:clamp(3.3rem,8vw,6.6rem)}
h2{font-size:clamp(2rem,4.5vw,3.3rem)}
h3{margin:0;font-size:1.06rem;line-height:1.15}
.lede{max-width:38rem;font-size:clamp(1.1rem,2vw,1.38rem);margin:.85rem 0 0}
.sublede{max-width:42rem;color:var(--soft);margin-top:.9rem}
.status-pill{display:inline-block;margin:.25rem 0 1rem;padding:1rem 1.15rem;border-radius:999px;border:1px solid rgba(216,58,47,.2);background:linear-gradient(90deg,rgba(216,58,47,.08),rgba(47,142,73,.08));font-weight:800;color:var(--red)}
.cta-row{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.2rem}
.primary-button,.secondary-button,.app-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:800;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.primary-button{padding:1rem 1.35rem;color:#fff;background:var(--red);box-shadow:var(--shadow)}
.secondary-button{padding:1rem 1.35rem;background:#fff;border:2px solid var(--ink)}
.primary-button:hover,.secondary-button:hover,.app-button:hover{transform:translateY(-2px)}
.hero-media img,.inline-photo{border-radius:34px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.05)}
.hero-media img{aspect-ratio:1.22/1;object-fit:cover;background:#fff}
.apps-section,.feature-section,.content-section,.social-section{padding:1.8rem 0 3rem}
.section-heading{margin-bottom:1.4rem}
.section-heading.left{margin-bottom:1rem}
.section-heading p{margin:.55rem 0 0;max-width:48rem;color:var(--soft)}
.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.app-grid.emphasized .app-button{min-height:88px;font-size:1.03rem}
.social-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:540px}
.app-button{padding:1.1rem 1rem;background:var(--card);border:2px solid rgba(0,0,0,.06);box-shadow:var(--shadow)}
.app-grid .app-button:nth-child(odd){border-color:rgba(216,58,47,.22)}
.app-grid .app-button:nth-child(even){border-color:rgba(47,142,73,.24)}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem}
.menu-card,.list-card{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.menu-card img{width:100%;aspect-ratio:1.12/.75;object-fit:cover;background:#fff}
.menu-card.no-photo{min-height:100%}
.menu-card.no-photo .menu-copy{padding-top:1.25rem}
.menu-copy{padding:1rem 1rem 1.15rem}
.menu-copy p{margin:.52rem 0 0;color:var(--soft);font-size:.95rem}
.list-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.list-card-grid.compact{grid-template-columns:1fr}
.list-card{padding:1rem 1.1rem 1.1rem}
.list-card h3{margin-bottom:.75rem;font-family:Impact,Haettenschweiler,'Arial Narrow Bold','Arial Black',sans-serif;text-transform:uppercase;letter-spacing:.03em}
.list-inline,.list-grid{margin:0;padding-left:1.1rem;color:var(--soft)}
.list-inline li{margin:.2rem 0}
.list-grid{columns:2;column-gap:1.2rem}
.list-grid li{break-inside:avoid;page-break-inside:avoid;margin:0 0 .35rem}
.menu-section-block{margin-bottom:2.2rem}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem;align-items:start}
.about-side{display:grid;gap:1rem}
.inline-photo{width:100%}
.prose{max-width:780px}
.prose p{color:var(--soft);margin:0 0 1rem;font-size:1.03rem}
.prose h2{margin:2rem 0 .7rem}
.policy strong{color:var(--ink)}
.site-footer{margin-top:1rem;padding-top:2.2rem;border-top:1px solid rgba(0,0,0,.07);background:rgba(255,255,255,.88)}
.footer-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr .8fr;gap:1.5rem}
.site-footer h4{font-size:1.55rem;margin-bottom:.65rem}
.site-footer p,.site-footer a{color:var(--soft)}
.site-footer a{display:block;margin:.38rem 0}
.brand-footer{display:inline-flex;flex-direction:column;align-items:flex-start;gap:0}
.brand-footer img{width:116px;height:116px}
.brand-footer br{display:block;content:"";margin-top:.35rem}
.legal{margin-top:1.5rem;padding:1rem 0 1.7rem;border-top:1px solid rgba(0,0,0,.07);color:var(--soft);font-size:.94rem}
@media (max-width:1024px){
  .hero-grid,.about-grid,.footer-grid,.list-card-grid{grid-template-columns:1fr}
  .card-grid,.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .nav-wrap{padding:.85rem 0;flex-direction:column;align-items:flex-start}
  .hero,.page-hero{padding-top:2rem}
  .card-grid,.app-grid,.social-grid{grid-template-columns:1fr}
  .list-grid{columns:1}
  h1{font-size:3.2rem}
}


.inner-hero{padding:5rem 0 2rem;}
.content-section{padding:0 0 4rem;}
.contact-card{max-width:760px;background:rgba(255,255,255,0.88);border:1px solid rgba(0,0,0,0.08);border-radius:24px;padding:2rem;box-shadow:0 18px 40px rgba(0,0,0,0.08);}
.contact-card p{margin:0 0 1rem;}


.email-icon{font-size:calc(1em + 3pt);line-height:1;display:inline-block;vertical-align:baseline;}


.brand-footer .footer-logo{width:116px !important;height:116px !important;max-width:none !important;flex:0 0 116px;}
.brand-footer span{display:block;margin-top:.35rem;}

.toppings-card{grid-column:1/-1}
.toppings-groups{color:var(--soft)}
.toppings-list{margin:0;padding-left:1.1rem}
.toppings-list li{margin:0 0 .35rem}
.toppings-group{margin-top:1.15rem}
