/* Action Tree Care preview theme. Maps to style.css of a later WordPress theme.
   Tokens: canopy green leads, maroon for actions, brand green as accent, gold only for stars and small rules. */

@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(../fonts/source-sans-3-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(../fonts/source-sans-3-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --canopy:#12301F;      /* deep green: header, hero, footer */
  --canopy-2:#1B4029;    /* raised surfaces on dark */
  --leaf:#7AC045;        /* brand green, accents on dark */
  --moss:#356B21;        /* green text and links on light (5.8:1 on paper) */
  --sage:#E7EEDD;        /* tinted section background */
  --maroon:#760E13;      /* brand maroon, primary action */
  --maroon-d:#560A0E;
  --gold:#F9AF19;        /* stars and small rules only */
  --paper:#F7F4EC;
  --white:#FFFFFF;
  --ink:#1C2420;
  --muted:#5B655E;
  --line:#DDD6C6;
  --on-dark:#F7F4EC;
  --on-dark-muted:#C9D9C0;
  --radius:10px;
  --radius-s:6px;
  --shadow:0 1px 2px rgba(18,48,31,.06),0 8px 24px rgba(18,48,31,.08);
  --wrap:1200px;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;-webkit-tap-highlight-color:rgba(53,107,33,.18);background:var(--paper);color:var(--ink);font:400 1.0625rem/1.6 var(--sans);text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a,button,summary,select,input,textarea{touch-action:manipulation}
a{color:var(--moss);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--canopy)}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;color:var(--canopy);margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.1rem,1.4rem + 3.2vw,3.6rem);letter-spacing:-.01em}
h2{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.4rem)}
h3{font-size:1.3rem}
p{margin:0 0 1em}
ul{padding-left:1.2em}
.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}
.narrow{max-width:46rem}
.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}

/* Focus: visible on light and dark */
:focus-visible{outline:3px solid var(--moss);outline-offset:3px;border-radius:4px}
.on-dark :focus-visible,.site-header :focus-visible,.site-footer :focus-visible,.callbar :focus-visible{outline-color:var(--leaf)}

.skip{position:absolute;left:1rem;top:-100px;z-index:100;background:var(--white);color:var(--canopy);padding:.75rem 1rem;border-radius:var(--radius-s);font-weight:600}
.skip:focus{top:1rem}

/* Buttons: 48px tall */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.7rem 1.3rem;border-radius:8px;border:2px solid transparent;font:600 1.0625rem/1.2 var(--sans);text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.btn svg{width:20px;height:20px;flex:none}
.btn-primary{background:var(--maroon);color:var(--white)}
.btn-primary:hover{background:var(--maroon-d);color:var(--white)}
.btn-green{background:var(--canopy);color:var(--white)}
.btn-green:hover{background:var(--canopy-2);color:var(--white)}
.btn-ghost{background:transparent;color:var(--canopy);border-color:var(--canopy)}
.btn-ghost:hover{background:var(--canopy);color:var(--white)}
.on-dark .btn-ghost{color:var(--on-dark);border-color:rgba(247,244,236,.7)}
.on-dark .btn-ghost:hover{background:var(--on-dark);color:var(--canopy)}
.btn-block{width:100%}
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem}

.eyebrow{display:flex;align-items:center;gap:.6rem;font:600 .8125rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--moss);margin:0 0 .9rem}
.eyebrow::before{content:"";width:24px;height:3px;background:var(--gold);border-radius:2px;flex:none}
.on-dark .eyebrow{color:var(--leaf)}
.lede{font-size:1.1875rem;color:var(--muted);max-width:42rem}
.on-dark .lede{color:var(--on-dark-muted)}

.section{padding:clamp(3rem,2rem + 4vw,5.5rem) 0}
.section-tint{background:var(--sage)}
.section-white{background:var(--white)}
.on-dark{background:var(--canopy);color:var(--on-dark)}
.on-dark h1,.on-dark h2,.on-dark h3{color:var(--white)}
.on-dark a:not(.btn){color:var(--leaf)}
.section-head{margin-bottom:2rem;max-width:44rem}

/* Top strip (desktop) */
.topstrip{display:none;background:#0C2416;color:var(--on-dark-muted);font-size:.9375rem}
.topstrip .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.topstrip a{color:var(--on-dark);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.topstrip a:hover{text-decoration:underline}
.topstrip ul{display:flex;gap:1.5rem;margin:0;padding:0;list-style:none}

/* Header */
.site-header{background:var(--canopy);color:var(--on-dark);position:relative;z-index:50}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.brand{display:flex;align-items:center;gap:.6rem;color:var(--white);text-decoration:none;min-height:48px}
.brand img{width:44px;height:44px}
.brand-name{font:600 1.25rem/1.05 var(--serif);color:var(--white)}
.brand-name small{display:block;font:600 .6875rem/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--leaf);margin-top:3px}
.brand:hover{color:var(--white)}
.header-actions{display:flex;align-items:center;gap:.5rem}
.header-phone{display:none;align-items:center;gap:.45rem;color:var(--white);text-decoration:none;font-weight:600;min-height:48px;padding:0 .5rem}
.header-phone svg{width:20px;height:20px;color:var(--leaf)}
.header-phone:hover{color:var(--leaf)}
.header-quote{display:none}
.menu-btn{display:inline-flex;align-items:center;gap:.4rem;min-height:48px;min-width:48px;padding:0 .8rem;background:transparent;border:2px solid rgba(247,244,236,.35);border-radius:8px;color:var(--white);font:600 1rem var(--sans);cursor:pointer}
.menu-btn svg{width:22px;height:22px}
.primary-nav{display:none}
.primary-nav.open{display:block;position:absolute;left:0;right:0;top:100%;background:var(--canopy);border-top:1px solid rgba(247,244,236,.15);padding:.5rem 1.25rem 1.25rem;box-shadow:0 12px 24px rgba(0,0,0,.25)}
.primary-nav ul{list-style:none;margin:0;padding:0}
.primary-nav a{display:flex;align-items:center;min-height:48px;color:var(--on-dark);text-decoration:none;font-weight:600;font-size:1.0625rem;border-bottom:1px solid rgba(247,244,236,.1)}
.primary-nav a:hover,.primary-nav a[aria-current="page"]{color:var(--leaf)}
.primary-nav .nav-quote{margin-top:1rem}
.primary-nav .nav-quote a{justify-content:center;border:0;background:var(--maroon);border-radius:8px;color:var(--white)}

@media (min-width:960px){
  .topstrip{display:block}
  .site-header{position:sticky;top:0}
  .header-row{min-height:76px}
  .menu-btn{display:none}
  .primary-nav,.primary-nav.open{display:block;position:static;padding:0;box-shadow:none;border:0;background:none}
  .primary-nav ul{display:flex;gap:.25rem}
  .primary-nav a{border:0;padding:0 .75rem;font-size:1rem;position:relative}
  .primary-nav a[aria-current="page"]::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:8px;height:3px;background:var(--leaf);border-radius:2px}
  .primary-nav .nav-quote{display:none}
  .header-phone,.header-quote{display:inline-flex}
}

