@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root{
  --colorPrimary:#3ee08c;
  --colorSecondary:#33d6f0;
  --colorMagenta:#ff5ec4;
  --colorBg:#0a0f0d;
  --colorSurface:#121a17;
  --colorInk:#eaf3ee;

  --colorPrimarySoft: color-mix(in oklch, var(--colorPrimary), white 25%);
  --colorPrimaryStrong: color-mix(in oklch, var(--colorPrimary), black 35%);
  --colorPrimaryDeep: color-mix(in oklch, var(--colorPrimary), black 55%);
  --colorPrimaryBg: color-mix(in oklch, var(--colorPrimary), var(--colorBg) 90%);
  --colorPrimaryBgSoft: color-mix(in oklch, var(--colorPrimary), var(--colorBg) 94%);

  --colorSecondarySoft: color-mix(in oklch, var(--colorSecondary), white 25%);
  --colorSecondaryBg: color-mix(in oklch, var(--colorSecondary), var(--colorBg) 90%);

  --colorSurfaceElevated: color-mix(in oklch, var(--colorSurface), white 7%);
  --colorSurfaceHigh: color-mix(in oklch, var(--colorSurface), white 12%);
  --colorSurfaceLow: color-mix(in oklch, var(--colorSurface), black 20%);

  --colorBorder: color-mix(in oklch, var(--colorPrimary), var(--colorBg) 65%);
  --colorBorderSoft: color-mix(in oklch, var(--colorSurface), white 16%);
  --colorBorderStrong: color-mix(in oklch, var(--colorPrimary), var(--colorBg) 30%);

  --colorTextMuted: color-mix(in oklch, var(--colorInk), var(--colorBg) 42%);
  --colorTextFaint: color-mix(in oklch, var(--colorInk), var(--colorBg) 60%);

  --shadowSm: 0 1px 2px color-mix(in oklch, black, transparent 82%);
  --shadowMd: 0 6px 16px -4px color-mix(in oklch, black, transparent 65%), 0 2px 6px -2px color-mix(in oklch, black, transparent 78%);
  --shadowLg: 0 24px 48px -16px color-mix(in oklch, black, transparent 50%), 0 10px 20px -8px color-mix(in oklch, black, transparent 68%);
  --shadowGlow: 0 0 0 1px color-mix(in oklch, var(--colorPrimary), transparent 68%), 0 0 28px -6px color-mix(in oklch, var(--colorPrimary), transparent 30%);
  --shadowGlowCyan: 0 0 0 1px color-mix(in oklch, var(--colorSecondary), transparent 65%), 0 0 24px -6px color-mix(in oklch, var(--colorSecondary), transparent 35%);

  --radiusSm: 8px;
  --radiusMd: 14px;
  --radiusLg: 22px;
  --radiusPill: 999px;

  --spaceSection: clamp(4rem, 8vw, 7rem);
  --mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{
  margin:0;
  background:var(--colorBg);
  color:var(--colorInk);
  font-family:'Inter',sans-serif;
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:'Inter',sans-serif;
  font-weight:700;
  line-height:1.2;
  margin:0 0 .6em;
  color:var(--colorInk);
}
p{margin:0 0 1em;color:var(--colorInk);}
a{color:inherit;text-decoration:none;transition:color .25s ease, background-color .25s ease, transform .25s ease, box-shadow .25s ease;}
ul{margin:0;padding:0;list-style:none;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;}

.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px;}
.section{padding:var(--spaceSection) 0;position:relative;}
.sectionAlt{padding:var(--spaceSection) 0;background:var(--colorSurface);position:relative;border-top:1px solid var(--colorBorderSoft);border-bottom:1px solid var(--colorBorderSoft);}

.noiseOverlay{
  position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.035;
  background-image:
    repeating-linear-gradient(0deg, var(--colorPrimary) 0px, transparent 1px, transparent 3px),
    repeating-linear-gradient(90deg, var(--colorSecondary) 0px, transparent 1px, transparent 3px);
  mix-blend-mode:screen;
}

