/*
Theme Name: Pristine Pest Control 2.1.7
Theme URI: https://pristinepestokc.com
Author: Pristine Pest Control
Description: A premium, evidence led WordPress experience for Pristine Pest Control in Oklahoma City.
Version: 2.1.7
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: pristine-pest-control
*/

:root {
  --ink: #0a1820;
  --navy: #071823;
  --navy-soft: #102733;
  --sage: #b7a458;
  --sage-bright: #d3bd66;
  --olive: #4d552f;
  --olive-deep: #272d1c;
  --cream: #f2efe7;
  --paper: #fbfaf5;
  --mist: #dce5e2;
  --muted: #607078;
  --line: rgba(10, 24, 32, 0.14);
  --pad: clamp(24px, 6vw, 96px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif; overflow-x: hidden; }
body::selection { background: var(--sage); color: var(--ink); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.site-header { position: absolute; top: 0; inset-inline: 0; z-index: 50; padding: 18px var(--pad); color: white; }
.header-inner { max-width: 1480px; margin: auto; height: 76px; padding: 0 12px 0 10px; display: flex; align-items: center; gap: clamp(18px, 3.5vw, 52px); border: 1px solid rgba(255,255,255,.18); border-radius: 24px; background: rgba(5, 18, 27, .62); backdrop-filter: blur(18px); box-shadow: 0 10px 40px rgba(0,0,0,.22); }
.brand { display: inline-flex; align-items: center; gap: 11px; font-size: 12px; letter-spacing: .12em; white-space: nowrap; }
.brand b { display: block; font-size: 8px; letter-spacing: .32em; opacity: .68; line-height: 1.3; }
.brand-logo { width: 140px; height: 76px; flex: 0 0 140px; position: relative; }
.brand-logo-image { position: absolute; left: 0; top: 50%; width: 132px; max-width: none; height: auto; transform: translateY(-50%); filter: drop-shadow(0 8px 15px rgba(0,0,0,.32)); }
.brand-mark { width: 29px; height: 29px; display: grid; place-items: center; position: relative; border: 1px solid currentColor; border-radius: 50%; color: var(--sage); }
.brand-mark i { position: absolute; width: 12px; height: 1px; background: currentColor; transform-origin: right center; }
.brand-mark i:nth-child(1) { transform: rotate(0deg); }
.brand-mark i:nth-child(2) { transform: rotate(120deg); }
.brand-mark i:nth-child(3) { transform: rotate(240deg); }
.main-nav { display: flex; align-items: center; justify-content: center; gap: clamp(16px, 2vw, 34px); margin-left: auto; }
.main-nav a { font-size: 11px; color: rgba(255,255,255,.78); transition: color .2s ease; white-space: nowrap; }
.main-nav a:hover { color: var(--sage); }
.header-cta { height: 46px; padding: 0 20px; display: inline-flex; align-items: center; gap: 14px; border-radius: 99px; background: var(--sage); color: var(--ink); font-size: 11px; font-weight: 700; white-space: nowrap; }
.header-cta span { font-size: 17px; }
.header-language { min-height: 44px; padding: 0 12px; display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; border: 1px solid rgba(255,255,255,.35); border-radius: 99px; color: white; font-size: 11px; font-weight: 700; white-space: nowrap; }
.header-language:hover { border-color: var(--sage-bright); color: var(--sage-bright); }
.header-language:focus-visible { outline: 2px solid var(--sage-bright); outline-offset: 4px; }
@media (min-width: 981px) { .site-header .header-inner { gap: clamp(14px, 1.8vw, 28px); } }
.menu-button { display: none; background: none; border: 0; padding: 10px; margin-left: auto; }
.menu-button > span:not(.sr-only) { width: 22px; height: 1px; background: white; display: block; margin: 5px 0; }

.hero { min-height: 900px; height: 100svh; position: relative; display: flex; align-items: center; color: white; overflow: hidden; background: var(--navy); }
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: heroReveal 1.5s cubic-bezier(.2,.75,.2,1) both; }
.hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,14,22,.84) 0%, rgba(3,14,22,.45) 48%, rgba(3,14,22,.12) 76%), linear-gradient(0deg, rgba(3,14,22,.65), transparent 45%); }
.hero-copy { position: relative; z-index: 2; width: min(790px, 64vw); margin-left: var(--pad); padding-top: 90px; }
.hero-kicker { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; color: rgba(255,255,255,.75); font-size: 11px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.hero-kicker span { width: 8px; height: 8px; background: var(--sage); border-radius: 50%; box-shadow: 0 0 20px var(--sage); }
.hero h1 { margin: 0; font-size: clamp(76px, 9.2vw, 148px); font-weight: 570; line-height: .82; letter-spacing: -.072em; }
.hero h1 em, h2 em { color: var(--sage); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.hero-copy > p { max-width: 610px; margin: 36px 0 40px; color: rgba(255,255,255,.76); font-size: clamp(16px, 1.3vw, 20px); line-height: 1.6; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.button { min-height: 54px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; border-radius: 99px; border: 1px solid transparent; font-size: 12px; font-weight: 700; letter-spacing: .02em; transition: transform .25s ease, background .25s ease; }
.button:hover { transform: translateY(-2px); }
.button span { font-size: 18px; }
.button-sage { background: var(--sage); color: var(--ink); }
.button-sage:hover { background: var(--sage-bright); }
.button-glass { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.32); color: white; backdrop-filter: blur(10px); }
.button-dark { background: var(--ink); color: white; }
.hero-principle { position: absolute; right: var(--pad); bottom: 58px; z-index: 2; padding: 20px 24px; border-left: 1px solid rgba(255,255,255,.34); display: flex; flex-direction: column; align-items: flex-start; }
.hero-principle span { margin-bottom: 9px; color: var(--sage); font-size: 9px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.hero-principle strong { font-size: 16px; font-weight: 500; letter-spacing: -.01em; }
.brand-promise-note small { max-width: 245px; margin-top: 11px; color: rgba(255,255,255,.48); font-size: 9px; line-height: 1.45; }
.scroll-cue { position: absolute; left: var(--pad); bottom: 34px; z-index: 3; display: flex; align-items: center; gap: 11px; color: rgba(255,255,255,.45); font-size: 9px; letter-spacing: .18em; text-transform: uppercase; }
.scroll-cue i { width: 44px; height: 1px; background: rgba(255,255,255,.35); position: relative; overflow: hidden; }
.scroll-cue i::after { content: ""; position: absolute; inset-block: 0; width: 12px; background: var(--sage); animation: scan 2s infinite ease-in-out; }

.section-pad { padding: clamp(90px, 11vw, 172px) var(--pad); }
.eyebrow { display: inline-flex; align-items: center; gap: 11px; margin-bottom: 24px; color: #466052; font-size: 10px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 22px; height: 1px; background: currentColor; }
.eyebrow.light { color: var(--sage); }
.manifesto { background: var(--paper); }
.manifesto-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(360px, .68fr); gap: 10vw; align-items: end; }
.manifesto h2, .section-heading h2, .oklahoma-grid h2, .home-contact h2 { margin: 0; font-size: clamp(48px, 6.3vw, 92px); font-weight: 560; letter-spacing: -.065em; line-height: .99; }
.manifesto-grid .lead { margin: 0 0 26px; color: var(--ink); font-size: clamp(19px, 1.65vw, 25px); letter-spacing: -.02em; line-height: 1.45; }
.manifesto-grid p:not(.lead) { color: var(--muted); font-size: 14px; line-height: 1.75; }
.text-link { margin-top: 28px; padding-bottom: 8px; display: inline-flex; align-items: center; gap: 22px; border-bottom: 1px solid var(--ink); font-size: 12px; font-weight: 700; }
.text-link span { font-size: 17px; }
.principle-band { margin-top: 95px; padding: 22px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: #6e7f80; font-size: 10px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.principle-band i { width: 5px; height: 5px; background: var(--sage); border-radius: 50%; }

.pack-section { position: relative; overflow: hidden; background: linear-gradient(135deg, #10140f 0%, var(--olive-deep) 60%, #37391e 100%); color: white; }
.pack-section::after { content: ""; position: absolute; right: -14vw; top: -34vw; width: 65vw; aspect-ratio: 1; border: 1px solid rgba(183,164,88,.12); border-radius: 50%; box-shadow: 0 0 0 9vw rgba(183,164,88,.035), 0 0 0 18vw rgba(183,164,88,.025); pointer-events: none; }
.pack-grid, .brand-pillars { position: relative; z-index: 2; }
.pack-grid { display: grid; grid-template-columns: 1.15fr .58fr; gap: 10vw; align-items: end; }
.pack-story { max-width: 920px; }
.pack-logo { width: clamp(150px, 17vw, 235px); height: auto; margin: 0 0 52px; filter: drop-shadow(0 18px 28px rgba(0,0,0,.32)); }
.pack-story h2 { margin: 0; font-size: clamp(60px, 8vw, 118px); font-weight: 560; letter-spacing: -.07em; line-height: .88; }
.pack-story > p { max-width: 650px; margin: 32px 0 0; color: rgba(255,255,255,.62); font-size: 16px; line-height: 1.75; }
.price-promise-card { min-height: 470px; padding: clamp(30px, 4vw, 52px); display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(211,189,102,.48); background: rgba(4,9,7,.48); box-shadow: inset 0 0 0 8px rgba(183,164,88,.035), 0 30px 90px rgba(0,0,0,.2); }
.price-promise-card > span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; }
.price-promise-card h3 { margin: 18px 0 32px; font-size: clamp(44px, 5.2vw, 76px); font-weight: 650; line-height: .88; letter-spacing: -.065em; text-transform: uppercase; }
.price-promise-card p { margin: 0; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.18); font: italic 400 clamp(23px, 2.4vw, 34px)/1.2 Georgia, serif; }
.price-promise-card p strong { color: var(--sage-bright); font-weight: 400; }
.price-promise-card small { margin-top: 28px; color: rgba(255,255,255,.44); font-size: 10px; line-height: 1.65; }
.brand-pillars { margin-top: 92px; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.brand-pillars article { min-height: 300px; padding: 24px; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); display: flex; flex-direction: column; }
.brand-pillars svg { width: 30px; height: 30px; fill: none; stroke: var(--sage); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.brand-pillars article > span { margin-top: 30px; color: rgba(255,255,255,.28); font: 9px ui-monospace, monospace; }
.brand-pillars h3 { margin: auto 0 12px; font-size: 20px; font-weight: 560; letter-spacing: -.02em; }
.brand-pillars p { margin: 0; color: rgba(255,255,255,.48); font-size: 11px; line-height: 1.65; }

.dark-section { background: var(--navy); color: white; }
.split-heading { display: grid; grid-template-columns: 1.2fr .55fr; gap: 9vw; align-items: end; }
.section-heading > p, .section-heading > div:last-child p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.75; }
.dark-section .section-heading > p { color: rgba(255,255,255,.58); }
.process-rail { margin: 88px 0 110px; display: grid; grid-template-columns: repeat(6, 1fr); }
.process-step { position: relative; min-width: 0; }
.process-step span { display: block; margin-bottom: 15px; color: rgba(255,255,255,.35); font: 10px ui-monospace, monospace; }
.process-step i { display: block; width: 100%; height: 1px; background: rgba(255,255,255,.2); position: relative; }
.process-step i::after { content: ""; position: absolute; left: 0; top: -4px; width: 9px; height: 9px; border-radius: 50%; background: var(--sage); box-shadow: 0 0 18px rgba(200,220,114,.65); }
.process-step strong { display: block; margin-top: 19px; font-size: 13px; font-weight: 600; }
.diagnosis-card { min-height: 510px; display: grid; grid-template-columns: 1.15fr .85fr; border: 1px solid rgba(255,255,255,.14); background: linear-gradient(135deg, rgba(255,255,255,.035), transparent); }
.diagnosis-card > div:last-child { padding: clamp(40px, 6vw, 96px); display: flex; flex-direction: column; justify-content: center; }
.diagnosis-card h3 { margin: 0; font-size: clamp(38px, 4vw, 62px); font-weight: 520; letter-spacing: -.055em; }
.diagnosis-card p { color: rgba(255,255,255,.58); font-size: 15px; line-height: 1.8; }
.light-link { color: white; border-color: rgba(255,255,255,.5); align-self: flex-start; }
.diagnosis-visual { position: relative; overflow: hidden; background: radial-gradient(circle at center, rgba(200,220,114,.16), transparent 47%), repeating-radial-gradient(circle at center, transparent 0 49px, rgba(200,220,114,.14) 50px 51px); }
.diagnosis-visual::before, .diagnosis-visual::after { content: ""; position: absolute; inset: 12%; border: 1px solid rgba(200,220,114,.25); border-radius: 50%; }
.diagnosis-visual::after { inset: 27%; }
.diagnosis-visual i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--sage); box-shadow: 0 0 18px var(--sage); }
.diagnosis-visual i:nth-of-type(1) { left: 33%; top: 26%; }.diagnosis-visual i:nth-of-type(2) { right: 31%; top: 41%; }.diagnosis-visual i:nth-of-type(3) { left: 44%; bottom: 24%; }.diagnosis-visual i:nth-of-type(4) { right: 20%; bottom: 32%; }
.scan-line { position: absolute; left: 50%; top: 50%; width: 42%; height: 1px; background: linear-gradient(90deg, var(--sage), transparent); transform-origin: left center; animation: radar 7s linear infinite; }

.library-section { background: var(--cream); }
.library-section .section-heading { margin-bottom: 66px; }
.pest-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.pest-card { grid-column: span 4; min-height: 540px; position: relative; overflow: hidden; background: var(--navy); color: white; transition: transform .35s ease, box-shadow .35s ease; }
.pest-card:hover { transform: translateY(-8px); box-shadow: 0 28px 70px rgba(7,24,35,.18); }
.pest-card-image { position: absolute; inset: 0; }
.pest-card-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,14,22,.92), transparent 58%); }
.pest-card-image img { object-fit: cover; transition: transform .7s ease; }
.pest-card:hover img { transform: scale(1.045); }
.pest-card-copy { position: absolute; inset: 0; padding: 30px; display: flex; flex-direction: column; justify-content: flex-end; }
.pest-card-copy > span { position: absolute; left: 30px; top: 28px; color: var(--sage); font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.pest-card-copy > em { position: absolute; right: 28px; top: 25px; color: rgba(255,255,255,.48); font: 11px ui-monospace, monospace; }
.pest-card-copy h3 { margin: 0; font-size: clamp(35px, 3vw, 48px); font-weight: 520; letter-spacing: -.05em; }
.pest-card-copy p { margin: 5px 0 27px; color: rgba(255,255,255,.5); font-family: Georgia, serif; font-size: 14px; font-style: italic; }
.pest-card-copy b { padding-top: 18px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.23); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.pest-card-copy b i { color: var(--sage); font-size: 19px; font-style: normal; }
.filter-row { margin-bottom: 42px; display: flex; flex-wrap: wrap; gap: 8px; }
.filter-row button { padding: 10px 16px; border: 1px solid var(--line); border-radius: 99px; background: transparent; color: var(--muted); cursor: pointer; font-size: 10px; font-weight: 700; }
.filter-row button.active { background: var(--ink); color: white; border-color: var(--ink); }

.identify-teaser { min-height: 760px; padding: 90px var(--pad); display: grid; grid-template-columns: 1.05fr .65fr; align-items: center; gap: 7vw; background: #0d2731; color: white; overflow: hidden; }
.identify-teaser > div:last-child { position: relative; z-index: 2; }
.identify-teaser h2 { margin: 0; font-size: clamp(74px, 8.5vw, 132px); font-weight: 550; line-height: .85; letter-spacing: -.075em; }
.identify-teaser p { max-width: 540px; margin: 30px 0; color: rgba(255,255,255,.62); line-height: 1.7; }
.identify-rings { aspect-ratio: 1; position: relative; display: grid; place-items: center; }
.identify-rings i { position: absolute; border: 1px solid rgba(200,220,114,.18); border-radius: 50%; animation: breathe 5s ease-in-out infinite; }
.identify-rings i:nth-child(1) { inset: 2%; }.identify-rings i:nth-child(2) { inset: 19%; animation-delay: .4s; }.identify-rings i:nth-child(3) { inset: 36%; animation-delay: .8s; }
.identify-rings span { width: 23%; aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center; background: var(--sage); color: var(--ink); font: italic 500 clamp(50px, 8vw, 110px) Georgia, serif; box-shadow: 0 0 100px rgba(200,220,114,.14); }

.oklahoma-section { background: var(--paper); }
.oklahoma-label { margin-bottom: 84px; padding-bottom: 18px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); color: #7b898a; font: 10px ui-monospace, monospace; letter-spacing: .1em; }
.oklahoma-label span { color: var(--ink); font-weight: 800; letter-spacing: .45em; }
.oklahoma-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 8vw; }
.oklahoma-grid h2 { font-size: clamp(48px, 5.4vw, 78px); }
.climate-cards { display: grid; grid-template-columns: 1fr 1fr; }
.climate-cards article { min-height: 230px; padding: 28px; border-top: 1px solid var(--line); position: relative; }
.climate-cards article:nth-child(odd) { border-right: 1px solid var(--line); }
.climate-cards b { font-size: 13px; }.climate-cards span { float: right; color: #95a2a1; font: 10px ui-monospace, monospace; }.climate-cards p { margin-top: 70px; color: var(--muted); font-size: 13px; line-height: 1.65; }
.source-note { max-width: 900px; margin: 72px 0 0 auto; color: #7a8788; font-size: 11px; line-height: 1.7; }
.source-note a { color: var(--ink); border-bottom: 1px solid var(--line); }

.evidence-section { background: #e7ece8; }
.evidence-section .section-heading { margin-bottom: 60px; }
.evidence-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.evidence-grid article { min-height: 340px; padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; }
.evidence-grid article > span { color: #74837e; font: 10px ui-monospace, monospace; }
.evidence-grid h3 { margin: 72px 0 14px; font-size: 25px; font-weight: 560; letter-spacing: -.03em; }
.evidence-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.evidence-grid b { margin-top: auto; color: #728063; font-size: 9px; letter-spacing: .15em; }

.home-contact { display: grid; grid-template-columns: .85fr 1.15fr; gap: 9vw; background: var(--sage); }
.home-contact p { max-width: 500px; color: #4c5b4a; line-height: 1.7; }
.contact-note { max-width: 500px; margin-top: 70px; padding-top: 22px; border-top: 1px solid rgba(10,24,32,.2); display: flex; gap: 24px; }
.contact-note i { font: normal 11px ui-monospace, monospace; }.contact-note span { color: #4f5e4d; font-size: 12px; line-height: 1.6; }.contact-note b { display: block; color: var(--ink); }
.lead-form { padding: clamp(28px, 4vw, 58px); background: white; box-shadow: 0 32px 80px rgba(20,39,30,.12); }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px 18px; }
.lead-form label { display: block; }
.lead-form label > span { display: block; margin-bottom: 8px; color: #586665; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.lead-form input:not([type="checkbox"]):not([type="file"]), .lead-form select, .lead-form textarea { width: 100%; padding: 13px 0; border: 0; border-bottom: 1px solid #cbd3ce; border-radius: 0; outline: none; background: transparent; color: var(--ink); font-size: 14px; }
.lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus { border-bottom-color: var(--ink); }
.lead-form .button { width: 100%; margin-top: 24px; border: 0; cursor: pointer; }
.lead-form .button:disabled { opacity: .6; }
.full-field, .upload-field { margin-top: 25px; }
.upload-field { min-height: 90px; border: 1px dashed #aab8b2; display: grid !important; place-items: center; text-align: center; position: relative; cursor: pointer; }
.upload-field input { position: absolute; opacity: 0; inset: 0; width: 100%; cursor: pointer; }
.upload-field b, .upload-field small { display: block; }.upload-field small { margin-top: 5px; color: #7e8986; font-size: 10px; text-transform: none; letter-spacing: 0; }
.consent { margin-top: 24px; display: flex !important; gap: 10px; align-items: flex-start; }
.consent span { margin: 0 !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 500 !important; line-height: 1.5; }
.form-error { color: #9c2f27; font-size: 12px; }.form-success { min-height: 380px; padding: 50px; background: white; display: flex; flex-direction: column; justify-content: center; }.form-success > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; background: var(--sage); font-size: 24px; }.form-success h3 { margin: 24px 0 10px; font-size: 36px; }.form-success p { color: var(--muted); }

.site-footer { padding: 90px var(--pad) 30px; background: #06141d; color: white; }
.footer-top { display: grid; grid-template-columns: .8fr 1.2fr; gap: 9vw; padding-bottom: 90px; }
.brand-light { color: white; }
.footer-brand { display: block; width: fit-content; }
.footer-logo-image { width: clamp(180px, 18vw, 245px); height: auto; filter: drop-shadow(0 14px 25px rgba(0,0,0,.28)); }
.footer-top > div:first-child > p { margin-top: 35px; color: var(--sage); font: italic 400 clamp(24px, 2.4vw, 36px)/1.2 Georgia, serif; }
.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.footer-links > div { display: flex; flex-direction: column; gap: 14px; }
.footer-links span { margin-bottom: 13px; color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.footer-links a, .footer-links address { color: rgba(255,255,255,.66); font-size: 12px; }.footer-links address { font-style: normal; line-height: 1.6; }.footer-links a:hover { color: white; }.footer-links small { color: rgba(255,255,255,.3); font-size: 9px; line-height: 1.5; }
.footer-bottom { padding-top: 22px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.32); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.mobile-actions { display: none; }

@keyframes heroReveal { from { opacity: 0; transform: scale(1.04); } to { opacity: 1; transform: scale(1); } }
@keyframes scan { 0%,100% { left: 0; } 50% { left: calc(100% - 12px); } }
@keyframes radar { to { transform: rotate(360deg); } }
@keyframes breathe { 0%,100% { transform: scale(.96); opacity: .6; } 50% { transform: scale(1.02); opacity: 1; } }

@media (max-width: 1100px) {
  .main-nav { gap: 15px; }.main-nav a { font-size: 10px; }.header-cta { padding: 0 15px; }
  .hero-copy { width: 75vw; }
  .pest-card { grid-column: span 6; }
  .evidence-grid { grid-template-columns: 1fr 1fr; }
  .brand-pillars { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 800px) {
  :root { --pad: 22px; }
  body { padding-bottom: 64px; }
  .site-header { padding-top: 12px; }
  .header-inner { height: 62px; padding-left: 8px; border-radius: 18px; }
  .brand-logo { width: 100px; height: 62px; flex-basis: 100px; }.brand-logo-image { width: 94px; }
  .header-cta { display: none; }.menu-button { display: block; }
  .main-nav { position: absolute; left: var(--pad); right: var(--pad); top: 76px; padding: 22px; display: none; align-items: stretch; flex-direction: column; background: rgba(4,18,27,.97); border: 1px solid rgba(255,255,255,.14); border-radius: 20px; }
  .main-nav.open { display: flex; }.main-nav a { padding: 8px 0; font-size: 13px; }
  .hero { min-height: 760px; height: 100svh; align-items: flex-end; padding-bottom: 125px; }
  .hero-image { object-position: 58% center; }.hero-overlay { background: linear-gradient(0deg, rgba(3,14,22,.94) 8%, rgba(3,14,22,.2) 75%); }
  .hero-copy { width: auto; margin: 0 var(--pad); padding: 0; }.hero h1 { font-size: clamp(64px, 19vw, 92px); }.hero-copy > p { margin: 25px 0; font-size: 15px; }.hero-principle, .scroll-cue { display: none; }.hero-kicker { font-size: 9px; }
  .button-row { align-items: stretch; }.button-row .button { flex: 1 1 auto; }
  .section-pad { padding-block: 85px; }
  .manifesto-grid, .split-heading, .oklahoma-grid, .home-contact, .footer-top, .identify-teaser, .pack-grid { grid-template-columns: 1fr; }
  .manifesto-grid { gap: 45px; }.manifesto h2, .section-heading h2, .oklahoma-grid h2, .home-contact h2 { font-size: 49px; }
  .principle-band { margin-top: 60px; overflow-x: auto; justify-content: flex-start; }.principle-band span { min-width: max-content; }
  .split-heading { gap: 30px; }.process-rail { grid-template-columns: 1fr 1fr; row-gap: 34px; margin: 55px 0 75px; }.diagnosis-card { grid-template-columns: 1fr; }.diagnosis-visual { min-height: 350px; }
  .pest-card { grid-column: span 12; min-height: 480px; }.library-section .section-heading { margin-bottom: 45px; }
  .identify-teaser { min-height: auto; padding: 90px var(--pad); }.identify-rings { width: min(100%, 480px); margin: auto; }.identify-teaser h2 { font-size: 76px; }
  .oklahoma-grid { gap: 60px; }.oklahoma-label { margin-bottom: 55px; }.climate-cards { grid-template-columns: 1fr; }.climate-cards article:nth-child(odd) { border-right: 0; }.climate-cards article { min-height: 190px; }.climate-cards p { margin-top: 45px; }
  .evidence-grid { grid-template-columns: 1fr; }.evidence-grid article { min-height: 275px; }.evidence-grid h3 { margin-top: 45px; }
  .pack-grid { gap: 55px; }.pack-logo { margin-bottom: 42px; }.pack-story h2 { font-size: 64px; }.price-promise-card { min-height: 410px; }.brand-pillars { margin-top: 60px; grid-template-columns: 1fr; }.brand-pillars article { min-height: 215px; }
  .home-contact { gap: 50px; }.contact-note { margin-top: 45px; }.field-grid { grid-template-columns: 1fr; }
  .footer-top { gap: 55px; }.footer-links { grid-template-columns: 1fr 1fr; }.footer-bottom { flex-direction: column; }
  .mobile-actions { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; height: 64px; display: grid; grid-template-columns: .8fr 1.2fr; background: white; border-top: 1px solid #dfe6e1; box-shadow: 0 -10px 30px rgba(8,24,32,.08); }.mobile-actions a { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 11px; font-weight: 800; }.mobile-actions a:last-child { background: var(--sage); }.mobile-actions svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; }
}

/* Sitewide editorial spacing and expanded service system */
h1, h2, h3 { text-wrap: balance; overflow-wrap: normal; word-break: normal; hyphens: none; }
p, li, dd { text-wrap: pretty; }
main section > *, .manifesto-grid > *, .split-heading > *, .inner-hero > *, .commercial-process > *, .sector-hero > *, .sector-disruption > * { min-width: 0; }
.hero h1 { line-height: .92; letter-spacing: -.058em; }
.pack-story h2, .price-promise-card h3 { line-height: .98; letter-spacing: -.052em; }
.identify-teaser h2, .city-id-hero h1, .inner-hero h1, .pest-title h1, .identify-page-intro h1, .contact-intro h1 { line-height: .95; letter-spacing: -.055em; }
.health-hero-copy h1, .health-fact-band h2, .appointment-hero h1, .maximum-section h2 { line-height: .98; letter-spacing: -.055em; }
.section-heading h2, .manifesto h2, .oklahoma-grid h2, .home-contact h2 { line-height: 1.02; }
.button-outline { border-color: var(--ink); color: var(--ink); background: transparent; }

.pack-section { background: var(--cream); color: var(--ink); }
.pack-section::after { border-color: rgba(77,85,47,.12); box-shadow: 0 0 0 9vw rgba(183,164,88,.035), 0 0 0 18vw rgba(77,85,47,.03); }
.pack-grid { grid-template-columns: 1.2fr .62fr; gap: clamp(24px, 4vw, 64px); align-items: stretch; }
.pack-story-photo { max-width: none; min-height: 650px; padding: clamp(34px, 5vw, 74px); position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; color: white; }
.pack-story-image, .pack-story-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.pack-story-image { object-fit: cover; }
.pack-story-shade { background: linear-gradient(90deg, rgba(7,24,35,.92), rgba(7,24,35,.62) 50%, rgba(7,24,35,.16)), linear-gradient(0deg, rgba(7,24,35,.72), transparent 48%); }
.pack-story-photo > *:not(.pack-story-image):not(.pack-story-shade) { position: relative; z-index: 2; }
.pack-story-photo .pack-logo { width: clamp(140px, 14vw, 210px); margin: 0; }
.pack-story-copy { max-width: 680px; margin-top: 120px; }
.pack-story-copy p { max-width: 620px; margin: 26px 0 0; color: rgba(255,255,255,.72); font-size: 16px; line-height: 1.75; }
.price-promise-card { min-height: 650px; background: var(--olive-deep); border: 0; color: white; }
.price-promise-card h3 { font-size: clamp(38px, 4vw, 64px); }
.brand-pillars { margin-top: 28px; border-color: rgba(10,24,32,.16); }
.brand-pillars article { min-height: 260px; border-color: rgba(10,24,32,.16); background: var(--paper); }
.brand-pillars article:nth-child(even) { background: var(--sage); }
.brand-pillars article > span { color: rgba(10,24,32,.35); }
.brand-pillars h3 { font-size: 19px; }
.brand-pillars p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.brand-pillars svg { stroke: var(--olive); }
.diagnosis-photo { min-height: 470px; overflow: hidden; }
.diagnosis-photo img { width: 100%; height: 100%; object-fit: cover; }

.contrast-split { display: grid; grid-template-columns: 1fr .72fr; gap: 9vw; align-items: end; background: linear-gradient(90deg, var(--paper) 0 65%, var(--sage) 65%); }
.contrast-split h2 { max-width: 880px; margin: 0; font-size: clamp(50px, 6vw, 90px); line-height: 1; letter-spacing: -.06em; font-weight: 550; }
.contrast-split > p, .contrast-split > div:last-child { padding: clamp(28px, 4vw, 60px); background: var(--sage); }
.contrast-split .lead { margin: 0; font-size: clamp(19px, 1.8vw, 26px); line-height: 1.55; }

.program-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.program-grid article { min-height: 600px; padding: clamp(26px, 4vw, 54px); border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); display: flex; flex-direction: column; }
.program-grid article > span { color: var(--sage); font: 10px ui-monospace, monospace; }
.program-grid small { margin-top: 70px; color: rgba(255,255,255,.48); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.program-grid h2 { margin: 12px 0 20px; color: var(--sage); font-size: clamp(50px, 5vw, 76px); line-height: 1; letter-spacing: -.055em; }
.program-grid p { color: rgba(255,255,255,.62); line-height: 1.75; }
.program-grid ul { margin: 30px 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.13); }
.program-grid li { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.72); font-size: 12px; }
.program-grid a { margin-top: auto; color: var(--sage); font-size: 12px; font-weight: 700; }
.program-promise { display: grid; grid-template-columns: 1fr .65fr; gap: 9vw; align-items: center; background: var(--cream); }
.program-promise h2 { margin: 0; font-size: clamp(50px, 6vw, 90px); line-height: 1; letter-spacing: -.06em; }
.program-promise p { color: var(--muted); line-height: 1.75; }
.program-promise aside { padding: clamp(38px, 5vw, 72px); background: var(--olive-deep); color: white; }
.program-promise aside strong { display: block; font: italic 400 clamp(34px, 4vw, 58px)/1.05 Georgia, serif; }
.program-promise aside strong:last-of-type { color: var(--sage); }

.education-paths { background: var(--paper); }
.education-paths .section-heading, .article-section .section-heading { margin-bottom: 64px; }
.education-path-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.education-path-grid a { min-height: 360px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .25s; }
.education-path-grid a:nth-child(even), .education-path-grid a:hover { background: var(--sage); }
.education-path-grid span { color: #728078; font: 10px ui-monospace, monospace; }
.education-path-grid h3 { margin: 85px 0 14px; font-size: 27px; line-height: 1.12; }
.education-path-grid p { color: var(--muted); line-height: 1.7; }
.education-path-grid b { margin-top: auto; font-size: 12px; }
.article-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }
.article-grid a { min-height: 360px; padding: clamp(28px, 4vw, 52px); display: flex; flex-direction: column; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); }
.article-grid span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.article-grid h3 { max-width: 640px; margin: 70px 0 16px; font-size: clamp(25px, 3vw, 40px); line-height: 1.12; }
.article-grid p { max-width: 600px; color: rgba(255,255,255,.55); line-height: 1.75; }
.article-grid b { margin-top: auto; color: var(--sage); font-size: 12px; }
.education-health { display: grid; grid-template-columns: 1fr .7fr; gap: 9vw; align-items: end; background: linear-gradient(90deg, var(--sage) 0 40%, var(--cream) 40%); }
.education-health h2 { margin: 0; font-size: clamp(48px, 5vw, 78px); line-height: 1; letter-spacing: -.055em; }
.education-health > div:last-child { padding: clamp(28px, 4vw, 58px); background: var(--cream); }
.education-health p { color: var(--muted); line-height: 1.8; }

.commercial-hero { min-height: 900px; position: relative; display: flex; align-items: flex-end; overflow: hidden; background: var(--navy); color: white; }
.commercial-hero > img, .commercial-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.commercial-hero > img { object-fit: cover; }
.commercial-hero-shade { background: linear-gradient(90deg, rgba(7,24,35,.94), rgba(7,24,35,.55) 58%, rgba(7,24,35,.12)), linear-gradient(0deg, rgba(7,24,35,.72), transparent 48%); }
.commercial-hero-copy { position: relative; z-index: 2; max-width: 1000px; padding: 190px var(--pad) 100px; }
.commercial-hero h1 { margin: 0; font-size: clamp(70px, 8.5vw, 132px); line-height: .94; letter-spacing: -.06em; font-weight: 550; }
.commercial-hero h1 em { color: var(--sage); font-family: Georgia, serif; font-weight: 400; }
.commercial-hero p { max-width: 680px; margin: 32px 0; color: rgba(255,255,255,.72); font-size: 18px; line-height: 1.7; }
.sector-section .section-heading { margin-bottom: 66px; }
.sector-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }
.sector-grid a { min-height: 590px; display: grid; grid-template-rows: 235px 1fr; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); transition: background .25s; overflow: hidden; }
.sector-grid a:hover { background: var(--olive-deep); }
.sector-card-photo, .sector-hero-image, .sector-detail-photo { position: relative; overflow: hidden; background: #17231d; }
.sector-card-photo img, .sector-hero-image img, .sector-detail-photo img { position: absolute; top: 0; width: 200%; max-width: none; height: 100%; object-fit: cover; }
.sector-photo-left img { left: 0; }
.sector-photo-right img { left: -100%; }
.sector-card-copy { padding: 28px 32px 32px; display: flex; flex-direction: column; }
.sector-grid span { color: var(--sage); font: 10px ui-monospace, monospace; }
.sector-grid small { margin-top: 34px; color: rgba(255,255,255,.42); text-transform: uppercase; letter-spacing: .12em; }
.sector-grid h3 { margin: 10px 0 17px; color: var(--sage); font-size: 33px; line-height: 1.05; }
.sector-grid p { color: rgba(255,255,255,.55); font-size: 13px; line-height: 1.75; }
.sector-grid b { margin-top: auto; font-size: 12px; }
.sector-carousel { display: grid; grid-template-areas: "previous stage next" ". dots ."; grid-template-columns: minmax(140px, .28fr) minmax(0, 1.55fr) minmax(140px, .28fr); gap: 28px clamp(20px, 3vw, 48px); align-items: center; }
.sector-carousel-side { min-width: 0; padding: 28px 0; display: flex; flex-direction: column; gap: 12px; appearance: none; border: 0; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); background: transparent; color: white; cursor: pointer; }
.sector-carousel-side span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.sector-carousel-side strong { max-width: 220px; font-size: clamp(21px, 2.4vw, 36px); font-weight: 520; line-height: 1.02; letter-spacing: -.035em; overflow-wrap: normal; word-break: normal; }
.sector-carousel-side:hover strong, .sector-carousel-side:focus-visible strong { color: var(--sage-bright); }
.sector-carousel-previous { grid-area: previous; align-items: flex-start; text-align: left; }
.sector-carousel-next { grid-area: next; align-items: flex-end; text-align: right; }
.sector-carousel-stage { grid-area: stage; min-width: 0; }
.sector-carousel-slide[hidden] { display: none; }
.sector-carousel-slide.is-active { animation: sector-carousel-in .42s ease both; }
.sector-carousel-slide a { min-height: clamp(570px, 53vw, 720px); position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: flex-end; border: 1px solid rgba(255,255,255,.18); background: #17231d; color: white; }
.sector-carousel-image, .sector-carousel-shade { position: absolute; inset: 0; }
.sector-carousel-image img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: transform .7s ease; }
.sector-carousel-slide a:hover .sector-carousel-image img { transform: scale(1.025); }
.sector-carousel-shade { z-index: 1; background: linear-gradient(0deg, rgba(5,19,28,.94) 0, rgba(5,19,28,.68) 34%, rgba(5,19,28,.08) 68%), linear-gradient(90deg, rgba(5,19,28,.42), transparent 64%); }
.sector-carousel-copy { position: relative; z-index: 2; max-width: 720px; padding: clamp(34px, 5vw, 68px); }
.sector-carousel-copy > span { display: block; color: var(--sage-bright); font: 10px ui-monospace, monospace; letter-spacing: .1em; }
.sector-carousel-copy small { display: block; margin-top: 28px; color: rgba(255,255,255,.62); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.sector-carousel-copy h3 { margin: 10px 0 18px; color: var(--sage-bright); font-size: clamp(48px, 6vw, 84px); font-weight: 530; line-height: .96; letter-spacing: -.055em; }
.sector-carousel-copy p { max-width: 600px; margin: 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.75; }
.sector-carousel-copy b { display: inline-block; margin-top: 28px; font-size: 12px; }
.sector-carousel-dots { grid-area: dots; display: flex; justify-content: center; gap: 10px; }
.sector-carousel-dots button { width: 34px; height: 3px; padding: 0; border: 0; background: rgba(255,255,255,.22); cursor: pointer; transition: background .2s, width .2s; }
.sector-carousel-dots button.is-active { width: 58px; background: var(--sage-bright); }
.sector-carousel-side:focus-visible, .sector-carousel-dots button:focus-visible, .sector-carousel-slide a:focus-visible { outline: 2px solid var(--sage-bright); outline-offset: 5px; }
@keyframes sector-carousel-in { from { opacity: .3; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
.commercial-process { display: grid; grid-template-columns: 1.05fr .95fr; gap: 8vw; align-items: center; background: var(--cream); }
.commercial-process-image { min-height: 680px; }
.commercial-process-image img { width: 100%; height: 100%; object-fit: cover; }
.commercial-process h2 { margin: 0 0 42px; font-size: clamp(44px, 5vw, 72px); line-height: 1; letter-spacing: -.055em; }
.commercial-process ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.commercial-process li { padding: 20px 0; display: grid; grid-template-columns: 48px 1fr; gap: 16px; border-bottom: 1px solid var(--line); }
.commercial-process li > span { color: var(--olive); font: 10px ui-monospace, monospace; }
.commercial-process h3 { margin: 0 0 7px; font-size: 19px; }
.commercial-process li p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.commercial-cta { min-height: 390px; padding: 80px var(--pad); display: flex; align-items: center; justify-content: space-between; gap: 50px; background: linear-gradient(110deg, var(--olive-deep), #172c31); color: white; }
.commercial-cta h2 { margin: 0; font-size: clamp(48px, 6vw, 86px); line-height: 1; letter-spacing: -.055em; }

.sector-hero { min-height: 840px; padding-top: 120px; display: grid; grid-template-columns: 1fr 1fr; background: var(--navy); color: white; }
.sector-hero-copy { padding: clamp(120px, 12vw, 190px) var(--pad) 90px; display: flex; flex-direction: column; justify-content: flex-end; }
.sector-hero h1 { margin: 0; font-size: clamp(55px, 6vw, 92px); line-height: .98; letter-spacing: -.058em; }
.sector-hero p { max-width: 660px; margin: 30px 0; color: rgba(255,255,255,.62); line-height: 1.75; }
.sector-hero .button { align-self: flex-start; }
.sector-hero-image { min-height: 720px; overflow: hidden; }
.sector-hero-image img { height: 100%; object-fit: cover; }
.sector-stakes { display: grid; grid-template-columns: 1fr .72fr; gap: 9vw; align-items: end; background: linear-gradient(90deg, var(--paper) 0 66%, var(--sage) 66%); }
.sector-stakes h2 { margin: 0; font-size: clamp(48px, 6vw, 88px); line-height: 1; letter-spacing: -.06em; }
.sector-stakes .lead { margin: 0; padding: clamp(32px, 5vw, 66px); background: var(--sage); font-size: clamp(18px, 1.7vw, 25px); line-height: 1.55; }
.sector-focus .section-heading { margin-bottom: 64px; }
.focus-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }
.focus-grid article { min-height: 330px; padding: 28px; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); }
.focus-grid span { color: var(--sage); font: 10px ui-monospace, monospace; }
.focus-grid h3 { margin: 85px 0 14px; font-size: 24px; line-height: 1.1; }
.focus-grid p { color: rgba(255,255,255,.5); font-size: 12px; line-height: 1.7; }
.sector-disruption { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; background: var(--cream); }
.sector-disruption > div:first-child { min-height: 640px; }
.sector-disruption img { height: 100%; object-fit: cover; }
.sector-disruption h2 { margin: 0 0 35px; font-size: clamp(46px, 5vw, 76px); line-height: 1; letter-spacing: -.055em; }
.sector-disruption ul { margin: 0 0 28px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.sector-disruption li { padding: 16px 0; border-bottom: 1px solid var(--line); font-weight: 600; }
.sector-disruption p { color: var(--muted); line-height: 1.75; }
.sector-next { min-height: 480px; padding: 90px var(--pad); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 70px; background: var(--olive-deep); color: white; }
.sector-next h2 { margin: 0; font-size: clamp(52px, 6vw, 90px); line-height: 1; letter-spacing: -.06em; }
.sector-next p { max-width: 680px; color: rgba(255,255,255,.58); line-height: 1.75; }

.about-proof { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; background: var(--cream); }
.about-proof-image { min-height: 700px; }
.about-proof-image img { width: 100%; height: 100%; object-fit: cover; }
.about-proof h2 { margin: 0 0 40px; font-size: clamp(48px, 5vw, 78px); line-height: 1; letter-spacing: -.055em; }
.about-detail-list { margin-bottom: 38px; border-top: 1px solid var(--line); }
.about-detail-list article { padding: 20px 0; display: grid; grid-template-columns: 45px 1fr; border-bottom: 1px solid var(--line); }
.about-detail-list span { color: var(--olive); font: 10px ui-monospace, monospace; grid-row: 1 / 3; }
.about-detail-list h3 { margin: 0 0 7px; font-size: 19px; }
.about-detail-list p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.office-band { min-height: 360px; padding: 80px var(--pad); display: grid; grid-template-columns: 1fr .5fr; align-items: center; gap: 8vw; background: linear-gradient(105deg, var(--olive-deep), #17313a); color: white; }
.office-band h2 { margin: 0; font-size: clamp(45px, 5vw, 76px); line-height: 1; letter-spacing: -.055em; }
.office-band address { padding: 38px; border-left: 1px solid var(--sage); color: rgba(255,255,255,.7); font-style: normal; line-height: 1.8; }
.office-band a { color: var(--sage); font-weight: 700; }
.diagnosis-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; }
.approach-photo { min-height: 650px; }
.approach-photo img { width: 100%; height: 100%; object-fit: cover; }
.diagnosis-intro h2 { margin: 0; font-size: clamp(50px, 5vw, 78px); line-height: 1; letter-spacing: -.055em; }
.diagnosis-intro p { color: var(--muted); line-height: 1.75; }
.diagnosis-intro .lead { color: var(--ink); font-size: clamp(19px, 1.7vw, 25px); line-height: 1.5; }
.two-tone-section { background: linear-gradient(115deg, var(--paper) 0 70%, var(--cream) 70%); }
.service-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.service-paths a { min-height: 440px; padding: clamp(32px, 5vw, 64px); display: flex; flex-direction: column; background: var(--cream); }
.service-paths a:last-child { background: var(--olive-deep); color: white; }
.service-paths span { color: var(--olive); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.service-paths a:last-child span { color: var(--sage); }
.service-paths h3 { margin: 90px 0 18px; font-size: clamp(32px, 4vw, 54px); line-height: 1.05; }
.service-paths p { color: var(--muted); line-height: 1.75; }
.service-paths a:last-child p { color: rgba(255,255,255,.56); }
.service-paths b { margin-top: auto; font-size: 12px; }

@media (max-width: 1250px) {
  .header-inner { gap: 18px; }
  .main-nav { gap: 15px; }
  .main-nav a { font-size: 9px; }
  .header-cta { padding: 0 14px; }
}

@media (max-width: 980px) {
  .program-grid, .sector-grid { grid-template-columns: 1fr 1fr; }
  .education-path-grid, .focus-grid { grid-template-columns: 1fr 1fr; }
  .commercial-process, .sector-disruption, .about-proof, .diagnosis-intro { gap: 5vw; }
  .site-header .menu-button { display: block; }
  .site-header .header-cta { display: none; }
  .site-header .main-nav { position: absolute; left: var(--pad); right: var(--pad); top: 94px; padding: 22px; display: none; align-items: stretch; flex-direction: column; background: rgba(4,18,27,.97); border: 1px solid rgba(255,255,255,.14); border-radius: 20px; }
  .site-header .main-nav.open { display: flex; }
  .site-header .main-nav a { padding: 8px 0; font-size: 13px; }
}

@media (max-width: 800px) {
  .hero h1 { font-size: clamp(58px, 17vw, 82px); line-height: .96; }
  .inner-hero h1, .identify-page-intro h1, .contact-intro h1 { font-size: clamp(48px, 14vw, 68px); line-height: .98; }
  .pack-story-photo { min-height: 620px; padding: 28px; }
  .pack-story-copy { margin-top: 100px; }
  .pack-story h2 { font-size: clamp(48px, 14vw, 64px); line-height: 1; }
  .price-promise-card { min-height: 460px; }
  .brand-pillars article { min-height: 200px; }
  .diagnosis-photo { min-height: 330px; }
  .contrast-split, .program-promise, .education-health, .sector-stakes { grid-template-columns: 1fr; background: var(--paper); }
  .program-grid, .education-path-grid, .article-grid, .sector-grid, .focus-grid, .commercial-process, .sector-hero, .sector-disruption, .sector-next, .about-proof, .office-band, .diagnosis-intro, .service-paths { grid-template-columns: 1fr; }
  .program-grid article { min-height: 500px; }
  .education-path-grid a, .article-grid a { min-height: 300px; }
  .commercial-hero { min-height: 780px; }
  .commercial-hero-copy { padding: 150px var(--pad) 80px; }
  .commercial-hero h1 { font-size: clamp(52px, 14vw, 72px); line-height: .98; }
  .commercial-process-image, .sector-disruption > div:first-child, .about-proof-image, .approach-photo { min-height: 420px; }
  .commercial-cta { min-height: 420px; flex-direction: column; align-items: flex-start; justify-content: center; }
  .commercial-cta .button { width: 100%; }
  .sector-hero { padding-top: 95px; }
  .sector-hero-copy { padding: 80px var(--pad); }
  .sector-hero h1 { font-size: clamp(48px, 13vw, 68px); }
  .sector-hero-image { min-height: 440px; }
  .sector-next { min-height: 520px; }
  .office-band address { border-left: 0; border-top: 1px solid var(--sage); padding: 30px 0 0; }
  .service-paths a { min-height: 380px; }
}

/* Oklahoma City identification and health conversion system */
.identification-center, .health-center-page, .appointment-page { background: var(--paper); }
.city-id-hero { min-height: 820px; padding: 190px var(--pad) 100px; position: relative; display: grid; grid-template-columns: 1.2fr .45fr; align-items: end; gap: 9vw; overflow: hidden; background: var(--navy); color: white; }
.city-id-hero > *:not(.city-grid) { position: relative; z-index: 2; }
.city-id-hero h1 { max-width: 990px; margin: 0; font-size: clamp(70px, 8.8vw, 132px); font-weight: 540; letter-spacing: -.07em; line-height: .86; }
.city-id-hero h1 em { color: var(--sage); font-family: Georgia, serif; font-weight: 400; }
.city-id-hero > div > p { max-width: 690px; margin: 34px 0; color: rgba(255,255,255,.64); font-size: 17px; line-height: 1.7; }
.city-id-hero aside { padding: 28px; border: 1px solid rgba(255,255,255,.17); background: rgba(255,255,255,.04); backdrop-filter: blur(12px); }
.city-id-hero aside span, .city-id-hero aside strong { display: block; }.city-id-hero aside span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }.city-id-hero aside strong { margin: 55px 0 13px; font-size: 24px; line-height: 1.2; }.city-id-hero aside p { color: rgba(255,255,255,.52); font-size: 13px; line-height: 1.7; }
.city-grid { position: absolute; inset: 0; opacity: .7; }.city-grid i { position: absolute; background: rgba(255,255,255,.04); }.city-grid i:nth-child(1), .city-grid i:nth-child(2) { inset-block: 0; width: 1px; }.city-grid i:nth-child(1) { left: 33.333%; }.city-grid i:nth-child(2) { left: 66.666%; }.city-grid i:nth-child(3), .city-grid i:nth-child(4) { inset-inline: 0; height: 1px; }.city-grid i:nth-child(3) { top: 33.333%; }.city-grid i:nth-child(4) { top: 66.666%; }
.id-intro { background: var(--cream); }.id-intro .section-heading { margin-bottom: 65px; }
.center-index { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.center-index a { min-height: 86px; padding: 18px; display: flex; align-items: flex-end; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; transition: background .2s; }.center-index a:hover { background: var(--sage); }
.id-family .section-heading { margin-bottom: 70px; }.id-family-dark { background: var(--navy); color: white; }.id-family-dark .section-heading p { color: rgba(255,255,255,.56); }
.comparison-tool { margin-bottom: 90px; border: 1px solid var(--line); background: white; }.comparison-tabs { padding: 10px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; border-bottom: 1px solid var(--line); }.comparison-tabs button { min-height: 48px; border: 0; background: #eff2ed; cursor: pointer; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }.comparison-tabs button.active { background: var(--ink); color: white; }.comparison-stage { min-height: 560px; display: grid; grid-template-columns: 1.1fr .9fr; }.comparison-stage > img { width: 100%; height: 100%; min-height: 560px; object-fit: cover; }.comparison-stage > div { padding: clamp(35px, 6vw, 90px); display: flex; flex-direction: column; justify-content: center; }.comparison-stage > div > span { color: #63726d; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.comparison-stage h3 { margin: 14px 0 4px; font-size: clamp(42px, 5vw, 74px); font-weight: 540; letter-spacing: -.06em; }.scientific { color: #58715f; font: italic 400 16px Georgia, serif; }.comparison-stage p:not(.scientific) { color: var(--muted); line-height: 1.7; }.comparison-stage .button { align-self: flex-start; margin-top: 18px; }.certainty-note { margin: 0; padding: 20px 24px; border-top: 1px solid var(--line); color: #697670; font-size: 11px; line-height: 1.65; }
.identification-list { display: grid; gap: 24px; }.identification-card { min-height: 650px; display: grid; grid-template-columns: .9fr 1.1fr; border: 1px solid var(--line); background: white; color: var(--ink); }.identification-image { min-height: 650px; overflow: hidden; background: #e8e6e0; }.identification-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }.identification-card:hover .identification-image img { transform: scale(1.025); }.identification-copy { padding: clamp(34px, 5vw, 76px); }.specimen-label { color: #61756a; font-size: 9px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }.identification-copy h3 { margin: 18px 0 2px; font-size: clamp(40px, 4vw, 64px); font-weight: 540; letter-spacing: -.055em; }.identification-copy dl { margin: 40px 0 28px; border-top: 1px solid var(--line); }.identification-copy dl div { padding: 13px 0; display: grid; grid-template-columns: 155px 1fr; gap: 24px; border-bottom: 1px solid var(--line); }.identification-copy dt { color: #6b7975; font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.identification-copy dd { margin: 0; color: #526169; font-size: 12px; line-height: 1.55; }.locality-note { padding: 15px; background: #eef1e7; color: #536151; font-size: 11px; line-height: 1.6; }.identification-copy .button { margin-top: 12px; }
.id-family-dark .identification-card { border-color: rgba(255,255,255,.13); }.risk-separator { margin-top: 35px; padding: 32px; display: grid; grid-template-columns: .35fr 1fr; gap: 4vw; background: var(--sage); color: var(--ink); }.risk-separator b { font-size: 25px; }.risk-separator p { margin: 0; color: #506050; line-height: 1.75; }
.source-strip { padding: 24px 0; display: flex; flex-wrap: wrap; align-items: center; gap: 18px 30px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.source-strip > span { color: #77837f; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.source-strip a { font-size: 11px; font-weight: 700; border-bottom: 1px solid currentColor; }.id-family .source-strip { margin-top: 55px; }.id-family-dark .source-strip { border-color: rgba(255,255,255,.15); }.id-family-dark .source-strip span { color: rgba(255,255,255,.4); }
.termite-center { padding: clamp(95px, 11vw, 170px) var(--pad); display: grid; grid-template-columns: .84fr 1.16fr; gap: 7vw; background: #15303a; color: white; }.termite-copy { position: sticky; top: 45px; align-self: start; }.termite-copy h2 { margin: 0; font-size: clamp(46px, 4.8vw, 72px); line-height: .98; letter-spacing: -.055em; }.termite-copy > p { color: rgba(255,255,255,.58); line-height: 1.8; }.termite-copy .button-row { margin-top: 35px; }.termite-evidence { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.termite-evidence article { background: white; color: var(--ink); }.termite-evidence img { width: 100%; aspect-ratio: 1.15; object-fit: cover; }.termite-evidence article > div { padding: 22px; }.termite-evidence span { color: #7f8b87; font: 10px ui-monospace, monospace; }.termite-evidence h3 { margin: 14px 0 8px; font-size: 25px; }.termite-evidence p { color: var(--muted); font-size: 11px; line-height: 1.6; }.termite-clarifier, .termite-conversion, .termite-center > .source-strip { grid-column: 2; }.termite-clarifier { margin-top: 20px; padding: 30px; border: 1px solid rgba(255,255,255,.16); }.termite-clarifier b { color: var(--sage); font-size: 24px; }.termite-clarifier p { color: rgba(255,255,255,.56); line-height: 1.65; }.termite-conversion { margin-top: 18px; padding: 35px; display: flex; align-items: end; justify-content: space-between; gap: 35px; background: var(--sage); color: var(--ink); }.termite-conversion span { font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.termite-conversion h3 { margin: 12px 0; font-size: 34px; }.termite-conversion p { max-width: 650px; color: #50604f; line-height: 1.7; }.termite-conversion .button-sage { background: var(--ink); color: white; }
.ant-tool-wrap { margin-top: 80px; padding: clamp(30px, 6vw, 78px); display: grid; grid-template-columns: .7fr 1.3fr; gap: 7vw; background: #e9eee8; }.ant-tool-wrap > div > h2 { margin: 0; font-size: clamp(44px, 5vw, 72px); letter-spacing: -.06em; }.ant-tool-wrap > div > p { color: var(--muted); line-height: 1.75; }.ant-question, .ant-result { padding: 38px; background: white; box-shadow: 0 25px 70px rgba(10,24,32,.08); }.ant-question > p { color: #74817d; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.ant-question h3, .ant-result h3 { font-size: 34px; letter-spacing: -.035em; }.ant-result-profile { padding: 16px; display: grid; grid-template-columns: 115px 1fr; align-items: center; gap: 20px; background: #eef1ed; }.ant-result-profile img { width: 115px; aspect-ratio: 1; object-fit: cover; }.ant-result-profile p { color: var(--muted); font-size: 12px; line-height: 1.6; }
.health-feature-index, .home-health { padding: clamp(95px, 11vw, 165px) var(--pad); background: var(--navy); color: white; }.health-feature-index .section-heading, .home-health .section-heading { margin-bottom: 65px; }.health-feature-index .section-heading p, .home-health .section-heading p { color: rgba(255,255,255,.56); }.health-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.health-feature-grid > a { min-height: 560px; position: relative; overflow: hidden; background: #132932; }.health-feature-grid > a::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(5,18,27,.94), transparent 70%); }.health-feature-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }.health-feature-grid a:hover img { transform: scale(1.04); }.health-feature-grid a > div { position: absolute; inset: auto 0 0; z-index: 2; padding: 30px; }.health-feature-grid span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.health-feature-grid h3 { margin: 14px 0 30px; font-size: clamp(28px, 2.6vw, 40px); font-weight: 520; line-height: 1.05; }.health-feature-grid b { padding-top: 18px; display: block; border-top: 1px solid rgba(255,255,255,.25); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }.not-sure-cta { min-height: 520px; padding: 85px var(--pad); display: grid; grid-template-columns: 1.2fr auto; align-items: center; gap: 70px; background: #102f34; color: white; }.not-sure-cta h2 { margin: 0; font-size: clamp(52px, 6vw, 90px); letter-spacing: -.065em; }.not-sure-cta p { max-width: 770px; color: rgba(255,255,255,.58); line-height: 1.8; }

.health-hero { min-height: 900px; position: relative; display: flex; align-items: flex-end; overflow: hidden; background: var(--navy); color: white; }.health-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }.health-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,15,23,.93), rgba(3,15,23,.5) 54%, rgba(3,15,23,.12)), linear-gradient(0deg, rgba(3,15,23,.8), transparent 60%); }.health-hero-copy { position: relative; z-index: 2; width: min(960px, 72vw); padding: 180px var(--pad) 110px; }.health-hero-copy h1 { margin: 0; font-size: clamp(64px, 7.5vw, 112px); font-weight: 540; line-height: .9; letter-spacing: -.07em; }.health-hero-copy > p { max-width: 730px; margin: 30px 0 35px; color: rgba(255,255,255,.7); font-size: 17px; line-height: 1.7; }.health-hero-rule { position: absolute; z-index: 2; right: var(--pad); bottom: 45px; width: min(320px, 25vw); padding: 24px; border: 1px solid rgba(255,255,255,.2); background: rgba(4,18,27,.65); backdrop-filter: blur(12px); }.health-hero-rule span, .health-hero-rule b { display: block; }.health-hero-rule span { color: var(--sage); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.health-hero-rule b { margin-top: 18px; line-height: 1.5; }
.health-intro .section-heading { margin-bottom: 65px; }.health-evidence-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }.health-evidence-grid article { background: #eef0ea; }.health-evidence-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }.health-evidence-grid article > div { min-height: 200px; padding: 22px; }.health-evidence-grid span, .risk-card-grid > article > span { color: #7d8a86; font: 10px ui-monospace, monospace; }.health-evidence-grid h3 { margin: 30px 0 10px; font-size: 25px; }.health-evidence-grid p { color: var(--muted); font-size: 12px; line-height: 1.65; }
.health-fact-band { min-height: 440px; padding: 80px var(--pad); display: grid; grid-template-columns: 1.15fr .55fr; align-items: center; gap: 9vw; background: var(--sage); }.health-fact-band span { font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }.health-fact-band h2 { max-width: 890px; margin: 18px 0 0; font-size: clamp(55px, 7vw, 100px); line-height: .92; letter-spacing: -.065em; }.health-fact-band p { color: #4c5d4f; line-height: 1.8; }
.health-guidance { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; background: var(--cream); }.health-guidance-main h2 { margin: 0; font-size: clamp(48px, 5vw, 74px); line-height: .98; letter-spacing: -.06em; }.health-guidance-main > p { color: var(--muted); line-height: 1.8; }.health-medical-notice { margin-top: 40px; padding: 25px; border: 1px solid #bdc9bf; background: white; }.health-medical-notice span { color: #536b5e; font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.health-medical-notice p { margin: 14px 0 0; color: #5b6965; font-size: 12px; line-height: 1.7; }.health-checklist { border-top: 1px solid var(--line); }.health-checklist > span { display: block; padding: 15px 0; color: #66746f; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.health-checklist article { padding: 25px 0; display: grid; grid-template-columns: 45px 1fr; border-top: 1px solid var(--line); }.health-checklist article > b { color: #7d8985; font: 10px ui-monospace, monospace; }.health-checklist h3 { margin: 0; font-size: 24px; }.health-checklist p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.health-faq { background: white; }.health-faq .section-heading { margin-bottom: 60px; }.faq-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.faq-grid article { min-height: 230px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.faq-grid h3 { margin: 45px 0 14px; font-size: 24px; }.faq-grid p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.species-panel-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }.species-panel-grid article { background: #eff1ec; }.species-panel-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }.species-panel-grid article > div { min-height: 220px; padding: 24px; }.species-panel-grid span { color: #60766a; font: italic 13px Georgia, serif; }.species-panel-grid h3 { margin: 22px 0 10px; font-size: 28px; }.species-panel-grid p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.health-risk-section { background: #15303a; color: white; }.health-risk-section .section-heading { margin-bottom: 65px; }.health-risk-section .section-heading p { color: rgba(255,255,255,.58); }.risk-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }.risk-card-grid article { min-height: 310px; padding: 28px; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); }.risk-card-grid > article > span { color: var(--sage); }.risk-card-grid h3 { margin: 80px 0 14px; font-size: 26px; }.risk-card-grid p { color: rgba(255,255,255,.56); font-size: 12px; line-height: 1.75; }.health-risk-section .health-medical-notice { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.17); }.health-risk-section .health-medical-notice span { color: var(--sage); }.health-risk-section .health-medical-notice p { color: rgba(255,255,255,.58); }
.mosquito-breeding { display: grid; grid-template-columns: 1fr .8fr; gap: 9vw; background: var(--navy); color: white; }.mosquito-breeding h2 { margin: 0; font-size: clamp(50px, 6vw, 88px); line-height: .96; letter-spacing: -.065em; }.mosquito-breeding p { color: rgba(255,255,255,.57); line-height: 1.8; }.breeding-list { border-top: 1px solid rgba(255,255,255,.18); }.breeding-list span { min-height: 78px; display: flex; align-items: center; gap: 28px; border-bottom: 1px solid rgba(255,255,255,.18); font-size: 17px; }.breeding-list b { color: var(--sage); font: 9px ui-monospace, monospace; }
.health-sources { padding: 30px var(--pad); background: #edf0e8; }.health-closing { min-height: 520px; padding: 80px var(--pad); display: grid; grid-template-columns: 1.2fr auto; align-items: center; gap: 70px; background: var(--navy); color: white; }.health-closing h2 { max-width: 930px; margin: 0; font-size: clamp(55px, 6.5vw, 96px); line-height: .92; letter-spacing: -.07em; }.health-closing p { max-width: 760px; color: rgba(255,255,255,.6); line-height: 1.8; }

.appointment-hero { min-height: 760px; padding: 180px var(--pad) 100px; display: grid; grid-template-columns: 1.15fr .5fr; align-items: end; gap: 9vw; background: var(--navy); color: white; }.appointment-hero h1 { max-width: 950px; margin: 0; font-size: clamp(68px, 8vw, 120px); font-weight: 540; line-height: .88; letter-spacing: -.07em; }.appointment-hero > div > p { max-width: 760px; color: rgba(255,255,255,.64); font-size: 17px; line-height: 1.75; }.appointment-hero aside { padding: 30px; border: 1px solid rgba(255,255,255,.16); }.appointment-hero aside > span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.appointment-hero ol { padding-left: 22px; color: rgba(255,255,255,.65); line-height: 2.2; }.appointment-section { display: grid; grid-template-columns: .48fr 1.52fr; gap: 8vw; background: var(--cream); }.appointment-intro { position: sticky; top: 40px; align-self: start; }.appointment-intro h2 { margin: 0; font-size: clamp(42px, 5vw, 70px); line-height: .97; letter-spacing: -.06em; }.appointment-intro p { color: var(--muted); line-height: 1.8; }.appointment-form { padding: clamp(28px, 5vw, 65px); background: white; box-shadow: 0 30px 90px rgba(10,24,32,.08); }.form-section { margin: 55px 0 24px; padding-bottom: 18px; display: flex; align-items: baseline; gap: 20px; border-bottom: 1px solid var(--line); }.form-section:first-of-type { margin-top: 0; }.form-section > span { color: #73817d; font: 10px ui-monospace, monospace; }.form-section h3 { margin: 0; font-size: 27px; }.appointment-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.appointment-grid label, .appointment-upload, .additional-photo label { display: flex; flex-direction: column; gap: 8px; }.appointment-grid label > span, .appointment-upload > span > b, .additional-photo label > span { color: #53645d; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.appointment-grid input, .appointment-grid select, .appointment-grid textarea, .additional-photo input { width: 100%; min-height: 54px; padding: 14px; border: 1px solid #cfd7d2; border-radius: 0; background: #fbfcfa; color: var(--ink); }.appointment-grid textarea { resize: vertical; }.appointment-grid .span-two { grid-column: span 2; }.appointment-upload { margin-top: 20px; min-height: 120px; padding: 22px; display: flex; flex-direction: row; align-items: center; border: 1px dashed #9daa9e; background: #f1f4ed; cursor: pointer; }.appointment-upload input { max-width: 220px; }.appointment-upload > span { display: flex; flex-direction: column; gap: 7px; }.appointment-upload small { color: #718079; }.photo-warning { margin: 10px 0 25px; color: #697872; font-size: 11px; line-height: 1.6; }.medical-warning { padding: 24px; border-left: 4px solid var(--sage); background: #edf0e9; }.medical-warning b { font-size: 13px; }.medical-warning p { margin: 9px 0 0; color: #5e6b67; font-size: 11px; line-height: 1.7; }.appointment-submit { margin-top: 25px; }.appointment-success { padding: clamp(35px, 6vw, 78px); background: white; box-shadow: 0 30px 90px rgba(10,24,32,.08); }.success-mark { width: 60px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--sage); font-size: 28px; }.appointment-success h2 { margin: 20px 0 40px; font-size: clamp(45px, 5vw, 72px); line-height: .96; letter-spacing: -.06em; }.appointment-success ol { padding: 0; list-style: none; border-top: 1px solid var(--line); }.appointment-success li { min-height: 68px; display: flex; align-items: center; gap: 22px; border-bottom: 1px solid var(--line); }.appointment-success li span { color: #718078; font: 10px ui-monospace, monospace; }.additional-photo { margin-top: 35px; padding: 25px; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 20px; background: #edf1ea; }

@media (max-width: 1100px) {
  .main-nav { gap: 14px; }.main-nav a { font-size: 10px; }.header-cta { padding: 0 15px; }
  .identification-card { grid-template-columns: .8fr 1.2fr; }.identification-copy dl div { grid-template-columns: 130px 1fr; }
  .health-hero-rule { display: none; }.health-hero-copy { width: min(1000px, 86vw); }
  .appointment-section { grid-template-columns: 1fr; }.appointment-intro { position: static; max-width: 800px; }
}

@media (max-width: 800px) {
  .city-id-hero, .appointment-hero { min-height: 760px; padding-top: 150px; grid-template-columns: 1fr; gap: 45px; }.city-id-hero h1, .appointment-hero h1 { font-size: 62px; }.city-id-hero aside, .appointment-hero aside { align-self: end; }.city-id-hero aside strong { margin-top: 25px; }
  .center-index { grid-template-columns: 1fr 1fr; }.comparison-tabs { grid-template-columns: 1fr 1fr; }.comparison-stage, .identification-card { grid-template-columns: 1fr; }.comparison-stage > img { min-height: 360px; }.comparison-stage { min-height: auto; }.identification-image { min-height: 390px; }.identification-copy dl div { grid-template-columns: 1fr; gap: 7px; }.risk-separator { grid-template-columns: 1fr; }
  .termite-center { grid-template-columns: 1fr; }.termite-copy { position: static; }.termite-clarifier, .termite-conversion, .termite-center > .source-strip { grid-column: 1; }.termite-evidence { grid-template-columns: 1fr; }.termite-conversion { align-items: flex-start; flex-direction: column; }
  .ant-tool-wrap { grid-template-columns: 1fr; }.ant-question, .ant-result { padding: 25px 20px; }
  .health-feature-grid, .health-evidence-grid, .species-panel-grid, .risk-card-grid { grid-template-columns: 1fr; }.health-feature-grid > a { min-height: 470px; }.not-sure-cta, .health-closing { grid-template-columns: 1fr; gap: 35px; }
  .health-hero { min-height: 780px; }.health-hero-copy { width: 100%; padding: 160px var(--pad) 90px; }.health-hero-copy h1 { font-size: 58px; }.health-fact-band, .health-guidance, .mosquito-breeding { grid-template-columns: 1fr; }.health-fact-band h2 { font-size: 55px; }.faq-grid { grid-template-columns: 1fr; }
  .appointment-grid { grid-template-columns: 1fr; }.appointment-grid .span-two { grid-column: 1; }.appointment-form { padding: 30px 20px; }.appointment-upload, .additional-photo { grid-template-columns: 1fr; flex-direction: column; align-items: stretch; }.appointment-upload input { max-width: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Interior page system */
.inner-hero { min-height: 720px; padding: 170px var(--pad) 90px; position: relative; display: grid; grid-template-columns: 1.15fr .55fr; align-items: end; gap: 9vw; overflow: hidden; background: var(--navy); color: white; }
.inner-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 75% 40%, rgba(200,220,114,.1), transparent 31%), linear-gradient(135deg, transparent 50%, rgba(255,255,255,.025)); }
.inner-hero > * { position: relative; z-index: 2; }
.inner-hero h1 { margin: 0; font-size: clamp(70px, 9vw, 140px); font-weight: 540; line-height: .86; letter-spacing: -.075em; }
.inner-hero h1 em, .approach-hero h1 em, .identify-page-intro h1 em, .contact-intro h1 em { color: var(--sage); font-family: Georgia, serif; font-weight: 400; }
.inner-hero-aside { padding-bottom: 8px; }
.inner-hero-aside > span { color: var(--sage); font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.inner-hero-aside p { margin: 20px 0 28px; color: rgba(255,255,255,.6); font-size: 14px; line-height: 1.75; }
.specimen-lines { position: absolute; inset: 0; pointer-events: none; }
.specimen-lines i { position: absolute; width: 1px; height: 100%; background: rgba(255,255,255,.045); }.specimen-lines i:nth-child(1) { left: 20%; }.specimen-lines i:nth-child(2) { left: 40%; }.specimen-lines i:nth-child(3) { left: 60%; }.specimen-lines i:nth-child(4) { left: 80%; }
.pest-library-page .compact-heading { margin-bottom: 58px; }
.compact-heading h2 { font-size: clamp(44px, 5vw, 74px); }
.precision-callout { min-height: 260px; padding: 60px var(--pad); display: grid; grid-template-columns: .7fr 1.2fr .7fr; align-items: center; gap: 50px; background: var(--sage); }
.precision-callout span { font: italic 400 24px Georgia, serif; }.precision-callout span:last-child { text-align: right; }.precision-callout strong { text-align: center; font-size: clamp(28px, 3.2vw, 48px); letter-spacing: -.045em; }

.pest-profile-hero { min-height: 900px; padding: 135px 0 0 var(--pad); display: grid; grid-template-columns: minmax(0, .93fr) minmax(0, 1.07fr); align-items: center; background: var(--navy); color: white; overflow: hidden; }
.pest-title { width: 100%; max-width: 720px; padding-right: clamp(28px, 4vw, 68px); }
.pest-title h1 { margin: 0; font-size: clamp(62px, 6vw, 96px); font-weight: 540; line-height: .95; letter-spacing: -.055em; }
.pest-title-long h1 { font-size: clamp(54px, 4.9vw, 78px); }
.pest-title .scientific { margin: 14px 0 38px; color: var(--sage); font: italic 400 20px Georgia, serif; }
.pest-title > p:not(.scientific) { color: rgba(255,255,255,.6); font-size: 15px; line-height: 1.75; }
.pest-visual { height: 765px; position: relative; overflow: hidden; background: #07131c; }
.pest-visual > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: specimenIn 1.2s cubic-bezier(.2,.7,.2,1) both; }
.pest-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--navy), transparent 20%), linear-gradient(0deg, rgba(7,24,35,.45), transparent 35%); pointer-events: none; }
.pest-orbit { position: absolute; z-index: 2; width: 66%; aspect-ratio: 1; left: 17%; top: 8%; border: 1px solid rgba(200,220,114,.2); border-radius: 50%; pointer-events: none; }
.pest-orbit::before, .pest-orbit::after { content: ""; position: absolute; inset: 18%; border: 1px solid rgba(200,220,114,.12); border-radius: 50%; }.pest-orbit::after { inset: 38%; }
.hotspot { position: absolute; z-index: 5; padding: 0; border: 0; background: none; cursor: pointer; }
.hotspot > i { width: 12px; height: 12px; display: block; border: 2px solid white; border-radius: 50%; background: var(--sage); box-shadow: 0 0 0 7px rgba(200,220,114,.12), 0 0 22px rgba(200,220,114,.6); transition: transform .2s; }
.hotspot > span { position: absolute; left: 21px; top: -3px; padding: 5px 9px; background: rgba(4,17,25,.76); border: 1px solid rgba(255,255,255,.18); color: white; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; backdrop-filter: blur(8px); }
.hotspot.active > i, .hotspot:hover > i { transform: scale(1.35); }
.hotspot-fact { position: absolute; z-index: 5; right: 28px; bottom: 28px; width: min(320px, 45%); padding: 22px; border: 1px solid rgba(255,255,255,.18); background: rgba(5,19,28,.82); backdrop-filter: blur(14px); }
.hotspot-fact span { display: block; color: var(--sage); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.hotspot-fact strong { display: block; margin-top: 7px; font-size: 18px; }.hotspot-fact p { margin: 8px 0 0; color: rgba(255,255,255,.6); font-size: 11px; line-height: 1.6; }
.rotate-hint { position: absolute; z-index: 5; left: 28px; bottom: 30px; color: rgba(255,255,255,.45); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }.rotate-hint i { margin-right: 9px; color: var(--sage); font-style: normal; }
.profile-section { position: relative; display: grid; grid-template-columns: 80px .8fr 1.2fr; gap: 5vw; }
.profile-number { color: #8a9896; font: 10px ui-monospace, monospace; }
.profile-heading h2 { margin: 0; font-size: clamp(48px, 5.2vw, 78px); font-weight: 540; letter-spacing: -.06em; line-height: .98; }
.biology-section { min-height: 860px; overflow: hidden; isolation: isolate; background: var(--navy); color: white; }
.biology-backdrop, .biology-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.biology-backdrop { z-index: 0; object-fit: cover; object-position: 70% center; filter: saturate(.62) contrast(1.12); transform: scale(1.04); }
.biology-shade { z-index: 1; background: linear-gradient(90deg, rgba(5,18,27,.97) 0%, rgba(5,18,27,.88) 38%, rgba(5,18,27,.58) 100%), linear-gradient(0deg, rgba(5,18,27,.9), rgba(39,45,28,.24)); }
.biology-section > :not(.biology-backdrop):not(.biology-shade) { position: relative; z-index: 2; }
.biology-section .profile-number { color: rgba(211,189,102,.7); }
.biology-section .profile-heading { align-self: start; }
.biology-section .profile-heading h2 { max-width: 570px; color: white; }
.biology-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-self: start; }
.biology-fact { min-height: 350px; overflow: hidden; display: flex; flex-direction: column; border: 1px solid rgba(211,189,102,.25); box-shadow: 0 24px 60px rgba(0,0,0,.2); backdrop-filter: blur(14px); }
.biology-fact:nth-child(odd) { background: rgba(39,45,28,.86); }
.biology-fact:nth-child(even) { background: rgba(7,24,35,.86); }
.biology-fact-visual { height: 132px; flex: 0 0 132px; position: relative; overflow: hidden; }
.biology-fact-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.14); transform: scale(1.08); }
.biology-fact:nth-child(1) .biology-fact-visual img { object-position: 26% 42%; }
.biology-fact:nth-child(2) .biology-fact-visual img { object-position: 72% 38%; }
.biology-fact:nth-child(3) .biology-fact-visual img { object-position: 42% 70%; }
.biology-fact:nth-child(4) .biology-fact-visual img { object-position: 78% 64%; }
.biology-fact-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,18,27,.78), rgba(5,18,27,.12)), linear-gradient(0deg, rgba(5,18,27,.65), transparent 65%); }
.biology-fact-visual svg { position: absolute; left: 22px; bottom: 18px; width: 50px; height: 50px; padding: 10px; border: 1px solid rgba(211,189,102,.48); background: rgba(5,18,27,.58); fill: none; stroke: var(--sage-bright); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; backdrop-filter: blur(9px); }
.biology-fact-copy { min-height: 218px; padding: 27px 29px 30px; display: flex; flex-direction: column; }
.biology-fact-copy > span { color: var(--sage-bright); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.biology-fact-copy p { margin: 25px 0 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.78; }
.notice-section { background: #e8ece8; }
.sign-list { border-top: 1px solid var(--line); }
.sign-list > div { min-height: 92px; padding: 0 20px; display: grid; grid-template-columns: 50px 1fr 30px; align-items: center; border-bottom: 1px solid var(--line); }.sign-list span { color: #899591; font: 10px ui-monospace, monospace; }.sign-list strong { font-size: clamp(18px, 2vw, 27px); font-weight: 520; }.sign-list i { color: #708071; font-style: normal; font-size: 17px; }
.matter-difficult { display: grid; grid-template-columns: 1fr 1fr; }
.matter-difficult article { min-height: 540px; padding: clamp(55px, 7vw, 110px); display: flex; flex-direction: column; justify-content: flex-end; }.matter-difficult article:first-child { background: #15303a; color: white; }.matter-difficult article:last-child { background: var(--sage); }
.matter-difficult h2 { max-width: 590px; margin: 0; font-size: clamp(42px, 4.5vw, 66px); font-weight: 520; line-height: 1; letter-spacing: -.055em; }.matter-difficult p { max-width: 620px; color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.8; }.matter-difficult article:last-child p { color: #4b5a4d; }
.pristine-pest-approach { display: grid; grid-template-columns: 80px 1fr; gap: 5vw; background: var(--paper); }
.pristine-pest-approach .profile-heading { grid-column: 2; }.approach-matrix { grid-column: 2; display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 35px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.approach-matrix article { min-height: 310px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.approach-matrix article > span { color: #7a8886; font: 9px ui-monospace, monospace; }.approach-matrix h3 { margin: 75px 0 13px; font-size: 20px; font-weight: 560; }.approach-matrix p { color: var(--muted); font-size: 11px; line-height: 1.7; }.treatment-note { grid-column: 2; max-width: 950px; margin-top: 35px; color: #76827f; font-size: 11px; line-height: 1.7; }
.maximum-section { min-height: 660px; padding: clamp(80px, 10vw, 150px) var(--pad); display: flex; flex-direction: column; align-items: center; text-align: center; background: var(--navy); color: white; }.maximum-section h2 { max-width: 1100px; margin: 20px 0 25px; font-size: clamp(56px, 7.5vw, 112px); line-height: .9; letter-spacing: -.07em; }.maximum-section h2 b, .maximum-section h2 em { display: block; }.maximum-section h2 b { font-weight: 550; }.maximum-section h2 em { color: var(--sage); font-family: Georgia, serif; font-weight: 400; }.maximum-section > p { max-width: 600px; color: rgba(255,255,255,.58); line-height: 1.7; }.maximum-meter { width: min(800px, 100%); margin-top: 60px; display: grid; grid-template-columns: repeat(3, 1fr); position: relative; }.maximum-meter::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: rgba(255,255,255,.2); }.maximum-meter i { position: absolute; top: -4px; left: 49%; width: 9px; height: 9px; border-radius: 50%; background: var(--sage); box-shadow: 0 0 20px var(--sage); }.maximum-meter span { padding-top: 18px; color: rgba(255,255,255,.46); font-size: 9px; letter-spacing: .15em; text-transform: uppercase; }
.prevention-section { display: grid; grid-template-columns: 80px .8fr 1.2fr; gap: 5vw; background: var(--sage); }.prevention-list { border-top: 1px solid rgba(10,24,32,.2); }.prevention-list div { min-height: 95px; padding: 0 20px; display: flex; align-items: center; gap: 30px; border-bottom: 1px solid rgba(10,24,32,.2); }.prevention-list span { font: 10px ui-monospace, monospace; opacity: .55; }.prevention-list strong { font-size: clamp(18px, 2vw, 27px); font-weight: 520; }
.found-pest-cta { min-height: 500px; padding: 80px var(--pad); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 50px; background: #15303a; color: white; }.found-pest-cta h2 { max-width: 850px; margin: 0; font-size: clamp(48px, 6vw, 90px); font-weight: 530; letter-spacing: -.065em; line-height: .95; }.found-pest-cta p { color: rgba(255,255,255,.58); }

.approach-hero { min-height: 900px; display: block; padding-top: 220px; }.approach-hero > div:first-child { width: min(1100px, 82vw); }.approach-hero h1 { margin: 0; font-size: clamp(60px, 7.6vw, 112px); font-weight: 520; line-height: .95; letter-spacing: -.065em; }.approach-hero h1 em { display: block; }.approach-orbit { position: absolute; right: -6vw; bottom: -17vw; width: 48vw; aspect-ratio: 1; display: grid; place-items: center; }.approach-orbit i { position: absolute; border: 1px solid rgba(200,220,114,.16); border-radius: 50%; }.approach-orbit i:nth-child(1) { inset: 0; }.approach-orbit i:nth-child(2) { inset: 18%; }.approach-orbit i:nth-child(3) { inset: 36%; }.approach-orbit span { width: 20%; aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center; background: var(--sage); color: var(--ink); font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.diagnosis-intro { background: var(--paper); }.sequence-section .section-heading { margin-bottom: 80px; }.science-sequence { display: grid; grid-template-columns: 1.15fr .85fr; gap: 8vw; align-items: center; }.sequence-orbit { aspect-ratio: 1; max-width: 620px; border: 1px solid rgba(200,220,114,.22); border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; background: radial-gradient(circle, rgba(200,220,114,.08), transparent 58%); }.sequence-orbit::before, .sequence-orbit::after { content: ""; position: absolute; inset: 17%; border: 1px solid rgba(200,220,114,.12); border-radius: 50%; }.sequence-orbit::after { inset: 34%; }.sequence-orbit > * { position: relative; z-index: 2; }.sequence-orbit span { color: var(--sage); font: 10px ui-monospace, monospace; }.sequence-orbit strong { margin-top: 15px; font-size: clamp(38px, 5vw, 70px); font-weight: 520; }.sequence-orbit p { max-width: 290px; text-align: center; color: rgba(255,255,255,.5); font-size: 12px; }.sequence-list { border-top: 1px solid rgba(255,255,255,.15); }.sequence-list button { width: 100%; min-height: 68px; display: grid; grid-template-columns: 45px 1fr 30px; align-items: center; border: 0; border-bottom: 1px solid rgba(255,255,255,.15); background: transparent; color: rgba(255,255,255,.45); cursor: pointer; text-align: left; }.sequence-list button.active { color: white; }.sequence-list span { font: 9px ui-monospace, monospace; }.sequence-list b { font-size: 16px; font-weight: 520; }.sequence-list i { color: var(--sage); font-style: normal; }
.toolkit-section { background: var(--paper); }.toolkit-section .section-heading { margin-bottom: 65px; }.toolkit-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.toolkit-grid article { min-height: 270px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.toolkit-grid span { color: #83908d; font: 9px ui-monospace, monospace; }.toolkit-grid h3 { margin: 75px 0 13px; font-size: 22px; font-weight: 550; }.toolkit-grid p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.responsibility-section, .service-confirm { min-height: 550px; padding: 90px var(--pad); display: grid; grid-template-columns: 1.1fr .6fr; align-items: end; gap: 9vw; background: #15303a; color: white; }.responsibility-section h2, .service-confirm h2 { margin: 0; font-size: clamp(48px, 6vw, 88px); font-weight: 530; line-height: .95; letter-spacing: -.06em; }.responsibility-section p, .service-confirm p { color: rgba(255,255,255,.58); line-height: 1.8; }

.identify-page-intro { min-height: 690px; padding: 180px var(--pad) 90px; display: grid; grid-template-columns: 1fr .7fr; align-items: center; gap: 8vw; background: var(--navy); color: white; }.identify-page-intro h1 { margin: 0; font-size: clamp(70px, 8vw, 120px); font-weight: 530; line-height: .86; letter-spacing: -.07em; }.identify-page-intro p { max-width: 600px; color: rgba(255,255,255,.58); line-height: 1.7; }.identify-page-radar { aspect-ratio: 1; display: grid; place-items: center; position: relative; }.identify-page-radar i { position: absolute; border: 1px solid rgba(200,220,114,.2); border-radius: 50%; }.identify-page-radar i:nth-child(1) { inset: 2%; }.identify-page-radar i:nth-child(2) { inset: 22%; }.identify-page-radar i:nth-child(3) { inset: 40%; }.identify-page-radar span { width: 20%; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--sage); color: var(--ink); font: italic 500 54px Georgia, serif; }
.identify-tool-wrap { min-height: 780px; display: grid; place-items: center; background: #e8ece8; }.identify-panel, .identify-results { width: min(880px, 100%); padding: clamp(30px, 6vw, 78px); background: white; box-shadow: 0 30px 90px rgba(10,24,32,.1); }.identify-progress { height: 3px; margin-bottom: 26px; background: #e4e9e5; }.identify-progress span { height: 100%; display: block; background: var(--sage); transition: width .35s ease; }.identify-panel > p { color: #7b8885; font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.identify-panel h2, .identify-results h2 { margin: 18px 0 35px; font-size: clamp(36px, 5vw, 62px); font-weight: 530; letter-spacing: -.055em; }.choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }.choice-grid button { min-height: 70px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--line); background: transparent; cursor: pointer; text-align: left; font-size: 13px; }.choice-grid button:hover { background: var(--sage); border-color: var(--sage); }.choice-grid i { font-style: normal; font-size: 17px; }.text-button { margin-top: 24px; padding: 0 0 6px; border: 0; border-bottom: 1px solid var(--ink); background: transparent; cursor: pointer; font-size: 11px; font-weight: 700; }.identify-results > p { color: var(--muted); line-height: 1.7; }.result-links { margin: 30px 0; border-top: 1px solid var(--line); }.result-links a { min-height: 88px; padding: 12px 0; display: grid; grid-template-columns: 80px 1fr 30px; align-items: center; gap: 18px; border-bottom: 1px solid var(--line); }.result-links img { width: 80px; height: 54px; object-fit: cover; }.result-links span { display: flex; flex-direction: column; }.result-links b { font-size: 17px; }.result-links small { color: #73817d; font: italic 12px Georgia, serif; }.result-links i { font-style: normal; }

.service-framework { background: var(--paper); }.service-framework .section-heading { margin-bottom: 65px; }.service-modules { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.service-modules article { min-height: 330px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.service-modules span { color: #84918f; font: 10px ui-monospace, monospace; }.service-modules h3 { margin: 100px 0 18px; font-size: 27px; font-weight: 540; }.service-modules p { color: var(--muted); font-size: 13px; line-height: 1.7; }
.about-story { background: var(--paper); }.values-section .section-heading { margin-bottom: 65px; }.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); }.values-grid article { min-height: 280px; padding: 26px; border-top: 1px solid rgba(255,255,255,.16); border-right: 1px solid rgba(255,255,255,.16); }.values-grid span { color: var(--sage); font: 9px ui-monospace, monospace; }.values-grid h3 { margin: 70px 0 12px; font-size: 25px; font-weight: 540; }.values-grid p { color: rgba(255,255,255,.5); font-size: 12px; line-height: 1.7; }.people-placeholders { background: #e7ece8; }.people-placeholders .section-heading { margin-bottom: 55px; }.placeholder-grid { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 45px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.placeholder-grid article { min-height: 250px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.placeholder-grid span { color: #708068; font-size: 9px; font-weight: 800; letter-spacing: .15em; }.placeholder-grid h3 { margin: 90px 0 0; font-size: 25px; font-weight: 530; }

.contact-intro { min-height: 780px; padding: 180px var(--pad) 90px; display: grid; grid-template-columns: 1fr .7fr; align-items: center; gap: 8vw; background: var(--navy); color: white; }.contact-intro h1 { margin: 0; font-size: clamp(70px, 8vw, 120px); font-weight: 530; line-height: .86; letter-spacing: -.07em; }.contact-intro > div:first-child > p { max-width: 650px; color: rgba(255,255,255,.57); line-height: 1.75; }.contact-details { margin-top: 45px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.contact-details a { padding: 20px; border: 1px solid rgba(255,255,255,.15); display: flex; flex-direction: column; }.contact-details span { color: var(--sage); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.contact-details b { margin-top: 8px; font-size: 15px; font-weight: 520; }.contact-details small { margin-top: 4px; color: rgba(255,255,255,.3); font-size: 9px; }.contact-principle { aspect-ratio: 1; border: 1px solid rgba(200,220,114,.18); border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--sage); font: italic 400 clamp(22px, 2.6vw, 38px) Georgia, serif; }.contact-principle i { width: 1px; height: 70px; margin: 18px; background: rgba(200,220,114,.35); }.contact-form-section { padding: 100px var(--pad); display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; background: var(--sage); }.contact-form-section h2 { margin: 0; font-size: clamp(48px, 5.5vw, 78px); font-weight: 530; line-height: .96; letter-spacing: -.06em; }.contact-form-section > div > p { color: #526153; line-height: 1.7; }

@keyframes specimenIn { from { opacity: 0; transform: scale(.94); } to { opacity: 1; transform: scale(1); } }

@media (max-width: 980px) {
  .pest-profile-hero { min-height: auto; padding: 150px 0 0; grid-template-columns: 1fr; }.pest-title { max-width: 820px; padding: 0 var(--pad) 60px; }.pest-visual { height: 640px; }
  .profile-section, .prevention-section { grid-template-columns: 45px 1fr; }.profile-section > :last-child, .prevention-list { grid-column: 2; }.approach-matrix { grid-template-columns: 1fr 1fr 1fr; }
  .science-sequence { grid-template-columns: 1fr 1fr; }.toolkit-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 800px) {
  .inner-hero, .identify-page-intro, .contact-intro { min-height: 720px; padding-top: 150px; grid-template-columns: 1fr; gap: 50px; }.inner-hero h1, .identify-page-intro h1, .contact-intro h1 { font-size: 70px; }.inner-hero-aside { align-self: end; }
  .precision-callout { grid-template-columns: 1fr; text-align: center; gap: 20px; }.precision-callout span:last-child { text-align: center; }
  .pest-title h1 { font-size: clamp(50px, 14vw, 72px); }.pest-title-long h1 { font-size: clamp(44px, 12.2vw, 62px); }.pest-visual { height: 500px; }.hotspot-fact { width: calc(100% - 44px); max-width: none; left: 22px; right: 22px; }.rotate-hint { display: none; }
  .profile-section, .pristine-pest-approach, .prevention-section { grid-template-columns: 1fr; gap: 35px; }.profile-number { grid-column: 1; }.profile-section > :last-child, .pristine-pest-approach .profile-heading, .approach-matrix, .treatment-note, .prevention-list { grid-column: 1; }.biology-section { min-height: 0; }.biology-backdrop { object-position: 64% center; }.biology-shade { background: linear-gradient(180deg, rgba(5,18,27,.9), rgba(5,18,27,.76) 42%, rgba(5,18,27,.93)); }.biology-grid { grid-template-columns: 1fr; }.biology-fact { min-height: 0; }.biology-fact-copy { min-height: 0; }.biology-fact-copy p { margin-top: 20px; }
  .matter-difficult { grid-template-columns: 1fr; }.matter-difficult article { min-height: 480px; }.approach-matrix { grid-template-columns: 1fr; }.approach-matrix article { min-height: 230px; }.approach-matrix h3 { margin-top: 45px; }.found-pest-cta { grid-template-columns: 1fr; }
  .approach-hero { min-height: 790px; padding-top: 170px; }.approach-hero > div:first-child { width: auto; }.approach-hero h1 { font-size: 54px; }.approach-orbit { width: 75vw; bottom: -20vw; }
  .science-sequence { grid-template-columns: 1fr; }.sequence-orbit { width: 100%; }.toolkit-grid, .service-modules, .values-grid { grid-template-columns: 1fr; }.responsibility-section, .service-confirm { grid-template-columns: 1fr; }
  .identify-page-radar, .contact-principle { width: min(100%, 430px); margin: auto; }.choice-grid { grid-template-columns: 1fr; }.identify-panel, .identify-results { padding: 30px 22px; }
  .service-modules article { min-height: 260px; }.service-modules h3 { margin-top: 65px; }.placeholder-grid { grid-template-columns: 1fr; }
  .contact-details { grid-template-columns: 1fr; }.contact-form-section { grid-template-columns: 1fr; gap: 50px; }
}

/* Final sitewide type safety overrides */
.hero h1 { line-height: .92; letter-spacing: -.058em; }
.pack-story h2, .price-promise-card h3 { line-height: .98; letter-spacing: -.052em; }
.identify-teaser h2, .city-id-hero h1, .inner-hero h1, .pest-title h1, .identify-page-intro h1, .contact-intro h1 { line-height: .95; letter-spacing: -.055em; }
.health-hero-copy h1, .health-fact-band h2, .health-closing h2, .appointment-hero h1, .maximum-section h2 { line-height: .98; letter-spacing: -.055em; }
.manifesto-grid > *, .section-heading > *, .inner-hero > *, .city-id-hero > *, .health-guidance > *, .appointment-hero > *, .appointment-section > *, .profile-section > *, .pristine-pest-approach > * { min-width: 0; }

@media (max-width: 800px) {
  .hero h1 { font-size: clamp(58px, 17vw, 82px); line-height: .96; }
  .inner-hero h1, .identify-page-intro h1, .contact-intro h1, .city-id-hero h1, .appointment-hero h1 { font-size: clamp(48px, 14vw, 68px); line-height: .98; }
  .pest-title h1 { font-size: clamp(50px, 14vw, 72px); line-height: .98; }
  .pest-title-long h1 { font-size: clamp(44px, 12.2vw, 62px); }
  .health-hero-copy { width: 100%; }
  .health-hero-copy h1, .health-fact-band h2, .health-closing h2, .maximum-section h2 { font-size: clamp(48px, 13vw, 68px); line-height: 1; }
}

/* Residential pricing and inspection led commercial conversion */
.residential-hero { min-height: 880px; position: relative; display: flex; align-items: flex-end; overflow: hidden; background: var(--navy); color: white; }
.residential-hero > img, .residential-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.residential-hero > img { object-fit: cover; object-position: 58% center; }
.residential-hero-shade { background: linear-gradient(90deg, rgba(7,24,35,.97) 0%, rgba(7,24,35,.84) 36%, rgba(7,24,35,.24) 70%, rgba(7,24,35,.1)), linear-gradient(0deg, rgba(7,24,35,.7), transparent 50%); }
.residential-hero-copy { width: min(930px, 70vw); padding: 190px var(--pad) 100px; position: relative; z-index: 2; }
.residential-hero h1 { margin: 0; font-size: clamp(58px, 7vw, 108px); font-weight: 550; line-height: .97; letter-spacing: -.06em; }
.residential-hero p { max-width: 690px; margin: 30px 0 38px; color: rgba(255,255,255,.74); font-size: 18px; line-height: 1.7; }
.program-intro > div:last-child p:not(.lead), .commercial-intro > div:last-child p:not(.lead) { color: #42504a; line-height: 1.75; }

.pricing-section .section-heading, .size-section .section-heading, .commercial-framework .section-heading, .commercial-method .section-heading { margin-bottom: 68px; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.pricing-grid article { min-width: 0; min-height: 690px; padding: clamp(28px, 3.6vw, 52px); display: flex; flex-direction: column; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.pricing-grid article.featured { background: linear-gradient(155deg, rgba(77,85,47,.82), rgba(39,45,28,.48)); box-shadow: inset 0 0 0 1px rgba(211,189,102,.4); }
.plan-topline { min-height: 27px; display: flex; align-items: center; justify-content: space-between; gap: 18px; color: rgba(255,255,255,.4); font: 10px ui-monospace, monospace; }
.plan-topline b { padding: 7px 10px; border: 1px solid rgba(211,189,102,.5); color: var(--sage-bright); font: 800 8px "Avenir Next", sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.pricing-grid h2 { min-height: 86px; margin: 58px 0 18px; color: var(--sage-bright); font-size: clamp(34px, 3.25vw, 49px); font-weight: 540; line-height: 1.03; letter-spacing: -.045em; }
.plan-price { display: flex; align-items: baseline; gap: 12px; }
.plan-price strong { font-size: clamp(58px, 5.2vw, 82px); font-weight: 520; line-height: 1; letter-spacing: -.06em; }
.plan-price span { color: rgba(255,255,255,.46); font-size: 11px; }
.pricing-grid .plan-cadence { min-height: 54px; margin: 20px 0 12px; color: white; font-size: 13px; font-weight: 700; line-height: 1.55; }
.pricing-grid article > p:not(.plan-cadence) { margin: 0; color: rgba(255,255,255,.58); font-size: 13px; line-height: 1.72; }
.pricing-grid ul { margin: 28px 0 34px; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.13); }
.pricing-grid li { padding: 12px 0 12px 22px; position: relative; border-bottom: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.72); font-size: 12px; line-height: 1.5; }
.pricing-grid li::before { content: "✓"; position: absolute; left: 0; color: var(--sage-bright); }
.pricing-grid article > a { margin-top: auto; padding-top: 18px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(211,189,102,.4); color: var(--sage-bright); font-size: 12px; font-weight: 750; }
.pricing-note { max-width: 880px; margin: 30px 0 0 auto; color: rgba(255,255,255,.48); font-size: 11px; line-height: 1.7; }

.size-section { background: linear-gradient(112deg, var(--paper) 0 73%, var(--sage) 73%); }
.size-table { overflow-x: auto; border-top: 1px solid var(--line); border-left: 1px solid var(--line); background: var(--paper); }
.size-row { min-width: 760px; display: grid; grid-template-columns: minmax(260px, 1.45fr) repeat(3, minmax(130px, .7fr)); }
.size-row span { min-width: 0; min-height: 78px; padding: 20px; display: flex; align-items: center; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.45; }
.size-row span:nth-child(3) { background: rgba(183,164,88,.14); }
.size-head span { min-height: 58px; background: var(--olive-deep); color: white; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.size-head span:nth-child(3) { background: var(--olive); }

.program-method, .commercial-method { overflow: hidden; }
.program-method .science-sequence, .commercial-method .science-sequence { margin-top: 20px; }
.method-summary { margin-top: 68px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }
.method-summary span { min-height: 94px; padding: 18px; display: flex; align-items: flex-end; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); color: var(--sage-bright); font-size: 11px; font-weight: 750; line-height: 1.45; }

.inspection-pricing, .commercial-pricing { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .68fr); gap: 8vw; align-items: center; }
.inspection-pricing h2, .commercial-pricing h2 { max-width: 880px; margin: 0 0 30px; font-size: clamp(46px, 5.8vw, 84px); font-weight: 540; line-height: 1; letter-spacing: -.055em; }
.inspection-pricing .lead, .commercial-pricing .lead { color: var(--ink); font-size: clamp(18px, 1.65vw, 24px); line-height: 1.55; }
.inspection-pricing > div > p:not(.lead), .commercial-pricing > div > p:not(.lead) { max-width: 760px; color: var(--muted); line-height: 1.75; }
.inspection-pricing aside, .commercial-pricing aside { padding: clamp(34px, 4.6vw, 64px); background: var(--olive-deep); color: white; }
.inspection-pricing aside > span, .commercial-pricing aside > span { color: var(--sage-bright); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.inspection-pricing aside h3, .commercial-pricing aside h3 { margin: 48px 0 18px; color: var(--sage-bright); font-size: clamp(32px, 3.5vw, 50px); font-weight: 520; line-height: 1.04; letter-spacing: -.04em; }
.inspection-pricing aside p, .commercial-pricing aside p { color: rgba(255,255,255,.6); line-height: 1.75; }
.inspection-pricing aside .button, .commercial-pricing aside .button { margin-top: 24px; }
.commercial-pricing aside ul { margin: 28px 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.14); }
.commercial-pricing aside li { padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.68); font-size: 12px; line-height: 1.5; }

.commercial-framework { background: linear-gradient(112deg, var(--paper) 0 72%, var(--cream) 72%); }
.commercial-factor-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.commercial-factor-grid article { min-height: 390px; padding: clamp(28px, 4vw, 52px); display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--paper); }
.commercial-factor-grid article:nth-child(2) { background: var(--sage); }
.commercial-factor-grid span { color: #6e7d77; font: 10px ui-monospace, monospace; }
.commercial-factor-grid h3 { margin: auto 0 18px; font-size: clamp(28px, 3vw, 42px); font-weight: 540; line-height: 1.03; letter-spacing: -.045em; }
.commercial-factor-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.commercial-method { background: linear-gradient(135deg, var(--olive-deep), #122d35); border-top: 1px solid rgba(211,189,102,.22); }

.request-paths { margin-bottom: 52px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.request-paths button { min-width: 0; min-height: 155px; padding: 22px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--paper); cursor: pointer; text-align: left; }
.request-paths button.active { background: var(--olive-deep); color: white; box-shadow: inset 0 0 0 1px rgba(211,189,102,.45); }
.request-paths button > span { color: inherit; font-size: 14px; font-weight: 750; line-height: 1.35; }
.request-paths button > small { color: var(--muted); font-size: 10px; line-height: 1.6; }
.request-paths button.active > small { color: rgba(255,255,255,.58); }
.appointment-submit { max-width: 100%; white-space: normal; text-align: center; }

.residential-hero h1, .pricing-grid h2, .commercial-hero h1, .commercial-factor-grid h3, .inspection-pricing h2, .commercial-pricing h2, .request-paths button { overflow-wrap: normal; word-break: normal; hyphens: none; }

@media (max-width: 1050px) {
  .pricing-grid { grid-template-columns: 1fr 1fr; }
  .pricing-grid article:last-child { grid-column: span 2; min-height: 610px; }
  .pricing-grid article:last-child > p, .pricing-grid article:last-child ul { max-width: 680px; }
  .commercial-factor-grid { grid-template-columns: 1fr; }
  .commercial-factor-grid article { min-height: 270px; }
}

@media (max-width: 800px) {
  .residential-hero { min-height: 790px; }
  .residential-hero > img { object-position: 61% center; }
  .residential-hero-shade { background: linear-gradient(0deg, rgba(7,24,35,.97) 4%, rgba(7,24,35,.77) 62%, rgba(7,24,35,.2)); }
  .residential-hero-copy { width: 100%; padding: 160px var(--pad) 80px; }
  .residential-hero h1 { font-size: clamp(46px, 13vw, 66px); line-height: 1; }
  .residential-hero p { font-size: 15px; }
  .pricing-grid { grid-template-columns: 1fr; }
  .pricing-grid article, .pricing-grid article:last-child { grid-column: auto; min-height: 600px; }
  .pricing-grid h2 { min-height: 0; margin-top: 44px; }
  .method-summary { grid-template-columns: 1fr 1fr; }
  .inspection-pricing, .commercial-pricing { grid-template-columns: 1fr; gap: 48px; }
  .commercial-factor-grid article { min-height: 250px; }
  .request-paths { grid-template-columns: 1fr; }
  .request-paths button { min-height: 120px; }
  .size-table { margin-right: calc(var(--pad) * -1); }
}

/* WordPress integration and final type safeguards */
body.admin-bar .site-header { top: 32px; }
.site-main { min-height: 70vh; }
.site-header img, .site-footer img { height: auto; }
.site-header .current-menu-item > a, .site-header .current_page_item > a { color: var(--sage-bright); }
.main-nav ul { display: flex; align-items: center; gap: clamp(16px, 2vw, 34px); margin: 0; padding: 0; list-style: none; }
.main-nav li { margin: 0; padding: 0; }
.main-nav .sub-menu { display: none; }
.editor-content { padding: 0 var(--pad) 90px; background: var(--paper); }
.editor-content:empty { display: none; }
.editor-content > * { max-width: 900px; margin-inline: auto; }
.notice-banner { padding: 16px var(--pad); background: var(--sage); color: var(--ink); font-size: 14px; line-height: 1.55; text-align: center; }
.form-status { margin: 0 0 24px; padding: 18px 20px; border: 1px solid rgba(10,24,32,.16); background: #eef3ee; color: var(--ink); line-height: 1.6; }
.form-status.error { background: #f7e7df; }
.lead-form input[type="file"] { max-width: 100%; }
.lead-form .consent { margin: 22px 0; display: flex; align-items: flex-start; gap: 10px; }
.lead-form .consent > span { margin: 0; color: var(--muted); font-size: 11px; letter-spacing: 0; line-height: 1.55; text-transform: none; }
.lead-form button { cursor: pointer; }
.sector-card-photo img, .sector-hero-image img, .sector-detail-photo img { width: 200%; max-width: none; height: 100%; object-fit: cover; }
.sector-photo-left img { left: 0; margin-left: 0; object-position: left center; }
.sector-photo-right img { left: -100%; margin-left: 0; object-position: right center; }
.sector-photo-full img { left: 0; width: 100%; margin-left: 0; object-position: center center; }
.sector-card-photo.sector-photo-left img { object-position: left 12%; }
.sector-card-photo.sector-photo-right img { object-position: right 12%; }
.article-grid article { min-height: 390px; padding: 30px; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.15); }
.article-grid article h3 { margin: 70px 0 16px; font-size: 28px; line-height: 1.15; }
.article-grid article p { color: rgba(255,255,255,.56); line-height: 1.7; }
.article-grid article b { margin-top: auto; color: var(--sage-bright); font-size: 11px; }
.blog-card-meta { color: var(--sage-bright); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.not-found { min-height: 760px; padding: 190px var(--pad) 100px; background: var(--navy); color: white; }
.not-found h1 { max-width: 850px; margin: 0 0 30px; font-size: clamp(58px, 8vw, 120px); line-height: .98; letter-spacing: -.055em; }

h1, h2, h3, h4, h5, h6, .button, .main-nav a, .header-cta {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
p, li, label, address, blockquote { line-height: 1.65; }
main section > *, main article > *, .header-inner > *, .footer-top > * { min-width: 0; }

/* Branded request confirmation */
.request-received-page { min-height: 100vh; background: var(--navy); color: white; }
.pack-confirmation { position: relative; min-height: 100vh; padding: clamp(150px, 16vw, 205px) var(--pad) clamp(80px, 9vw, 130px); display: grid; place-items: center; overflow: hidden; isolation: isolate; background: radial-gradient(circle at 50% 18%, rgba(183,164,88,.18), transparent 31%), linear-gradient(135deg, #06151f 0 58%, #102b31 58% 100%); }
.pack-confirmation::before { content: ""; position: absolute; inset: 6% 8%; z-index: -2; border: 1px solid rgba(211,189,102,.16); border-radius: 50%; transform: rotate(-8deg); }
.pack-confirmation::after { content: ""; position: absolute; width: min(74vw, 980px); aspect-ratio: 1; z-index: -2; border: 1px solid rgba(255,255,255,.07); border-radius: 50%; }
.pack-confirmation-card { position: relative; z-index: 2; width: min(100%, 980px); padding: clamp(34px, 6vw, 76px); border: 1px solid rgba(211,189,102,.34); background: rgba(6,21,31,.82); box-shadow: 0 40px 110px rgba(0,0,0,.38); text-align: center; backdrop-filter: blur(14px); }
.pack-logo-wrap { width: clamp(190px, 27vw, 330px); margin: 0 auto 28px; filter: drop-shadow(0 24px 45px rgba(0,0,0,.4)); }
.pack-logo-wrap img { width: 100%; }
.pack-confirmation-card h1 { max-width: 820px; margin: 24px auto 22px; font-size: clamp(48px, 7.2vw, 98px); font-weight: 540; line-height: .94; letter-spacing: -.065em; }
.pack-confirmation-card h1 em { color: var(--sage-bright); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.pack-confirmation-card > p { max-width: 650px; margin: 0 auto; color: rgba(255,255,255,.72); font-size: clamp(17px, 2vw, 22px); line-height: 1.7; }
.pack-next-step { max-width: 700px; margin: clamp(30px, 5vw, 52px) auto 0; padding: 20px 0; display: grid; grid-template-columns: .38fr 1fr; gap: 24px; align-items: start; border-top: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); text-align: left; }
.pack-next-step span { color: var(--sage-bright); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.pack-next-step strong { font-size: 14px; font-weight: 500; line-height: 1.75; }
.pack-confirmation-actions { justify-content: center; margin-top: 34px; }
.pack-paws { position: absolute; inset-block: 0; width: clamp(90px, 13vw, 180px); z-index: 0; pointer-events: none; }
.pack-paws-left { left: clamp(4px, 3vw, 48px); }
.pack-paws-right { right: clamp(4px, 3vw, 48px); transform: scaleX(-1); }
.pack-paw { position: absolute; width: clamp(38px, 5vw, 70px); fill: rgba(211,189,102,.2); opacity: 0; transform: translateY(-110px) rotate(-18deg) scale(.82); animation: pristine-paw-cascade 8s linear infinite; animation-delay: calc(var(--paw-index) * -1.12s); }
.pack-paws .pack-paw:nth-child(odd) { left: 4%; }
.pack-paws .pack-paw:nth-child(even) { right: 2%; transform: translateY(-110px) rotate(15deg) scale(.72); }
@keyframes pristine-paw-cascade { 0% { top: -12%; opacity: 0; } 10% { opacity: .9; } 82% { opacity: .58; } 100% { top: 105%; opacity: 0; } }

@media (max-width: 800px) {
  .pack-confirmation { padding-inline: 18px; background: radial-gradient(circle at 50% 15%, rgba(183,164,88,.2), transparent 34%), linear-gradient(155deg, #06151f 0 64%, #102b31 64% 100%); }
  .pack-confirmation-card { padding: 34px 22px 38px; }
  .pack-confirmation-card h1 { font-size: clamp(45px, 14vw, 68px); }
  .pack-next-step { grid-template-columns: 1fr; gap: 8px; }
  .pack-confirmation-actions { flex-direction: column; align-items: stretch; }
  .pack-confirmation-actions .button { width: 100%; justify-content: space-between; }
  .pack-paws { width: 62px; opacity: .72; }
}

@media (prefers-reduced-motion: reduce) {
  .pack-paw { opacity: .42; animation: none; }
  .pack-paw:nth-child(1) { top: 8%; }
  .pack-paw:nth-child(2) { top: 22%; }
  .pack-paw:nth-child(3) { top: 36%; }
  .pack-paw:nth-child(4) { top: 50%; }
  .pack-paw:nth-child(5) { top: 64%; }
  .pack-paw:nth-child(6) { top: 78%; }
  .pack-paw:nth-child(7) { top: 92%; }
}

@media (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
}

@media (max-width: 800px) {
  .main-nav ul { width: 100%; display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .main-nav li { width: 100%; }
  .main-nav a { display: block; padding: 14px 0; }
  .sector-card-photo img, .sector-hero-image img, .sector-detail-photo img { width: 200%; }
  .sector-photo-full img { width: 100%; }
  .sector-carousel { grid-template-areas: "stage stage" "previous next" "dots dots"; grid-template-columns: 1fr 1fr; gap: 20px 0; }
  .sector-carousel-slide a { min-height: 0; display: grid; grid-template-rows: minmax(280px, 76vw) auto; align-items: stretch; }
  .sector-carousel-image { position: relative; inset: auto; grid-row: 1; }
  .sector-carousel-image img { object-position: center center; }
  .sector-carousel-shade { display: none; }
  .sector-carousel-copy { grid-row: 2; max-width: none; padding: 30px; background: #122d35; }
  .sector-carousel-copy small { margin-top: 22px; }
  .sector-carousel-copy h3 { font-size: clamp(40px, 13vw, 62px); }
  .sector-carousel-previous { padding-right: 18px; }
  .sector-carousel-next { padding-left: 18px; }
  .sector-carousel-side strong { font-size: clamp(19px, 7vw, 28px); }
}

/* Image led showcase carousels */
.showcase-carousel .sector-carousel-copy em {
  display: block;
  margin: -8px 0 20px;
  color: rgba(255,255,255,.62);
  font: italic 400 16px Georgia, "Times New Roman", serif;
}
.sector-carousel-slide.is-filtered-out,
.sector-carousel-dots button[hidden] { display: none !important; }
.pest-carousel .sector-carousel-side,
.education-carousel .sector-carousel-side,
.services-carousel .sector-carousel-side { border-color: var(--line); color: var(--ink); }
.pest-carousel .sector-carousel-side span,
.education-carousel .sector-carousel-side span,
.services-carousel .sector-carousel-side span { color: var(--olive); }
.pest-carousel .sector-carousel-side:hover strong,
.pest-carousel .sector-carousel-side:focus-visible strong,
.education-carousel .sector-carousel-side:hover strong,
.education-carousel .sector-carousel-side:focus-visible strong,
.services-carousel .sector-carousel-side:hover strong,
.services-carousel .sector-carousel-side:focus-visible strong { color: var(--olive); }
.pest-carousel .sector-carousel-dots button,
.education-carousel .sector-carousel-dots button,
.services-carousel .sector-carousel-dots button { background: rgba(10,24,32,.18); }
.pest-carousel .sector-carousel-dots button.is-active,
.education-carousel .sector-carousel-dots button.is-active,
.services-carousel .sector-carousel-dots button.is-active { background: var(--olive); }
.pest-carousel .sector-carousel-slide a,
.education-carousel .sector-carousel-slide a,
.services-carousel .sector-carousel-slide a { box-shadow: 0 28px 80px rgba(7,24,35,.13); }
.health-carousel .sector-carousel-slide a { min-height: clamp(540px, 50vw, 680px); }
.health-feature-index .health-carousel { margin-top: 70px; }

/* Relevant photography for inquiry and scheduling */
.contact-intro,
.appointment-hero { position: relative; isolation: isolate; overflow: hidden; }
.contact-intro-image,
.appointment-hero-image,
.contact-intro-shade,
.appointment-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.contact-intro-image,
.appointment-hero-image { z-index: -2; object-fit: cover; object-position: center 36%; }
.contact-intro-shade,
.appointment-hero-shade { z-index: -1; background: linear-gradient(90deg, rgba(4,17,25,.96) 0, rgba(4,17,25,.84) 48%, rgba(4,17,25,.5) 100%), linear-gradient(0deg, rgba(4,17,25,.72), transparent 65%); }
.contact-intro > div:not(.contact-intro-shade),
.appointment-hero > div:not(.appointment-hero-shade),
.appointment-hero > aside { position: relative; z-index: 1; }
.contact-details a,
.appointment-hero aside { background: rgba(4,17,25,.42); backdrop-filter: blur(12px); }

/* Five year Price Lock Guarantee */
body.dialog-open { overflow: hidden; }
.hero-price-lock {
  width: min(315px, 26vw);
  min-height: 112px;
  padding: 18px 20px;
  display: grid;
  grid-template-columns: 58px 1fr;
  grid-template-rows: auto auto auto;
  gap: 3px 16px;
  align-items: center;
  border: 1px solid rgba(211,189,102,.48);
  border-left: 1px solid rgba(211,189,102,.48);
  border-radius: 18px;
  background: rgba(5,18,27,.72);
  box-shadow: 0 24px 55px rgba(0,0,0,.26);
  backdrop-filter: blur(16px);
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.hero-price-lock:hover,
.hero-price-lock:focus-visible { transform: translateY(-4px); border-color: var(--sage-bright); background: rgba(5,18,27,.9); }
.hero-price-lock:focus-visible { outline: 2px solid var(--sage-bright); outline-offset: 5px; }
.hero-price-lock .price-lock-paw-icon { grid-row: 1 / 4; width: 58px; fill: var(--sage-bright); filter: drop-shadow(0 0 18px rgba(211,189,102,.28)); }
.hero-price-lock span,
.hero-price-lock strong,
.hero-price-lock small { grid-column: 2; margin: 0; }
.hero-price-lock span { font-size: 9px; }
.hero-price-lock strong { font-size: 19px; line-height: 1.05; }
.hero-price-lock small { color: rgba(255,255,255,.55); }

.price-lock-dialog {
  width: min(1120px, calc(100vw - 40px));
  max-width: none;
  max-height: calc(100vh - 40px);
  padding: 0;
  border: 1px solid rgba(211,189,102,.58);
  background: var(--cream);
  color: var(--ink);
  box-shadow: 0 45px 140px rgba(0,0,0,.56);
  overflow: auto;
}
.price-lock-dialog::backdrop { background: rgba(2,11,17,.82); backdrop-filter: blur(8px); }
.price-lock-dialog-shell { position: relative; padding: clamp(34px, 5vw, 72px); }
.price-lock-dialog-close {
  position: sticky;
  z-index: 5;
  top: 0;
  margin: 0 0 0 auto;
  padding: 10px 14px;
  display: block;
  border: 1px solid var(--line);
  background: rgba(242,239,231,.92);
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.price-lock-dialog-brand { margin: -20px 0 48px; display: flex; align-items: center; gap: 24px; }
.price-lock-dialog-brand img { width: clamp(145px, 19vw, 220px); }
.price-lock-dialog-brand span { padding-left: 24px; border-left: 1px solid var(--line); color: var(--olive); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.price-lock-dialog-actions { margin-top: 38px; display: flex; flex-wrap: wrap; gap: 12px; }

.price-lock-policy-copy { display: grid; gap: clamp(35px, 5vw, 64px); }
.price-lock-policy-lead { display: grid; grid-template-columns: .42fr 1.2fr; gap: 5vw; align-items: end; }
.price-lock-policy-lead > span { color: var(--olive); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.price-lock-policy-lead h2 { max-width: 850px; margin: 0; font-size: clamp(46px, 5.7vw, 84px); font-weight: 540; line-height: .98; letter-spacing: -.06em; }
.price-lock-policy-lead p { grid-column: 2; max-width: 720px; margin: -28px 0 0; color: var(--muted); font-size: 16px; line-height: 1.75; }
.price-lock-policy-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.price-lock-policy-grid article { min-height: 300px; padding: clamp(24px, 3vw, 38px); display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.price-lock-policy-grid article:nth-child(2),
.price-lock-policy-grid article:nth-child(3) { background: rgba(183,164,88,.18); }
.price-lock-policy-grid article > span { color: var(--olive); font: 10px ui-monospace, monospace; }
.price-lock-policy-grid h3 { max-width: 440px; margin: auto 0 15px; font-size: clamp(26px, 2.5vw, 38px); font-weight: 550; line-height: 1.04; letter-spacing: -.04em; }
.price-lock-policy-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.72; }
.price-lock-policy-detail { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--navy); color: white; }
.price-lock-policy-detail > div { min-height: 235px; padding: clamp(24px, 3vw, 36px); border-right: 1px solid rgba(255,255,255,.15); }
.price-lock-policy-detail > div:last-child { border-right: 0; }
.price-lock-policy-detail span { color: var(--sage-bright); font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.price-lock-policy-detail p { margin: 62px 0 0; color: rgba(255,255,255,.65); font-size: 12px; line-height: 1.72; }
.price-lock-legal { margin: 0; padding: 22px 24px; border-left: 4px solid var(--sage); background: #e6e8df; color: #596761; font-size: 11px; line-height: 1.7; }

.price-lock-page { background: var(--cream); }
.price-lock-hero {
  min-height: 900px;
  position: relative;
  padding: 170px var(--pad) 95px;
  display: grid;
  grid-template-columns: .7fr 1.15fr .62fr;
  gap: clamp(40px, 6vw, 100px);
  align-items: end;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(circle at 20% 40%, rgba(183,164,88,.2), transparent 30%), linear-gradient(135deg, #061722 0 68%, #27301d 68% 100%);
  color: white;
}
.price-lock-hero::before { content: ""; position: absolute; inset: 7% 4%; z-index: -1; border: 1px solid rgba(211,189,102,.13); border-radius: 50%; transform: rotate(-11deg); }
.price-lock-hero-mark { width: min(29vw, 360px); aspect-ratio: 1; position: relative; display: grid; place-items: center; align-self: center; }
.price-lock-hero-mark::before,
.price-lock-hero-mark::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(211,189,102,.25); border-radius: 50%; }
.price-lock-hero-mark::after { inset: 15%; }
.price-lock-hero-mark svg { width: 72%; fill: rgba(211,189,102,.95); filter: drop-shadow(0 24px 55px rgba(0,0,0,.32)); }
.price-lock-hero-mark span { position: absolute; bottom: 18%; width: 74px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--navy); border: 1px solid var(--sage-bright); color: var(--sage-bright); font-size: 34px; font-weight: 700; }
.price-lock-hero-copy h1 { margin: 16px 0 28px; font-size: clamp(64px, 7.2vw, 112px); font-weight: 540; line-height: .92; letter-spacing: -.065em; }
.price-lock-hero-copy h1 em { color: var(--sage-bright); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.price-lock-hero-copy > p { max-width: 720px; color: rgba(255,255,255,.7); font-size: 18px; line-height: 1.75; }
.price-lock-hero-copy .button-row { margin-top: 36px; }
.price-lock-hero aside { padding: 28px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.05); backdrop-filter: blur(14px); }
.price-lock-hero aside span { color: var(--sage-bright); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.price-lock-hero aside strong { margin: 42px 0 18px; display: block; font-size: 23px; line-height: 1.25; }
.price-lock-hero aside p { color: rgba(255,255,255,.55); font-size: 12px; line-height: 1.72; }
.price-lock-policy-section { background: var(--cream); }
.price-lock-switch { display: grid; grid-template-columns: 1.15fr .7fr; gap: 9vw; align-items: end; background: linear-gradient(90deg, var(--navy) 0 67%, var(--olive-deep) 67%); color: white; }
.price-lock-switch h2 { max-width: 900px; margin: 18px 0 0; font-size: clamp(48px, 6vw, 88px); font-weight: 540; line-height: .98; letter-spacing: -.06em; }
.price-lock-switch p { color: rgba(255,255,255,.63); line-height: 1.8; }
.price-lock-switch .button { margin-top: 22px; }

@media (max-width: 1100px) {
  .price-lock-hero { grid-template-columns: .55fr 1.2fr; }
  .price-lock-hero aside { grid-column: 2; }
  .price-lock-hero-mark { grid-row: 1 / 3; width: min(36vw, 330px); }
}

@media (max-width: 800px) {
  .showcase-carousel { grid-template-areas: "stage stage" "previous next" "dots dots"; grid-template-columns: 1fr 1fr; }
  .showcase-carousel .sector-carousel-copy h3 { font-size: clamp(38px, 12vw, 58px); }
  .showcase-carousel .sector-carousel-copy p { font-size: 13px; }
  .hero-principle.hero-price-lock {
    width: calc(100% - 36px);
    min-height: 82px;
    right: 18px;
    bottom: 18px;
    padding: 12px 16px;
    display: grid;
    grid-template-columns: 46px 1fr;
    border-radius: 14px;
  }
  .hero-price-lock .price-lock-paw-icon { width: 44px; }
  .hero-price-lock strong { font-size: 17px; }
  .hero-copy { padding-bottom: 116px; }
  .price-lock-dialog { width: calc(100vw - 20px); max-height: calc(100vh - 20px); }
  .price-lock-dialog-shell { padding: 24px 20px 30px; }
  .price-lock-dialog-brand { margin: 8px 0 34px; flex-direction: column; align-items: flex-start; gap: 16px; }
  .price-lock-dialog-brand span { padding: 12px 0 0; border-left: 0; border-top: 1px solid var(--line); }
  .price-lock-policy-lead,
  .price-lock-policy-grid,
  .price-lock-policy-detail,
  .price-lock-switch { grid-template-columns: 1fr; }
  .price-lock-policy-lead p { grid-column: 1; margin: 0; }
  .price-lock-policy-grid article { min-height: 250px; }
  .price-lock-policy-grid article:nth-child(2),
  .price-lock-policy-grid article:nth-child(3) { background: transparent; }
  .price-lock-policy-grid article:nth-child(even) { background: rgba(183,164,88,.18); }
  .price-lock-policy-detail > div { min-height: 190px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.15); }
  .price-lock-policy-detail p { margin-top: 36px; }
  .price-lock-hero { min-height: auto; padding: 145px 24px 80px; grid-template-columns: 1fr; gap: 36px; }
  .price-lock-hero-mark { width: min(72vw, 300px); grid-row: auto; justify-self: center; }
  .price-lock-hero-copy h1 { font-size: clamp(54px, 16vw, 76px); line-height: .96; }
  .price-lock-hero aside { grid-column: 1; }
  .price-lock-switch { background: linear-gradient(165deg, var(--navy) 0 68%, var(--olive-deep) 68%); }
}

@media (prefers-reduced-motion: reduce) {
  .sector-carousel-slide.is-active { animation: none; }
  .hero-price-lock { transition: none; }
}