/* Sticky mobile call bar */
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:var(--canopy);box-shadow:0 -6px 18px rgba(0,0,0,.18)}
.callbar .btn{min-height:48px;padding:.5rem .75rem;font-size:1rem}
.callbar .btn-ghost{color:var(--white);border-color:rgba(247,244,236,.7)}
body{padding-bottom:72px}
@media (min-width:960px){.callbar{display:none}body{padding-bottom:0}}

/* Breadcrumbs */
.crumbs{font-size:.9375rem;margin-bottom:1rem}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem .5rem}
.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--on-dark-muted)}
.on-dark .crumbs a{color:var(--on-dark-muted)}
.on-dark .crumbs a:hover{color:var(--white)}
.crumbs [aria-current]{color:var(--white)}

/* Page hero for inner pages */
.page-hero{background:var(--canopy);color:var(--on-dark);padding:2rem 0 2.75rem;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(122,192,69,.18);box-shadow:0 0 0 40px rgba(122,192,69,.04),0 0 0 80px rgba(122,192,69,.03),0 0 0 120px rgba(122,192,69,.02);pointer-events:none}
.page-hero h1{color:var(--white);max-width:40rem}
.page-hero .lede{color:var(--on-dark-muted)}
.page-hero .wrap{position:relative;z-index:1}

/* Home hero: copy left, real photo right (photo never hidden behind the form) */
.hero{background:var(--canopy);color:var(--on-dark);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;left:-180px;bottom:-260px;width:620px;height:620px;border-radius:50%;border:1px solid rgba(122,192,69,.16);box-shadow:0 0 0 46px rgba(122,192,69,.035),0 0 0 92px rgba(122,192,69,.025),0 0 0 138px rgba(122,192,69,.018);pointer-events:none}
.hero-grid{position:relative;display:grid;gap:1.75rem;padding:0 0 2.5rem}
.hero h1{color:var(--white);margin-bottom:.4em}
.hero .lede{color:var(--on-dark-muted);font-size:1.125rem;margin-bottom:1.25rem}
.proof{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:.45rem}
.proof li{display:flex;gap:.55rem;align-items:flex-start;color:var(--on-dark)}
.proof svg{width:20px;height:20px;flex:none;color:var(--leaf);margin-top:3px}
.hero .btn-row .btn{flex:1 1 220px}
.hero-photo{position:relative;margin:0 -1.25rem;order:-1}
.hero-photo>img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:66% 50%}
.hero-photo figcaption{position:absolute;left:1rem;bottom:1rem;display:flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.96);color:var(--ink);border-radius:10px;padding:.45rem .8rem .45rem .5rem;font-weight:600;font-size:.875rem;line-height:1.25;box-shadow:0 8px 24px rgba(0,0,0,.25);max-width:calc(100% - 2rem)}
.hero-photo figcaption img{width:26px;height:auto;flex:none}
@media (min-width:960px){
  .hero-grid{grid-template-columns:1fr 1fr;align-items:center;gap:3.5rem;padding:3.5rem 0 4rem}
  .hero-photo{margin:0 18px 18px 0;order:0}
  .hero-photo>img{border-radius:16px;aspect-ratio:5/4;box-shadow:0 24px 60px rgba(0,0,0,.35);position:relative;z-index:1}
  .hero-photo::after{content:"";position:absolute;inset:18px -18px -18px 18px;border:2px solid rgba(122,192,69,.4);border-radius:18px}
  .hero-photo figcaption{z-index:2;left:1.25rem;bottom:1.25rem;font-size:.9375rem}
  .hero .btn-row .btn{flex:0 0 auto}
}