.eyebrow{
  display:inline-block;font-family:var(--mono);font-size:.8rem;letter-spacing:.04em;
  color:var(--colorPrimary);text-transform:lowercase;margin-bottom:1rem;
  padding:.3em .8em;border:1px solid var(--colorBorder);border-radius:var(--radiusPill);
  background:var(--colorPrimaryBgSoft);
}


.siteHeader{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:18px 0;
  background:transparent;
  transition:background .35s ease, box-shadow .35s ease, padding .35s ease, border-color .35s ease;
  border-bottom:1px solid transparent;
}
.siteHeader--scrolled{
  background:color-mix(in oklch, var(--colorBg), black 10%);
  box-shadow:var(--shadowMd);
  padding:12px 0;
  border-bottom:1px solid var(--colorBorderSoft);
}
.siteHeader_inner{
  max-width:1200px;margin:0 auto;padding:0 24px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.siteHeader_logo{
  font-family:var(--mono);font-size:.95rem;color:var(--colorPrimary);
  display:flex;align-items:center;gap:2px;white-space:nowrap;
}
.siteHeader_prompt{color:var(--colorPrimarySoft);}
.siteHeader_at{color:var(--colorSecondary);}
.siteHeader_colon{color:var(--colorTextMuted);}
.siteHeader_cursor{
  display:inline-block;width:8px;height:1.1em;background:var(--colorPrimary);margin-left:4px;
  animation:blink 1.1s steps(1) infinite;
}
@keyframes blink{50%{opacity:0;}}

.pillNav{display:flex;align-items:center;gap:6px;background:color-mix(in oklch, var(--colorSurface), transparent 15%);border:1px solid var(--colorBorderSoft);padding:6px;border-radius:var(--radiusPill);backdrop-filter:blur(6px);}
.pillNav_link{
  font-size:.88rem;font-weight:500;padding:.55em 1.1em;border-radius:var(--radiusPill);
  color:var(--colorTextMuted);white-space:nowrap;
  transition:background .25s ease, color .25s ease, box-shadow .25s ease;
}
.pillNav_link:hover{color:var(--colorInk);background:var(--colorSurfaceHigh);}
.pillNav_link.is-active{color:var(--colorBg);background:var(--colorPrimary);box-shadow:var(--shadowGlow);}
.pillNav_link--cta{border:1px solid var(--colorBorder);}
.pillNav_link--cta.is-active{border-color:transparent;}

.siteHeader_burger{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:44px;height:44px;background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);
  border-radius:var(--radiusSm);
}
.siteHeader_burger span{display:block;width:20px;height:2px;background:var(--colorPrimary);margin:0 auto;transition:transform .3s ease, opacity .3s ease;}


.mobileMenu{position:fixed;inset:0;z-index:200;visibility:hidden;pointer-events:none;}
.mobileMenu.is-open{visibility:visible;pointer-events:auto;}
.mobileMenu_overlay{
  position:absolute;inset:0;background:rgba(4,8,7,.7);opacity:0;transition:opacity .4s ease;
}
.mobileMenu.is-open .mobileMenu_overlay{opacity:1;}
.mobileMenu_panel{
  position:absolute;top:0;left:0;bottom:0;width:80%;max-width:340px;
  background:var(--colorSurface);border-right:1px solid var(--colorBorderSoft);
  transform:translateX(-100%);transition:transform .45s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;padding:24px;box-shadow:var(--shadowLg);
}
.mobileMenu.is-open .mobileMenu_panel{transform:translateX(0);}
.mobileMenu_head{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;}
.mobileMenu_brand{font-family:var(--mono);color:var(--colorPrimary);font-size:.9rem;}
.mobileMenu_close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radiusSm);color:var(--colorTextMuted);font-size:1.4rem;background:var(--colorSurfaceElevated);}
.mobileMenu_nav{display:flex;flex-direction:column;gap:6px;}
.mobileMenu_nav a{
  font-size:1.05rem;font-weight:500;padding:.9em 1em;border-radius:var(--radiusMd);color:var(--colorTextMuted);
  opacity:0;transform:translateX(-16px);transition:opacity .35s ease, transform .35s ease, background .25s ease, color .25s ease;
  transition-delay:calc(var(--d) * 60ms);
}
.mobileMenu.is-open .mobileMenu_nav a{opacity:1;transform:translateX(0);}
.mobileMenu_nav a:hover, .mobileMenu_nav a.is-active{background:var(--colorPrimaryBg);color:var(--colorPrimary);}


