
/* =========================================================
   CONTOUR LAND OPS — shared design system
   Palette pulled from topographic survey maps: forest, paper,
   copper contour lines, water-blue for the wetland/pond work
   that differentiates this business.
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --ink:#1B1A15;
  --forest:#4A4E32;
  --forest-deep:#33351F;
  --paper:#E6DFC8;
  --paper-dim:#DDD3B0;
  --copper:#6B5426;
  --accent:#EC4600;
  --gold:#F4C00C;
  --copper-bright:#B89A68;
  --water:#2B2C22;
  --stone:#2E2C22;
  --line: rgba(27,26,21,0.14);
  --line-on-dark: rgba(230,223,200,0.16);
  --radius: 3px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--copper-bright);
  color:var(--ink);
  font-family:'Inter', ui-sans-serif, system-ui, sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{
  font-family:'Space Grotesk', sans-serif;
  font-weight:600;
  line-height:1.08;
  letter-spacing:-0.01em;
}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
button{font-family:inherit;}
.wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
.mono{font-family:'JetBrains Mono', ui-monospace, monospace; letter-spacing:0.04em;}
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:3px solid var(--copper-bright); outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
}

/* ---------- SURVEY MARKER (structural device: coordinate pins, not numbered steps) ---------- */
.marker{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'JetBrains Mono', monospace;
  font-size:13px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase;
  color:var(--ink);
}
.marker::before{
  content:'';
  width:8px; height:8px;
  border:2px solid var(--ink);
  border-radius:50%;
  flex-shrink:0;
}
.marker.on-dark::before{border-color:var(--gold);}
.marker.on-dark{background:transparent;}
.marker.on-dark{color:var(--gold);}

/* ---------- CONTOUR LINE SVG BACKDROP ---------- */
.contour-field{
  position:absolute; inset:0;
  overflow:hidden;
  pointer-events:none;
}
.contour-field svg{
  position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%);
  width:140%; height:140%;
  opacity:0.5;
}

/* ---------- HEADER / NAV ---------- */
header{
  position:sticky; top:0; z-index:100;
  background:rgba(25,29,26,0.94);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line-on-dark);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px;
  max-width:1180px; margin:0 auto;
}
.brand{
  display:flex; align-items:center; gap:12px;
  color:var(--paper);
}
.brand-mark{
  width:38px; height:38px;
  border:2px solid var(--copper-bright);
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.brand-mark svg{width:22px; height:22px;}
/* LOGO SLOT: replace .brand-mark with <img src="logo.png" alt="Contour Land Ops"> once the real mark is ready */
.brand-name{
  font-family:'Space Grotesk', sans-serif;
  font-weight:600;
  font-size:18px;
  letter-spacing:0.01em;
}
.brand-name span{color:var(--copper-bright);}
.nav-links{display:flex; gap:30px; align-items:center;}
.nav-links a{
  color:var(--paper); opacity:0.72;
  font-size:13px; font-weight:500; letter-spacing:0.03em; text-transform:uppercase;
  transition:opacity 0.15s;
}
.nav-links a:hover, .nav-links a.active{opacity:1;}
.nav-cta{
  background:var(--copper-bright);
  color:var(--ink);
  padding:11px 20px;
  font-weight:600; font-size:13px; letter-spacing:0.03em; text-transform:uppercase;
  border-radius:var(--radius);
  border:none; cursor:pointer;
  transition:background 0.15s;
}
.nav-cta:hover{background:var(--paper);}
.nav-toggle{display:none; background:none; border:none; color:var(--paper); font-size:26px; cursor:pointer;}
.nav-mobile{display:none;}

@media (max-width:900px){
  .nav-links{display:none;}
  .nav-toggle{display:block;}
  .nav-mobile.open{
    display:flex; flex-direction:column; gap:2px;
    background:var(--ink); padding:8px 24px 20px;
    border-bottom:1px solid var(--line-on-dark);
  }
  .nav-mobile a{
    color:var(--paper); padding:12px 0; font-size:14px;
    text-transform:uppercase; letter-spacing:0.03em;
    border-bottom:1px solid var(--line-on-dark);
  }
}

/* ---------- BANNER / HERO (image or video capable) ---------- */
.banner{
  position:relative;
  padding:0;
  display:flex; align-items:center;
  overflow:hidden;
  background:var(--forest-deep);
}
.banner.short{min-height:420px;}
.banner-media{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  z-index:0;
}
.banner-fallback{
  position:absolute; inset:0;
  background:
    radial-gradient(circle at 20% 15%, rgba(150,125,82,0.32), transparent 55%),
    radial-gradient(circle at 85% 75%, rgba(27,26,21,0.45), transparent 50%),
    linear-gradient(160deg, var(--forest-deep), var(--ink) 80%);
  z-index:0;
}
.banner-overlay{
  position:absolute; inset:0;
  background:linear-gradient(0deg, rgba(20,22,20,0.88) 0%, rgba(20,22,20,0.45) 55%, rgba(20,22,20,0.55) 100%);
  z-index:1;
}
.banner-content{
  position:relative; z-index:2;
  width:100%;
  padding:20px 24px 32px;
  max-width:1180px; margin:0 auto;
  color:var(--paper);
}
.banner .marker{margin-bottom:20px;}
.banner h1{
  font-size:clamp(34px, 4.2vw, 50px);
  max-width:760px;
}
.banner h1 em{font-style:normal; color:var(--copper-bright);}
.banner-sub{
  margin-top:20px;
  font-size:18px;
  color:rgba(238,237,228,0.78);
  max-width:520px;
}
.banner-actions{margin-top:32px; display:flex; gap:14px; flex-wrap:wrap;}
/* VIDEO/IMAGE SLOT: swap .banner-fallback for
   <video class="banner-media" autoplay muted loop playsinline poster="poster.jpg">
     <source src="your-clip.mp4" type="video/mp4">
   </video>
   once real jobsite footage exists. Keep .banner-overlay on top either way — it's what keeps headline text readable. */

.btn-primary{
  background:var(--copper-bright);
  color:var(--ink);
  padding:16px 28px;
  font-weight:600; font-size:14px; letter-spacing:0.04em; text-transform:uppercase;
  border-radius:var(--radius); border:none; cursor:pointer;
  transition:transform 0.15s, background 0.15s;
  display:inline-block;
}
.btn-primary:hover{background:#fff; transform:translateY(-1px);}
.btn-ghost{
  background:transparent; color:var(--paper);
  padding:16px 28px;
  font-weight:600; font-size:14px; letter-spacing:0.04em; text-transform:uppercase;
  border-radius:var(--radius); border:1px solid rgba(238,237,228,0.32);
  cursor:pointer; transition:border-color 0.15s;
  display:inline-block;
}
.btn-ghost:hover{border-color:var(--copper-bright);}
.btn-dark{background:var(--ink); color:var(--paper);}
.btn-dark:hover{background:#000;}

/* ---------- SECTIONS ---------- */
section{padding:100px 0; position:relative;}
section.tight{padding:64px 0;}
.section-head{max-width:640px; margin-bottom:56px;}
.section-head h2{font-size:clamp(30px,3.6vw,46px); margin-top:16px;}
.section-head p{margin-top:16px; font-size:17px; color:var(--stone); line-height:1.7;}
.on-dark{background:var(--ink); color:var(--paper);}
.on-dark .section-head p{color:rgba(238,237,228,0.68);}
.on-forest{background:var(--forest-deep); color:var(--paper);}
.on-forest .section-head p{color:rgba(238,237,228,0.7);}
.on-dim{background:var(--copper-bright);}

/* ---------- SERVICE TIERS ---------- */
.service-grid{display:grid; grid-template-rows:repeat(4, 1fr); gap:0;}
.service-tier{
  position:relative;
  display:grid;
  grid-template-columns:200px 1fr;
  gap:32px;
  padding:40px 44px;
  margin-bottom:22px;
  background:#FFFFFF;
  border:1px solid rgba(27,26,21,0.14);
  border-radius:2px;
  box-shadow:0 2px 10px rgba(27,26,21,0.07);
  align-items:start;
}
.service-tier::before{
  content:'';
  position:absolute;
  top:0; left:0; bottom:0;
  width:4px;
  background:var(--copper);
  pointer-events:none;
}
.on-dark .service-tier, .on-forest .service-tier{border-color:var(--line-on-dark);}
.tier-label{
  font-family:'JetBrains Mono', monospace;
  font-size:13px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--accent);
  display:flex; align-items:center; gap:8px;
}
.tier-label::before{
  content:'';
  width:9px; height:9px;
  background:var(--accent);
  flex-shrink:0;
}
.on-dark .tier-label, .on-forest .tier-label{color:var(--accent);}
.on-dark .tier-label::before, .on-forest .tier-label::before{background:var(--accent);}
.service-tier h3{font-size:24px; margin-bottom:10px;}
.tier-icon{width:64px; height:auto; display:block; margin-bottom:12px; filter:drop-shadow(0 3px 5px rgba(0,0,0,0.12));}
.service-list{display:grid; grid-template-columns:1fr 1fr; gap:8px 32px; margin-top:16px;}
.service-list div{
  font-size:15.5px; color:var(--stone);
  padding-left:16px; position:relative;
}
.service-tier p{color:var(--stone) !important;}
.on-dark .service-list div, .on-forest .service-list div{color:rgba(238,237,228,0.75);}
.service-list div::before{
  content:''; position:absolute; left:0; top:9px;
  width:7px; height:2px; background:var(--accent);
}

/* ---------- CARD GRID (differentiator / why-us) ---------- */
.card-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line);}
.on-dark .card-grid, .on-forest .card-grid{background:var(--line-on-dark);}
.diff-card{background:var(--copper-bright); padding:34px 30px;}
.on-dark .diff-card, .on-forest .diff-card{background:var(--ink);}
.on-forest .diff-card{background:var(--forest-deep);}
.diff-card .marker{margin-bottom:18px;}
.diff-card h3{font-size:19px; margin-bottom:10px;}
.diff-card p{font-size:14.5px; color:var(--stone); line-height:1.65;}
.on-dark .diff-card p, .on-forest .diff-card p{color:rgba(238,237,228,0.68);}

