/* ── Font fallbacks (CLS prevention) ───────────────────────────────────── */
@font-face{font-family:'Anybody-fallback';src:local('Arial Black');size-adjust:105%;ascent-override:90%;descent-override:20%;line-height-override:normal;}
@font-face{font-family:'Poppins-fallback';src:local('Segoe UI'),local('Roboto'),local('Helvetica Neue');size-adjust:102%;ascent-override:92%;descent-override:22%;line-height-override:normal;}

/* ── Reset + Custom Properties ─────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --red:#b11311;
  --red-d:#8f0f0d;
  --navy:#05060f;
  --blue:#4b7cb3;
  --yellow:#FFC107;
  --white:#ffffff;
  --dark:#0b0c16;
  --mid:#111324;
  --card:rgba(21, 24, 47, 0.7);
  --grey:#9ca3af;
  --glass-bg:rgba(15, 18, 36, 0.75);
  --glass-border:rgba(255, 255, 255, 0.08);
  --glass-border-hover:rgba(177, 19, 17, 0.6);
  --accent-glow:rgba(177, 19, 17, 0.25);
  --radial-gradient:radial-gradient(circle at 50% -20%, #1a1c35 0%, #0b0c16 65%, #05050a 100%);
}
body{
  font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;
  font-weight:400;
  font-style:normal;
  background:var(--dark);
  background-image:var(--radial-gradient);
  background-attachment:fixed;
  color:var(--white);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4,h5,h6,.headline,.hero-tagline{
  font-family:'Anybody','Anybody-fallback',system-ui,sans-serif !important;
  font-style:italic !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}

/* ── Light mode ────────────────────────────────────────────────────────── */
[data-theme="light"]{
  --dark:#fdfbf7;
  --mid:#f5ecd5;
  --card:rgba(255, 255, 255, 0.95);
  --grey:#555e6d;
  --navy:#fcfaf2;
  --white:#05060f;
  --glass-bg:rgba(255, 255, 255, 0.92);
  --glass-border:rgba(0, 0, 0, 0.08);
  --glass-border-hover:rgba(255, 193, 7, 0.85);
  --accent-glow:rgba(255, 193, 7, 0.18);
  --radial-gradient:radial-gradient(circle at 50% -20%, #ffffff 0%, #fdfbf7 75%, #f5ecd5 100%);
}
[data-theme="light"] body{
  background:#fdfbf7;
  background-image:var(--radial-gradient);
  color:#05060f;
}

/* Heading hierarchy: h1/h2 → solid black, h3/h4 → red */
[data-theme="light"] h1,[data-theme="light"] h2{color:#05060f;}
[data-theme="light"] h3,[data-theme="light"] h4{color:#b11311;}
[data-theme="light"] p,[data-theme="light"] li,[data-theme="light"] span:not(.nav-caret):not(.trust-item):not(.stars):not(.live-status-dot):not(.live-status-text){color:#05060f;}
[data-theme="light"] .location-content p{color:#05060f !important;}

/* Nav */
[data-theme="light"] .site-nav{background:rgba(252, 250, 242, 0.96);border-bottom-color:rgba(255, 193, 7, 0.35);}
[data-theme="light"] .nav-link,[data-theme="light"] .nav-trigger{color:#05060f;}
[data-theme="light"] .mega-panel{background:#f5ecd5;border-color:rgba(255, 193, 7, 0.25);}
[data-theme="light"] .mega-col a{color:#222533;}

/* ── Sections that stay DARK even in light mode ── */
[data-theme="light"] .trust-ticker,[data-theme="light"] .trust-ticker *{color:#fff!important;}
[data-theme="light"] .hero h1,[data-theme="light"] .hero .hero-tagline,[data-theme="light"] .hero .city-badge,[data-theme="light"] .home-h1{color:#fff!important;}
[data-theme="light"] .hero h1 em,[data-theme="light"] .home-h1 em{color:var(--yellow)!important;}
[data-theme="light"] .hero .hero-sub,[data-theme="light"] .home-hero-sub{color:rgba(255,255,255,0.9)!important;}
[data-theme="light"] .how-it-works *{color:#fff!important;}
[data-theme="light"] .how-it-works h2,[data-theme="light"] .how-it-works h3{color:var(--yellow)!important;}
[data-theme="light"] .why-us,[data-theme="light"] .home-why-us{background:#0b0c16!important;background-image:none!important;}
[data-theme="light"] .why-us *,[data-theme="light"] .home-why-us *{color:#fff;}
[data-theme="light"] .why-us h2,[data-theme="light"] .home-why-us h2{color:var(--yellow)!important;}
[data-theme="light"] .why-text h3{color:#fff!important;}
[data-theme="light"] .cta-strip,[data-theme="light"] .cta-strip *{color:#fff!important;}
[data-theme="light"] .cta-strip h2,[data-theme="light"] .cta-strip h2 em{color:#fff!important;}
[data-theme="light"] .review-text{color:#374151!important;}
[data-theme="light"] .review-author{color:#4b5563!important;}
[data-theme="light"] .stars{color:var(--yellow)!important;}
[data-theme="light"] .bottom-form h2,[data-theme="light"] .bottom-form .eyebrow,[data-theme="light"] .bottom-form .section-sub{color:#fff!important;}
[data-theme="light"] footer{background:#000!important;color:rgba(255,255,255,0.65);}
[data-theme="light"] footer a{color:rgba(255,255,255,0.85);}
[data-theme="light"] .footer-regions a{color:rgba(255,255,255,0.65);}
[data-theme="light"] .geo-btn,[data-theme="light"] .theme-toggle{border-color:rgba(255,255,255,0.25);color:rgba(255,255,255,0.88);}
[data-theme="light"] .geo-btn:hover,[data-theme="light"] .theme-toggle:hover{border-color:var(--yellow);color:var(--yellow);background:rgba(255,255,255,0.06);}
[data-theme="light"] .home-hero{background-image:url(/assets/familyroom-hero.jpg);background-size:cover;background-position:center;}
[data-theme="light"] .home-hero-video{display:none!important;}
[data-theme="light"] .home-hero-overlay{background:linear-gradient(to right,rgba(10,10,32,0.85) 0%,rgba(10,10,32,0.58) 55%,rgba(10,10,32,0.22) 100%);}
[data-theme="light"] .bottom-form::before{background-image:url(/assets/truck-hero-toronto.webp)!important;}

/* ── Header ────────────────────────────────────────────────────────────── */
header{
  background:rgba(5, 6, 15, 0.85);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  padding:0 24px;
  position:sticky;
  top:0;
  z-index:100;
  border-bottom:1px solid rgba(255,255,255,0.06);
  transition:all 0.3s ease;
}
[data-theme="light"] header{border-bottom-color:rgba(0,0,0,0.06);box-shadow:0 2px 15px rgba(0,0,0,0.04);}
.header-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px;}
.logo img{height:46px;width:auto;display:block;}
.header-right{display:flex;align-items:center;gap:18px;flex-shrink:0;}
.btn-call{
  background:var(--yellow);
  color:#05060f !important;
  padding:12px 24px;
  border-radius:8px;
  font-family:'Anybody','Anybody-fallback',sans-serif;
  font-weight:700;
  font-style:italic;
  text-transform:uppercase;
  font-size:15px;
  white-space:nowrap;
  box-shadow:0 4px 14px rgba(255,193,7,0.3);
  transition:all 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.btn-call:hover{background:#e6ac00;transform:translateY(-1.5px);box-shadow:0 6px 18px rgba(255,193,7,0.45);}
#weather-bar{display:none;font-size:12px;font-weight:600;color:rgba(255,255,255,0.78);letter-spacing:0.4px;white-space:nowrap;}
[data-theme="light"] #weather-bar{color:#0f172a;}
header{overflow-x:clip;}

/* ── Navigation ────────────────────────────────────────────────────────── */
.site-nav{
  background:rgba(17, 19, 36, 0.85);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,0.05);
  position:sticky;
  top:72px;
  z-index:99;
}
.site-nav-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:4px;padding:0 24px;overflow-x:auto;scrollbar-width:none;}
.site-nav-inner::-webkit-scrollbar{display:none;}
.nav-link,.nav-trigger{
  font-size:14px;
  font-weight:600;
  padding:18px 16px;
  border-bottom:2px solid transparent;
  color:rgba(255,255,255,0.8);
  background:none;
  border-top:none;
  border-left:none;
  border-right:none;
  cursor:pointer;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:4px;
  font-family:inherit;
  transition:all 0.2s ease;
}
.nav-link:hover,.nav-trigger:hover{color:#fff;border-bottom-color:var(--yellow);}
.nav-caret{font-size:9px;opacity:0.6;margin-left:2px;}
.mega-panel{
  position:absolute;
  left:0;
  right:0;
  background:rgba(17, 19, 36, 0.95);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-top:1px solid rgba(255,255,255,0.05);
  border-bottom:1px solid rgba(0,0,0,0.3);
  z-index:98;
  box-shadow:0 12px 40px rgba(0,0,0,0.45);
}
.mega-inner{max-width:1100px;margin:0 auto;display:flex;gap:40px;padding:32px 24px;}
.mega-col{display:flex;flex-direction:column;gap:10px;min-width:160px;}
.mega-heading{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--yellow);margin-bottom:6px;}
.mega-col a{font-size:13.5px;color:rgba(255,255,255,0.76);padding:3px 0;transition:color 0.15s;}
.mega-col a:hover{color:#fff;}
.hamburger-btn{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:none;border:1px solid rgba(255,255,255,0.22);border-radius:8px;cursor:pointer;width:38px;height:34px;padding:0;color:rgba(255,255,255,0.85);}
.hamburger-btn span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform 0.25s,opacity 0.2s;}
.theme-toggle{
  background:none;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:8px;
  color:inherit;
  cursor:pointer;
  width:38px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all 0.2s ease;
}
.theme-toggle:hover{border-color:rgba(255,255,255,0.4);background:rgba(255,255,255,0.05);}
.geo-btn{
  background:none;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:8px;
  color:rgba(255,255,255,0.88);
  cursor:pointer;
  height:34px;
  min-width:38px;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-family:inherit;
  font-size:12px;
  font-weight:600;
  letter-spacing:0.3px;
  transition:all 0.2s ease;
  white-space:nowrap;
}
.geo-btn:hover{border-color:rgba(255,255,255,0.4);color:#fff;background:rgba(255,255,255,0.05);}
.geo-city-label{display:none;}
.geo-city-label:not(:empty){display:inline;}

/* ── Trust Ticker ──────────────────────────────────────────────────────── */
.trust-ticker{
  background:linear-gradient(90deg, var(--red) 0%, var(--red-d) 100%);
  padding:10px 24px;
  font-size:11.5px;
  font-weight:600;
  letter-spacing:0.5px;
  box-shadow:0 4px 15px rgba(177,19,17,0.25);
  overflow:hidden;
}
.trust-ticker-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:36px;justify-content:center;align-items:center;}
.trust-item{display:flex;align-items:center;gap:6px;white-space:nowrap;}

/* ── Live Status Badge ─────────────────────────────────────────────────── */
.live-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(46, 213, 115, 0.12);
  border:1px solid rgba(46, 213, 115, 0.35);
  color:#2ed573;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1.5px;
  padding:6px 14px;
  border-radius:30px;
  margin-bottom:16px;
  box-shadow:0 0 10px rgba(46, 213, 115, 0.05);
}
.live-status-dot{
  width:7px;
  height:7px;
  background:#2ed573;
  border-radius:50%;
  box-shadow:0 0 0 0 rgba(46, 213, 115, 0.7);
  animation:pulse-green 1.8s infinite;
}
@keyframes pulse-green {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(46, 213, 115, 0.7);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 8px rgba(46, 213, 115, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(46, 213, 115, 0);
  }
}
[data-theme="light"] .live-status{color:#16a34a !important; border-color:rgba(22,163,74,0.5) !important; background:rgba(22,163,74,0.1) !important;}

/* ── Tagline / Pest Ticker ─────────────────────────────────────────────── */
.tagline-strip{background:var(--mid);border-bottom:1px solid rgba(255,255,255,0.05);padding:6px 24px;font-size:11.5px;font-weight:500;letter-spacing:0.5px;overflow:hidden;white-space:nowrap;}

/* ── Hero ──────────────────────────────────────────────────────────────── */
.hero{
  padding:100px 24px 88px;
  background-size:cover;
  background-position:center 35%;
  background-attachment:fixed;
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, rgba(10,10,32,0.85) 0%, rgba(10,10,32,0.68) 100%);
  pointer-events:none;
  z-index:0;
}
.hero-inner{position:relative;z-index:1;max-width:780px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:40px;align-items:stretch;}
@media(pointer:coarse){.hero{background-attachment:scroll;}}
.city-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:rgba(255,193,7,0.12);
  border:1px solid var(--yellow);
  color:var(--yellow);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1.8px;
  padding:6px 14px;
  border-radius:6px;
  margin-bottom:18px;
}
h1{
  font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;
  font-style:italic;
  font-weight:700;
  text-transform:uppercase;
  font-size:clamp(32px,5vw,56px);
  line-height:1.05;
  margin-bottom:12px;
  letter-spacing:-0.01em;
}
h1 em{color:var(--yellow);font-style:inherit;}
.hero-tagline{
  font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;
  font-style:italic;
  font-weight:700;
  text-transform:uppercase;
  font-size:clamp(14px,2.2vw,18px);
  color:var(--blue);
  margin-bottom:24px;
  letter-spacing:0.06em;
}
.hero-sub{color:rgba(255,255,255,0.82);font-size:17px;margin-bottom:36px;max-width:560px;line-height:1.7;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:32px;}
.btn-primary{
  background:var(--yellow);
  color:#05060f !important;
  padding:16px 36px;
  border-radius:8px;
  font-family:'Anybody','Anybody-fallback',sans-serif;
  font-style:italic;
  text-transform:uppercase;
  font-weight:700;
  font-size:16px;
  display:inline-block;
  border:none;
  cursor:pointer;
  box-shadow:0 6px 20px rgba(255,193,7,0.3);
  transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.btn-primary:hover{
  background:#e6ac00;
  transform:translateY(-2px);
  box-shadow:0 8px 25px rgba(255,193,7,0.45);
}
.btn-outline{
  background:transparent;
  color:var(--white);
  padding:16px 32px;
  border-radius:8px;
  font-family:'Anybody','Anybody-fallback',sans-serif;
  font-style:italic;
  text-transform:uppercase;
  font-weight:600;
  font-size:15px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:2px solid rgba(255,255,255,0.22);
  cursor:pointer;
  transition:all 0.3s ease;
}
.btn-outline:hover{border-color:var(--white);background:rgba(255,255,255,0.06);}

/* ── Eyebrow / Headings ─────────────────────────────────────────────────── */
.eyebrow{color:var(--yellow);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;}
h2{font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:clamp(24px,3.5vw,40px);margin-bottom:14px;letter-spacing:-0.01em;}
h3{font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:clamp(16px,2vw,22px);margin-bottom:10px;}
h4{font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:16px;margin-bottom:8px;}
.section-sub{color:var(--grey);font-size:16.5px;margin-bottom:36px;max-width:600px;margin-left:auto;margin-right:auto;}
.section-header{text-align:center;margin-bottom:56px;}

/* ── Frost Glassmorphism Card Base ─────────────────────────────────────── */
.glass-card{
  background:var(--glass-bg);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid var(--glass-border);
  box-shadow:0 8px 32px 0 rgba(0,0,0,0.25);
  transition:all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.glass-card:hover{
  transform:translateY(-5px);
  border-color:var(--glass-border-hover);
  box-shadow:0 12px 30px var(--accent-glow);
}

/* ── How It Works ───────────────────────────────────────────────────────── */
.how-it-works{background:var(--red);background:linear-gradient(135deg, var(--red) 0%, var(--red-d) 100%);padding:80px 24px;position:relative;}
.how-inner{max-width:1100px;margin:0 auto;}
.how-it-works .eyebrow{color:var(--yellow);}
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;}
.step-card{
  background:rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:32px 28px;
  transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.step-card:hover{
  transform:translateY(-4px);
  background:rgba(0,0,0,0.4);
  border-color:var(--yellow);
}
.step-num{font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;font-style:italic;font-weight:700;font-size:44px;color:var(--yellow);line-height:1;margin-bottom:14px;}
.step-card h3{font-size:17px;font-weight:700;text-transform:uppercase;margin-bottom:10px;color:var(--white);}
.step-card p{color:rgba(255,255,255,0.88);font-size:14.5px;line-height:1.65;}

/* ── Why Us ─────────────────────────────────────────────────────────────── */
.why-us{background:var(--dark);background-image:var(--radial-gradient);padding:80px 24px;position:relative;overflow:hidden;}
.why-us::before{content:'';position:absolute;inset:0;background-image:url(/assets/cobweb-bg.jpg);background-size:cover;background-position:center;background-attachment:fixed;opacity:0.35;pointer-events:none;z-index:0;}
.why-inner{max-width:1100px;margin:0 auto;position:relative;z-index:1;}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;margin-top:48px;}
.why-item{
  display:flex;
  gap:18px;
  background:rgba(17, 19, 36, 0.5);
  border:1px solid rgba(255,255,255,0.04);
  padding:24px;
  border-radius:12px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.why-item:hover{
  border-color:rgba(75, 124, 179, 0.4);
  background:rgba(17, 19, 36, 0.7);
  transform:translateY(-2px);
}
.why-icon{
  background:rgba(177,19,17,0.15);
  border:1px solid rgba(177,19,17,0.35);
  color:var(--yellow);
  width:48px;
  height:48px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  flex-shrink:0;
  box-shadow:0 4px 10px rgba(177,19,17,0.15);
}
.why-text h3{font-size:16px;font-weight:700;margin-bottom:6px;}
.why-text p{color:rgba(255,255,255,0.8);font-size:14px;line-height:1.6;}

/* ── Local Strip ─────────────────────────────────────────────────────────── */
.local-strip{background:var(--navy);padding:56px 24px;}
.local-strip-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media(min-width:768px){.local-strip-inner{grid-template-columns:1.1fr 1fr;}}
.local-strip img{width:100%;border-radius:12px;object-fit:cover;height:280px;display:block;aspect-ratio:2/1;box-shadow:0 8px 30px rgba(0,0,0,0.45);}
.local-content h3{font-family:'Anybody','Anybody-fallback',system-ui,sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:clamp(22px,2.8vw,32px);margin-bottom:14px;line-height:1.1;}
.local-content p{color:rgba(255,255,255,0.8);font-size:15px;line-height:1.75;margin-bottom:20px;}
.local-badge{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:12px 18px;
}
.local-badge img{width:46px;height:46px;border-radius:8px;object-fit:cover;box-shadow:none;}
.local-badge div{font-size:13.5px;}
.local-badge strong{display:block;color:var(--white);font-weight:700;}

/* ── Reviews ────────────────────────────────────────────────────────────── */
.reviews{padding:80px 24px;background:var(--mid);position:relative;}
.reviews-inner{max-width:1100px;margin:0 auto;}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:48px;}
.review-card{
  background:var(--glass-bg);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid var(--glass-border);
  border-radius:12px;
  padding:32px;
  box-shadow:0 8px 32px 0 rgba(0,0,0,0.22);
  transition:all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.review-card:hover{
  transform:translateY(-5px);
  border-color:var(--glass-border-hover);
  box-shadow:0 12px 30px var(--accent-glow);
}
.stars{color:var(--yellow);font-size:18px;margin-bottom:12px;letter-spacing:1px;}
.review-text{color:rgba(255,255,255,0.85);font-size:14.5px;line-height:1.75;margin-bottom:20px;font-style:italic;}
.review-author{font-size:13px;font-weight:600;color:rgba(255,255,255,0.75);letter-spacing:0.5px;}

/* ── Areas Served ───────────────────────────────────────────────────────── */
.areas{padding:56px 24px;background:var(--dark);border-top:1px solid rgba(255,255,255,0.04);}
.areas-inner{max-width:1100px;margin:0 auto;text-align:center;}
.areas h3{font-size:13px;font-weight:700;color:var(--grey);text-transform:uppercase;letter-spacing:1.8px;margin-bottom:20px;}
.city-list{color:var(--grey);font-size:15px;line-height:2.1;max-width:920px;margin:0 auto;}

/* ── Bottom Form ────────────────────────────────────────────────────────── */
.bottom-form{padding:80px 24px 96px;position:relative;overflow:hidden;}
.bottom-form::before{content:'';position:absolute;inset:0;background-image:url(/assets/truck-hero-toronto.webp);background-size:cover;background-position:center;background-attachment:fixed;z-index:0;}
.bottom-form::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg, rgba(10,10,32,0.88) 0%, rgba(10,10,32,0.60) 100%);z-index:0;}
.bottom-form .eyebrow{color:var(--yellow);}
.bottom-form h2{color:var(--white);}
.bottom-form .section-sub{color:rgba(255,255,255,0.82);max-width:560px;}
.bottom-form-inner{max-width:740px;margin:0 auto;text-align:center;position:relative;z-index:1;}
.bottom-form-logo{display:block;margin:0 auto 24px;max-width:210px;height:auto;}
@media(pointer:coarse){.bottom-form::before{background-attachment:scroll;}}

/* ── Form Card ──────────────────────────────────────────────────────────── */
.form-card{
  background:rgba(21, 24, 47, 0.8);
  border:1px solid rgba(255, 255, 255, 0.08);
  border-radius:16px;
  padding:36px;
  text-align:left;
  box-shadow:0 12px 40px rgba(0,0,0,0.35);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.form-card iframe{display:block;width:100%;border:none;}
.bottom-form .form-card{background:rgba(10,10,32,0.6);border-color:rgba(255,255,255,0.12);}

/* ── Footer ─────────────────────────────────────────────────────────────── */
footer{background:#000;padding:36px 24px;text-align:center;color:rgba(255,255,255,0.6);font-size:13.5px;border-top:1px solid rgba(255,255,255,0.05);}
footer a{color:rgba(255,255,255,0.8);text-decoration:underline;}
footer a:hover{color:#fff;}
.footer-regions{margin:18px 0;line-height:2;}
.footer-regions a{color:rgba(255,255,255,0.6);text-decoration:none;margin:0 6px;transition:color 0.2s;}
.footer-regions a:hover{color:#fff;}

/* ── Mobile Sticky Bar ──────────────────────────────────────────────────── */
.squad-sticky-call-bar,.squad-sticky-quote-bar{display:none;}
@media(max-width:767px){
  body{padding-bottom:110px;}
  .squad-sticky-wrapper{display:flex;gap:8px;position:fixed;bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom));left:0;right:0;margin:0 auto;width:calc(100% - 32px);max-width:420px;z-index:999999;}
  .squad-sticky-call-bar{
    display:flex;
    align-items:center;
    flex:1 1 0;
    min-width:0;
    background-color:#FFD700;
    padding:11px 14px;
    border-radius:14px;
    box-shadow:0 8px 30px rgba(0,0,0,0.55);
    text-decoration:none!important;
    box-sizing:border-box;
    overflow:hidden;
    transition:all 0.2s ease;
  }
  .squad-sticky-call-bar:active{transform:scale(0.97);}
  .squad-footer-logo{width:36px;height:36px;object-fit:contain;flex-shrink:0;margin-right:8px;}
  .squad-text-column{display:flex;flex-direction:column;justify-content:center;text-align:left;font-family:'Anybody',sans-serif;font-weight:600;font-style:italic;color:#000;text-transform:uppercase;line-height:1.15;min-width:0;}
  .top-row{font-size:9.5px;letter-spacing:0.5px;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .bottom-row{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .squad-sticky-quote-bar{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1 1 0;
    min-width:0;
    background:#b11311;
    color:#fff;
    padding:11px 14px;
    border-radius:14px;
    box-shadow:0 8px 30px rgba(0,0,0,0.55);
    font-family:'Anybody',sans-serif;
    font-weight:700;
    font-style:italic;
    font-size:15px;
    text-transform:uppercase;
    cursor:pointer;
    border:none;
    letter-spacing:0.5px;
    line-height:1;
    text-align:center;
    white-space:nowrap;
    transition:all 0.2s ease;
  }
  .squad-sticky-quote-bar:active{transform:scale(0.97);}
}

/* ── Mobile Nav (hamburger drawer) ──────────────────────────────────────── */
@media(max-width:660px){
  .trust-ticker{display:none!important;}
  .tagline-strip{transition:height 0.3s,opacity 0.3s,margin 0.3s;overflow:hidden;}
  .tagline-strip.hidden{height:0!important;opacity:0;border:none;margin:0;padding:0;}
  header{padding:0 16px!important;}
  .header-right{display:contents;}
  .header-inner{flex-wrap:wrap;align-items:center;height:auto;min-height:64px;padding:12px 0;gap:8px 12px;}
  .logo{order:1;flex:1 1 0;min-width:0;overflow:hidden;}
  .logo img{height:36px;width:auto;}
  .geo-btn{order:2;flex:0 0 auto;width:38px;height:34px;min-width:38px;padding:0!important;justify-content:center;background:var(--yellow);color:var(--dark);border-color:transparent;border-radius:8px;}
  .geo-btn .geo-city-label{display:none!important;}
  .geo-btn svg{flex-shrink:0;stroke:var(--dark);}
  .btn-call{order:3;flex:0 0 auto;padding:0 10px;margin:0;font-size:15px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:var(--yellow);color:var(--dark);border-radius:8px;box-shadow:none;}
  .btn-call .call-num{display:none;}
  #theme-toggle{order:4;flex:0 0 auto;height:34px;background:var(--yellow);color:var(--dark);border-color:transparent;}
  #theme-toggle svg *{fill:var(--dark);stroke:var(--dark);}
  .hamburger-btn{order:5;flex:0 0 auto;display:flex;height:34px;background:var(--yellow);color:var(--dark);border-color:transparent;}
  #weather-bar{order:10;display:none!important;}
  .hamburger-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hamburger-btn[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0);}
  .hamburger-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .site-nav{display:none!important;position:fixed!important;inset:0!important;top:0!important;z-index:95!important;overflow-y:auto!important;padding-top:128px!important;padding-bottom:110px!important;background:#111324!important;}
  html.nav-open .site-nav{display:block!important;}
  html.nav-open{overflow:hidden;}
  [data-theme="light"] .site-nav{background:#f3f7fa!important;}
  .site-nav-inner{flex-direction:column!important;flex-wrap:wrap!important;padding:8px 0!important;max-width:100%!important;overflow:visible!important;}
  .nav-item{display:flex!important;flex-direction:column!important;width:100%!important;border-bottom:1px solid rgba(255,255,255,0.06)!important;}
  .nav-trigger,.nav-link{width:100%!important;padding:16px 20px!important;font-size:15px!important;justify-content:space-between!important;text-align:left!important;border-bottom:none!important;}
  .hero{padding:40px 20px 0!important;}
  .hero-sub{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px!important;font-size:14px!important;}
  h1{margin-bottom:6px!important;}
  .hero-ctas{margin-bottom:24px!important;}
  .squad-sticky-wrapper{bottom:0!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;}
}

/* ── Misc utility ───────────────────────────────────────────────────────── */
.spider-mascot{display:flex;justify-content:center;align-items:center;padding:32px 0 0;}
.spider-mascot img{height:96px;width:auto;opacity:0.95;filter:drop-shadow(0 6px 20px rgba(177,19,17,0.45));transition:transform 0.4s ease;}
.spider-mascot img:hover{transform:scale(1.08) rotate(4deg);}
.related-card{background:var(--glass-bg);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:10px;padding:22px;transition:all 0.3s ease;}
.related-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 6px 18px rgba(75, 124, 179, 0.15);}

/* ── Pest Parallax Section ──────────────────────────────────────────────── */
.pest-parallax-section{position:relative;padding:100px 24px;text-align:center;overflow:hidden;border-top:2px solid var(--yellow,#FFC107);border-bottom:2px solid var(--yellow,#FFC107);}
.pest-parallax-bg{position:absolute;inset:0;z-index:0;background-image:url(/assets/pest-realistic.jpg);background-size:cover;background-position:center;animation:pest-zoom 20s ease-in-out infinite alternate;will-change:transform;transform-origin:center;}
.pest-parallax-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(4,5,16,0.74) 0%,rgba(4,5,16,0.54) 45%,rgba(4,5,16,0.74) 100%);pointer-events:none;}
.pest-parallax-content{position:relative;z-index:2;max-width:760px;margin:0 auto;}
@keyframes pest-zoom{0%{transform:scale(1);}100%{transform:scale(1.09);}}
@media(max-width:680px){.pest-parallax-section{padding:64px 20px;}.pest-parallax-bg{background-attachment:scroll;}}

/* ── Truck Credibility Strip ────────────────────────────────────────────── */
.truck-credibility-strip{background:#0b0c16;border-top:1px solid rgba(255,255,255,0.05);border-bottom:1px solid rgba(255,255,255,0.05);padding:28px 24px;}
.truck-strip-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center;}
.truck-img-wrap{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.1);flex-shrink:0;}
.truck-img-wrap img{display:block;width:260px;height:auto;object-fit:cover;}
.truck-badge{position:absolute;bottom:8px;left:8px;background:rgba(10,11,30,0.85);backdrop-filter:blur(8px);padding:4px 10px;border-radius:5px;font-size:9px;font-weight:700;color:#fff;letter-spacing:0.5px;text-transform:uppercase;}
.truck-copy{text-align:left;max-width:480px;}
.truck-headline{font-family:'Anybody','Anybody-fallback',sans-serif;font-style:italic;font-weight:800;text-transform:uppercase;font-size:clamp(16px,2.2vw,22px);color:#fff !important;margin-bottom:6px;letter-spacing:-0.3px;}
.truck-sub{color:rgba(255,255,255,0.65) !important;font-size:13.5px;line-height:1.6;margin:0;}
.truck-cta{flex-shrink:0;font-size:14px;padding:13px 28px;white-space:nowrap;}
@media(max-width:640px){.truck-strip-inner{flex-direction:column;text-align:center;}.truck-copy{text-align:center;}.truck-img-wrap img{width:100%;max-width:340px;}}

/* ── Coverage Accordion Section ─────────────────────────────────────────── */
.coverage-parallax-section{background:#080916;padding-bottom:0;}
.coverage-parallax-header{text-align:center;padding:72px 24px 44px;max-width:680px;margin:0 auto;}
.coverage-parallax-header h2{font-family:'Anybody','Anybody-fallback',sans-serif;font-style:italic;font-weight:800;text-transform:uppercase;font-size:clamp(24px,3.2vw,40px);color:#fff !important;margin-bottom:12px;letter-spacing:-0.3px;}
.coverage-parallax-sub{color:rgba(255,255,255,0.55);font-size:14.5px;line-height:1.75;margin:0;}

/* ── Panel Strip ── */
.coverage-panels{display:flex;height:520px;gap:2px;background:#000;}

/* Each panel: flex accordion */
.coverage-panel{
  position:relative;
  flex:1;
  overflow:hidden;
  cursor:pointer;
  outline:none;
  transition:flex 0.55s cubic-bezier(0.4,0,0.2,1);
}
.coverage-panel:focus-visible{outline:2px solid var(--yellow,#FFC107);outline-offset:-2px;}

/* Image layer – slight zoom-in default, zooms OUT on expand to reveal the full scene */
.coverage-panel-img{
  position:absolute;
  inset:-4%;
  background-size:cover;
  background-position:center;
  transform:scale(1.08);
  transition:transform 0.65s cubic-bezier(0.4,0,0.2,1);
  will-change:transform;
}

/* Dark overlay */
.coverage-panel-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(
    to top,
    rgba(4,5,18,0.92) 0%,
    rgba(4,5,18,0.45) 45%,
    rgba(4,5,18,0.25) 100%
  );
  transition:background 0.4s ease;
}

/* Gold top-bar */
.coverage-panel::after{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:var(--yellow,#FFC107);
  z-index:3;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform 0.45s cubic-bezier(0.4,0,0.2,1);
}

/* Label block */
.coverage-panel-label{
  position:absolute;
  bottom:0;left:0;right:0;
  z-index:2;
  padding:20px 18px 22px;
  display:flex;
  flex-direction:column;
  gap:0;
}

/* Number badge removed — no longer used */
/* Location title */
.coverage-panel-loc{
  font-family:'Anybody','Anybody-fallback',sans-serif;
  font-style:italic;
  font-weight:800;
  text-transform:uppercase;
  font-size:clamp(10px,1vw,13px);
  color:rgba(255,255,255,0.55);
  letter-spacing:1.5px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  transition:color 0.35s ease, font-size 0.4s ease, letter-spacing 0.35s ease;
}

/* Description – hidden by default */
.coverage-panel-desc{
  font-size:13px;
  color:rgba(255,255,255,0);
  line-height:1.6;
  max-height:0;
  overflow:hidden;
  margin-top:0;
  transition:color 0.25s 0.1s ease, max-height 0.4s ease, margin-top 0.35s ease;
}

/* CTA link */
.coverage-panel-cta{
  display:inline-block;
  font-family:'Anybody','Anybody-fallback',sans-serif;
  font-style:italic;
  font-weight:700;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:var(--yellow,#FFC107);
  opacity:0;
  max-height:0;
  overflow:hidden;
  margin-top:0;
  transition:opacity 0.25s 0.15s ease, max-height 0.4s ease, margin-top 0.35s ease;
}

/* ── EXPANDED PANEL (hover / focus) ── */
.coverage-panel:hover,
.coverage-panel:focus-visible{
  flex:3.5;
}
.coverage-panel:hover .coverage-panel-img,
.coverage-panel:focus-visible .coverage-panel-img{
  transform:scale(1.0);
}
.coverage-panel:hover .coverage-panel-overlay,
.coverage-panel:focus-visible .coverage-panel-overlay{
  background:linear-gradient(
    to top,
    rgba(4,5,18,0.88) 0%,
    rgba(4,5,18,0.35) 50%,
    rgba(4,5,18,0.10) 100%
  );
}
.coverage-panel:hover::after,
.coverage-panel:focus-visible::after{
  transform:scaleX(1);
}
.coverage-panel:hover .coverage-panel-loc,
.coverage-panel:focus-visible .coverage-panel-loc{
  color:#ffffff;
  font-size:clamp(13px,1.3vw,16px);
  letter-spacing:2px;
}
.coverage-panel:hover .coverage-panel-desc,
.coverage-panel:focus-visible .coverage-panel-desc{
  color:rgba(255,255,255,0.72);
  max-height:80px;
  margin-top:8px;
}
.coverage-panel:hover .coverage-panel-cta,
.coverage-panel:focus-visible .coverage-panel-cta{
  opacity:1;
  max-height:32px;
  margin-top:12px;
}

/* ── Dim siblings when one is active (modern :has()) ── */
.coverage-panels:has(.coverage-panel:hover) .coverage-panel:not(:hover),
.coverage-panels:has(.coverage-panel:focus-visible) .coverage-panel:not(:focus-visible){
  opacity:0.5;
  transition:flex 0.55s cubic-bezier(0.4,0,0.2,1), opacity 0.3s ease;
}

.coverage-parallax-cta{text-align:center;padding:44px 24px 60px;}

/* ── Mobile: vertical accordion ── */
@media(max-width:767px){
  .coverage-panels{flex-direction:column;height:auto;gap:2px;}
  .coverage-panel{height:110px;flex:none;transition:height 0.5s cubic-bezier(0.4,0,0.2,1);}
  .coverage-panel-img{inset:-2%;transform:scale(1.05);}
  .coverage-panel:hover,
  .coverage-panel:focus-visible{height:300px;flex:none;}
  .coverage-panel:hover .coverage-panel-img,
  .coverage-panel:focus-visible .coverage-panel-img{transform:scale(1.0);}
  .coverage-panel-num{font-size:22px;}
  .coverage-panel-loc{font-size:12px;}
  .coverage-panels:has(.coverage-panel:hover) .coverage-panel:not(:hover),
  .coverage-panels:has(.coverage-panel:focus-visible) .coverage-panel:not(:focus-visible){opacity:0.65;}
}

[data-theme="light"] .coverage-parallax-section{background:#0d0e20;}
[data-theme="light"] .coverage-parallax-header h2{color:#fff !important;}
[data-theme="light"] .coverage-parallax-sub{color:rgba(255,255,255,0.55);}