.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:.92rem;padding:.9em 1.6em;border-radius:var(--radiusPill);
  border:1px solid transparent;transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease, color .25s ease;
  min-height:44px;
}
.btn--primary{background:var(--colorPrimary);color:#04140b;box-shadow:var(--shadowGlow);}
.btn--primary:hover{transform:translateY(-2px);background:var(--colorPrimarySoft);box-shadow:var(--shadowLg), var(--shadowGlow);}
.btn--ghost{background:transparent;color:var(--colorInk);border-color:var(--colorBorderSoft);}
.btn--ghost:hover{background:var(--colorSurfaceHigh);border-color:var(--colorBorder);}
.btn--outline{background:transparent;color:var(--colorPrimary);border-color:var(--colorBorder);}
.btn--outline:hover{background:var(--colorPrimaryBgSoft);transform:translateY(-2px);}
.btn--outlineWhite{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7);}
.btn--outlineWhite:hover{background:rgba(255,255,255,.15);border-color:#fff;transform:translateY(-2px);}
.btn--lg{padding:1.1em 2em;font-size:1rem;}
.btn--sm{padding:.6em 1.1em;font-size:.85rem;}


.mainHero{padding:calc(var(--spaceSection) + 3.5rem) 0 var(--spaceSection);position:relative;}
.mainHero_top{text-align:center;max-width:900px;margin:0 auto;}
.mainHero_title{font-size:clamp(2.3rem,4.5vw + 1rem,4.2rem);letter-spacing:-.02em;}
.mainHero_highlight{color:var(--colorPrimary);}
.mainHero_strip{margin:3rem 0;width:100%;height:clamp(220px,32vw,420px);overflow:hidden;border-top:1px solid var(--colorBorder);border-bottom:1px solid var(--colorBorder);position:relative;}
.mainHero_strip img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.03);}
.mainHero_bottom{max-width:760px;margin:0 auto;text-align:center;}
.mainHero_text{font-size:1.05rem;color:var(--colorTextMuted);}
.mainHero_actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:1.8rem;}

.citiesStrip{padding:2.2rem 0;border-bottom:1px solid var(--colorBorderSoft);}
.citiesStrip_inner p{max-width:880px;margin:0 auto;text-align:center;color:var(--colorTextMuted);font-size:.98rem;}


.sectionHead{max-width:760px;margin-bottom:3rem;}
.sectionHead_text{color:var(--colorTextMuted);font-size:1.02rem;}


.seasonGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.seasonCard{
  background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusLg);
  padding:1.8rem;transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.seasonCard:hover{transform:translateY(-6px);box-shadow:var(--shadowLg);border-color:var(--colorBorder);}
.seasonCard_tag{font-family:var(--mono);font-size:.75rem;color:var(--colorSecondary);text-transform:uppercase;letter-spacing:.06em;}
.seasonCard h3{font-size:1.15rem;margin-top:.3em;}
.seasonCard p{color:var(--colorTextMuted);font-size:.94rem;}
.seasonCard_list li{position:relative;padding-left:1.1em;font-size:.9rem;color:var(--colorTextMuted);margin-bottom:.4em;}
.seasonCard_list li::before{content:"›";position:absolute;left:0;color:var(--colorPrimary);}