/* Stats strip */
.stats{background:#0C2416;color:var(--on-dark);border-top:1px solid rgba(247,244,236,.08)}
.stats ul{list-style:none;margin:0;padding:1.25rem 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.stats li{display:flex;flex-direction:column;gap:.15rem;padding:.25rem 0 .25rem .9rem;border-left:3px solid var(--leaf)}
.stats strong{font:600 1.6rem/1.1 var(--serif);color:var(--white);display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.stats .stars{margin:0}
.stats span{font-size:.9375rem;color:var(--on-dark-muted)}
@media (min-width:960px){.stats ul{grid-template-columns:repeat(4,1fr);padding:1.6rem 0}}

/* Quote band */
.quote-band{display:grid;gap:2rem;align-items:start}
@media (min-width:960px){.quote-band{grid-template-columns:.9fr 1.1fr;gap:3.5rem}}
.rating-line{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:1rem 0 1.25rem;font-weight:600}
.rating-line .stars{margin:0}
.quote-points{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:.6rem}
.quote-points li{display:flex;gap:.6rem;align-items:flex-start}
.quote-points svg{width:22px;height:22px;color:var(--moss);flex:none;margin-top:2px}

/* Quote form card */
.form-card{background:var(--white);color:var(--ink);border-radius:14px;padding:1.5rem 1.25rem;box-shadow:0 20px 50px rgba(0,0,0,.25);border-top:5px solid var(--leaf)}
.section .form-card,.quote-band .form-card{box-shadow:var(--shadow);border:1px solid var(--line);border-top:5px solid var(--leaf)}
.form-card h2{font-size:1.6rem;margin-bottom:.25rem;color:var(--canopy)}
.form-card .form-sub{color:var(--muted);margin-bottom:1.25rem;font-size:1rem}
.form-card .form-sub a{font-weight:600;color:var(--maroon)}
.field{margin-bottom:1rem}
.field label{display:block;font-weight:600;margin-bottom:.35rem;color:var(--ink)}
.field .opt{font-weight:400;color:var(--muted)}
.field .req{color:var(--maroon)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:.65rem .8rem;font:400 1rem/1.4 var(--sans);font-size:max(16px,1rem);color:var(--ink);background:var(--white);border:1.5px solid #9AA39C;border-radius:var(--radius-s);transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:104px;resize:vertical}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%2312301F' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:none;border-color:var(--moss);box-shadow:0 0 0 3px rgba(53,107,33,.35)}
.field [aria-invalid="true"]{border-color:var(--maroon);box-shadow:0 0 0 1px var(--maroon)}
.field-error{display:none;margin-top:.35rem;color:var(--maroon);font-size:.9375rem;font-weight:600}
.field-error.show{display:flex;gap:.35rem;align-items:flex-start}
.field-row{display:grid;gap:0 1rem}
@media (min-width:560px){.field-row{grid-template-columns:1fr 1fr}}
.form-note{font-size:.9375rem;color:var(--muted);margin:.75rem 0 0;text-align:center}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-success{text-align:left}
.form-success h2{display:flex;align-items:center;gap:.6rem}
.form-success h2 svg{width:32px;height:32px;color:var(--moss);flex:none}
.form-success .preview-flag{font-size:.875rem;color:var(--muted);border-top:1px solid var(--line);padding-top:.75rem;margin-top:1rem}
.form-success:focus{outline:none}

/* Trust strip */
.trust{background:var(--white);border-bottom:1px solid var(--line)}
.trust .wrap{display:grid;gap:1.5rem;padding:1.75rem 0}
.trust-claims{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.25rem}
.trust-claims li{display:flex;gap:.5rem;align-items:flex-start;font-weight:600;line-height:1.3}
.trust-claims svg{width:22px;height:22px;color:var(--moss);flex:none}
.badges{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.badges img{height:48px;width:auto}
.badges .badge-isa{height:68px}
@media (min-width:960px){
  .trust .wrap{grid-template-columns:1.3fr 1fr;align-items:center}
  .trust-claims{grid-template-columns:repeat(2,1fr)}
  .badges{justify-content:flex-end}
}

/* Cards */
.grid{display:grid;gap:1.25rem}
@media (min-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:960px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.card-body{padding:1.1rem 1.15rem 1.3rem;display:flex;flex-direction:column;flex:1}
.card h3{font-size:1.2rem;margin-bottom:.4rem}
.card p{font-size:1rem;color:var(--muted);margin-bottom:.9rem}
.card .more{margin-top:auto;font-weight:600}
.card a.stretch{text-decoration:none;color:inherit}
.card a.stretch::after{content:"";position:absolute;inset:0}
.card-link{position:relative;transition:box-shadow .15s,transform .15s}
.card-link:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.card-link:focus-within{outline:3px solid var(--moss);outline-offset:3px}
.card-link a.stretch:focus-visible{outline:none}

/* Split layout */
.split{display:grid;gap:2rem;align-items:center}
@media (min-width:900px){.split{grid-template-columns:1fr 1fr;gap:3.5rem}.split.rev>:first-child{order:2}}
.photo{border-radius:var(--radius);overflow:hidden}
.photo img{width:100%}
.photo-cap{font-size:.9375rem;color:var(--muted);margin-top:.5rem}

/* Steps */
.steps{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;counter-reset:step}
@media (min-width:900px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.3rem;counter-increment:step;position:relative}
.steps li::before{content:"0" counter(step);display:block;font:600 2.2rem/1 var(--serif);color:var(--leaf);margin-bottom:.6rem;-webkit-text-stroke:0}
.steps h3{margin-bottom:.4rem}
.steps p{color:var(--muted);margin:0;font-size:1rem}
.on-dark .steps li{background:var(--canopy-2);border-color:rgba(247,244,236,.12)}
.on-dark .steps p{color:var(--on-dark-muted)}

/* Storm band */
.storm{display:grid;gap:1.75rem;align-items:center}
@media (min-width:900px){.storm{grid-template-columns:.8fr 1.2fr;gap:3rem}}
.storm .photo img{aspect-ratio:560/521;object-fit:cover}

/* People */
.person{display:grid;gap:1.25rem;align-items:start}
@media (min-width:700px){.person{grid-template-columns:200px 1fr}}
.person img{border-radius:var(--radius);background:var(--sage);width:200px}
.person .role{font-weight:600;color:var(--moss);margin:-.2rem 0 .7rem}
.cred{display:flex;gap:1rem;align-items:center;margin-top:1rem}
.cred img{width:72px;height:auto;border-radius:50%;background:var(--sage)}
.fig{margin:0}
.badges.badges-left{justify-content:flex-start}
.cred p{margin:0;font-size:.9375rem;color:var(--muted)}

/* Reviews */
.reviews{columns:1;column-gap:1.25rem}
@media (min-width:760px){.reviews{columns:2}}
@media (min-width:1100px){.reviews.cols-3{columns:3}}
.review{break-inside:avoid;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem 1.35rem 1.2rem;margin:0 0 1.25rem}
.stars{display:flex;gap:2px;margin-bottom:.7rem}
.stars svg{width:18px;height:18px;color:var(--gold)}
.review blockquote{margin:0 0 1rem;font-size:1.0313rem}
.review blockquote p{margin:0 0 .75em}
.review figcaption{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-top:1px solid var(--line);padding-top:.8rem;font-size:.9375rem}
.review cite{font-style:normal;font-weight:600;color:var(--ink)}
.review .src{color:var(--muted)}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
@media (min-width:900px){.gallery{grid-template-columns:repeat(3,1fr);gap:.9rem}}
.gallery figure{margin:0;border-radius:var(--radius-s);overflow:hidden}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}

/* Area list */
.areas{display:grid;gap:1.5rem}
@media (min-width:900px){.areas{grid-template-columns:1fr 1.4fr;gap:3rem}}
.county-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.county-list li{background:var(--canopy-2);border-radius:var(--radius-s);padding:.8rem 1rem;font-weight:600}
.town-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.25rem 1rem}
@media (min-width:640px){.town-list{grid-template-columns:repeat(3,1fr)}}
.town-list a{display:flex;align-items:center;min-height:44px;font-weight:600}

/* FAQ */
.faq{max-width:52rem}
.faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-s);margin-bottom:.6rem}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:56px;padding:.75rem 1.1rem;font-weight:600;font-size:1.0625rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:600 1.5rem/1 var(--serif);color:var(--moss);flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq details>div{padding:0 1.1rem 1rem;color:var(--muted)}
.faq details>div p:last-child{margin:0}

/* CTA band */
.cta-band{background:var(--maroon);color:var(--white);padding:2.5rem 0}
.cta-band .wrap{display:grid;gap:1.25rem;align-items:center}
.cta-band h2{color:var(--white);margin:0 0 .25rem}
.cta-band p{margin:0;color:#F3D9DA}
.cta-band .btn-light{background:var(--white);color:var(--maroon)}
.cta-band .btn-light:hover{background:var(--paper);color:var(--maroon-d)}
.cta-band .btn-outline{border-color:rgba(255,255,255,.8);color:var(--white)}
.cta-band .btn-outline:hover{background:rgba(255,255,255,.12);color:var(--white)}
.cta-band :focus-visible{outline-color:var(--white)}
@media (min-width:900px){.cta-band .wrap{grid-template-columns:1fr auto}}

/* Prose (services, town, post) */
.prose{max-width:44rem}
.prose h2{font-size:clamp(1.45rem,1.2rem + 1vw,1.9rem);margin-top:2rem}
.prose h2:first-child{margin-top:0}
.prose li{margin-bottom:.35rem}
.prose img{border-radius:var(--radius)}

/* Service detail blocks */
.svc{display:grid;gap:1.5rem;padding:2.25rem 0;border-top:1px solid var(--line);align-items:start}
.svc:first-of-type{border-top:0;padding-top:0}
@media (min-width:900px){.svc{grid-template-columns:1fr 1.3fr;gap:3rem}.svc:nth-of-type(even) .photo{order:2}}
.svc .photo img{aspect-ratio:3/2;object-fit:cover}
.svc .photo.tall img{aspect-ratio:4/5}
.jump{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:1.5rem 0 0;padding:0}
.jump a{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid rgba(247,244,236,.35);border-radius:999px;color:var(--on-dark);text-decoration:none;font-weight:600;font-size:.9375rem}
.jump a:hover{background:var(--canopy-2);color:var(--leaf)}

/* Layout with sidebar */
.with-aside{display:grid;gap:2.5rem}
@media (min-width:960px){.with-aside{grid-template-columns:minmax(0,1fr) 340px;gap:3.5rem;align-items:start}.with-aside aside{position:sticky;top:110px}}
.aside-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;margin-bottom:1.25rem}
.aside-card h2{font-size:1.3rem}
.aside-card.dark{background:var(--canopy);color:var(--on-dark);border:0}
.aside-card.dark h2{color:var(--white)}
.aside-card ul{list-style:none;margin:0;padding:0}
.aside-card li a{display:flex;align-items:center;min-height:44px;border-bottom:1px solid var(--line)}
.aside-card .btn{width:100%;margin-top:.6rem}

/* Contact methods */
.methods{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:.75rem}
.methods li{display:flex;gap:.9rem;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem}
.methods svg{width:24px;height:24px;color:var(--moss);flex:none;margin-top:2px}
.methods strong{display:block}
.methods a{font-weight:600;font-size:1.125rem}

/* Blog */
.cat-nav{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 2rem;padding:0}
.cat-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.1rem;border:1px solid var(--line);background:var(--white);border-radius:999px;text-decoration:none;font-weight:600;color:var(--canopy)}
.cat-nav a[aria-current="page"]{background:var(--canopy);border-color:var(--canopy);color:var(--white)}
.cat-nav a:hover{border-color:var(--canopy)}
.post-list{display:grid;gap:1.25rem}
@media (min-width:760px){.post-list{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.post-list{grid-template-columns:repeat(3,1fr)}}
.post-card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.3rem 1.2rem;display:flex;flex-direction:column;border-top:4px solid var(--sage)}
.post-card:hover{border-top-color:var(--leaf);box-shadow:var(--shadow)}
.post-card:focus-within{outline:3px solid var(--moss);outline-offset:3px}
.post-meta{display:flex;flex-wrap:wrap;gap:.35rem .75rem;font-size:.875rem;color:var(--muted);margin-bottom:.6rem}
.chip{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--moss)}
.post-card h2{font-size:1.25rem;margin-bottom:.5rem}
.post-card h2 a{color:var(--canopy);text-decoration:none}
.post-card h2 a::after{content:"";position:absolute;inset:0}
.post-card h2 a:focus-visible{outline:none}
.post-card p{color:var(--muted);font-size:1rem;margin-bottom:.75rem}
.post-card .more{margin-top:auto;font-weight:600;color:var(--moss)}
.pager{margin-top:2.5rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem}
.pager a,.pager span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .8rem;border-radius:8px;font-weight:600;text-decoration:none}
.pager a{background:var(--white);border:1px solid var(--line);color:var(--canopy)}
.pager a:hover{border-color:var(--canopy)}
.pager [aria-current="page"]{background:var(--canopy);color:var(--white);border:1px solid var(--canopy)}
.pager .gap{min-width:auto;color:var(--muted)}
.pager .disabled{color:#8A928C;border:1px dashed var(--line)}
.pager-status{text-align:center;color:var(--muted);font-size:.9375rem;margin-top:.75rem}

.post-head .post-meta{color:var(--on-dark-muted);font-size:.9375rem}
.post-head .chip{color:var(--leaf)}
.post-feature{margin:0 0 2rem}
.post-feature img{border-radius:var(--radius);width:100%}
.post-nav{display:grid;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
@media (min-width:700px){.post-nav{grid-template-columns:1fr 1fr}}
.post-nav a{display:block;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.15rem;text-decoration:none;color:var(--canopy);font-weight:600;min-height:44px}
.post-nav a span{display:block;font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.25rem}
.post-nav a:hover{border-color:var(--canopy)}
.post-nav .next{text-align:right}

/* Footer */
.site-footer{background:#0C2416;color:var(--on-dark-muted);padding:3.5rem 0 1.5rem;font-size:1rem}
.site-footer h2{font:600 .8125rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--leaf);margin-bottom:1rem}
.site-footer a{color:var(--on-dark);text-decoration:none}
.site-footer a:hover{color:var(--leaf);text-decoration:underline}
.foot-grid{display:grid;gap:2.25rem}
@media (min-width:700px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.foot-brand .tag{font:600 1.35rem/1.25 var(--serif);color:var(--white);margin:1rem 0 .75rem}
.foot-list{list-style:none;margin:0;padding:0}
.foot-list li{margin-bottom:.15rem}
.foot-list a{display:inline-flex;align-items:center;min-height:44px}
.foot-contact li{display:flex;gap:.6rem;align-items:center;min-height:44px}
.foot-contact svg{width:18px;height:18px;color:var(--leaf);flex:none}
.social{display:flex;gap:.5rem;margin-top:1rem}
.social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(247,244,236,.25)}
.social svg{width:20px;height:20px}
.foot-bottom{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgba(247,244,236,.12);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;font-size:.9375rem}

.mt-0{margin-top:0}.mb-0{margin-bottom:0}.mt-2{margin-top:2rem}.center{text-align:center}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}

.split.split-top{align-items:start}
.steps-mini{margin:0;padding-left:1.25rem;display:grid;gap:.75rem;color:var(--muted);font-size:1rem}
.steps-mini strong{color:var(--ink)}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.checks li{display:flex;gap:.6rem;align-items:center;font-weight:600}
.checks svg{width:22px;height:22px;color:var(--moss);flex:none}
.aside-card.dark p{color:var(--on-dark-muted)}

.crumbs a,.crumbs span{display:inline-flex;align-items:center;min-height:44px}
.crumbs a{min-width:44px;justify-content:center;padding:0 4px}
.review .src{display:inline-flex;align-items:center;min-height:44px}
.methods a{display:inline-flex;align-items:center;min-height:44px}
.card h3 a.stretch{display:inline-flex;align-items:center;min-height:44px}
.post-card h2 a{display:inline-block;min-height:44px}
/* Compact service cards on phones: thumbnail left, text right */
@media (max-width:639px){
  .card-link{flex-direction:row;align-items:stretch}
  .card-link img{width:104px;aspect-ratio:auto;height:auto;object-fit:cover;flex:none}
  .card-link .card-body{padding:.8rem .9rem}
  .card-link p{font-size:.9375rem;margin-bottom:.4rem}
  .card-link .more{display:none}
}

/* Service icon cards */
.svc-cards{display:grid;gap:1rem}
@media (min-width:640px){.svc-cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.svc-cards{grid-template-columns:repeat(4,1fr)}}
.svc-card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.2rem 1.15rem;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s,border-color .2s}
.svc-card .ico{width:48px;height:48px;border-radius:12px;background:var(--sage);color:var(--moss);display:flex;align-items:center;justify-content:center;margin-bottom:.6rem;transition:background-color .2s,color .2s}
.svc-card .ico svg{width:26px;height:26px}
.svc-card h3{font-size:1.15rem;margin-bottom:.2rem}
.svc-card h3 a{color:var(--canopy);text-decoration:none;display:inline-flex;min-height:44px;align-items:center}
.svc-card h3 a::after{content:"";position:absolute;inset:0}
.svc-card h3 a:focus-visible{outline:none}
.svc-card:focus-within{outline:3px solid var(--moss);outline-offset:3px}
.svc-card p{color:var(--muted);font-size:1rem;margin:0 0 .75rem}
.svc-card .more{margin-top:auto;font-weight:600;color:var(--moss);display:flex;align-items:center;gap:.3rem}
.svc-card .more svg{width:18px;height:18px;transition:transform .2s}
.svc-card:hover{border-color:var(--moss);box-shadow:var(--shadow);transform:translateY(-3px)}
.svc-card:hover .ico{background:var(--canopy);color:var(--leaf)}
.svc-card:hover .more svg{transform:translateX(3px)}