/* ---------- VETERAN BADGE ---------- */
.vet-badge{
  display:inline-flex; align-items:center; gap:10px;
  padding:9px 16px;
  border:1px solid var(--ink);
  border-radius:24px;
  font-family:'JetBrains Mono', monospace;
  font-size:11.5px; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--ink);
}
.on-dark .vet-badge, .on-forest .vet-badge, .banner .vet-badge{
  color:var(--copper-bright); border-color:var(--copper-bright);
}
.vet-badge svg{width:13px; height:13px;}

/* ---------- ABOUT / STORY ---------- */
.about-grid{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start;}
.about-copy p{font-size:16px; color:var(--stone); line-height:1.8; margin-bottom:18px;}
.on-dark .about-copy p, .on-forest .about-copy p{color:rgba(238,237,228,0.72);}
.credentials{border-top:1px solid var(--line);}
.on-dark .credentials, .on-forest .credentials{border-color:var(--line-on-dark);}
.cred-row{display:flex; justify-content:space-between; padding:18px 0; border-bottom:1px solid var(--line);}
.on-dark .cred-row, .on-forest .cred-row{border-color:var(--line-on-dark);}
.cred-row .k{font-size:14px; color:var(--stone);}
.on-dark .cred-row .k, .on-forest .cred-row .k{color:rgba(238,237,228,0.55);}
.cred-row .v{font-family:'Space Grotesk', sans-serif; font-weight:600; font-size:15px; color:var(--ink);}
.on-dark .cred-row .v, .on-forest .cred-row .v{color:var(--copper-bright);}

/* ---------- LOCAL DETAIL LIST (used on location pages) ---------- */
.local-facts{display:grid; grid-template-columns:1fr 1fr; gap:0 40px;}
.local-fact{padding:22px 0; border-top:1px solid var(--line);}
.local-fact:nth-last-child(-n+2){border-bottom:1px solid var(--line);}
.local-fact .k{font-family:'JetBrains Mono', monospace; font-size:13px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink);}
.local-fact .v{margin-top:9px; font-size:16px; color:var(--stone); line-height:1.6;}

/* ---------- GALLERY / MEDIA PLACEHOLDER GRID ---------- */
.media-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.media-slot{
  aspect-ratio:4/3;
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(166,103,46,0.16), rgba(62,110,126,0.16)),
    var(--paper-dim);
  border:1px dashed var(--line);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:8px;
  color:var(--stone);
  text-align:center; padding:20px;
}
.media-slot .mono{font-size:10.5px; letter-spacing:0.08em;}
.media-slot span{font-size:13px;}
.media-slot.tall{grid-row:span 2; aspect-ratio:auto;}

/* ---------- CONTACT FORM ---------- */
.contact-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:60px; align-items:start;}
.form-card{
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:10px;
  padding:36px;
}
.field{margin-bottom:20px;}
.field label{
  display:block; font-family:'JetBrains Mono', monospace;
  font-size:12.5px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--stone); margin-bottom:8px;
}
.field input, .field select, .field textarea{
  width:100%;
  padding:13px 14px;
  font-family:'Inter', sans-serif; font-size:15px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  color:var(--ink);
}
.field textarea{min-height:110px; resize:vertical;}
.field-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.form-submit{width:100%; margin-top:6px;}
.form-note{font-size:12.5px; color:var(--stone); margin-top:14px; text-align:center;}

/* ---------- PROJECTS PLACEHOLDER + ANIMATION ---------- */
.projects-empty{
  text-align:center;
  padding:90px 24px;
  border:1px dashed var(--line);
  border-radius:10px;
  background:var(--paper-dim);
}
.dig-animation{
  width:120px; height:80px;
  margin:0 auto 32px;
  position:relative;
}
.dig-animation svg{width:100%; height:100%;}
.dig-arm{
  transform-origin: 60px 30px;
  animation: dig 3.2s ease-in-out infinite;
}
@keyframes dig{
  0%, 100% { transform: rotate(0deg); }
  30% { transform: rotate(-18deg); }
  55% { transform: rotate(6deg); }
  75% { transform: rotate(-8deg); }
}
.dig-dot{ animation: rise 3.2s ease-in-out infinite; }
@keyframes rise{
  0%, 60%, 100% { opacity:0; transform: translateY(0); }
  70% { opacity:1; transform: translateY(-6px); }
  85% { opacity:0; transform: translateY(-14px); }
}
.projects-empty h3{font-size:22px; margin-bottom:12px;}
.projects-empty p{max-width:420px; margin:0 auto; color:var(--stone); font-size:15px; line-height:1.65;}
.pulse-line{
  width:60px; height:2px; background:var(--copper);
  margin:26px auto 0;
  position:relative; overflow:hidden;
}
.pulse-line::after{
  content:''; position:absolute; top:0; left:-40%;
  width:40%; height:100%; background:var(--copper-bright);
  animation: sweep 2.4s ease-in-out infinite;
}
@keyframes sweep{
  0% { left:-40%; }
  100% { left:100%; }
}