.splitSection{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.splitSection--reverse .splitSection_media{order:2;}
.splitSection--reverse .splitSection_content{order:1;}
.splitSection_media img{border-radius:var(--radiusLg);border:1px solid var(--colorBorderSoft);box-shadow:var(--shadowLg);aspect-ratio:4/3;object-fit:cover;width:100%;}
.splitSection_content p{color:var(--colorTextMuted);}

.stepList{display:flex;flex-direction:column;gap:16px;margin:1.6rem 0;}
.stepList_item{display:flex;gap:16px;align-items:flex-start;}
.stepList_index{
  flex:0 0 auto;width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  border-radius:var(--radiusSm);background:var(--colorPrimaryBg);color:var(--colorPrimary);
  font-family:var(--mono);font-size:.8rem;border:1px solid var(--colorBorder);
}
.stepList_item div{color:var(--colorTextMuted);font-size:.95rem;}
.stepList_item strong{color:var(--colorInk);}
.stepList--compact .stepList_index{background:var(--colorSecondaryBg);color:var(--colorSecondary);border-color:color-mix(in oklch, var(--colorSecondary), var(--colorBg) 60%);}


.costGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.costCard{
  background:var(--colorSurfaceElevated);border-left:3px solid var(--colorPrimary);border-radius:var(--radiusMd);
  padding:1.6rem;transition:transform .3s ease, box-shadow .3s ease;
}
.costCard:hover{transform:translateY(-5px);box-shadow:var(--shadowMd);}
.costCard_icon{font-size:1.4rem;color:var(--colorPrimary);margin-bottom:.6em;}
.costCard h3{font-size:1.05rem;}
.costCard p{color:var(--colorTextMuted);font-size:.9rem;margin:0;}
.costSection_note{margin-top:2rem;color:var(--colorTextFaint);font-size:.88rem;max-width:760px;}


.pestGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pestCard{background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusLg);overflow:hidden;transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.pestCard:hover{transform:translateY(-6px);box-shadow:var(--shadowLg);border-color:var(--colorBorder);}
.pestCard_image{width:100%;height:170px;object-fit:cover;}
.pestCard_body{padding:1.4rem;}
.pestCard_body--noImage{padding-top:1.8rem;}
.pestCard_body h3{font-size:1.05rem;display:flex;align-items:center;gap:.4em;}
.pestCard_body h3 i{font-size:.85rem;color:var(--colorSecondary);cursor:help;}
.pestCard_body p{color:var(--colorTextMuted);font-size:.9rem;margin:0;}


.articleGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.articleCard{
  background:var(--colorSurface);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusLg);overflow:hidden;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.articleCard:hover{transform:translateY(-8px);box-shadow:var(--shadowLg);border-color:var(--colorBorder);}
.articleCard_imageWrap{height:190px;overflow:hidden;}
.articleCard_imageWrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.articleCard:hover .articleCard_imageWrap img{transform:scale(1.06);}
.articleCard_body{padding:1.5rem;}
.articleCard_tag{font-family:var(--mono);font-size:.72rem;color:var(--colorSecondary);text-transform:uppercase;letter-spacing:.05em;}
.articleCard_body h3{font-size:1.1rem;margin-top:.4em;}
.articleCard_body p{color:var(--colorTextMuted);font-size:.9rem;}
.articleCard_link{display:inline-flex;align-items:center;gap:.4em;color:var(--colorPrimary);font-weight:600;font-size:.88rem;margin-top:.4em;}
.articleCard_link i{transition:transform .25s ease;}
.articleCard_link:hover i{transform:translateX(4px);}


.ctaBand{border-top:1px solid var(--colorBorderSoft);}
.ctaBand_inner{
  display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;
  background:linear-gradient(135deg, var(--colorPrimaryBg), var(--colorSecondaryBg));
  border:1px solid var(--colorBorder);border-radius:var(--radiusLg);padding:3rem;
}
.ctaBand_inner h2{margin-bottom:.3em;}
.ctaBand_inner p{color:var(--colorTextMuted);max-width:520px;margin:0;}


.valueGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.valueCard{background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusMd);padding:1.6rem;transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.valueCard:hover{transform:translateY(-6px);box-shadow:var(--shadowMd);border-color:var(--colorBorder);}
.valueCard_icon{font-size:1.4rem;color:var(--colorPrimary);margin-bottom:.6em;}
.valueCard h3{font-size:1rem;}
.valueCard p{color:var(--colorTextMuted);font-size:.9rem;margin:0;}

.narrowText{max-width:760px;}
.narrowText p{color:var(--colorTextMuted);}

.glossaryRow{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.4rem;}
.glossaryTag{
  font-family:var(--mono);font-size:.8rem;padding:.5em 1em;border-radius:var(--radiusPill);
  background:var(--colorSurfaceHigh);border:1px solid var(--colorBorderSoft);color:var(--colorSecondarySoft);
  cursor:help;display:inline-flex;align-items:center;gap:.4em;
}


.pageHero{padding:calc(var(--spaceSection) + 3.5rem) 0 3rem;border-bottom:1px solid var(--colorBorderSoft);}
.pageHero h1{font-size:clamp(2rem,3.5vw + 1rem,3.2rem);}
.pageHero_text{max-width:720px;color:var(--colorTextMuted);font-size:1.05rem;}


.contactSection{}
.contactGrid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:start;}
.wizardForm_card{background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusLg);padding:2rem;box-shadow:var(--shadowMd);}
.wizardForm_steps{display:flex;align-items:center;gap:10px;margin-bottom:2rem;}
.wizardForm_step{
  width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:.8rem;background:var(--colorSurfaceHigh);color:var(--colorTextMuted);
  border:1px solid var(--colorBorderSoft);transition:background .3s ease, color .3s ease, border-color .3s ease;
}
.wizardForm_step.is-active{background:var(--colorPrimary);color:#04140b;border-color:transparent;box-shadow:var(--shadowGlow);}
.wizardForm_step.is-done{background:var(--colorPrimaryBg);color:var(--colorPrimary);border-color:var(--colorBorder);}
.wizardForm_stepLine{flex:1;height:2px;background:var(--colorBorderSoft);}
.wizardForm_panels{position:relative;overflow:hidden;}
.wizardForm_panel{display:none;animation:panelIn .4s ease;}
.wizardForm_panel.is-active{display:block;}
@keyframes panelIn{from{opacity:0;transform:translateX(16px);}to{opacity:1;transform:translateX(0);}}
.wizardForm_panel h3{font-size:1.2rem;margin-bottom:1.2rem;}
.formField{margin-bottom:1.2rem;display:flex;flex-direction:column;gap:.4em;}
.formField label{font-size:.86rem;color:var(--colorTextMuted);}
.formField input[type="text"],.formField input[type="email"],.formField input[type="tel"],.formField select,.formField textarea{
  background:var(--colorSurfaceLow);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusSm);
  padding:.85em 1em;color:var(--colorInk);font-family:'Inter',sans-serif;font-size:.95rem;min-height:44px;
  transition:border-color .25s ease, box-shadow .25s ease;
}
.formField input:focus,.formField select:focus,.formField textarea:focus{outline:none;border-color:var(--colorPrimary);box-shadow:0 0 0 3px var(--colorPrimaryBgSoft);}
.formField textarea{resize:vertical;min-height:120px;}
.formField--check{flex-direction:row;align-items:flex-start;gap:.7em;}
.formField--check input{margin-top:4px;width:20px;height:20px;accent-color:var(--colorPrimary);}
.formField--check label{font-size:.88rem;}
.wizardForm_nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.6rem;}