/* Photo band */
.photo-band{position:relative;min-height:340px;display:flex;align-items:flex-end;color:var(--white);overflow:hidden;margin:0}
.photo-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.photo-band::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,36,22,.9) 0%,rgba(12,36,22,.45) 38%,rgba(12,36,22,0) 70%)}
.photo-band .wrap{position:relative;z-index:1;padding:4rem 0 2.5rem}
.photo-band blockquote{margin:0;max-width:40rem;font:600 clamp(1.4rem,1.1rem + 1.4vw,2.1rem)/1.25 var(--serif)}
.photo-band blockquote p{margin:0}
.photo-band figcaption{margin-top:.75rem;color:var(--on-dark-muted);font-size:1rem}
@media (min-width:960px){.photo-band{min-height:460px}}

/* Visual process */
.process{list-style:none;margin:0;padding:0;display:grid;gap:1.75rem;counter-reset:step}
.process li{position:relative;counter-increment:step;padding-left:4.25rem}
.process li::before{content:counter(step);position:absolute;left:0;top:0;width:52px;height:52px;border-radius:50%;background:var(--canopy);color:var(--leaf);display:flex;align-items:center;justify-content:center;font:600 1.4rem/1 var(--serif);box-shadow:0 0 0 6px var(--sage)}
.process li::after{content:"";position:absolute;left:25px;top:62px;bottom:-1.5rem;width:2px;background:repeating-linear-gradient(var(--moss) 0 6px,transparent 6px 12px);opacity:.55}
.process li:last-child::after{display:none}
.process h3{margin:.65rem 0 .35rem}
.process p{color:var(--muted);margin:0}
.section-white .process li::before{box-shadow:0 0 0 6px var(--paper)}
@media (min-width:900px){
  .process{grid-template-columns:repeat(3,1fr);gap:2.5rem}
  .process li{padding-left:0;padding-top:4.5rem}
  .process li::after{left:68px;right:-2.5rem;top:25px;bottom:auto;width:auto;height:2px;background:repeating-linear-gradient(90deg,var(--moss) 0 6px,transparent 6px 12px)}
  .process h3{margin-top:0}
}