/* ---------- SERVICE AREA TAGS ---------- */
.town-tags{display:flex; flex-wrap:wrap; gap:8px;}
.town-tags span{
  font-family:'JetBrains Mono', monospace; font-size:12px;
  padding:8px 13px;
  background:var(--paper-dim);
  border:1px solid var(--line);
  border-radius:20px;
}
.on-dark .town-tags span, .on-forest .town-tags span{
  background:rgba(238,237,228,0.06); border-color:var(--line-on-dark);
}
.town-tags span.here{border-color:var(--ink); color:var(--ink);}

/* ---------- CTA BAND ---------- */
.cta-band{background:var(--copper-bright); color:var(--ink); text-align:center;}
.cta-band h2{font-size:clamp(30px,3.8vw,48px);}
.cta-band p{margin-top:14px; font-size:16px; color:rgba(25,29,26,0.75);}
.cta-band .btn-actions{margin-top:30px; display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
.cta-band .btn-primary{background:var(--ink); color:var(--paper);}
.cta-band .btn-primary:hover{background:#000;}
.cta-band .btn-ghost{border-color:rgba(25,29,26,0.3); color:var(--ink);}
.cta-band .btn-ghost:hover{border-color:var(--ink);}

/* ---------- FOOTER ---------- */
footer{background:var(--ink); color:rgba(238,237,228,0.55); padding:48px 0 28px;}
.footer-grid{display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; padding-bottom:28px; border-bottom:1px solid var(--line-on-dark);}
.footer-col h5{
  font-family:'JetBrains Mono', monospace; font-size:11px; letter-spacing:0.08em;
  text-transform:uppercase; color:rgba(238,237,228,0.4); margin-bottom:14px;
}
.footer-col a{display:block; font-size:13.5px; padding:5px 0; color:rgba(238,237,228,0.72);}
.footer-col a:hover{color:var(--copper-bright);}
.footer-bottom{display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; padding-top:22px; font-size:12.5px;}

/* ---------- RESPONSIVE ---------- */
@media (max-width:860px){
  .about-grid, .contact-grid, .local-facts, .diag-grid{grid-template-columns:1fr; gap:32px;}
  .service-grid{grid-template-rows:none;}
  .service-tier{grid-template-columns:1fr; gap:14px; padding:28px 24px;}
  .service-list{grid-template-columns:1fr;}
  .card-grid{grid-template-columns:1fr;}
  .media-grid{grid-template-columns:1fr 1fr;}
  .media-slot.tall{grid-row:auto;}
  .field-row{grid-template-columns:1fr;}
  section{padding:64px 0;}
  .banner{min-height:560px;}
  .hero-stack img{max-width:260px !important;}
}
.hero-stack{display:flex; flex-direction:column; align-items:center; text-align:center;}
.hero-stack .banner-sub{margin-left:auto; margin-right:auto;}
.hero-stack .banner-actions{justify-content:center;}



/* v10.8 shared navigation and problem-page system */
header.site-header{position:sticky;top:0;z-index:1000;background:#1b1a15;border-bottom:2px solid var(--gold);backdrop-filter:none;overflow:visible}
.site-header .nav{padding:10px 24px;min-height:76px;overflow:visible}.site-header .brand img{width:210px;height:54px;object-fit:contain;object-position:left center}.site-header .nav-links{gap:18px;height:56px}.site-header .nav-links>a,.nav-parent{color:var(--paper);opacity:.84;font-size:12px;font-weight:600;letter-spacing:.035em;text-transform:uppercase;display:flex;align-items:center;height:56px}.site-header .nav-links a:hover,.site-header .nav-links a.active{opacity:1;color:#fff}.nav-dropdown{position:relative;height:56px;display:flex;align-items:center}.nav-parent span{color:var(--gold);font-size:16px;margin-left:6px}.dropdown-menu{display:none;position:absolute;top:55px;left:-16px;background:#1b1a15;border:1px solid rgba(244,192,12,.45);border-top:2px solid var(--gold);box-shadow:0 18px 45px rgba(0,0,0,.38);padding:12px;min-width:300px;z-index:1200}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:grid}.dropdown-menu:before{content:'';position:absolute;left:0;right:0;top:-8px;height:8px}.dropdown-menu a{color:var(--paper);padding:10px 12px;border-radius:3px;font-size:12px;line-height:1.25;opacity:.82}.dropdown-menu a:hover,.dropdown-menu a.active{background:rgba(244,192,12,.12);color:#fff;opacity:1}.problems-menu{grid-template-columns:1fr 1fr;min-width:630px}.area-menu{grid-template-columns:1fr 1fr;min-width:390px}.services-menu{min-width:320px}.nav-toggle{width:44px;height:44px;border:1px solid rgba(244,192,12,.55);display:none;flex-direction:column;justify-content:center;gap:5px;padding:0 10px;border-radius:3px}.nav-toggle span{height:2px;width:22px;background:var(--paper);display:block;transition:.2s}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-mobile{display:none}.footer-grid-expanded{grid-template-columns:1.1fr 1.2fr 1fr .9fr}.footer-col a{line-height:1.5}.marker.marker-dark{color:var(--gold);background:transparent}.marker.marker-dark::before{border-color:var(--gold)}
.problem-hero,.service-hero{position:relative;background:var(--forest-deep);color:var(--paper);padding:100px 0;overflow:hidden}.service-hero{background:linear-gradient(135deg,#33351f,#1b1a15);min-height:540px;display:flex;align-items:center}.service-hero .wrap{width:100%}.problem-hero:before,.service-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 25%,rgba(244,192,12,.12),transparent 35%),repeating-radial-gradient(ellipse at 90% 60%,transparent 0 38px,rgba(184,154,104,.15) 40px,transparent 42px);opacity:.8}.problem-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:70px;align-items:end}.problem-hero h1,.service-hero h1{font-size:clamp(43px,6vw,78px);max-width:900px;margin:22px 0}.problem-hero p,.service-hero p{font-size:19px;line-height:1.75;color:rgba(230,223,200,.82);max-width:760px}.problem-snapshot{background:rgba(27,26,21,.82);border:1px solid rgba(244,192,12,.35);border-top:4px solid var(--gold);padding:30px}.problem-snapshot span{font-size:11px;color:var(--gold)}.problem-snapshot h2{font-size:26px;margin:14px 0}.problem-snapshot p{font-size:15px}.problem-snapshot a{display:inline-block;margin-top:20px;color:var(--gold);font-weight:700}.landing-hero .wrap{position:relative}.landing-lead{max-width:760px!important}.paper-section{background:#f1ead3}.content-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr);gap:70px;align-items:start}.content-grid h2,.split-copy h2,.faq-grid h2,.local-panel h2{font-size:clamp(32px,4vw,48px);margin:18px 0 24px}.signal-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.signal-list li{background:#fff;border-left:4px solid var(--gold);padding:18px 20px;box-shadow:0 8px 20px rgba(27,26,21,.07)}.field-note{background:var(--forest-deep);color:var(--paper);padding:34px;border-top:4px solid var(--gold);position:sticky;top:110px}.field-note span{color:var(--gold);font-size:11px}.field-note p{margin-top:18px;line-height:1.8}.split-copy{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split-copy p{color:rgba(230,223,200,.76);font-size:17px;line-height:1.85}.local-panel{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:70px;align-items:center}.local-panel p{color:var(--stone);font-size:17px;line-height:1.85;margin-top:16px}.local-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--ink);padding:2px}.local-stats div{background:var(--forest-deep);color:var(--paper);padding:28px 20px}.local-stats strong,.local-stats span{display:block}.local-stats strong{font-family:'Space Grotesk';font-size:23px}.local-stats span{color:var(--gold);font:11px 'JetBrains Mono';text-transform:uppercase;margin-top:6px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-card{background:var(--paper);padding:28px;border-top:4px solid var(--ink);min-height:180px;display:flex;flex-direction:column;transition:.2s}.on-dark .related-card{background:#29291f;color:var(--paper);border-color:var(--gold)}.related-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(27,26,21,.14)}.related-card span{font:10px 'JetBrains Mono';text-transform:uppercase;letter-spacing:.1em;opacity:.7}.related-card strong{font:600 24px 'Space Grotesk';margin:18px 0}.related-card em{font-style:normal;margin-top:auto;font-size:13px;color:var(--copper)}.on-dark .related-card em{color:var(--gold)}.faq-section{background:#f1ead3}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-list details{border-top:1px solid rgba(27,26,21,.25);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid rgba(27,26,21,.25)}.faq-list summary{cursor:pointer;font:600 18px 'Space Grotesk';padding-right:30px;position:relative}.faq-list summary::marker{color:var(--gold)}.faq-list details p{margin-top:14px;color:var(--stone);line-height:1.75}.problem-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.problem-card{background:#fff;padding:30px;border-top:4px solid var(--forest);min-height:330px;display:flex;flex-direction:column;box-shadow:0 8px 22px rgba(27,26,21,.07);transition:.2s}.problem-card:hover{transform:translateY(-5px);border-color:var(--gold)}.problem-card span{font-size:10px;color:var(--copper)}.problem-card h2{font-size:28px;margin:22px 0 14px}.problem-card p{color:var(--stone);font-size:15px}.problem-card em{margin-top:auto;padding-top:22px;color:var(--copper);font-style:normal;font-weight:700}.method-band{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.method-band h2{font-size:clamp(34px,4vw,52px);margin-top:18px}.method-band p{color:rgba(230,223,200,.75);font-size:17px;line-height:1.8}.diff-card .mono{font-size:11px;color:var(--copper)}.town-tags a{display:inline-block;padding:10px 14px;border:1px solid rgba(27,26,21,.22);margin:4px;background:rgba(255,255,255,.3)}
.research-section{background:var(--forest-deep);color:var(--paper)}.research-section .section-head p{color:rgba(230,223,200,.72)}.research-links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.research-links a{display:flex;flex-direction:column;gap:12px;padding:24px;background:rgba(27,26,21,.62);border-top:3px solid var(--gold);min-height:130px}.research-links a:hover{background:var(--ink)}.research-links strong{font:600 18px 'Space Grotesk';line-height:1.35}.research-links span{font:11px 'JetBrains Mono';color:var(--gold);margin-top:auto;text-transform:uppercase}
.local-panel.map-panel{width:min(1380px,calc(100vw - 48px));max-width:none;margin-left:50%;transform:translateX(-50%);grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:64px}.map-copy-note{font:600 11px 'JetBrains Mono',monospace!important;letter-spacing:.05em;text-transform:uppercase;border-top:1px solid rgba(27,26,21,.18);padding-top:18px;margin-top:28px!important}.map-copy-note span{display:inline-block;background:var(--ink);color:var(--gold);padding:4px 7px;margin-right:8px}.service-area-frame{--map-cut:polygon(0 0,calc(100% - 54px) 0,100% 54px,100% 100%,34px 100%,0 calc(100% - 34px));position:relative;padding:1px;background:linear-gradient(135deg,rgba(111,92,45,.82),rgba(70,75,47,.55));clip-path:var(--map-cut);filter:drop-shadow(0 18px 25px rgba(54,55,37,.16))}.service-area-map{position:relative;background:#e9e3cc;clip-path:var(--map-cut);overflow:hidden}.map-canvas{position:relative;aspect-ratio:16/9;overflow:hidden;background:#e6dfc8;box-shadow:inset 0 0 0 9px rgba(252,249,232,.44),inset 0 0 0 10px rgba(83,82,49,.28)}.map-canvas>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.map-vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,252,238,.05),transparent 45%,rgba(72,75,50,.08)),radial-gradient(circle at center,transparent 58%,rgba(79,77,49,.12) 100%);pointer-events:none}.county-label{position:absolute;z-index:3;color:rgba(40,43,28,.76);font:700 10px 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 2px rgba(255,252,238,.95),0 0 8px rgba(255,252,238,.8)}.county-geauga{top:6%;left:5%}.county-portage{bottom:6%;right:5%}.county-divider{position:absolute;z-index:2;left:10px;right:10px;top:61%;border-top:1px dashed rgba(108,95,48,.55);transform:rotate(-2deg);transform-origin:center}.ladue-label{position:absolute;z-index:5;left:51%;top:50%;transform:translate(-50%,-50%) rotate(-3deg);color:rgba(34,49,50,.9);font:600 12px 'Space Grotesk',sans-serif;letter-spacing:.04em;white-space:nowrap;text-shadow:0 1px 2px rgba(244,242,224,.95),0 0 8px rgba(244,242,224,.75)}.map-pin{position:absolute;z-index:6;width:27px;height:27px;border-radius:50% 50% 50% 0;background:var(--gold);color:var(--ink);border:2px solid #fffdf1;transform:translate(-50%,-100%) rotate(-45deg);box-shadow:0 4px 10px rgba(40,43,28,.38);display:grid;place-items:center;transition:transform .15s,background .15s}.map-pin span{font:700 9px 'JetBrains Mono';transform:rotate(45deg)}.map-pin:hover,.map-pin:focus-visible{background:#fff;transform:translate(-50%,-100%) rotate(-45deg) scale(1.18);z-index:9}.map-legend{display:grid;grid-template-columns:repeat(4,1fr);column-gap:18px;border-top:1px solid rgba(95,83,42,.55);background:rgba(239,233,210,.98);padding:12px 24px 16px}.map-legend-head{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:2px 0 10px;margin-bottom:2px}.map-legend-head::after{content:'';height:1px;flex:1;background:linear-gradient(90deg,rgba(93,82,45,.45),transparent)}.map-legend-head span{font-size:9px;color:#5e542f;text-transform:uppercase;letter-spacing:.12em}.map-legend>a{color:#303321;font-size:10px;padding:7px 0;border-top:1px solid rgba(72,75,47,.13);white-space:nowrap}.map-legend>a:hover{color:#8b611d}.map-legend>a span{font:700 8px 'JetBrains Mono';color:#9a6e18;margin-right:5px}
@media(max-width:1040px){.site-header .nav-links{display:none}.site-header .nav-toggle{display:flex}.site-header .nav-cta{margin-left:auto;margin-right:12px}.nav-mobile.open{display:block;background:#1b1a15;padding:12px 24px 24px;border-bottom:2px solid var(--gold);max-height:calc(100vh - 76px);overflow:auto}.mobile-section-link{display:block;color:var(--gold)!important;font-weight:700!important;padding:15px 0 10px!important;border-bottom:1px solid rgba(244,192,12,.28)!important}.mobile-subgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding:5px 0 12px}.mobile-subgrid a{color:var(--paper);font-size:12px;padding:9px 0;border-bottom:1px solid rgba(230,223,200,.1)}.mobile-quote{display:block;background:var(--gold);color:var(--ink)!important;text-align:center;font-weight:800!important;margin-top:12px;border:0!important;padding:14px!important}}
@media(max-width:1040px){.local-panel.map-panel{width:100%;max-width:1180px;margin-left:auto;transform:none;grid-template-columns:1fr}.service-area-frame{max-width:840px;width:100%;margin:0 auto}}
@media(max-width:760px){.site-header .nav{min-height:66px;padding:6px 14px}.site-header .brand img{width:156px;height:46px}.site-header .nav-cta{font-size:11px;padding:10px 12px}.problem-hero,.service-hero{padding:68px 0}.problem-hero-inner,.content-grid,.split-copy,.local-panel,.faq-grid,.method-band{grid-template-columns:1fr;gap:38px}.problem-hero h1,.service-hero h1{font-size:clamp(38px,12vw,58px)}.problem-hero p,.service-hero p{font-size:16px}.problem-snapshot{display:none}.signal-list,.problem-card-grid,.related-grid{grid-template-columns:1fr}.problem-card{min-height:0}.field-note{position:static}.local-stats{grid-template-columns:1fr 1fr}.footer-grid-expanded{grid-template-columns:1fr 1fr}.mobile-subgrid{grid-template-columns:1fr}.service-hero{min-height:500px}.hero-stack img{display:block!important;max-width:310px!important}.banner-content{padding-top:40px}.banner h1{font-size:38px}.banner-actions .btn-primary,.banner-actions .btn-ghost{width:100%;text-align:center}}
@media(max-width:760px){.research-links{grid-template-columns:1fr}}
@media(max-width:560px){.service-area-frame{--map-cut:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,24px 100%,0 calc(100% - 24px))}.map-canvas{aspect-ratio:1/1}.map-canvas>img{object-position:center}.map-pin{width:24px;height:24px}.ladue-label{padding:7px 8px 6px 24px}.ladue-label strong{font-size:10px}.map-legend{grid-template-columns:1fr 1fr;padding:12px 16px 18px}.county-divider{top:62%}}
/* v11.3 light navigation treatment */
header.site-header{background:#e8dfc5;border-bottom:2px solid #9a701d;box-shadow:0 8px 24px rgba(34,35,23,.1)}
.site-header .nav-links>a,.site-header .nav-parent{color:#303321;opacity:.78}.site-header .nav-links a:hover,.site-header .nav-links a.active{color:#171811;opacity:1}.nav-parent span{color:#9a701d}.site-header .nav-cta{background:#303321;color:#f4efd9;border:1px solid #303321;box-shadow:none}.site-header .nav-cta:hover{background:#171811;color:#fff}
.dropdown-menu{background:#f1ead3;border:1px solid rgba(82,76,43,.3);border-top:2px solid #9a701d;box-shadow:0 18px 45px rgba(34,35,23,.2)}.dropdown-menu a{color:#303321}.dropdown-menu a:hover,.dropdown-menu a.active{background:rgba(154,112,29,.12);color:#171811}.nav-toggle{border-color:rgba(48,51,33,.5);background:rgba(255,255,255,.22)}.nav-toggle span{background:#303321}
@media(max-width:1040px){.nav-mobile.open{background:#f1ead3;border-bottom-color:#9a701d}.mobile-section-link{color:#865f16!important;border-bottom-color:rgba(134,95,22,.25)!important}.mobile-subgrid a{color:#303321;border-bottom-color:rgba(48,51,33,.13)}.mobile-quote{background:#303321;color:#f4efd9!important}}
/* v11.4 keep field-note copy legible inside dark cards */
.local-panel .field-note p{color:rgba(244,239,217,.9)}
.tick-card-grid{grid-template-columns:repeat(2,1fr)}.tick-species-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.tick-species-grid span{background:rgba(255,255,255,.35);border:1px solid rgba(48,51,33,.18);border-left:3px solid #9a701d;padding:15px 16px;color:#303321;font:600 14px 'Space Grotesk',sans-serif}.on-dark .split-copy>div>p+p{margin-top:18px}
.invasive-id-section{background:#e7dfc8}.invasive-id-section .section-head{max-width:880px}.plant-id-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}.plant-id-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);background:#f8f3df;border:1px solid rgba(48,51,33,.18);box-shadow:0 12px 30px rgba(34,35,23,.09);overflow:hidden}.plant-id-card:last-child{grid-column:1/-1;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)}.plant-id-card figure{position:relative;min-height:100%;background:#393b28;overflow:hidden}.plant-id-card img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover}.plant-id-card figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 9px;background:linear-gradient(transparent,rgba(27,26,21,.82));font:9px 'JetBrains Mono',monospace}.plant-id-card figcaption a{color:#f4efd9}.plant-id-copy{padding:28px;display:flex;flex-direction:column}.plant-id-meta{display:flex;justify-content:space-between;gap:14px;align-items:center}.plant-id-meta>.mono{color:#8c6317;font-size:10px}.plant-status{font:700 9px 'JetBrains Mono',monospace;letter-spacing:.06em;color:#f4efd9;background:#4b4e32;padding:6px 8px}.plant-id-card:last-child .plant-status{background:#7f6529}.plant-id-card h3{font-size:clamp(25px,2.7vw,36px);margin:18px 0 4px}.plant-latin{font-size:12px;color:#706b56;line-height:1.5}.plant-id-card dl{margin:22px 0}.plant-id-card dl>div{border-top:1px solid rgba(48,51,33,.16);padding:13px 0}.plant-id-card dt{font:700 9px 'JetBrains Mono',monospace;letter-spacing:.09em;text-transform:uppercase;color:#8c6317;margin-bottom:6px}.plant-id-card dd{font-size:14px;line-height:1.6;color:#4e503d}.plant-profile-link{margin-top:auto;font-size:13px;font-weight:700;color:#805b15}.plant-id-note{display:grid;grid-template-columns:.78fr 1.22fr;gap:26px;margin-top:24px;background:#303321;color:#f4efd9;padding:28px 32px;border-left:5px solid #c89422}.plant-id-note strong{font:600 20px 'Space Grotesk',sans-serif;line-height:1.35}.plant-id-note span{color:rgba(244,239,217,.8);font-size:14px;line-height:1.7}.bramble-hero h1{max-width:1060px}.bramble-intro{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}.bramble-intro h2{font-size:clamp(34px,4vw,52px);margin:18px 0 24px}.bramble-intro p{font-size:17px;line-height:1.8;color:#4e503d;margin-top:16px}.bramble-photo{background:#303321;box-shadow:0 18px 34px rgba(34,35,23,.15)}.bramble-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.bramble-photo figcaption{padding:9px 12px;font:9px 'JetBrains Mono',monospace}.bramble-photo figcaption a{color:#f4efd9}.bramble-clues{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:#303321;padding:2px}.bramble-clues>div{background:#f5efdb;padding:26px}.bramble-clues strong,.bramble-clues span{display:block}.bramble-clues strong{font:600 21px 'Space Grotesk',sans-serif;margin-bottom:12px}.bramble-clues span{font-size:14px;line-height:1.65;color:#565744}
/* v11.8 forestry mulching flagship page */
.fm-hero{min-height:670px}.fm-hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:64px;align-items:center}.fm-hero-copy{position:relative;z-index:2}.fm-hero h1{font-size:clamp(48px,5.6vw,76px);line-height:.98;max-width:880px}.fm-proof-line{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:30px;color:rgba(244,239,217,.68);font:700 10px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.06em}.fm-proof-line span{display:flex;align-items:center;gap:8px}.fm-proof-line span:before{content:'';width:6px;height:6px;border:1px solid var(--gold);border-radius:50%}
.photo-coming-soon{position:relative;isolation:isolate;min-height:330px;overflow:hidden;background:linear-gradient(145deg,#dad1b4,#f3edd8);border:1px solid rgba(94,78,39,.42);box-shadow:0 20px 42px rgba(20,21,15,.17);display:flex;align-items:flex-end}.photo-coming-soon:before{content:'';position:absolute;inset:10px;border:1px solid rgba(82,74,42,.25);z-index:2;pointer-events:none}.photo-coming-soon:after{content:'';position:absolute;top:-52px;right:-52px;width:130px;height:130px;background:var(--gold);clip-path:polygon(0 0,100% 0,100% 100%);opacity:.85}.placeholder-contours{position:absolute;inset:-18%;background:repeating-radial-gradient(ellipse at 62% 42%,transparent 0 25px,rgba(75,78,50,.18) 27px,transparent 29px),repeating-radial-gradient(ellipse at 18% 86%,transparent 0 37px,rgba(150,110,33,.16) 39px,transparent 41px);transform:rotate(-7deg);z-index:0}.placeholder-copy{position:relative;z-index:3;width:100%;padding:46px 38px 34px;background:linear-gradient(transparent,rgba(35,37,24,.9));color:#f4efd9}.placeholder-copy span,.placeholder-copy strong,.placeholder-copy small{display:block}.placeholder-copy span{color:var(--gold);font-size:10px;letter-spacing:.1em}.placeholder-copy strong{font:600 clamp(22px,2.3vw,32px) 'Space Grotesk',sans-serif;line-height:1.15;margin-top:12px}.placeholder-copy small{color:rgba(244,239,217,.72);font-size:12px;line-height:1.5;margin-top:8px}.fm-hero-photo{min-height:470px;clip-path:polygon(0 0,calc(100% - 46px) 0,100% 46px,100% 100%,28px 100%,0 calc(100% - 28px))}.fm-hero-photo:before{clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,20px 100%,0 calc(100% - 20px))}
.fm-recognition .section-head{max-width:900px}.fm-symptom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(48,51,33,.28);border:1px solid rgba(48,51,33,.12)}.fm-symptom-grid>div{background:#f7f1dc;padding:28px;min-height:220px}.fm-symptom-grid .mono{font-size:10px;color:#936715}.fm-symptom-grid h3{font-size:23px;line-height:1.15;margin:22px 0 12px}.fm-symptom-grid p{font-size:14px;color:#565744;line-height:1.7}.fm-callout{display:grid;grid-template-columns:.62fr 1.38fr;gap:30px;margin-top:28px;padding:26px 30px;background:#303321;color:#f4efd9;border-left:5px solid var(--gold);align-items:center}.fm-callout strong{font:600 20px 'Space Grotesk',sans-serif}.fm-callout span{color:rgba(244,239,217,.78);font-size:14px;line-height:1.65}
.fm-proof-section{background:#ddd4b8}.fm-before-after{display:grid;grid-template-columns:1fr 1fr;gap:22px}.fm-before-after .photo-coming-soon{min-height:450px}.fm-before:after{display:none}.fm-after:after{background:#66704a}
.fm-explainer-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.fm-explainer h2,.fm-reach-section h2,.fm-cost-section h2{font-size:clamp(36px,4.5vw,56px);line-height:1.04;margin:18px 0 24px}.fm-explainer p{color:rgba(244,239,217,.76);font-size:17px;line-height:1.82;margin-top:17px}.fm-truth{border-top:1px solid rgba(244,192,12,.35);margin-top:30px;padding-top:25px}.fm-truth span,.fm-truth strong{display:block}.fm-truth span{font-size:10px;color:var(--gold)}.fm-truth strong{font:600 22px 'Space Grotesk',sans-serif;margin-top:10px;color:#f4efd9}.fm-finish-photo{min-height:520px}
.fm-finish-section{scroll-margin-top:90px}.fm-finish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.fm-finish-grid article{background:#fff;box-shadow:0 10px 28px rgba(34,35,23,.09);display:flex;flex-direction:column}.fm-finish-grid .photo-coming-soon{min-height:250px;box-shadow:none;border:0}.fm-finish-grid article>div:last-child{padding:28px;display:flex;flex-direction:column;flex:1}.fm-finish-grid .mono{font-size:9px;color:#936715}.fm-finish-grid h3{font-size:27px;margin:15px 0 12px}.fm-finish-grid p{color:#565744;font-size:14px;line-height:1.68}.fm-finish-grid a{margin-top:auto;padding-top:20px;color:#805b15;font-weight:700;font-size:13px}
.fm-reach-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.fm-reach-section p{color:#565744;font-size:17px;line-height:1.8;margin-top:17px}.fm-reach-photo{min-height:520px}.text-link{display:inline-block;color:#805b15;font-weight:700;margin-top:24px}
.fm-fit-section{background:#e8e0c7}.fm-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fm-fit-card{padding:36px;background:#f8f3df;border-top:5px solid #58603f}.fm-fit-card.caution{border-color:#a06d1d}.fm-fit-card .mono{font-size:10px;color:#805b15}.fm-fit-card h3{font-size:30px;margin:18px 0 24px}.fm-fit-card ul{list-style:none}.fm-fit-card li{position:relative;padding:13px 0 13px 28px;border-top:1px solid rgba(48,51,33,.14);color:#4e503d}.fm-fit-card li:before{content:'✓';position:absolute;left:0;color:#6a744d;font-weight:800}.fm-fit-card.caution li:before{content:'→';color:#9a6e18}
.fm-aftercare .section-head p{color:rgba(244,239,217,.75)}.fm-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:28px;background:rgba(244,192,12,.25);padding:2px}.fm-timeline>div{background:#292a1d;padding:30px}.fm-timeline span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);font:700 10px 'JetBrains Mono'}.fm-timeline h3{font-size:25px;margin:20px 0 12px;color:#f4efd9}.fm-timeline p{font-size:14px;line-height:1.7;color:rgba(244,239,217,.72)}.fm-season-photo{min-height:430px;box-shadow:none}
.fm-cost-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start}.fm-cost-section p{color:#565744;font-size:16px;line-height:1.78}.fm-cost-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;list-style:none;margin-top:28px}.fm-cost-list li{padding:15px 0 15px 24px;border-top:1px solid rgba(48,51,33,.16);position:relative;color:#4e503d}.fm-cost-list li:before{content:'';position:absolute;left:0;top:22px;width:7px;height:7px;border:1px solid #9a6e18;border-radius:50%}.fm-quote-prep{background:#303321;color:#f4efd9;border-top:5px solid var(--gold);padding:38px;position:sticky;top:110px}.fm-quote-prep .mono{color:var(--gold);font-size:10px}.fm-quote-prep h3{font-size:29px;line-height:1.15;margin:20px 0}.fm-quote-prep p{color:rgba(244,239,217,.76);font-size:14px}.fm-quote-prep .btn-primary{display:inline-block;margin-top:26px}.fm-fit-section+.on-dark{background:#24251a}
@media(max-width:1050px){.fm-hero-layout,.fm-explainer-grid,.fm-reach-grid,.fm-cost-grid{grid-template-columns:1fr}.fm-hero-photo{min-height:390px}.fm-symptom-grid{grid-template-columns:1fr 1fr}.fm-finish-grid{grid-template-columns:1fr}.fm-finish-grid article{display:grid;grid-template-columns:.82fr 1.18fr}.fm-quote-prep{position:static}}
@media(max-width:860px){.tick-card-grid{grid-template-columns:1fr}.fm-before-after,.fm-fit-grid,.fm-timeline{grid-template-columns:1fr}.fm-before-after .photo-coming-soon{min-height:360px}}
@media(max-width:980px){.plant-id-grid{grid-template-columns:1fr}.plant-id-card:last-child{grid-column:auto}.bramble-clues{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.tick-species-grid{grid-template-columns:1fr 1fr}.research-section .research-links{grid-template-columns:1fr}.plant-id-card,.plant-id-card:last-child,.bramble-intro{grid-template-columns:1fr}.plant-id-card img{height:320px;min-height:0}.plant-id-note{grid-template-columns:1fr}.bramble-clues{grid-template-columns:1fr}.plant-id-meta{align-items:flex-start}.plant-status{text-align:right}.fm-hero{min-height:0}.fm-hero-layout{gap:42px}.fm-hero h1{font-size:clamp(40px,12vw,58px)}.fm-hero-photo{min-height:330px}.fm-proof-line{display:grid;grid-template-columns:1fr}.fm-symptom-grid{grid-template-columns:1fr}.fm-symptom-grid>div{min-height:0}.fm-callout{grid-template-columns:1fr}.fm-finish-grid article{display:flex}.fm-finish-grid .photo-coming-soon{min-height:290px}.fm-cost-list{grid-template-columns:1fr}.photo-coming-soon{min-height:310px}.placeholder-copy{padding:42px 28px 28px}}
/* v11.11 hunting-land strategy page and four-card home problem band */
.home-problem-grid{grid-template-columns:repeat(4,1fr)}.home-problem-grid .related-card{min-height:205px}.home-problem-grid .related-card strong{font-size:22px}
.hunting-hero h1{max-width:1060px}.hunting-hook .content-grid>div>p{font-size:17px;line-height:1.8;color:#4e503d;margin-top:17px}.hunting-hook .field-note h3{font-size:30px;line-height:1.15;margin:18px 0}.hunting-service-grid{grid-template-columns:repeat(2,1fr)}
.watering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.watering-grid article{background:#fff;border-top:4px solid #8f681d;padding:30px;box-shadow:0 12px 28px rgba(34,35,23,.09)}.watering-grid .mono{font-size:10px;color:#8f681d}.watering-grid h3{font-size:25px;line-height:1.2;margin:18px 0 14px}.watering-grid p{color:#555744;font-size:14px;line-height:1.7}
.hunting-passion{font:500 clamp(20px,2.2vw,28px)/1.55 'Space Grotesk',sans-serif!important;color:#303321!important}.travel-callout{background:#303321;color:#f4efd9;padding:34px;border-top:4px solid var(--gold)}.travel-callout span,.travel-callout strong,.travel-callout p,.travel-callout a{display:block}.travel-callout span{color:var(--gold);font-size:10px}.travel-callout strong{font:600 28px 'Space Grotesk',sans-serif;margin:17px 0}.travel-callout p{color:rgba(244,239,217,.78)!important;font-size:14px!important;line-height:1.7!important}.travel-callout a{color:var(--gold);font-weight:700;margin-top:22px}
@media(max-width:1040px){.home-problem-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.home-problem-grid,.hunting-service-grid,.watering-grid{grid-template-columns:1fr}.home-problem-grid .related-card{min-height:0}.hunting-hook .field-note h3{font-size:26px}}
/* v11.12 homepage lower-section visual rhythm */
.home-reclaim{background:#f1ead3;overflow:hidden;border-top:1px solid rgba(48,51,33,.18);border-bottom:1px solid rgba(48,51,33,.18)}.home-reclaim:before{content:'';position:absolute;width:760px;height:760px;right:-210px;top:-230px;background:repeating-radial-gradient(ellipse at 55% 52%,transparent 0 31px,rgba(92,98,62,.11) 33px,transparent 35px);transform:rotate(-12deg);pointer-events:none}.home-reclaim .wrap{position:relative}.home-reclaim .section-head{max-width:730px}.home-reclaim .card-grid{gap:16px;background:transparent}.home-reclaim .diff-card{position:relative;background:#fffdf3;border:1px solid rgba(48,51,33,.17);border-top:5px solid #4d5337;box-shadow:0 14px 32px rgba(35,37,24,.09);padding-top:62px;overflow:hidden}.home-reclaim .diff-card:before{position:absolute;top:22px;left:30px;width:26px;height:26px;border:1px solid #9a701d;border-radius:50%;display:grid;place-items:center;color:#8b6217;font:700 9px 'JetBrains Mono',monospace}.home-reclaim .diff-card:nth-child(1):before{content:'01'}.home-reclaim .diff-card:nth-child(2):before{content:'02'}.home-reclaim .diff-card:nth-child(3):before{content:'03'}.home-reclaim .diff-card p{color:#555744}
.home-coverage{overflow:hidden;background:linear-gradient(125deg,#343820,#24261a);color:#f4efd9;border-top:2px solid #c89422}.home-coverage:before{content:'';position:absolute;inset:-25%;background:repeating-radial-gradient(ellipse at 70% 45%,transparent 0 38px,rgba(244,192,12,.075) 40px,transparent 42px);transform:rotate(-5deg);pointer-events:none}.home-coverage .wrap{position:relative}.home-coverage .marker{color:#e3b73a}.home-coverage .marker:before{border-color:#e3b73a}.home-coverage .section-head h2{color:#f4efd9}.home-coverage .town-tags{gap:10px;max-width:970px}.home-coverage .town-tags a{display:inline-flex;align-items:center;background:rgba(244,239,217,.08);border:1px solid rgba(244,239,217,.3);border-radius:20px;color:#f4efd9;padding:10px 15px;font:12px 'JetBrains Mono',monospace;transition:background .18s,border-color .18s,color .18s,transform .18s}.home-coverage .town-tags a.here{background:#d6ad44;border-color:#d6ad44;color:#24261a}.home-coverage .town-tags a:hover,.home-coverage .town-tags a:focus-visible{background:#f4efd9;border-color:#f4efd9;color:#24261a;transform:translateY(-2px);outline:0}.home-coverage .coverage-note{color:rgba(244,239,217,.72)!important}.home-coverage .coverage-note a{color:#e8bd43!important}
.home-story{background:#e2dfc8}.home-story .about-grid{align-items:stretch}.home-story .about-copy{padding:18px 0}.home-story .credentials{position:relative;background:#303321;color:#f4efd9;border:0;border-top:5px solid #c89422;padding:28px 34px;box-shadow:0 20px 42px rgba(35,37,24,.16);clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,0 100%)}.home-story .cred-row{border-color:rgba(244,239,217,.17)}.home-story .cred-row .k{color:rgba(244,239,217,.6)}.home-story .cred-row .v{color:#f4efd9}
.home-final-cta{background:#f1ead3;padding:76px 0}.home-final-cta .wrap{position:relative;isolation:isolate;overflow:hidden;max-width:1180px;background:#303321;color:#f4efd9;padding:70px 44px;clip-path:polygon(0 0,calc(100% - 42px) 0,100% 42px,100% 100%,42px 100%,0 calc(100% - 42px));box-shadow:0 20px 40px rgba(35,37,24,.15)}.home-final-cta .wrap:before{content:'';position:absolute;inset:-60%;z-index:-1;background:repeating-radial-gradient(ellipse at 68% 42%,transparent 0 32px,rgba(244,192,12,.075) 34px,transparent 36px);transform:rotate(-8deg)}.home-final-cta h2{color:#f4efd9}.home-final-cta p{color:rgba(244,239,217,.72)}.home-final-cta .btn-primary{background:#d6ad44;color:#24261a}.home-final-cta .btn-primary:hover{background:#efca62}
@media(max-width:760px){.home-reclaim .card-grid{grid-template-columns:1fr}.home-coverage .town-tags a{padding:9px 12px}.home-story .credentials{padding:22px}.home-final-cta{padding:48px 0}.home-final-cta .wrap{width:calc(100% - 28px);padding:58px 25px;clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,26px 100%,0 calc(100% - 26px))}}
@media(max-width:440px){.tick-species-grid{grid-template-columns:1fr}}
/* v11.14 contact-page photo uploads and direct call/text options */
.contact-phone-card{margin-top:28px;background:#303321;color:#f4efd9;border-top:4px solid #c89422;padding:24px 26px}.contact-phone-card span,.contact-phone-card strong{display:block}.contact-phone-card>span{color:rgba(244,239,217,.66);font-size:14px;line-height:1.65}.contact-phone-card strong{font:600 21px 'Space Grotesk',sans-serif;margin-top:7px}.contact-phone-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.contact-phone-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 15px;border:1px solid rgba(244,239,217,.34);color:#f4efd9;font:700 11px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.04em}.contact-phone-actions a:first-child{background:#d6ad44;border-color:#d6ad44;color:#24261a}.contact-phone-actions a:hover,.contact-phone-actions a:focus-visible{background:#f4efd9;border-color:#f4efd9;color:#24261a;outline:0}
.photo-upload-group{margin:0 0 22px;padding:22px;background:var(--paper-dim);border:1px solid rgba(48,51,33,.16)}.photo-upload-head{margin-bottom:16px}.photo-upload-head>strong,.photo-upload-head>span{display:block}.photo-upload-head strong{font:600 18px 'Space Grotesk',sans-serif}.photo-upload-head>span{color:var(--stone);font-size:12px;line-height:1.6;margin-top:5px}.photo-input-grid{display:grid;grid-template-columns:1fr;gap:11px}.photo-field label{display:block;font:700 9px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--stone);margin-bottom:7px}.photo-field input[type=file]{width:100%;min-width:0;padding:7px;background:#fff;border:1px solid rgba(48,51,33,.24);font-size:11px;color:var(--stone)}.photo-field input[type=file]::file-selector-button{border:0;background:#303321;color:#f4efd9;padding:9px 10px;margin-right:8px;font:700 9px 'JetBrains Mono',monospace;text-transform:uppercase;cursor:pointer}.photo-field input[type=file]:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
@media(max-width:760px){.photo-input-grid{grid-template-columns:1fr}.contact-phone-actions a{flex:1;padding-inline:9px;font-size:10px;white-space:nowrap}.contact-phone-actions a:first-child{flex:1.35}.photo-field input[type=file]{font-size:12px}}
/* v11.15 focused mega menus */
@media(min-width:1041px){.site-header .nav{position:relative}.nav-dropdown{position:static}.dropdown-menu.mega-menu{top:65px;left:50%;right:auto;transform:translateX(-50%);width:min(940px,calc(100vw - 48px));padding:0;grid-template-columns:238px minmax(0,1fr);background:#f3ecd7;border:1px solid rgba(62,59,37,.28);border-top:3px solid #9a701d;box-shadow:0 24px 55px rgba(24,25,17,.24);overflow:hidden}.problems-menu.mega-menu{width:min(1000px,calc(100vw - 48px))}.area-menu.mega-menu{width:min(820px,calc(100vw - 48px))}.mega-feature{position:relative;overflow:hidden;background:#303321;color:#f4efd9;padding:30px 27px;grid-row:1}.mega-feature:after{content:'';position:absolute;inset:-55%;background:repeating-radial-gradient(ellipse at 66% 48%,transparent 0 27px,rgba(244,192,12,.07) 29px,transparent 31px);transform:rotate(-9deg);pointer-events:none}.mega-feature>*{position:relative;z-index:1}.mega-feature>span{display:block;color:#d8ad36;font:700 9px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.1em}.mega-feature>strong{display:block;font:600 24px/1.12 'Space Grotesk',sans-serif;margin:18px 0 13px}.mega-feature>p{color:rgba(244,239,217,.72);font-size:12px;line-height:1.65}.dropdown-menu .mega-feature>a{display:inline-block;color:#e6ba40!important;padding:0!important;margin-top:20px;background:none!important;font:700 10px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.03em;opacity:1}.mega-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px;padding:27px 28px 23px}.problem-mega-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.area-mega-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.mega-group{min-width:0}.mega-label{display:block;padding-bottom:9px;border-bottom:1px solid rgba(48,51,33,.2);color:#8c6317;font:700 9px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.09em}.dropdown-menu .mega-link{display:block;padding:10px 8px!important;margin-inline:-8px;border-radius:2px;background:transparent;color:#303321;opacity:1;text-transform:none}.dropdown-menu .mega-link strong,.dropdown-menu .mega-link small{display:block}.dropdown-menu .mega-link strong{font:600 14px/1.25 'Space Grotesk',sans-serif}.dropdown-menu .mega-link small{color:#696a57;font-size:10px;line-height:1.45;margin-top:3px}.dropdown-menu .mega-link:hover,.dropdown-menu .mega-link:focus-visible,.dropdown-menu .mega-link.active{background:#e5dcc0;color:#171811;outline:0}.dropdown-menu .mega-link:hover small,.dropdown-menu .mega-link:focus-visible small{color:#4c4e3d}.area-mega-groups .mega-link{padding-block:8px!important}.area-mega-groups .mega-link strong{font-size:13px}.mega-footer{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 24px;background:#e3d9bd;border-top:1px solid rgba(48,51,33,.17);color:#666653;font-size:11px}.dropdown-menu .mega-footer>a{padding:0!important;color:#795513;background:none!important;font:700 10px 'JetBrains Mono',monospace;text-transform:uppercase;opacity:1}.dropdown-menu .mega-footer>a:hover{text-decoration:underline}.services-menu,.problems-menu,.area-menu{min-width:0}}
@media(max-width:1040px){.mobile-accordion{border-bottom:1px solid rgba(48,51,33,.16)}.mobile-accordion summary{position:relative;cursor:pointer;list-style:none;color:#865f16;padding:16px 34px 14px 0;font:700 13px 'Space Grotesk',sans-serif;text-transform:uppercase;letter-spacing:.035em}.mobile-accordion summary::-webkit-details-marker{display:none}.mobile-accordion summary:after{content:'+';position:absolute;right:4px;top:11px;color:#9a701d;font:400 23px 'Space Grotesk',sans-serif}.mobile-accordion[open] summary:after{content:'–'}.mobile-accordion[open] summary{border-bottom:1px solid rgba(134,95,22,.2)}.mobile-overview{display:block!important;margin-top:8px;padding:11px 0!important;color:#805b15!important;font-weight:700!important;border-bottom:1px solid rgba(48,51,33,.13)!important}.mobile-accordion .mobile-subgrid{padding-bottom:14px}}
/* v11.16 viewport-wide desktop mega menus */
@media(min-width:1041px){
  .dropdown-menu.mega-menu,.problems-menu.mega-menu,.area-menu.mega-menu{
    position:fixed;top:78px;left:0;right:0;width:auto;max-width:none;transform:none;
    grid-template-columns:minmax(24px,1fr) minmax(210px,250px) minmax(0,970px) minmax(24px,1fr);
    border-left:0;border-right:0;border-radius:0;
    box-shadow:0 28px 58px rgba(24,25,17,.22)
  }
  .dropdown-menu.mega-menu:before{top:-13px;height:13px}
  .mega-feature{grid-column:2;grid-row:1;padding:34px 30px}
  .mega-groups{grid-column:3;grid-row:1;padding:32px 34px 28px}
  .problem-mega-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 34px}
  .area-mega-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 42px}
  .mega-footer{grid-column:1/-1;grid-row:2;padding-left:max(24px,calc((100vw - 1220px)/2 + 24px));padding-right:max(24px,calc((100vw - 1220px)/2 + 24px))}
}
@media(min-width:1280px){.problem-mega-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 26px}}
/* v11.17 forgiving hover path and more readable mega-menu type */
@media(min-width:1041px){
  .nav-dropdown.menu-open .dropdown-menu{display:grid}
  .mega-feature>span,.mega-label{font-size:10px}
  .mega-feature>strong{font-size:27px}
  .mega-feature>p{font-size:13.5px;line-height:1.62}
  .dropdown-menu .mega-feature>a{font-size:11px}
  .dropdown-menu .mega-link{padding-top:11px!important;padding-bottom:11px!important}
  .dropdown-menu .mega-link strong{font-size:16px;line-height:1.22}
  .dropdown-menu .mega-link small{font-size:12px;line-height:1.42;margin-top:4px}
  .area-mega-groups .mega-link strong{font-size:15.5px}
  .mega-footer{font-size:12px}
  .dropdown-menu .mega-footer>a{font-size:11px}
}