.contactGrid_info{display:flex;flex-direction:column;gap:16px;}
.infoCard{background:var(--colorSurfaceElevated);border:1px solid var(--colorBorderSoft);border-radius:var(--radiusMd);padding:1.4rem;transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.infoCard:hover{transform:translateY(-5px);box-shadow:var(--shadowMd);border-color:var(--colorBorder);}
.infoCard_icon{color:var(--colorPrimary);font-size:1.2rem;margin-bottom:.4em;}
.infoCard h3{font-size:1rem;margin-bottom:.2em;}
.infoCard p{color:var(--colorTextMuted);font-size:.9rem;margin:0;}

.mapSection_frame{border-radius:var(--radiusLg);overflow:hidden;border:1px solid var(--colorBorderSoft);box-shadow:var(--shadowMd);}


.floatCta{position:fixed;right:22px;bottom:22px;z-index:90;display:flex;align-items:flex-end;gap:12px;}
.floatCta_toggle{
  width:56px;height:56px;border-radius:50%;background:var(--colorPrimary);color:#04140b;border:none;
  font-size:1.2rem;box-shadow:var(--shadowGlow), var(--shadowLg);transition:transform .3s ease;
}
.floatCta_toggle:hover{transform:scale(1.08) rotate(-6deg);}
.floatCta_panel{
  background:var(--colorSurfaceElevated);border:1px solid var(--colorBorder);border-radius:var(--radiusMd);
  padding:1rem 1.2rem;box-shadow:var(--shadowLg);max-width:220px;
  opacity:0;transform:translateY(10px) scale(.95);pointer-events:none;transition:opacity .3s ease, transform .3s ease;
}
.floatCta_panel p{font-size:.85rem;margin-bottom:.6em;color:var(--colorTextMuted);}
.floatCta.is-open .floatCta_panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}