/* People */
.people{display:grid;gap:1.5rem}
@media (min-width:960px){.people{grid-template-columns:1.25fr 1fr}}
.person-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:1.5rem;display:grid;gap:1.1rem;align-content:start}
.person-card .portrait{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}
.person-card .portrait .head{width:170px;height:auto;aspect-ratio:473/463;object-fit:contain;border-radius:14px;background:var(--sage)}
.person-card .portrait .isa{width:68px;height:auto}
.person-card .wide{width:100%;height:auto;aspect-ratio:800/593;object-fit:cover;border-radius:12px}
.person-card h3{margin-bottom:.15rem}
.person-card .role{font-weight:600;color:var(--moss);margin:0 0 .75rem}
.person-card p:last-child{margin-bottom:0}
@media (min-width:600px){.person-card .portrait .head{width:210px}}

/* County cards */
.county-cards{display:grid;gap:1rem}
@media (min-width:700px){.county-cards{grid-template-columns:repeat(2,1fr)}}
.county{background:var(--canopy-2);border:1px solid rgba(247,244,236,.12);border-radius:var(--radius);padding:1.25rem;transition:border-color .2s,transform .2s}
.county:hover{border-color:var(--leaf);transform:translateY(-2px)}
.county h3{font-size:1.25rem;margin:0 0 .5rem}
.on-dark .county h3 a{color:var(--white);text-decoration:none;display:inline-flex;min-height:44px;align-items:center;gap:.4rem}
.on-dark .county h3 a:hover{color:var(--leaf)}
.county ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.on-dark .county li a,.county li span{display:inline-flex;align-items:center;min-height:44px;padding:0 .85rem;border-radius:999px;background:rgba(247,244,236,.09);color:var(--on-dark);text-decoration:none;font-size:.9375rem}
.on-dark .county li a:hover{background:var(--leaf);color:var(--canopy)}
.county li span{background:transparent;border:1px dashed rgba(247,244,236,.25);color:var(--on-dark-muted)}
.county .note{color:var(--on-dark-muted);font-size:.9375rem;margin:.6rem 0 0}

