:root{
    --ink:#141312;
    --cream:#f6f3ee;
    --mustard:#e2a53a;
    --line:#e4ddd2;
    --chips-red:#e8412f;
    --chips-yellow:#ffcf3d;
    --bus-yellow:#f7c600;
    --buckland-black:#0e0e0e;
    --poutine-red:#d81f26;
  --sans:"Helvetica Neue", Helvetica, Arial, "Liberation Sans", "Nimbus Sans", sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.55;}
  h1,h2,h3{font-family:var(--sans);font-weight:700;letter-spacing:-.02em;}

  header{display:flex;justify-content:space-between;align-items:center;padding:22px 6vw;border-bottom:4px solid var(--ink);flex-wrap:wrap;gap:14px;position:sticky;top:0;background:var(--cream);z-index:10;}
  .logo{font-family:var(--sans);font-weight:700;font-size:20px;letter-spacing:-.01em;}
  .logo em{font-style:normal;color:var(--mustard);}
  nav a{color:var(--ink);text-decoration:none;margin-left:20px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid transparent;padding-bottom:3px;}
  nav a:hover{border-color:var(--mustard);}

  .hero{position:relative;}
  .hero-img{width:100%;height:58vh;min-height:360px;object-fit:cover;display:block;filter:saturate(1.08);}
  .hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,19,18,.2) 0%,rgba(20,19,18,.8) 100%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;color:#fff;padding:0 6vw 48px;}
  .hero-overlay .kicker{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--mustard);font-weight:800;margin-bottom:14px;}
  .hero-overlay h1{font-size:clamp(30px,4.8vw,54px);line-height:1.12;max-width:840px;margin-bottom:18px;}
  .hero-overlay p{font-size:16px;max-width:540px;opacity:.94;margin-bottom:28px;}
  .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
  .btn{display:inline-block;padding:14px 28px;font-weight:800;text-decoration:none;font-size:14px;letter-spacing:.02em;text-transform:uppercase;border:3px solid var(--ink);border-radius:6px;transition:transform .18s ease;}
  .btn-primary{background:var(--mustard);color:var(--ink);box-shadow:5px 5px 0 var(--ink);}
  .btn-ghost{background:transparent;color:#fff;border-color:#fff;}
  .btn:hover{transform:translateY(-3px);}

  .stats{background:var(--ink);color:#fff;display:flex;justify-content:center;flex-wrap:wrap;}
  .stat{flex:1;min-width:160px;text-align:center;padding:34px 20px;border-left:1px solid rgba(255,255,255,.15);}
  .stat:first-child{border-left:none;}
  .stat b{display:block;font-family:var(--sans);font-weight:700;letter-spacing:-.02em;font-size:32px;color:var(--mustard);}
  .stat span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#cfc9ba;}

  .intro{padding:60px 6vw 20px;max-width:760px;margin:0 auto;text-align:center;}
  .intro h2{font-size:27px;margin-bottom:14px;}
  .intro p{font-size:15px;color:#4a463f;}

  /* Scroll pop-in for each business band */
  .band{
    padding:70px 6vw;border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);
    opacity:0;transform:scale(.94) translateY(26px);
    transition:opacity .6s ease, transform .65s cubic-bezier(.34,1.56,.64,1);
  }
  .band.in-view{opacity:1;transform:scale(1) translateY(0);}
  .band-inner{max-width:1180px;margin:0 auto;}
  .band-head{display:flex;justify-content:center;margin-bottom:36px;}
  .band-head img.mark{height:96px;width:auto;border-radius:8px;box-shadow:6px 6px 0 rgba(0,0,0,.3);}
  .band-cols{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}
  @media (max-width:860px){.band-cols{grid-template-columns:1fr;}}

  .menu-frame{position:relative;}
  .menu-frame .menu-label{position:absolute;top:-14px;left:18px;background:var(--ink);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:6px 14px;border-radius:999px;}
  .menu-frame img{width:100%;border-radius:8px;border:3px solid var(--ink);display:block;box-shadow:8px 8px 0 rgba(0,0,0,.35);transition:transform .25s ease, box-shadow .25s ease;}
  .band.light .menu-frame img{box-shadow:8px 8px 0 var(--ink);}
  .menu-frame img:hover{transform:translateY(-4px) scale(1.015);}

  .photo-stack-full{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .photo-stack-full img{width:100%;height:180px;object-fit:cover;border-radius:8px;border:3px solid var(--ink);display:block;transition:transform .25s ease;}
  .photo-stack-full img:hover{transform:scale(1.035);}
  .photo-stack-full.single{grid-template-columns:1fr;}
  .photo-stack-full.single img{height:280px;}

  .brand-cta{margin-top:22px;}

  /* Burger Bus */
  .band-bus{background:var(--bus-yellow);color:var(--ink);}
  /* Buckland Burgers */
  .band-buckland{background:var(--buckland-black);color:#f2ede0;}
  /* Poutine Brothers */
  .band-poutine{background:var(--poutine-red);color:#fff;}
  /* CHIPS! */
  .band-chips{background:var(--chips-red);color:#fff;}

  .gallery{padding:70px 6vw;max-width:1200px;margin:0 auto;}
  .gallery h2{text-align:center;font-size:28px;margin-bottom:40px;}
  .gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
  .gallery-grid img{width:100%;height:220px;object-fit:cover;display:block;border-radius:6px;border:3px solid var(--ink);transition:transform .25s ease;}
  .gallery-grid img:hover{transform:scale(1.035);}
  @media (max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr);}}

  .seo-band{padding:64px 6vw;text-align:center;background:var(--ink);color:#fff;}
  .seo-band h3{font-size:24px;margin-bottom:14px;}
  .seo-band p{color:#d8d2c4;max-width:620px;margin:0 auto 26px;font-size:15px;}
  .tag-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:780px;margin:0 auto;}
  .tag{border:1px solid rgba(255,255,255,.25);padding:8px 16px;font-size:13px;background:rgba(255,255,255,.06);border-radius:999px;}

  .contact{padding:70px 6vw;background:var(--ink);color:#fff;}
  .contact-inner{max-width:640px;margin:0 auto;text-align:center;}
  .contact-inner h2{font-size:28px;margin-bottom:10px;color:#fff;}
  .contact-inner > p{color:#d8d2c4;font-size:15px;margin-bottom:34px;}
  .contact-form{display:grid;gap:16px;text-align:left;}
  .contact-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  @media (max-width:560px){.contact-form .row2{grid-template-columns:1fr;}}
  .contact-form label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#cfc9ba;display:block;margin-bottom:6px;}
  .contact-form input, .contact-form textarea{width:100%;padding:13px 14px;border-radius:6px;border:2px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;font-family:inherit;font-size:14px;}
  .contact-form input::placeholder, .contact-form textarea::placeholder{color:#9c968a;}
  .contact-form textarea{min-height:120px;resize:vertical;}
  .contact-form button{justify-self:start;margin-top:6px;background:var(--mustard);color:var(--ink);border:3px solid var(--ink);box-shadow:5px 5px 0 rgba(0,0,0,.4);padding:14px 30px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:14px;border-radius:6px;cursor:pointer;transition:transform .18s ease;}
  .contact-form button:hover{transform:translateY(-3px);}

  footer{padding:34px 6vw;text-align:center;font-size:13px;color:#666;}
  footer a{color:#666;}


/* ---------------------------------------------------------------
   Landing-page additions. Same design language as the home page:
   serif headings, heavy rules, mustard accent.
   --------------------------------------------------------------- */
.band-head{flex-direction:column;align-items:center;gap:16px;}
.band-title{font-size:clamp(22px,2.6vw,30px);text-align:center;line-height:1.15;}
.band-copy{max-width:640px;margin:0 auto 34px;text-align:center;font-size:15px;opacity:.94;}

.band-link{color:inherit;text-decoration:none;display:block;}
.band-link .photo-stack-full{transition:opacity .2s ease;}
.band-link:hover .photo-stack-full{opacity:.88;}
.band-link:hover .mark{transform:translateY(-2px);}
.band-title a,.band-head .band-link .band-title{color:inherit;}
.band-more{margin-top:16px;font-size:13px;}
.band-more a{color:inherit;font-weight:800;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:2px;}
.band-more a:hover{opacity:.8;}

.crumbs{padding:14px 6vw;font-size:11px;text-transform:uppercase;letter-spacing:.08em;
  font-weight:800;color:#6d675d;border-bottom:1px solid var(--line);background:var(--cream);}
.crumbs a{color:#6d675d;text-decoration:none;border-bottom:2px solid transparent;}
.crumbs a:hover{border-color:var(--mustard);}
.crumbs span{margin:0 6px;}
.crumbs [aria-current]{color:var(--ink);margin:0;}

a.tag{text-decoration:none;color:#fff;transition:background .2s ease,border-color .2s ease;}
a.tag:hover{background:var(--mustard);color:var(--ink);border-color:var(--mustard);}

.areas-head{padding:70px 6vw 40px;max-width:820px;margin:0 auto;text-align:center;}
.areas-head .kicker{text-transform:uppercase;letter-spacing:.16em;font-size:12px;
  color:#9a7420;font-weight:800;margin-bottom:14px;}
.areas-head h1{font-size:clamp(28px,4vw,44px);margin-bottom:16px;}
.areas-head p{color:#4a463f;font-size:15px;}
.areas-body{padding:10px 6vw 70px;max-width:1180px;margin:0 auto;}
.area-county{border-top:4px solid var(--ink);padding-top:28px;margin-top:40px;}
.area-county h2{font-size:24px;margin-bottom:22px;}
.area-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:26px;}
.area-town h3{font-size:16px;margin-bottom:8px;border-bottom:2px solid var(--mustard);
  display:inline-block;padding-bottom:3px;}
.area-town ul{list-style:none;}
.area-town li{margin-top:7px;}
.area-town a{color:#4a463f;text-decoration:none;font-size:14px;border-bottom:1px solid transparent;}
.area-town a:hover{color:var(--ink);border-color:var(--ink);}

footer p{margin:0;}
footer a{color:#666;}
footer a:hover{color:var(--ink);}

@media (prefers-reduced-motion:reduce){
  .band{opacity:1;transform:none;transition:none;}
  .btn:hover,.menu-frame img:hover,.gallery-grid img:hover,.photo-stack-full img:hover{transform:none;}
}