.pageFooter{background:var(--colorSurfaceLow);border-top:1px solid var(--colorBorderSoft);margin-top:auto;}
.pageFooter_inner{padding:4rem 24px 3rem;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:32px;}
.pageFooter_brand p{color:var(--colorTextFaint);font-size:.88rem;margin-top:1em;max-width:280px;}
.pageFooter_col h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--colorSecondary);margin-bottom:1em;font-family:var(--mono);}
.pageFooter_col ul li{margin-bottom:.6em;}
.pageFooter_col a{color:var(--colorTextMuted);font-size:.9rem;}
.pageFooter_col a:hover{color:var(--colorPrimary);}
.pageFooter_contact li{display:flex;gap:.5em;align-items:flex-start;color:var(--colorTextMuted);font-size:.88rem;margin-bottom:.7em;}
.pageFooter_contact i{color:var(--colorPrimary);margin-top:3px;}
.pageFooter_bottom{border-top:1px solid var(--colorBorderSoft);padding:1.4rem 0;}
.pageFooter_bottomInner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--colorTextFaint);}
.pageFooter_bottomInner a{color:var(--colorTextMuted);}
.pageFooter_bottomInner a:hover{color:var(--colorPrimary);}
body{display:flex;flex-direction:column;min-height:100vh;}
main{flex:1;}