/* Link chips on light backgrounds */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.chips a,.chips span{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--canopy);text-decoration:none;font-weight:600;font-size:.9375rem}
.chips a:hover{border-color:var(--canopy)}
.chips span{font-weight:400;color:var(--muted);border-style:dashed}

/* Notes for Jamie in the preview */
.write-note{background:#FFF7E0;border:2px dashed #9A6F06;color:#4A3605;border-radius:var(--radius-s);padding:.9rem 1rem;font-size:.9375rem;margin:1.25rem 0}
.write-note strong{color:#3E2D03}
.stub-note{background:var(--white);border:1px solid var(--line);border-left:5px solid var(--leaf);border-radius:var(--radius-s);padding:1rem 1.1rem;color:var(--muted);margin:0 0 1.5rem}

/* Scroll reveal: only when motion is welcome and JS is running */
@media (prefers-reduced-motion:no-preference){
  .js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
  .js .reveal.in{opacity:1;transform:none}
  .photo img,.gallery img{transition:transform .5s ease}
  .photo:hover img,.gallery figure:hover img{transform:scale(1.03)}
}
.form-proof{display:flex;align-items:center;gap:.5rem;margin:-.6rem 0 1.1rem;font-size:.9375rem;font-weight:600;color:var(--ink)}
.form-proof .stars{margin:0}
.form-proof .stars svg{width:16px;height:16px}
.county h3 svg{width:20px;height:20px;flex:none}

/* Round 2: featured service cards */
.svc-featured{display:grid;gap:1rem;margin-bottom:1rem}
@media (min-width:800px){.svc-featured{grid-template-columns:1fr 1fr}}
.svc-feature{position:relative;border-radius:14px;overflow:hidden;min-height:320px;display:flex;align-items:flex-end;color:var(--white);background:var(--canopy)}
.svc-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.svc-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,36,22,.95) 0%,rgba(12,36,22,.7) 40%,rgba(12,36,22,.05) 100%)}
.svc-feature-body{position:relative;z-index:1;padding:1.5rem}
.svc-feature .ico{width:48px;height:48px;border-radius:12px;background:var(--leaf);color:var(--canopy);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}
.svc-feature .ico svg{width:26px;height:26px}
.svc-feature h3{font-size:1.6rem;margin:0 0 .3rem}
.svc-feature h3 a{color:var(--white);text-decoration:none;display:inline-flex;min-height:44px;align-items:center}
.svc-feature h3 a::after{content:"";position:absolute;inset:0;z-index:2}
.svc-feature h3 a:focus-visible{outline:none}
.svc-feature:focus-within{outline:3px solid var(--leaf);outline-offset:3px}
.svc-feature p{color:var(--on-dark-muted);margin:0 0 .6rem;max-width:34rem}
.svc-feature .more{font-weight:600;color:var(--leaf);display:flex;align-items:center;gap:.3rem}
.svc-feature .more svg{width:18px;height:18px;transition:transform .2s}
.svc-feature:hover>img{transform:scale(1.04)}
.svc-feature:hover .more svg{transform:translateX(3px)}
@media (min-width:960px){.svc-feature{min-height:380px}}
@media (min-width:1100px){.svc-cards.svc-cards-3{grid-template-columns:repeat(3,1fr)}}

