@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand:#1b5e3b;--color-brand-dark:#123f27;--color-emergency:#b42318;--color-amber:#b7791f;--color-ink:#1f2937;--color-muted:#5b6770;--color-tint:#eff6f0;--color-warm:#fbf6ec;--font-display:"Fraunces", Georgia, serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.end-2023{inset-inline-end:calc(var(--spacing) * 2023)}.top-10{top:calc(var(--spacing) * 10)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false} *{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#1F2937;font-size:17px;line-height:1.65;background:#fff;padding-bottom:0} a{color:#1B5E3B}.wrap{max-width:1200px;margin:0 auto;padding:0 16px} h1{font-family:Georgia,serif;font-size:32px;line-height:1.2}h2{font-family:Georgia,serif;font-size:26px;text-align:center;line-height:1.25}h3{font-size:20px} .sec{padding:56px 0}.sec:nth-child(even){background:#EFF6F0}.sec-sub{text-align:center;max-width:75ch;margin:0 auto 28px} .sticky-wrap{position:sticky;top:0;z-index:60;background:#fff}.topbar{background:#EFF6F0;overflow:hidden;border-bottom:1px solid #D9E2DC;}.topbar-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:8px 16px} .chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:14px;background:#fff;border:1px solid #D9E2DC}.chip.green{background:#E6F4EA}.chip.blue{background:#DDEBF7}.chip.amber{background:#FEF3C7} .dot{width:10px;height:10px;border-radius:50%;background:#1B5E3B;animation:pulse 2s infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}} .header{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}.header-row{display:flex;align-items:center;gap:20px;padding:12px 16px} .logo{display:flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;color:#123F27;font-size:19px}.nav{display:flex;gap:18px;margin:0 auto;align-items:center}.nav a{text-decoration:none;color:#1F2937} .mega-wrap{position:relative}.mega{display:none;position:absolute;left:50%;transform:translateX(-50%);top:44px;width:820px;max-width:92vw;background:#fff;border:1px solid #D9E2DC;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.15);padding:16px;z-index:70} .mega-wrap.open .mega{display:block}.mega-body{display:flex;gap:16px}.mega-states{width:30%}.mega-cities{width:70%} .mega-search{display:flex;gap:10px;margin-bottom:12px}.mega-search input,.loc-search,.zip-input{flex:1;padding:12px;border:1px solid #D9E2DC;border-radius:10px;font-size:16px} .state-row{display:flex;gap:8px;width:100%;text-align:left;padding:10px;border:1px solid #D9E2DC;border-radius:10px;background:#fff;margin-bottom:8px;cursor:pointer} .header-cta{display:flex;gap:10px;align-items:center}.callbox{text-decoration:none;color:#123F27;border:2px solid #1B5E3B;border-radius:10px;padding:6px 12px;text-align:center}.callbox span{display:block;font-size:12px}.menu-btn{display:none;font-size:26px;background:none;border:0;cursor:pointer;min-width:44px;min-height:44px} .mobile-menu{display:none;flex-direction:column;gap:10px;padding:16px}.mobile-menu.open{display:flex} .btn{display:inline-block;background:#1B5E3B;color:#fff!important;text-decoration:none;padding:14px 22px;border-radius:10px;font-weight:700;min-height:44px;border:0;cursor:pointer;text-align:center}.btn.red{background:#B42318}.btn.white{background:#fff;color:#B42318!important}.btn.small{padding:10px 16px}.btn.pulse{animation:pulse 1.6s infinite} .hero{padding:64px 0;background:linear-gradient(120deg,#EFF6F0,#FBF6EC,#DDEBF7);background-size:200% 200%;animation:drift 18s ease-in-out infinite} .hero.urgent{background:linear-gradient(120deg,#FDE8E0,#FECACA,#FFF1F2)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center} @keyframes drift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}} .hero-desc{max-width:75ch}.hero-call-line{font-weight:700}.trust-chips{display:flex;gap:8px;flex-wrap:wrap}.trust-chips span{border:1px solid #D9E2DC;border-radius:999px;padding:4px 10px;font-size:14px;background:#fff} .circle-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.circ{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-weight:700;border:2px solid #fff;margin-left:-10px}.circ:first-child{margin-left:0}.circ.big{width:56px;height:56px;font-size:20px} .hero-photo img,.why-photo img{width:100%;height:auto;border-radius:14px} .trust{background:#FBF6EC;color:#1F2937;padding:18px 0;overflow:hidden}.trust-row{display:flex;gap:20px;justify-content:center;flex-wrap:nowrap;animation:slide 30s linear infinite} @keyframes slide{from{transform:translateX(0)}to{transform:translateX(-25%)}} .trust-pt{display:flex;align-items:center;gap:8px}.tile{display:inline-flex;width:36px;height:36px;border-radius:50%;background:var(--c,#1B5E3B);color:#fff;align-items:center;justify-content:center}.sep{width:1px;height:24px;background:rgba(31,41,55,.25)} .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px} .card{border:1px solid #D9E2DC;border-radius:14px;padding:20px;background:#fff;display:flex;flex-direction:column}.card .btn{margin-top:auto} .service{position:relative;overflow:hidden}.topbar-svc{position:absolute;top:0;left:0;right:0;height:6px}.svc-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:26px;margin:10px 0} .emergency-band{background:linear-gradient(120deg,#B42318,#7F1D1D);color:#fff;padding:56px 0}.em-grid{display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:center}.em-grid h2{text-align:left;color:#fff}.esteps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.estep{border:1px solid rgba(255,255,255,.4);border-radius:10px;padding:12px} .what .step{text-align:center}.num{display:inline-flex;width:48px;height:48px;border-radius:50%;background:#1B5E3B;color:#fff;align-items:center;justify-content:center;font-size:22px;font-weight:700}.center{text-align:center} .about-grid,.why-grid,.lf-grid,.faq-grid,.qz-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.statcard{background:#123F27;color:#fff;border-radius:12px;padding:16px;margin-top:-40px;position:relative} .tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tab{padding:10px 18px;border-radius:999px;border:1px solid #1B5E3B;background:#fff;cursor:pointer}.ba-slider{border:1px solid #D9E2DC;border-radius:14px;padding:0 0 20px;margin-bottom:16px}.ba-range{width:100%} .faq-grid details{border:1px solid #D9E2DC;border-radius:10px;padding:14px;margin-bottom:10px;background:#fff}.faq-grid summary{cursor:pointer;font-weight:700} .callbox2{border:2px solid #1B5E3B;border-radius:14px;padding:20px;text-align:center} .slider{overflow-x:auto;scroll-snap-type:x mandatory}.slider-track{display:flex;gap:20px}.review{min-width:320px;scroll-snap-align:start}.slider-nav{display:flex;gap:12px;justify-content:center;margin-top:12px}.slider-nav button{padding:10px 16px;border-radius:10px;border:1px solid #D9E2DC;background:#fff;cursor:pointer} .meter{margin-bottom:14px}.bar{height:12px;background:#D9E2DC;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:#1B5E3B}.risk-card{border:1px solid #D9E2DC;border-radius:14px;padding:20px;background:#fff;position:sticky;top:140px} .checker{border:1px solid #D9E2DC;border-radius:14px;padding:20px;background:#fff}.signs{display:flex;gap:10px;flex-wrap:wrap}.sign-btn{padding:12px 16px;border-radius:999px;border:1px solid #1B5E3B;background:#fff;cursor:pointer;min-height:44px}.sign-btn.active{background:#1B5E3B;color:#fff} .final{background:linear-gradient(120deg,#EFF6F0,#DDEBF7);padding:64px 0}.final.urgent{background:linear-gradient(120deg,#FDE8E0,#FECACA)} footer{background:#123F27;color:#fff;padding:48px 0 0}.foot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.foot-grid a{color:#fff;display:block;margin:6px 0}.foot-bar{border-top:1px solid rgba(255,255,255,.3);padding:16px;text-align:center;font-size:14px} .sticky-bar{position:fixed;bottom:0;left:0;right:0;display:none;gap:0;z-index:80}.sticky-bar .btn{flex:1;border-radius:0} .city-card,.state-card{display:flex;gap:10px;align-items:flex-start;border:1px solid #D9E2DC;border-radius:12px;padding:14px;background:#FBF6EC;text-decoration:none;color:#1F2937}.city-card:hover,.state-card:hover{border-color:#1B5E3B;transform:translateY(-2px)}.pin,.mapic{font-size:22px} .az{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.az span{border:1px solid #D9E2DC;border-radius:999px;padding:4px 10px;font-size:14px} .chips{display:flex;gap:10px;flex-wrap:wrap}.chips span{border:1px solid #1B5E3B;border-radius:999px;padding:8px 16px;font-weight:700} .bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.fact{border:1px solid #D9E2DC;border-radius:12px;padding:16px;background:#fff;text-align:center}.fact b{font-size:24px} .pills{display:flex;gap:10px;flex-wrap:wrap}.pills a{border:1px solid #1B5E3B;border-radius:999px;padding:10px 16px;text-decoration:none} .narrow{max-width:75ch}.rows{display:grid;gap:16px}.row-post{display:grid;grid-template-columns:120px 1fr;gap:16px;border:1px solid #D9E2DC;border-radius:12px;padding:12px;background:#fff} .reviewed-card{display:flex;gap:16px;border:1px solid #D9E2DC;border-radius:14px;padding:20px;background:#fff} .checklist{list-style:none;padding:0}.checklist li{padding:10px 0;border-bottom:1px solid #D9E2DC} .crumb{background:#FBF6EC;padding:10px 0;font-size:14px}.light{background:#FBF6EC}.locations-bg{background:linear-gradient(120deg,#EFF6F0,#DDEBF7)} .ba-pt{border:1px solid #D9E2DC;border-radius:12px;padding:14px;background:#fff}.badge-ic{font-size:28px} @media(max-width:1023px){body{padding-bottom:76px}.grid3,.grid4,.bento{grid-template-columns:repeat(2,1fr)}.hero-grid,.about-grid,.why-grid,.lf-grid,.faq-grid,.qz-grid,.em-grid{grid-template-columns:1fr}.nav,.header-cta{display:none}.menu-btn{display:block}.mega{display:none!important}.foot-grid{grid-template-columns:repeat(2,1fr)}.sticky-bar{display:flex}.topbar-row{animation:slide 30s linear infinite;flex-wrap:nowrap;justify-content:flex-start}} @media(max-width:767px){p a,li a,.foot-grid a{display:inline-block;padding:8px 2px}h1{font-size:32px}h2{font-size:26px}.sec{padding:56px 0}.grid3,.grid4,.grid2,.bento{grid-template-columns:1fr}.btn{width:100%}.foot-grid{grid-template-columns:1fr}.esteps{grid-template-columns:1fr}.review{min-width:88vw}.risk-card{position:static}} @media(prefers-reduced-motion:reduce){.hero,.trust-row,.topbar-row,.btn.pulse,.dot{animation:none!important}}
/* Header/mega-menu click + grid + trust-strip fixes (2026-11-04) */
.logo span{line-height:1.15}
.mega{width:920px}
.mega-states{width:26%}
.mega-cities{width:74%}
.mega-panel{display:none}
.mega-panel.active{display:block}
.mega-cities .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:340px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
.mega-cities .cards::-webkit-scrollbar{display:none}
.mega-cities .city-card{padding:8px 10px;font-size:15px}
.state-row.active{background:#EFF6F0;border-color:#1B5E3B}
.trust-row{animation:none}
.trust-pt{white-space:nowrap;flex-shrink:0;font-size:16px}
.trust-pt .tile{flex-shrink:0}
.trust-row{gap:14px}

/* Steps as cards, numbers outside, connector line (2026-11-04) */
.what .grid3{position:relative}
.what .grid3::before{content:"";position:absolute;top:24px;left:calc(16.666% + 24px);right:calc(16.666% + 24px);height:2px;background:#B9CFC0;z-index:0}
.what .step{position:relative;z-index:1;text-align:center}
.what .step .num{position:relative;z-index:1;margin:0 auto 14px}
.what .step-card{background:#fff;border:1px solid #D9E2DC;border-radius:14px;padding:22px 20px;text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.what .step-card h3{margin-top:0}
@media(max-width:1023px){.what .grid3::before{display:none}}

/* About section: heading left + accent, photo rounded, stat card depth (2026-11-04) */
.about-grid h2{text-align:left}
.about-grid h2::after{content:"";display:block;width:56px;height:4px;background:#1B5E3B;border-radius:2px;margin-top:10px}
.about-photo img{border-radius:14px;width:100%;height:auto;display:block}
.statcard{box-shadow:0 8px 24px rgba(18,63,39,.25)}
/* Mega menu: clear gap below the header */
.mega{top:70px}

/* Steps: equal-height cards + more spacing (2026-11-04) */
.what .grid3{gap:28px}
.what .step{display:flex;flex-direction:column}
.what .step-card{flex:1}
.what .center{margin-top:32px;margin-bottom:12px}

/* === UI polish 2026-11-04: sticky header, site-wide polish, before/after, locations map, FAQ === */
.sticky-wrap{position:static}
.header{position:sticky;top:0;z-index:80}
h1{font-size:clamp(32px,4.2vw,48px);line-height:1.12}
.sec h2{font-size:clamp(28px,3.4vw,38px);line-height:1.2}
.sec-sub{font-size:17px;line-height:1.65;color:#374151}
.btn{transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.btn:not(.red):hover{background:#123F27;transform:translateY(-1px);box-shadow:0 8px 20px rgba(18,63,39,.25)}
.btn.red:hover{background:#7F1D1D;transform:translateY(-1px)}
.card,.state-card,.ba-pt{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,63,39,.14)}
.ba-pt:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,63,39,.14)}
.hero-photo img{border-radius:16px;box-shadow:0 20px 44px rgba(18,63,39,.20)}
/* Before & After */
.ba-slider{background:#fff;box-shadow:0 14px 30px rgba(18,63,39,.10)}
.ba-compare{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:14px 14px 0 0;background:#EFF6F0}
.ba-compare .ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba-before-layer{position:absolute;inset:0;clip-path:inset(0 50% 0 0)}
.ba-before-layer .ba-img{position:absolute}
.ba-label{position:absolute;top:12px;padding:6px 12px;border-radius:999px;font-weight:700;font-size:13px;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(0,0,0,.15)}
.ba-label-before{left:12px;color:#B42318}
.ba-label-after{right:12px;color:#1B5E3B}
.ba-handle{position:absolute;top:0;bottom:0;width:3px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.15);transform:translateX(-50%);z-index:2}
.ba-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:#1B5E3B;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 12px rgba(0,0,0,.25)}
.ba-range{width:calc(100% - 40px);margin:16px 20px 10px;accent-color:#1B5E3B;cursor:pointer}
.ba-captions{display:flex;gap:20px;flex-wrap:wrap;padding:0 20px}
.ba-captions p{flex:1;min-width:220px;margin:0;color:#374151}
.ba-room{font-size:16px;color:#374151;margin:-4px 0 18px}
.tab.active{background:#1B5E3B!important;color:#fff}
[data-section="before-and-after"] .grid4{gap:20px}
.ba-pt{display:flex;flex-direction:column;height:100%}
.ba-pt>span{font-size:28px;display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;background:#EFF6F0;border-radius:14px;margin-bottom:10px}
.ba-pt h3{margin:0 0 8px}
.ba-pt p{margin:0;color:#374151;line-height:1.6}
/* Locations with map */
.loc-map{border:1px solid #D9E2DC;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(18,63,39,.08)}
.loc-map iframe{width:100%;height:420px;border:0;display:block}
.loc-map-cap{padding:12px 16px;margin:0;font-size:14px;color:#374151;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.loc-map-cap a{color:#1B5E3B;font-weight:700;text-decoration:none}
.loc-side .loc-search{width:100%;box-sizing:border-box;margin-bottom:14px}
.loc-side .center{margin-top:20px}
/* FAQ: sticky intro, card polish, chevron, smooth open/close */
.faq-grid>div:first-child h2{text-align:left}
.faq-grid .callbox2{background:#EFF6F0;box-shadow:0 8px 20px rgba(18,63,39,.08)}
.faq-grid details{border-radius:14px;padding:18px 20px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.faq-grid details[open]{border-color:#1B5E3B;box-shadow:0 10px 24px rgba(18,63,39,.10)}
.faq-grid summary{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;list-style:none;line-height:1.4}
.faq-grid summary::-webkit-details-marker{display:none}
.faq-grid summary::marker{content:""}
.faq-grid summary::after{content:"\2304";flex-shrink:0;font-size:20px;line-height:1;color:#1B5E3B;transition:transform .3s ease}
.faq-grid details[open] summary::after{transform:rotate(180deg)}
.faq-grid details>p{overflow:hidden;transition:max-height .35s ease,opacity .3s ease}
@media(min-width:1024px){
.sec{padding:72px 0}
.hero{padding:80px 0}
.loc-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:28px;align-items:start}
[data-section="locations"] .grid3{display:flex;flex-direction:column;gap:12px}
.faq-grid>div:first-child{position:sticky;top:88px}
.faq-grid{grid-template-columns:1fr 1.15fr}
}

/* Header scroll fix: sticky must live on the wrapper (a sticky header inside a short
   wrapper scrolls away with it). Wrapper stays pinned; the top bar collapses on scroll. */
.sticky-wrap{position:sticky;top:0;z-index:80}
.header{position:static}
.topbar{max-height:120px;transition:max-height .3s ease,border-width .3s ease}
body.scrolled .topbar{max-height:0;border-bottom-width:0}

/* Why section: right-side image stays pinned while the reasons scroll past */
@media(min-width:1024px){
.why-photo{position:sticky;top:108px}
}
.loc-map img{width:100%;height:420px;object-fit:cover;display:block}

/* Heading breathing room 2026-11-04: the base reset zeroes all heading margins, so
   headings were touching the next element. Tuned per section, not one blanket value. */
h1{margin-bottom:18px}
.sec h2{margin-bottom:26px}
.sec h2:has(+ .sec-sub){margin-bottom:16px}
.faq-grid>div:first-child h2,.why-grid>div:first-child h2,.about-grid h2{margin-bottom:18px}
h3{margin-bottom:12px}
/* Map: show the whole map instead of cropping off the state labels */
.loc-map img{height:auto}

/* Batch 2026-11-04 afternoon: mega, header shake, hero rhythm, card buttons */
.mega{top:64px}
.mega-panel>a{display:inline-block;margin:18px 0 20px;font-weight:700}
body.scrolled .topbar{max-height:none;border-bottom-width:1px}
.topbar{max-height:none}
.hero-desc{margin-bottom:18px}
.hero .btn{margin-bottom:16px}
.hero-call-line{margin-bottom:14px}
.trust-chips{margin-bottom:16px}
.circle-row{margin-bottom:14px}
.card p{margin-bottom:20px}

/* Batch 2026-11-04 afternoon 2: emergency + final headings match other h2s; about paragraph rhythm */
.emergency-band h2{font-size:clamp(28px,3.4vw,38px);margin-bottom:18px}
.em-grid>div:first-child>p{margin-bottom:20px}
.final h2{font-size:clamp(28px,3.4vw,38px);margin-bottom:18px}
.about-grid>div:last-child p{margin-bottom:18px}
.about-grid>div:last-child ol{margin-bottom:18px}

/* Before & After rework 2026-11-04: per-room pairs, 50/50 layout, draggable handle */
[data-section="before-and-after"] .tabs{justify-content:center}
.ba-room{text-align:center;margin:-4px auto 18px;max-width:75ch}
.ba-layout{display:grid;gap:28px}
.ba-cards{display:grid;gap:16px}
.ba-layout .ba-slider{margin-bottom:0}
.ba-compare{overflow:visible;cursor:ew-resize;touch-action:none}
.ba-compare .ba-img{border-radius:14px 14px 0 0}
.ba-handle-layer{position:absolute;inset:0;pointer-events:none;z-index:3}
@media(min-width:1024px){
.ba-layout{grid-template-columns:1fr 1fr;align-items:start}
.ba-layout .ba-slider{grid-column:2;grid-row:1}
.ba-layout .ba-cards{grid-column:1;grid-row:1;grid-template-columns:1fr 1fr}
}

/* BA drag fix: images must not start a native drag or swallow pointer events */
.ba-compare img,.ba-compare .ba-label{pointer-events:none}
.ba-compare img{-webkit-user-drag:none;user-select:none}

/* FAQ call card: text lives in the card, button shows only the phone number */
.callbox2 .callbox-title{font-weight:700;font-size:18px;margin-bottom:8px}
.callbox2 p{margin-bottom:12px}

/* Why section: space below the intro paragraph before the reason cards */
.why-grid>div:first-child>p{margin-bottom:20px}

/* Reference-layout homepage theme 2026-11-04: termite content, termite colours, homepage only (.ref-home) */
.ref-home .topbar{background:#123F27;border-bottom:1px solid rgba(255,255,255,.15)}
.ref-home .chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}
.ref-home .sticky-wrap{background:#123F27}
.ref-home .header{background:#123F27;box-shadow:0 2px 12px rgba(0,0,0,.25)}
.ref-home .logo{color:#fff}
.ref-home .nav>a{color:#fff}
.ref-home .mega-btn{color:#fff}
.ref-home .callbox{border-color:#fff;color:#fff}
.ref-home .callbox span{color:rgba(255,255,255,.8)}
.ref-home .menu-btn{color:#fff}
.ref-home .mobile-menu{background:#123F27}
.ref-home .mobile-menu a{color:#fff}
.ref-home .btn.amber{background:#B7791F;color:#fff!important}
.ref-home section.hero{background:linear-gradient(135deg,#123F27 0%,#1B5E3B 100%);color:#fff}
.ref-home .hero h1{color:#fff;font-size:clamp(38px,5vw,56px)}
.ref-home .hero-desc{color:rgba(255,255,255,.88)}
.ref-home .hero .trust-chips span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.35);color:#fff}
.ref-home .hero-search-form{display:flex;gap:10px;margin-bottom:16px;max-width:560px}
.ref-home .hero-search-input{flex:1;padding:14px 16px;border:0;border-radius:10px;font-size:16px;background:#fff;color:#1F2937;min-width:0}
.ref-home .hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.ref-home .hero-call-line{color:rgba(255,255,255,.85)}
.ref-home .stars-note{color:rgba(255,255,255,.85)}
.ref-home .hero-photo{position:relative}
.ref-home .hero-photo img{border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.35)}
.ref-home .hero-overlay{position:absolute;left:16px;bottom:16px;right:16px;background:rgba(18,63,39,.92);color:#fff;border-radius:12px;padding:14px 16px}
.ref-home .hero-overlay b{display:block;font-size:17px}
.ref-home .hero-overlay span{font-size:14px;color:rgba(255,255,255,.85)}
.ref-home [data-section="trust-strip"]{background:#FBF6EC}
.ref-home .trust-row{animation:none;justify-content:center;flex-wrap:wrap}
.ref-home .trust-pt{color:#1F2937}
.ref-home [data-section="related-services"]{background:#fff}
.ref-home [data-section="related-services"] .card{padding:24px}
.ref-home .emergency-band{background:#B42318;color:#fff}
.ref-home .emergency-band h2{color:#fff;text-align:left}
.ref-home .emergency-band p{color:rgba(255,255,255,.92)}
.ref-home .em-grid{grid-template-columns:1fr;gap:24px}
.ref-home .esteps{grid-template-columns:repeat(3,1fr);gap:12px}
.ref-home .estep{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff}
.ref-home .em-call{text-align:left}
.ref-home .em-call p{color:rgba(255,255,255,.85)}
.ref-home [data-section="what-happens-when-you-call"]{background:#123F27;color:#fff}
.ref-home [data-section="what-happens-when-you-call"] h2{color:#fff}
.ref-home [data-section="what-happens-when-you-call"] .sec-sub{color:rgba(255,255,255,.85)}
.ref-home .step-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:20px;color:#fff}
.ref-home .step-card h3{color:#fff}
.ref-home .step-card p{color:rgba(255,255,255,.85)}
.ref-home .what .num{background:#B7791F}
.ref-home [data-section="what-happens-when-you-call"] .center .btn{background:#B7791F}
.ref-home [data-section="about-us"]{background:#fff}
.ref-home [data-section="about-us"] h2{text-align:left}
.ref-home .about-photo img{border-radius:14px}
.ref-home [data-section="about-us"] ol{list-style:none;padding:0;margin:18px 0;counter-reset:about-step}
.ref-home [data-section="about-us"] ol li{position:relative;padding-left:46px;margin-bottom:14px}
.ref-home [data-section="about-us"] ol li::before{counter-increment:about-step;content:counter(about-step);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#1B5E3B;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.ref-home [data-section="before-and-after"]{background:#fff}
.ref-home [data-section="locations"]{background:#123F27;color:#fff}
.ref-home [data-section="locations"] h2{color:#fff}
.ref-home [data-section="locations"] .sec-sub{color:rgba(255,255,255,.85)}
.ref-home .loc-map img{border-radius:14px}
.ref-home .loc-map-cap{color:rgba(255,255,255,.75)}
.ref-home .loc-map-cap a{color:#fff}
.ref-home .loc-side .grid3{grid-template-columns:1fr;gap:14px}
.ref-home .ref-state{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:18px;color:#fff;display:flex;flex-direction:column;gap:8px}
.ref-home .ref-state-top{display:flex;justify-content:space-between;align-items:center}
.ref-home .ref-badge{background:#B7791F;color:#fff;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700}
.ref-home .ref-state-meta{color:rgba(255,255,255,.85);margin:0}
.ref-home .ref-state-btns{display:flex;gap:10px;flex-wrap:wrap}
.ref-home [data-section="locations"] .center .btn{background:#B7791F}
.ref-home .loc-search{background:#fff}
.ref-home [data-section="faq"]{background:#fff}
.ref-home .faq-grid>div:first-child h2{text-align:left}
.ref-home [data-section="why-us"]{background:#fff}
.ref-home .why-grid>div:first-child h2{text-align:left}
.ref-home [data-section="reviews"]{background:#fff}
.ref-home #reviews .wrap{display:flex;flex-direction:column}
.ref-home #reviews .slider{order:3}
.ref-home #reviews .slider-nav{order:2;justify-content:flex-end;margin:0 0 14px}
.ref-home #reviews .slider-nav button{border-radius:50%;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center}
.ref-home [data-section="local-factors"]{background:#fff}
.ref-home .risk-card{border:1px solid #D9E2DC;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.ref-home [data-section="problem-checker"]{background:#fff}
.ref-home .signs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ref-home .sign-btn{text-align:left}
.ref-home .checker-extra{background:#FDE8E0;border:1px solid #FECACA;border-radius:14px;padding:18px}
.ref-home [data-section="blog"]{background:#fff}
.ref-home .blog-ref{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:start}
.ref-home .blog-feat{padding:0;overflow:hidden}
.ref-home .blog-feat img{width:100%;height:280px;object-fit:cover}
.ref-home .ref-tag{display:inline-block;background:#B7791F;color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;margin:16px 20px 0}
.ref-home .blog-feat h3,.ref-home .blog-feat p{padding:0 20px}
.ref-home .blog-feat .btn{margin:12px 20px 20px}
.ref-home .blog-side{display:grid;gap:20px}
.ref-home .blog-row{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:start}
.ref-home .blog-row img{width:150px;height:110px;object-fit:cover;border-radius:10px}
.ref-home .blog-row h3{font-size:19px}
.ref-home .final{background:#123F27;color:#fff}
.ref-home .final h2{color:#fff}
.ref-home .final p{color:rgba(255,255,255,.88)}
.ref-home .final .btn{background:#B7791F}
.ref-home .final .hero-call-line{color:rgba(255,255,255,.85)}
.ref-home footer h3{color:#fff}
.ref-home .foot-bar p{color:rgba(255,255,255,.75)}
@media(max-width:1023px){
.ref-home .em-grid{grid-template-columns:1fr}
.ref-home .hero-search-form{flex-direction:column}
.ref-home .hero-search-form .btn{width:100%}
.ref-home .loc-layout{grid-template-columns:1fr}
.ref-home .blog-ref{grid-template-columns:1fr}
.ref-home .blog-row{grid-template-columns:1fr}
.ref-home .blog-row img{width:100%;height:180px}
.ref-home .esteps{grid-template-columns:1fr}
.ref-home .signs{grid-template-columns:1fr}
.ref-home .hero-overlay{left:12px;right:12px;bottom:12px}
}

/* Batch 2026-11-06: emergency rework + sticky about/BA + locations centring + FAQ paragraph space (homepage only) */
.ref-home .emergency-band{background-color:#B42318;background-image:radial-gradient(rgba(255,255,255,.13) 1.5px,transparent 1.6px),radial-gradient(rgba(255,255,255,.08) 1.5px,transparent 1.6px);background-size:52px 52px,84px 84px;background-position:0 0,28px 40px}
.ref-home .emergency-band h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;font-size:clamp(32px,4vw,44px);text-align:left}
.ref-home .emergency-band p{max-width:62ch}
.ref-home .em-grid{grid-template-columns:1.6fr 1fr;align-items:center;gap:32px}
.ref-home .estep span{display:inline-flex;width:52px;height:52px;border-radius:50%;background:#fff;align-items:center;justify-content:center;font-size:24px;margin-bottom:12px}
.ref-home .em-call{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.ref-home .em-call .btn.white{background:#fff;color:#1F2937!important;border-radius:999px;padding:18px 30px;font-size:19px;box-shadow:0 0 0 6px rgba(255,255,255,.18),0 14px 30px rgba(0,0,0,.25)}
.ref-home .faq-grid>div:first-child>p{margin-bottom:20px}
.ref-home .loc-layout{align-items:center}
.ref-home .loc-map{background:#fff;border-radius:16px;padding:14px;box-shadow:0 12px 32px rgba(0,0,0,.2)}
.ref-home .loc-map img{border-radius:12px}
.ref-home .loc-map-cap{color:#5B6770}
.ref-home .loc-map-cap a{color:#1B5E3B}
.ref-home .ba-layout{align-items:start}
@media(min-width:1024px){
.ref-home .about-photo{position:sticky;top:108px}
.ref-home .ba-slider{position:sticky;top:108px}
}

/* Batch 2026-11-06 #2: mobile em-grid cascade fix + reviews / checker / factors / blog / footer (homepage only) */
@media(max-width:1023px){
.ref-home .em-grid{grid-template-columns:1fr}
}
/* Reviews, Alabama-style: light blue-grey section, bold sans heading, 3 cards, side arrows, page dots */
.ref-home [data-section="reviews"]{background:#EDF2F7}
.ref-home #reviews h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;font-size:clamp(32px,4vw,44px)}
.ref-home #reviews .sec-sub{color:#374151}
.ref-home .reviews-stage{position:relative}
.ref-home #reviews .slider-nav{justify-content:center;margin:16px 0 0}
.ref-home #reviews .slider-nav button{background:#fff}
.ref-home #reviews .dots{display:flex;gap:8px;justify-content:center;margin:18px 0 0}
.ref-home #reviews .dots button{width:8px;height:8px;border-radius:999px;background:#CBD5E1;border:0;padding:0;cursor:pointer;font-size:0;line-height:0}
.ref-home #reviews .dots button.active{width:24px;background:#1B5E3B}
.ref-home #reviews .review{display:grid;grid-template-columns:56px 1fr;column-gap:14px;align-items:start;box-shadow:0 6px 20px rgba(15,23,42,.08)}
.ref-home #reviews .review .circ{grid-row:1/3;grid-column:1;width:56px;height:56px;font-size:18px;margin-left:0;background:#EFF6F0}
.ref-home #reviews .review h3{grid-column:2;grid-row:1;margin:0;font-size:18px;line-height:1.3}
.ref-home #reviews .review .rev-city{grid-column:2;grid-row:2;margin:0;font-size:14px;color:#5B6770}
.ref-home #reviews .review>p:last-of-type{grid-column:1/-1;grid-row:3;margin:12px 0 0}
@media(min-width:1024px){
.ref-home #reviews .review{min-width:376px;max-width:376px;flex:0 0 376px}
.ref-home #reviews .slider-nav{position:absolute;top:50%;left:-24px;right:-24px;transform:translateY(-50%);justify-content:space-between;margin:0;pointer-events:none;z-index:2}
.ref-home #reviews .slider-nav button{pointer-events:auto;width:48px;height:48px;box-shadow:0 4px 16px rgba(0,0,0,.18)}
}
/* Checker: 5th sign spans the full row, result reads as its own box */
.ref-home .checker-result{background:#EFF6F0;border:1px solid #D1E7D8;border-radius:14px;padding:20px;margin-top:20px}
.ref-home .checker-result p{margin-bottom:8px}
.ref-home .checker-result p:first-child{font-weight:700}
.ref-home .checker-result .btn{margin-top:8px}
.ref-home .checker-extra{margin-top:16px}
@media(min-width:1024px){
.ref-home .sign-btn:last-child{grid-column:span 2}
}
/* Guides: Featured tag and buttons are pills, not full-width bars; side-card buttons bottom-align */
.ref-home .blog-feat .ref-tag{align-self:flex-start}
.ref-home .blog-feat .btn{align-self:flex-start}
.ref-home .blog-row>div{display:flex;flex-direction:column}
.ref-home .blog-row .btn{align-self:flex-start;margin-top:auto}
/* Footer / final CTA: amber divider so the two dark blocks no longer blend into one */
.ref-home .final{padding-bottom:80px}
.ref-home footer{border-top:3px solid #B7791F}

/* Local factors: card stretches to match the text column, so no void sits below it */
.ref-home .lf-grid{align-items:stretch}
.ref-home .risk-card{position:static;display:flex;flex-direction:column}
.ref-home .risk-card .meter{flex:1;display:flex;flex-direction:column;justify-content:center}
.ref-home .risk-card .btn{margin-top:auto;align-self:flex-start}

/* Equal heights 2026-11-06: header callbox + Emergency button stretch to the same height;
   hero search input + Search button both 56px (the search input's UA sizing made it taller) */
.header-cta{align-items:stretch}
.header-cta .callbox{display:flex;flex-direction:column;justify-content:center}
.header-cta .btn{display:flex;align-items:center;justify-content:center}
.ref-home .hero-search-input{height:56px}
.ref-home .hero-search-form .btn{height:56px}

/* Mobile hero search is a column: flex:1 on the input would make its flex-basis
   (0%) override height on the vertical axis, so pin it to its own height there */
@media(max-width:1023px){
.ref-home .hero-search-input{flex:0 0 auto}
}

/* Header CTA compact 2026-11-06: both items 48px, text centred (undoes the 64px stretch) */
.header-cta{align-items:center}
.header-cta .callbox{height:48px;padding:4px 12px}
.header-cta .callbox span{font-size:11px;line-height:1.25}
.header-cta .callbox b{line-height:1.25}
.header-cta .btn{height:48px}

/* Locations slider 2026-11-06: state cards scroll horizontally like the Alabama reference;
   right side stays vertically centred against the map; See All button full-width */
.ref-home .loc-side .grid3{display:flex;flex-direction:row;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}
.ref-home .loc-side .grid3::-webkit-scrollbar{display:none}
.ref-home .ref-state{min-width:300px;max-width:300px;flex:0 0 300px;scroll-snap-align:start}
.ref-home .ref-state-btns{flex-direction:column}
.ref-home .loc-side .center .btn{width:100%}
.ref-home .loc-side{min-width:0}

/* Locations city slider 2026-11-06: like the Alabama reference — light section, search centred
   above the map/slider row, two-row horizontal slider of small white city cards (name + state) */
.ref-home [data-section="locations"]{background:#EDF2F7}
.ref-home [data-section="locations"] h2{color:#1F2937}
.ref-home [data-section="locations"] .sec-sub{color:#5B6770}
.ref-home .loc-search-wrap{max-width:560px;margin:0 auto 28px}
.ref-home .loc-search-wrap .loc-search{width:100%;margin-bottom:0}
.ref-home .loc-city-slider{display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:230px;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}
.ref-home .loc-city-slider::-webkit-scrollbar{display:none}
.ref-home .loc-city-slider .city-card{display:block;background:#fff;border:1px solid #E2E8F0;border-radius:14px;padding:14px 16px;box-shadow:0 2px 8px rgba(15,23,42,.06);scroll-snap-align:start}
.ref-home .loc-city-slider .city-card b{display:block;font-size:16px;color:#1F2937}
.ref-home .loc-city-slider .city-card span{display:block;font-size:14px;color:#5B6770;margin-top:2px}

/* Active FAQ: no border (2026-11-06) — keep the 1px width so opening doesn't shift layout */
.faq-grid details[open]{border-color:transparent}

/* FAQ icon: + when closed, − when open (2026-11-06) */
.faq-grid summary::after{content:"+";transform:none}
.faq-grid details[open] summary::after{content:"\2212";transform:none}
/* FAQ call card: no border (2026-11-06) — keeps its tint bg + shadow */
.faq-grid .callbox2{border:0}

/* Batch 2026-11-06 #3: reviews grid, local-factors paragraphs, checker cards, blog side images */
/* Reviews: paginated grid, no slider (homepage only) */
.ref-home #reviews .reviews-page{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ref-home #reviews .reviews-page[hidden]{display:none}
.ref-home #reviews .review{min-width:0;max-width:none;flex:none}
/* Local factors: readable paragraphs + small source line (homepage only) */
.ref-home .lf-grid>div:first-child>p{margin-bottom:20px}
.ref-home .lf-grid .src{font-size:14px;color:#5B6770}
/* Checker signs as cards, not capsules (sitewide, shared component) */
.sign-btn{border-radius:14px;padding:16px 18px;text-align:left;box-shadow:0 2px 8px rgba(15,23,42,.06)}
/* Blog side cards: image fills the full card height; Read Guide as a text link (still a link) */
.ref-home .blog-row{padding:0;overflow:hidden;grid-template-columns:200px 1fr;align-items:stretch}
.ref-home .blog-row img{width:200px;height:100%;object-fit:cover;border-radius:0}
.ref-home .blog-row>div{padding:18px 20px 18px 0}
.ref-home .blog-row .btn{background:none;color:#1B5E3B!important;padding:0;min-height:0;border:0;box-shadow:none}
.ref-home .blog-row .btn:hover{text-decoration:underline}
@media(max-width:1023px){
.ref-home #reviews .reviews-page{grid-template-columns:repeat(2,1fr)}
.ref-home .blog-row{grid-template-columns:1fr}
.ref-home .blog-row img{width:100%;height:180px}
.ref-home .blog-row>div{padding:0 20px 20px}
}
@media(max-width:767px){
.ref-home #reviews .reviews-page{grid-template-columns:1fr}
}

/* Reviews back to slider like the Bed Bug reference (2026-11-06): 3 cards, top-right arrows, dots */
.ref-home #reviews .reviews-stage{display:flex;flex-direction:column}
.ref-home #reviews .slider-nav{position:static;left:auto;right:auto;transform:none;justify-content:flex-end;margin:0 0 14px;pointer-events:auto;align-self:flex-end}
.ref-home #reviews .slider{scrollbar-width:none}
.ref-home #reviews .slider::-webkit-scrollbar{display:none}
.ref-home #reviews .review{min-width:376px;max-width:376px;flex:0 0 376px}

/* Risk card meters like the Bed Bug reference (2026-11-06): bold label + % on one line, bar, description */
.risk-card h3{font-weight:700}
.meter-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.meter-top>span{font-weight:700}
.meter-pct{font-weight:700;color:#1B5E3B;white-space:nowrap}
.risk-card .btn{width:100%;border-radius:999px}

/* Risk card: no stretch, no blank space between meters (2026-11-06) — card is content-height like the reference */
.ref-home .lf-grid{align-items:start}
.ref-home .risk-card .meter{flex:none}

/* Risk card sticky on the right (2026-11-07): follows while reading the text column */
.ref-home .risk-card{position:sticky;top:108px}

/* Footer left column: phone link on the same line as its icon (2026-11-07) — the foot-grid block-link rule orphaned it */
@media(min-width:768px){.foot-grid p a{display:inline}}

/* Footer copyright bar reads as its own section (2026-11-07) */
.foot-bar{margin-top:32px;padding:24px 16px 32px}

/* Final CTA: breathing room above and below the call button (2026-11-07) */
.final .btn{margin:28px 0}

/* ZIP checker: gap between field and button, tinted field, semi-bold title (2026-11-07) */
.zip-input{margin-right:12px;background:#EFF6F0}
.zipcard h3{font-weight:600}
@media(max-width:767px){.zip-input{margin-bottom:12px}}

/* Batch 2026-11-07: city search, section titles, FAQ callbox, Sources, Full Guide, feedback + related guides sitewide */
/* Find Your City search: tinted, centred, wider, space below */
.wrap .loc-search{background:#EFF6F0}
.wrap>.loc-search{display:block;width:100%;max-width:560px;margin:0 auto 28px}
/* Section sub-titles a little bold (local factors + full guide) */
.lf-grid>div:first-child h3{font-weight:600}
[data-section="deep-guide"] h3{font-weight:600}
/* FAQ callbox: visible bg + space above */
.faq-grid .callbox2{background:#FBF6EC;margin-top:32px}
/* Sources & Data: centred, breathing room */
[data-section="sources"]{text-align:center}
[data-section="sources"] li{margin-bottom:10px}
[data-section="sources"] p{margin-top:16px;color:#5B6770}
/* Feedback sections sitewide, like the homepage */
#reviews{background:#EDF2F7}
#reviews .wrap{display:flex;flex-direction:column}
#reviews h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;font-size:clamp(32px,4vw,44px)}
#reviews .sec-sub{color:#374151}
#reviews .reviews-stage{display:flex;flex-direction:column;position:relative}
#reviews .slider{order:3;scrollbar-width:none}
#reviews .slider::-webkit-scrollbar{display:none}
#reviews .slider-nav{order:2;justify-content:flex-end;margin:0 0 14px;align-self:flex-end;display:flex;gap:12px}
#reviews .slider-nav button{border-radius:50%;width:48px;height:48px;padding:0;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.18);pointer-events:auto}
#reviews .dots{display:flex;gap:8px;justify-content:center;margin:18px 0 0}
#reviews .dots button{width:8px;height:8px;border-radius:999px;background:#CBD5E1;border:0;padding:0;cursor:pointer;font-size:0;line-height:0}
#reviews .dots button.active{width:24px;background:#1B5E3B}
#reviews .review{display:grid;grid-template-columns:56px 1fr;column-gap:14px;align-items:start;box-shadow:0 6px 20px rgba(15,23,42,.08);min-width:376px;max-width:376px;flex:0 0 376px}
#reviews .review .circ{grid-row:1/3;grid-column:1;width:56px;height:56px;font-size:18px;margin-left:0;background:#EFF6F0}
#reviews .review h3{grid-column:2;grid-row:1;margin:0;font-size:18px;line-height:1.3}
#reviews .review .rev-city{grid-column:2;grid-row:2;margin:0;font-size:14px;color:#5B6770}
#reviews .review>p:last-of-type{grid-column:1/-1;grid-row:3;margin:12px 0 0}
/* Related Guides match homepage blog (base rules mirroring .ref-home) */
.blog-feat img{width:100%;height:280px;object-fit:cover}
.blog-side{display:grid;gap:20px}
.blog-row{display:grid;padding:0;overflow:hidden;grid-template-columns:200px 1fr;gap:16px;align-items:stretch}
.blog-row img{width:200px;height:100%;object-fit:cover;border-radius:0}
.blog-row>div{padding:18px 20px 18px 0}
.blog-row .btn{background:none;color:#1B5E3B!important;padding:0;min-height:0;border:0;box-shadow:none}
.blog-row .btn:hover{text-decoration:underline}
@media(max-width:1023px){.blog-row{grid-template-columns:1fr}.blog-row img{width:100%;height:180px}.blog-row>div{padding:0 20px 20px}}
/* Related Guides: remaining base blog rules (mirror .ref-home) */
.blog-ref{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:start}
.blog-feat{padding:0;overflow:hidden}
.ref-tag{display:inline-block;background:#B7791F;color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;margin:16px 20px 0}
.blog-feat h3,.blog-feat p{padding:0 20px}
.blog-feat .btn{margin:12px 20px 20px}
.blog-feat .ref-tag{align-self:flex-start}
.blog-feat .btn{align-self:flex-start}
.blog-row h3{font-size:19px}
.blog-row>div{display:flex;flex-direction:column}
.blog-row .btn{align-self:flex-start;margin-top:auto}
@media(max-width:1023px){.blog-ref{grid-template-columns:1fr}}

/* ZIP checker: left 60% / right 40%, right vertically centred, bigger input */
@media(min-width:1024px){.qz-grid{grid-template-columns:3fr 2fr;align-items:center}}
.zipcard{display:flex;flex-wrap:wrap}
.zipcard h3{flex:0 0 100%}
.zipcard .zip-result{flex:0 0 100%}
.zip-input{padding:14px 16px}
@media(max-width:767px){.zipcard{flex-direction:column}}

/* Batch 2026-11-07: CTA card, Reviewed By, Problem Checker — reference designs, green scheme */
/* CTA call card (final + end-call-box): light card, bold heading, green pill button */
.final{background:#fff;padding:64px 0}
.final .wrap{background:#EFF6F0;border:1px solid #D9E2DC;border-radius:16px;padding:48px 32px;box-shadow:0 8px 24px rgba(18,63,39,.08);max-width:900px}
.final h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;color:#123F27}
.final p{color:#5B6770}
.final .btn{background:#1B5E3B;border-radius:999px}
.final .btn::before{content:"📞 "}
.final .hero-call-line{color:#5B6770}
.sec[data-section="end-call-box"]{background:#fff}
[data-section="end-call-box"] .wrap{background:#EFF6F0;border:1px solid #D9E2DC;border-radius:16px;padding:48px 32px;box-shadow:0 8px 24px rgba(18,63,39,.08);max-width:900px}
[data-section="end-call-box"] h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;color:#123F27}
[data-section="end-call-box"] .btn{background:#1B5E3B;border-radius:999px;margin-top:24px}
[data-section="end-call-box"] .btn::before{content:"📞 "}
/* Reviewed By: centred narrower card, solid green avatar */
.reviewed-card{max-width:800px;margin:0 auto;padding:32px;border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.06);gap:20px}
.reviewed-card .circ{background:#1B5E3B;color:#fff;border:0;margin-left:0;flex-shrink:0}
.reviewed-card p b{font-weight:600}
/* Problem Checker: light section, white card, stacked centred sign cards */
.sec[data-section="problem-checker"]{background:#EDF2F7}
.checker{border-radius:16px;padding:32px;box-shadow:0 8px 24px rgba(15,23,42,.06);max-width:900px;margin:0 auto}
.signs{grid-template-columns:1fr;gap:16px}
.sign-btn{text-align:center;font-weight:700;padding:20px 24px;width:100%}
.sign-btn:last-child{grid-column:auto}
@media(max-width:767px){.final .wrap,[data-section="end-call-box"] .wrap{padding:32px 20px;margin-left:16px;margin-right:16px}.reviewed-card,.checker{padding:24px 20px}}

/* Batch 2026-11-07: more space between Problem Checker result/extra blocks */
.checker-result{margin-top:32px;padding:24px}
.checker-result p{margin-bottom:12px}
.checker-result .btn{margin-top:16px}
.checker-extra{margin-top:32px;padding:24px}
.checker-extra p{margin-bottom:12px}
.checker-extra .btn{margin-top:16px}

/* Batch 2026-11-07: deep-guide callbox becomes the Need Help card (FL + Alachua) */
.callbox2.guide-cta{background:#EFF6F0;border:1px solid #D9E2DC;border-radius:16px;padding:48px 32px;box-shadow:0 8px 24px rgba(18,63,39,.08);max-width:900px;margin:32px auto;text-align:center}
.callbox2.guide-cta h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:800;color:#123F27;font-size:clamp(28px,3.4vw,38px);margin-bottom:18px}
.callbox2.guide-cta p{color:#5B6770}
.callbox2.guide-cta .btn{background:#1B5E3B;border-radius:999px;margin:5px 0 10px}
.callbox2.guide-cta .btn::before{content:"📞 "}
.callbox2.guide-cta .hero-call-line{color:#5B6770}
@media(max-width:767px){.callbox2.guide-cta{padding:32px 20px}}

/* Batch 2026-11-07: risk-card button top space, guide-cta bg, checker spacing trim */
/* (1) Risk card Call Now: clear space above the button (homepage keeps margin-top:auto) */
.risk-card .btn{margin-top:20px}
.ref-home .risk-card .btn{margin-top:auto}
/* (2) Guide CTA card: distinct soft-green bg so it stands out on the pale guide section */
.callbox2.guide-cta{background:#DCEBD9}
/* (3) Checker spacing: trim back to a middle ground (was 32px/24px/16px in 9b) */
.checker-result{margin-top:0;padding:10px 20px}
.checker-result p{margin-bottom:10px}
.checker-result .btn{margin-top:12px}
.checker-extra{margin-top:0;padding:10px 20px}
.checker-extra p{margin-bottom:10px}
.checker-extra .btn{margin-top:12px}

/* Batch 2026-11-07: city A-Z list as capsules (cities-we-serve ul only) */
[data-section="cities-we-serve"] ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
[data-section="cities-we-serve"] ul li{margin:0}
[data-section="cities-we-serve"] ul a{display:inline-block;padding:10px 18px;border:1px solid #1B5E3B;border-radius:999px;background:#fff;color:#1B5E3B;text-decoration:none;font-weight:600}
[data-section="cities-we-serve"] ul a:hover{background:#1B5E3B;color:#fff}

/* Batch 2026-11-07: GA A-Z links + .az spans as capsules (match Texas) */
[data-section="cities-we-serve"] h3 + p{display:flex;flex-wrap:wrap;gap:10px;margin:0}
[data-section="cities-we-serve"] h3 + p a{display:inline-block;padding:10px 18px;border:1px solid #1B5E3B;border-radius:999px;background:#fff;color:#1B5E3B;text-decoration:none;font-weight:600}
[data-section="cities-we-serve"] h3 + p a:hover{background:#1B5E3B;color:#fff}
.az{gap:10px}
.az span{border:1px solid #1B5E3B;border-radius:999px;padding:10px 18px;background:#fff;color:#1B5E3B;font-weight:600;font-size:16px}

/* Batch 2026-11-07: center Neighborhoods + ZIP Codes sections (city + emergency pages) */
[data-section="neighborhoods"] .wrap{text-align:center}
[data-section="neighborhoods"] .wrap ul{text-align:left}
[data-section="zip-list"] .wrap{text-align:center}
[data-section="zip-list"] .chips{justify-content:center}

/* Batch 2026-11-07: spacing above Neighborhoods button + around ZIP "Don't See Your ZIP?" line */
[data-section="neighborhoods"] .btn{margin-top:20px}
[data-section="zip-list"] .chips + p{margin:20px 0}

/* Batch 2026-11-07: footer left column breathing room */
.foot-grid > div:first-child img{display:block;margin-bottom:16px}
.foot-grid > div:first-child p:first-of-type{margin-bottom:16px}
.foot-grid > div:first-child p{line-height:1.7}

/* Batch 2026-11-07: footer contact lines more breathing room */
.foot-grid > div:first-child p:last-of-type{line-height:2}

/* Batch 2026-11-07: deep-guide Related line back inside the layout (51 pages) */
[data-section="deep-guide"] > p{max-width:1200px;margin:16px auto 0;padding:0 16px}

/* Batch 2026-11-07: nearby-cities cards as a 3-col grid, not full-width rows */
[data-section="nearby-cities"] .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:767px){[data-section="nearby-cities"] .cards{grid-template-columns:1fr}}

/* Batch 2026-11-07: margin above deep-guide plain Call button (49 FL city pages) */
[data-section="deep-guide"] .wrap > .btn{margin-top:20px}

/* Batch 2026-11-07: blog search input centered, wider, styled like site inputs */
#blog-search{display:block;width:100%;max-width:560px;margin:0 auto 28px;padding:12px;border:1px solid #D9E2DC;border-radius:10px;font-size:16px}

/* Batch 2026-11-07: blog hub Featured Guide = image-left full-bleed + text-link button (like blog-row) */
[data-section="featured-posts"] .row-post.featured{padding:0;overflow:hidden;grid-template-columns:1fr 1fr;align-items:stretch}
[data-section="featured-posts"] .row-post.featured img{width:100%;height:100%;object-fit:cover;border-radius:0}
[data-section="featured-posts"] .row-post.featured>div{padding:18px 20px 18px 0;display:flex;flex-direction:column}
[data-section="featured-posts"] .row-post.featured .btn{background:none;color:#1B5E3B!important;padding:0;min-height:0;border:0;box-shadow:none;align-self:flex-start;margin-top:16px}
[data-section="featured-posts"] .row-post.featured .btn:hover{text-decoration:underline}
/* Batch 2026-11-07: blog hub All Guides = vertical cards (image top, text below, text-link button) in 3-col grid */
[data-section="featured-posts"] #blog-cards{grid-template-columns:repeat(3,1fr);gap:20px}
[data-section="featured-posts"] .row-post.post-card{grid-template-columns:1fr;padding:0;overflow:hidden;gap:0}
[data-section="featured-posts"] .row-post.post-card img{width:100%;height:180px;object-fit:cover;border-radius:0}
[data-section="featured-posts"] .row-post.post-card>div{padding:20px;display:flex;flex-direction:column}
[data-section="featured-posts"] .row-post.post-card .btn{background:none;color:#1B5E3B!important;padding:0;min-height:0;border:0;box-shadow:none;align-self:flex-start;margin-top:16px}
[data-section="featured-posts"] .row-post.post-card .btn:hover{text-decoration:underline}
/* Batch 2026-11-07: margin above the All Guides title */
[data-section="featured-posts"] .row-post.featured + h2{margin-top:48px}
@media(max-width:1023px){
  [data-section="featured-posts"] .row-post.featured{grid-template-columns:1fr}
  [data-section="featured-posts"] .row-post.featured img{width:100%;height:180px}
  [data-section="featured-posts"] .row-post.featured>div{padding:0 20px 20px}
  [data-section="featured-posts"] #blog-cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
  [data-section="featured-posts"] #blog-cards{grid-template-columns:1fr}
}

/* Batch 2026-11-07: guide/post titles bolder (700) on blog page + all guides sections sitewide */
[data-section="featured-posts"] h3,[data-section="blog"] h3,[data-section="related-blog-posts"] h3{font-weight:700}

/* Batch 2026-11-07: contact page rebuilt like reference — centered heading + 3 icon cards */
[data-section="contact-details"] h1{text-align:center}
[data-section="contact-details"] .card.contact-card{text-align:center;align-items:center;padding:32px 20px;box-shadow:0 4px 16px rgba(0,0,0,.06)}
.contact-icon{display:inline-flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;font-size:28px;margin-bottom:16px}
.contact-icon.green{background:#E6F4EA}
.contact-icon.blue{background:#DDEBF7}
.contact-icon.amber{background:#FEF3C7}
[data-section="contact-details"] .card.contact-card h3{font-weight:700;margin-bottom:8px}
[data-section="contact-details"] .contact-value{font-weight:700;font-size:18px;color:#2563EB;text-decoration:none;margin-bottom:8px}
[data-section="contact-details"] p.contact-value{color:#1F2937}
[data-section="contact-details"] .card.contact-card p:last-child{color:#5B6770;margin-bottom:0}

/* Batch 2026-11-07: danger-first checklist — narrower centered white card, larger green checkboxes */
[data-section="danger-first-checklist"] .checklist{max-width:800px;margin:0 auto;background:#fff;border:1px solid #D9E2DC;border-radius:16px;padding:8px 32px;box-shadow:0 8px 24px rgba(18,63,39,.08)}
[data-section="danger-first-checklist"] .checklist li{padding:16px 0}
[data-section="danger-first-checklist"] .checklist li:last-child{border-bottom:0}
[data-section="danger-first-checklist"] .checklist label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}
[data-section="danger-first-checklist"] .checklist input[type="checkbox"]{width:20px;height:20px;accent-color:#1B5E3B;flex-shrink:0;margin-top:2px;cursor:pointer}

/* Batch 2026-11-07: space above the emergency city-card grids so they don't crowd the paragraph */
[data-section="emergency-help-by-state"] .grid3{margin-top:20px;margin-bottom:20px}

/* Batch 2026-11-07: space above Georgia/Texas headings so state blocks don't run together */
[data-section="emergency-help-by-state"] #georgia-slug,[data-section="emergency-help-by-state"] #texas-slug{margin-top:32px}

/* Batch 2026-11-07: state headings on the emergency hub are bold */
[data-section="emergency-help-by-state"] h3{font-weight:700}

/* Batch 2026-11-07: center the Call Now button in the centered Quick Answer + Local Risks sections (150 emergency city pages each) */
[data-section="quick-answer-right-now"] .wrap,[data-section="local-emergency-risks"] .wrap{text-align:center}
/* Batch 2026-11-07: emergency-guide h3s bold like city deep-guide h3s (20px/600) */
[data-section="emergency-guide"] h3{font-weight:600}

/* Batch 2026-11-07: center the Neighborhoods list as a narrower column (it was a full-width left block in a centered section) */
[data-section="neighborhoods"] .wrap ul{max-width:800px;margin-left:auto;margin-right:auto}
/* Batch 2026-11-07: center the Emergency Guide Call Now button and give it a top margin */
[data-section="emergency-guide"] .btn{display:block;width:max-content;margin:20px auto 0}

/* Batch 2026-11-07: heavy CTA/review h2s match regular section h2s (Georgia/400) — homepage excluded */
body:not(.ref-home) .final h2,[data-section="end-call-box"] h2,.callbox2.guide-cta h2{font-family:Georgia,serif;font-weight:400;color:#1F2937}
#reviews h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,3.4vw,38px)}
/* Batch 2026-11-07: At-A-Glance cards — label bold, value/source like regular text */
[data-section="at-a-glance"] .fact b{font-weight:400}
[data-section="at-a-glance"] .fact p{font-weight:700}
/* Batch 2026-11-07: space between Emergency Guide body paragraphs (0-h3 pages were a wall of text) */
[data-section="emergency-guide"] p:not(.sec-sub){margin-bottom:16px}

/* Batch 2026-11-07: At-A-Glance cards — value 18px on top, label 24px in the middle, source at the bottom */
[data-section="at-a-glance"] .fact{display:flex;flex-direction:column;justify-content:space-between}
[data-section="at-a-glance"] .fact b{font-size:18px}
[data-section="at-a-glance"] .fact p{font-size:24px}

/* Batch 2026-11-07: At-A-Glance card rows share one height per line so labels/sources sit level across cards */
[data-section="at-a-glance"] .fact b,[data-section="at-a-glance"] .fact p,[data-section="at-a-glance"] .fact small{min-height:3em}

/* Batch 2026-11-07: Privacy + Terms pages — space the expanded paragraphs and section headings */
[data-section="simple-text"] p:not(.sec-sub){margin-bottom:16px}
[data-section="simple-text"] h2{margin-top:32px}

/* Batch 2026-11-07: Top bar + trust strip scroll infinitely on mobile (marquee) */
/* Duplicated sets are hidden on desktop so the centered layout is unchanged */
.topbar-row .dup,.trust-row .dup{display:none}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:1023px){
.topbar-row,.ref-home .topbar-row{width:max-content;margin:0 -16px;padding:8px 0;gap:0;flex-wrap:nowrap;justify-content:flex-start;animation:marquee 30s linear infinite}
.topbar-row .chip{flex-shrink:0;white-space:nowrap;margin-right:12px}
.topbar-row .dup{display:inline-flex}
.trust-row,.ref-home .trust-row{width:max-content;margin:0 -16px;gap:0;flex-wrap:nowrap;justify-content:flex-start;animation:marquee 30s linear infinite}
.trust-row .trust-pt,.trust-row .sep{flex-shrink:0;margin-right:14px}
.trust-row .dup{display:flex}
.trust-row .sep.dup{display:block}
}

/* Batch 2026-11-07: Homepage locations — space the map/cities on mobile + city cards scroll infinitely */
/* Fix: .loc-layout is display:block on mobile (grid only at >=1024px), so the map and the city slider touch (0 gap) */
@media(max-width:1023px){
.loc-layout{display:grid;grid-template-columns:1fr;gap:28px}
}
/* City cards marquee (homepage only; the slider is only on the homepage) */
.ref-home .loc-city-slider .dup{display:none}
@media(max-width:1023px){
.ref-home .loc-side{overflow:hidden}
.ref-home .loc-city-slider{display:flex;flex-wrap:nowrap;width:max-content;gap:0;overflow:visible;animation:marquee 600s linear infinite}
.ref-home .loc-city-slider .city-card{flex:0 0 230px;margin-right:14px}
.ref-home .loc-city-slider .dup{display:block}
}

/* Batch 2026-11-07: Search input placeholder text black */
.loc-search::placeholder{color:#000;opacity:1}

/* Batch 2026-11-07: Homepage final CTA card text dark (the card is light, the white text was invisible) */
.ref-home .final .wrap h2{font-family:Georgia,serif;font-weight:400;color:#1F2937}
.ref-home .final .wrap p{color:#5B6770}
.ref-home .final .wrap .hero-call-line{color:#5B6770}

/* Batch 2026-11-07: Mobile header — phone icon left, logo centered, hamburger right */
.header-phone{display:none;color:#123F27}
.ref-home .header-phone{color:#fff}
@media(max-width:1023px){
.header-row{display:grid;grid-template-columns:44px 1fr 44px;gap:12px;padding:12px 0}
.header-row .logo{justify-self:center;font-size:17px}
.header-phone{display:flex;align-items:center;justify-content:center;width:44px;height:44px;text-decoration:none}
.header-phone svg{display:block}
}

/* Batch 2026-11-07: Header dark green on all pages (was homepage-only) */
.sticky-wrap{background:#123F27}
.header{background:#123F27;box-shadow:0 2px 12px rgba(0,0,0,.25)}
.logo{color:#fff}
.nav>a{color:#fff}
.mega-btn{color:#fff}
.callbox{border-color:#fff;color:#fff}
.callbox span{color:rgba(255,255,255,.8)}
.menu-btn{color:#fff}
.mobile-menu{background:#123F27}
.mobile-menu a{color:#fff}
.header-phone{color:#fff}

/* Batch 2026-11-07: Mobile menu Locations submenu (states + cities accordion) */
.mob-loc{width:100%}
.mob-loc-btn{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;color:#fff;font:inherit;padding:8px 2px;cursor:pointer;text-align:left}
.mob-loc-sub{display:none;padding-left:16px}
.mob-loc-sub.open{display:block}
.mob-state-btn{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;color:#fff;font:inherit;padding:8px 2px;cursor:pointer;text-align:left}
.mob-state-cities{display:none;padding-left:16px}
.mob-state-cities.open{display:block}
.mob-state-cities a{display:block;padding:6px 2px;color:#fff;text-decoration:none}
.mob-view-all{display:block;padding:10px 2px;font-weight:700;color:#fff}
.mob-caret{transition:transform .2s}
.mob-loc-btn[aria-expanded="true"] .mob-caret,.mob-state-btn[aria-expanded="true"] .mob-caret{transform:rotate(180deg)}

/* Batch 2026-11-07: Mobile menu scrolls when tall (long city lists) */
.mobile-menu.open{max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto}

/* Batch 2026-11-07: Reviewed By card stacks on mobile (avatar on top, text full width) */
@media(max-width:767px){
.reviewed-card{flex-direction:column}
}

/* Batch 2026-11-07: States item in mobile menu (next to Locations) — state links */
.mob-states .mob-loc-sub a{display:block;padding:8px 2px;color:#fff}

/* Batch 2026-11-07: Footer Pages links in a row on mobile */
@media(max-width:767px){
.foot-grid > div:last-child{display:flex;flex-wrap:wrap;gap:8px 16px}
.foot-grid > div:last-child h3{flex:0 0 100%}
}

/* Batch 2026-11-07: Blog post hero image fills the content width */
[data-section="article-hero"] img{width:100%;height:auto;display:block}

/* Batch 2026-11-07: Blog post hero image space above and below */
[data-section="article-hero"] img{margin:24px 0}

/* Batch 2026-11-07: Blog card image + title are links (same URL as the button) */
.blog-feat > a:has(img), .blog-row > a:has(img), .row-post > a:has(img){display:block}
.blog-feat h3 a, .blog-row h3 a, .row-post h3 a{color:inherit;text-decoration:none}