.thanksHero{
  min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;
  background:linear-gradient(135deg, var(--colorPrimaryDeep), color-mix(in oklch, var(--colorSecondary), black 45%));
  color:#fff;padding:4rem 0;
}
.thanksHero_inner{max-width:640px;}
.thanksHero_eyebrow{font-family:var(--mono);opacity:.85;display:block;margin-bottom:1rem;font-size:.9rem;}
.thanksHero h1{color:#fff;font-size:clamp(2.4rem,4vw + 1rem,3.6rem);}
.thanksHero p{color:rgba(255,255,255,.88);margin-bottom:2rem;font-size:1.05rem;}


.legalTimeline{position:relative;}
.legalTimeline_line{position:absolute;left:18px;top:0;bottom:0;width:2px;background:var(--colorBorderSoft);}
.legalTimeline_item{position:relative;padding-left:52px;margin-bottom:2.6rem;}
.legalTimeline_item::before{
  content:"";position:absolute;left:11px;top:6px;width:16px;height:16px;border-radius:50%;
  background:var(--colorPrimary);box-shadow:0 0 0 4px var(--colorPrimaryBg);
}
.legalTimeline_date{font-family:var(--mono);font-size:.78rem;color:var(--colorSecondary);display:block;margin-bottom:.5em;}
.legalTimeline_item h2{font-size:1.25rem;}
.legalTimeline_item p{color:var(--colorTextMuted);}
.legalTimeline--medium .legalTimeline_item{margin-bottom:2.1rem;}
.legalTimeline--compact .legalTimeline_item{margin-bottom:1.5rem;}
.legalTimeline--compact .legalTimeline_item::before{width:12px;height:12px;background:var(--colorSecondary);}


.cookieBanner{
  position:fixed;top:0;left:0;right:0;z-index:300;transform:translateY(-110%);transition:transform .5s cubic-bezier(.4,0,.2,1);
  background:color-mix(in oklch, var(--colorSurface), black 8%);border-bottom:1px solid var(--colorBorder);box-shadow:var(--shadowMd);
}
.cookieBanner.is-visible{transform:translateY(0);}
.cookieBanner_inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.cookieBanner_text{font-size:.86rem;color:var(--colorTextMuted);margin:0;max-width:640px;}
.cookieBanner_text a{color:var(--colorPrimary);text-decoration:underline;}
.cookieBanner_actions{display:flex;gap:10px;flex-wrap:wrap;}
.cookieBanner_btn{border-radius:var(--radiusPill);padding:.6em 1.2em;font-size:.82rem;font-weight:600;border:1px solid var(--colorBorderSoft);min-height:40px;transition:all .25s ease;}
.cookieBanner_btn--ghost{background:transparent;color:var(--colorTextMuted);}
.cookieBanner_btn--ghost:hover{color:var(--colorInk);border-color:var(--colorBorder);}
.cookieBanner_btn--solid{background:var(--colorPrimary);color:#04140b;border-color:transparent;}
.cookieBanner_btn--solid:hover{background:var(--colorPrimarySoft);}

.cookieModal{position:fixed;inset:0;z-index:400;display:none;align-items:center;justify-content:center;padding:20px;}
.cookieModal.is-visible{display:flex;}
.cookieModal_overlay{position:absolute;inset:0;background:rgba(4,8,7,.75);}
.cookieModal_dialog{position:relative;max-width:520px;width:100%;background:var(--colorSurfaceElevated);border:1px solid var(--colorBorder);border-radius:var(--radiusLg);padding:2rem;box-shadow:var(--shadowLg);max-height:85vh;overflow-y:auto;}
.cookieModal_dialog h3{margin-bottom:.4em;}
.cookieModal_dialog>p{color:var(--colorTextMuted);font-size:.9rem;}
.cookieModal_row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:1em 0;border-top:1px solid var(--colorBorderSoft);}
.cookieModal_row strong{font-size:.92rem;}
.cookieModal_row p{font-size:.82rem;color:var(--colorTextMuted);margin:.2em 0 0;}
.cookieModal_row input{width:20px;height:20px;accent-color:var(--colorPrimary);flex-shrink:0;}
.cookieModal_actions{margin-top:1.6rem;text-align:right;}


@media (max-width:1024px){
  .seasonGrid{grid-template-columns:repeat(2,1fr);}
  .costGrid{grid-template-columns:repeat(2,1fr);}
  .pestGrid{grid-template-columns:repeat(2,1fr);}
  .articleGrid{grid-template-columns:repeat(2,1fr);}
  .valueGrid{grid-template-columns:repeat(2,1fr);}
  .pageFooter_inner{grid-template-columns:1fr 1fr 1fr;}
  .contactGrid{grid-template-columns:1fr;}
}
@media (max-width:860px){
  .pillNav{display:none;}
  .siteHeader_burger{display:flex;}
  .splitSection{grid-template-columns:1fr;}
  .splitSection--reverse .splitSection_media{order:1;}
  .splitSection--reverse .splitSection_content{order:2;}
  .ctaBand_inner{flex-direction:column;align-items:flex-start;}
}
@media (max-width:640px){
  .seasonGrid,.costGrid,.pestGrid,.articleGrid,.valueGrid{grid-template-columns:1fr;}
  .pageFooter_inner{grid-template-columns:1fr 1fr;}
  .mainHero_actions{flex-direction:column;align-items:stretch;}
  .cookieBanner_inner{flex-direction:column;align-items:flex-start;}
  .cookieBanner_actions{width:100%;}
  .cookieBanner_btn{flex:1;}
  .floatCta{right:14px;bottom:14px;}
  .floatCta_panel{max-width:180px;}
}
@media (max-width:420px){
  .pageFooter_inner{grid-template-columns:1fr;}
}