/* Round 2: family section */
.family{background:linear-gradient(180deg,var(--paper) 0%,var(--sage) 100%)}
.family-head{max-width:48rem;margin-bottom:2rem}
.family-grid{display:grid;gap:1.5rem}
@media (min-width:960px){.family-grid{grid-template-columns:1.2fr 1fr}}
.person-card.amber{border-top:5px solid var(--leaf)}
.person-card.eli{border-top:5px solid var(--maroon)}
.cred-badge{display:flex;flex-direction:column;align-items:center;gap:.35rem;background:var(--canopy);color:var(--on-dark);border-radius:12px;padding:.75rem .7rem;font-size:.8125rem;font-weight:600;text-align:center}
.cred-badge .isa{width:64px;height:auto}
.leads-label{font-weight:600;color:var(--canopy);margin:.5rem 0 .5rem}
.facts{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem}
.facts li{display:flex;gap:.55rem;align-items:center}
.facts svg{width:20px;height:20px;color:var(--maroon);flex:none}
.mini-quote{margin:0;padding:1rem 1.1rem;background:var(--paper);border-left:4px solid var(--gold);border-radius:8px}
.mini-quote p{margin:0 0 .4rem;font:600 1.0625rem/1.4 var(--serif);color:var(--canopy)}
.mini-quote footer{font-size:.9375rem;color:var(--muted)}
.crew-strip{margin-top:1.5rem;display:flex;gap:1rem;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem}
.crew-strip .ico{width:44px;height:44px;border-radius:10px;background:var(--canopy);color:var(--leaf);display:flex;align-items:center;justify-content:center;flex:none}
.crew-strip .ico svg{width:24px;height:24px}
.crew-strip p{margin:0}

/* Round 2: credential callout on service pages */
.cred-callout{display:flex;gap:1.25rem;align-items:center;background:var(--canopy);color:var(--on-dark);border-radius:14px;padding:1.5rem}
.cred-callout img{width:90px;height:auto;flex:none}
.cred-callout .big{font:600 1.4rem/1.2 var(--serif);color:var(--white);margin:0 0 .4rem}
.cred-callout p{margin:0;color:var(--on-dark-muted)}
.cred-callout .eyebrow{color:var(--leaf);margin-bottom:.4rem}
.ico-lg{width:72px;height:72px;border-radius:16px;background:var(--leaf);color:var(--canopy);display:flex;align-items:center;justify-content:center;flex:none}
.ico-lg svg{width:38px;height:38px}

/* Round 2: South Daytona address and click-to-load map */
.nap{margin-top:2rem;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:1.25rem}
.nap h2{margin-top:0}
.map-facade{background:var(--sage);border-radius:10px;padding:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.map-facade p{flex:1 1 100%;margin:0;color:var(--muted)}
.map-facade iframe{width:100%;height:360px;border:0;border-radius:10px}

/* County cards: full town lists */
@media (min-width:1100px){.county-cards{grid-template-columns:repeat(3,1fr)}}
.county .note{margin:0 0 .6rem}
.county ul.town-cols{display:grid;grid-template-columns:1fr 1fr;gap:.15rem .75rem;flex-wrap:nowrap}
.on-dark .county ul.town-cols li a,.county ul.town-cols li span{display:flex;align-items:center;min-height:44px;padding:0;border:0;border-radius:0;background:none;font-size:.9375rem;line-height:1.25}
.on-dark .county ul.town-cols li a{color:var(--leaf);text-decoration:underline;text-underline-offset:3px;font-weight:600}
.on-dark .county ul.town-cols li a:hover{background:none;color:var(--white)}
.county ul.town-cols li span{min-height:32px;color:var(--on-dark)}
.county ul.town-cols em{font-style:normal;color:var(--on-dark-muted);font-size:.8125rem;margin-left:.25rem}
.county-all{margin:.75rem 0 0;border-top:1px solid rgba(247,244,236,.12);padding-top:.5rem}
.on-dark .county-all a{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;color:var(--white);font-weight:600;text-decoration:none}
.on-dark .county-all a:hover{color:var(--leaf)}
.county-all svg{width:18px;height:18px}

/* Round 3: Google review links and Titusville line */
.topstrip .g-link{text-decoration:underline;text-underline-offset:3px;min-height:44px}
.stats .stat-link{padding:0;border:0}
.stats .stat-link a{display:flex;flex-direction:column;gap:.15rem;padding:.25rem 0 .25rem .9rem;border-left:3px solid var(--leaf);color:inherit;text-decoration:none;min-height:44px}
.stats .stat-link a:hover strong{color:var(--leaf)}
.stats .stat-link a:hover>span{text-decoration:underline}
.form-proof a{color:var(--ink)}
.also-serving{margin:1.25rem 0 0;font-weight:600}
.also-serving a{display:inline-flex;align-items:center;min-height:44px}
.also-serving.light{margin:0}

/* Round 4: subtle breadcrumbs (deep pages only) */
.crumbs{font-size:.8125rem;margin-bottom:.25rem;opacity:.9}
.crumbs a,.crumbs span{min-height:36px}
.crumbs a{min-height:44px}
/* Round 4: simple county tiles (Home, service pages) */
.county-cards-simple{display:grid;gap:.75rem}
@media (min-width:640px){.county-cards-simple{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.county-cards-simple{grid-template-columns:repeat(3,1fr)}}
.on-dark a.county-tile{display:flex;flex-direction:column;justify-content:center;position:relative;min-height:96px;padding:1.1rem 3rem 1.1rem 1.25rem;background:var(--canopy-2);border:1px solid rgba(247,244,236,.14);border-radius:var(--radius);color:var(--white);text-decoration:none;transition:border-color .2s,transform .2s,background-color .2s}
.on-dark a.county-tile:hover{border-color:var(--leaf);transform:translateY(-2px);color:var(--white)}
.county-tile .county-name{font:600 1.3rem/1.2 var(--serif)}
.county-tile .county-sub{color:var(--on-dark-muted);font-size:.9375rem;margin-top:.2rem}
.county-tile svg{position:absolute;right:1.1rem;top:50%;width:22px;height:22px;margin-top:-11px;color:var(--leaf);transition:transform .2s}
.county-tile:hover svg{transform:translateX(3px)}
.on-dark a.county-tile-extra{background:transparent;border-style:dashed}
.group-label{margin:.6rem 0 .1rem;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leaf)}

/* Credential number beside the ISA badge */
.badge-cred{margin:0;display:flex;flex-direction:column;align-items:center;gap:.3rem}
.badge-cred figcaption{font-size:.8125rem;font-weight:600;line-height:1.25;text-align:center;color:var(--canopy)}
.cred-callout .cred-no{font-weight:600;color:var(--leaf);margin:-.2rem 0 .4rem}


/* ---------------------------------------------------------------------------
   WordPress additions (theme only, not in the preview).
   Never style bare WordPress body or post classes (page, home, blog, single, post, archive, search,
   category, tag, paged, error404): body_class() adds them and a bare rule would hit the whole site.
   --------------------------------------------------------------------------- */
@media (min-width:960px){body.admin-bar .site-header{top:32px}}
.prose .alignleft{float:left;margin:.3rem 1.5rem 1rem 0;max-width:50%}
.prose .alignright{float:right;margin:.3rem 0 1rem 1.5rem;max-width:50%}
.prose .aligncenter{margin-left:auto;margin-right:auto}
.prose figure,.prose .wp-caption{margin:1.5rem 0;max-width:100%}
.prose figcaption,.prose .wp-caption-text{font-size:.9375rem;color:var(--muted);margin-top:.4rem}
.prose img{height:auto}
.prose table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:1rem}
.prose th,.prose td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left;vertical-align:top}
.prose blockquote{margin:1.5rem 0;padding:.25rem 0 .25rem 1.1rem;border-left:4px solid var(--leaf)}
.prose iframe,.prose video{max-width:100%}
.prose::after{content:"";display:table;clear:both}
.related{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
.related h2{font-size:1.4rem;margin-top:0}
.form-alert{border:1px solid var(--maroon);border-left:5px solid var(--maroon);background:#FBEFEF;color:var(--ink);border-radius:var(--radius-s);padding:.8rem 1rem;margin:0 0 1rem}
.form-alert p{margin:0}
.form-alert p+p{margin-top:.4rem}
.btn[disabled],.btn[aria-busy="true"]{opacity:.7;cursor:progress}
.search-form{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 2rem;max-width:36rem}
.search-form input[type="search"]{flex:1 1 220px;min-height:48px;padding:.6rem .9rem;border:1px solid var(--line);border-radius:var(--radius-s);font:inherit;background:var(--white)}
.result-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.sitemap-list{columns:1;padding-left:1.1rem}
@media (min-width:700px){.sitemap-list.cols{columns:2;column-gap:2rem}}
.sitemap-list li{break-inside:avoid;margin-bottom:.3rem}
.related .post-list{grid-template-columns:1fr}
