@font-face { font-family: "Public Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/public-sans-400.woff2") format("woff2"); }
@font-face { font-family: "Public Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/public-sans-600.woff2") format("woff2"); }
@font-face { font-family: "Schibsted Grotesk"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/schibsted-grotesk-700.woff2") format("woff2"); }
@font-face { font-family: "Schibsted Grotesk"; font-style: normal; font-weight: 800; font-display: swap; src: url("/assets/fonts/schibsted-grotesk-800.woff2") format("woff2"); }
:root {
  --font-body: "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-head: "Schibsted Grotesk", "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --fs-body: 1.125rem;
  --fs-small: 1rem;
  --fs-h1: clamp(2.375rem, 1.3rem + 3.3vw, 3.5rem);        
  --fs-h1-hero: var(--fs-h1);
  --fs-h2: clamp(1.875rem, 1.35rem + 1.9vw, 2.875rem);
  --fs-h3: 1.375rem;
  --lh-body: 1.65;
  --lh-head: 1.12;
  --track-head: -.015em;
  --track-eyebrow: .08em;
  --c-ink: #0f172a;                       
  --c-ink-soft: #475569;                  
  --c-wash: #e9eff7;                      
  --c-warn-bg: #fef3c7; --c-warn-ink: #78350f; --c-warn-edge: #b45309;   
  --c-bg: #f4f6f9;                        
  --c-card: #ffffff;                      
  --c-surface: #eaeff5;                   
  --c-tint: #e1eafb;                      
  --c-line: #cbd5e1;                      
  --c-line-strong: #64748b;               
  --c-link: #1d4ed8;                      
  --c-link-hover: #1e40af;
  --c-call: #1d4ed8;                      
  --c-call-hover: #1e40af;
  --c-call-ink: #ffffff;
  --c-call-edge: #1e3a8a;                 
  --c-band: #1e3a5f;                      
  --c-focus: #1e3a8a;
  --c-dark: #0f2942;
  --c-dark-2: #1e3a5f;
  --c-dark-ink: #f3f6fc;
  --c-dark-soft: #b9c5dd;
  --c-link-dark: #93c5fd;
  --c-call-dark: #ffffff;                 
  --c-call-dark-edge: #cbd5e1;
  --c-call-dark-ink: #0f2942;
  --c-focus-dark: #ffffff;
  --c-alert: #b3123a;
  --c-alert-bg: #fde7ee;
  --c-alert-ink: #5e0a20;
  --radius: .5rem;                        
  --radius-lg: .75rem;
  --c-card-line: #e2e8f0;                 
  --shadow-card: 0 1px 2px rgba(15, 23, 42, .05), 0 10px 26px -14px rgba(15, 23, 42, .2);
  --shadow-card-hover: 0 2px 4px rgba(15, 23, 42, .06), 0 18px 34px -16px rgba(15, 23, 42, .32);
  --ease: .2s ease-in-out;
  --rule: 2px;
  --gutter: 1.25rem;
  --measure: 68ch;
  --space-1: .5rem; --space-2: 1rem; --space-3: 1.5rem; --space-4: 2.5rem; --space-5: 4rem;
  --grid-line: rgba(29, 78, 216, .08);    
  --grid-line-major: rgba(29, 78, 216, .16);
  --shadow-header: 0 1px 0 var(--c-line), 0 6px 16px -8px rgba(15, 23, 42, .22);   
  --header-h: 3.5rem;                     
  --nav-break: 64em;                      
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: var(--fs-body)/var(--lh-body) var(--font-body); color: var(--c-ink); background: var(--c-bg); overflow-wrap: break-word; }
img, svg { max-width: 100%; height: auto; }
img { display: block; }
a { color: var(--c-link); }
:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }
.container { width: min(100% - 2 * var(--gutter), 72.5rem); margin-inline: auto; }
.measure { max-width: var(--measure); }
.section { padding-block: 3rem; }
.skip-link { position: absolute; left: -999px; top: 0; background: var(--c-bg); padding: .5rem 1rem; z-index: 1100; }
.skip-link:focus { left: 0; }
.tel-num { white-space: nowrap; }
.icon { width: 1.25em; height: 1.25em; flex: none; }
.no-js [hidden-without-js] { display: none; }
.site-header { position: sticky; top: 0; z-index: 1000; background: var(--c-card); border-bottom: 1px solid var(--c-line); box-shadow: var(--shadow-header); }
html { scroll-padding-top: calc(var(--header-h) + .75rem); }
.header-inner { display: flex; align-items: center; gap: .75rem; min-height: var(--header-h); }
.brand { margin-right: auto; display: flex; align-items: center; text-decoration: none; color: inherit; }
.logo--c { display: none; }
.header-call { display: none; }
.header-call-icon, .menu-toggle { min-width: 2.75rem; min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; }
.header-call-icon { background: var(--c-call); color: var(--c-call-ink); border-radius: var(--radius); box-shadow: inset 0 -3px 0 var(--c-call-edge); }
.menu-toggle { background: none; color: inherit; border: 1px solid var(--c-line-strong); border-radius: var(--radius); font: inherit; cursor: pointer; }
.nav-sheet { display: none; }
.nav-sheet.is-open { display: block; position: fixed; inset: calc(var(--header-h) + 1px) 0 0; overflow-y: auto; overscroll-behavior: contain; background: var(--c-bg); padding: var(--gutter) var(--gutter) calc(var(--gutter) + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--c-line); }
.nav-list, .sub-list, .footer-group ul, .breadcrumb ol { list-style: none; margin: 0; padding: 0; }
.nav-list a, .sub-toggle { display: block; padding: .75rem 0; min-height: 2.75rem; }
.sub-toggle { background: none; border: 0; font: inherit; text-align: left; width: 100%; cursor: pointer; color: inherit; }
.nav-list a, .sub-toggle { font-weight: 600; font-family: var(--font-head); }
.sub-toggle { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.sub-toggle::after { content: ""; flex: none; width: .5rem; height: .5rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); }
.sub-toggle[aria-expanded="true"]::after { transform: translateY(2px) rotate(-135deg); }
@media (max-width: 63.99em) { .nav-list > li { border-bottom: 1px solid var(--c-line); } .nav-list a, .sub-toggle { font-size: 1.1875rem; min-height: 3.25rem; } .sub-list a { font-weight: 600; } }
.nav-group-label { display: none; }
.sub-list { display: none; padding-left: 1rem; }
.has-sub.is-open > .sub-list { display: block; }
@media (min-width: 64em) {
  :root { --header-h: 4rem; }
  .menu-toggle, .header-call-icon { display: none; }
  .header-call { display: inline-flex; }
  .nav-sheet { display: block; position: static; padding: 0; }
  .nav-list { display: flex; gap: 1.25rem; }
  .has-sub { position: relative; }
  .sub-list { position: absolute; top: 100%; left: 0; min-width: 14rem; background: var(--c-bg); border: 1px solid var(--c-line); padding: .5rem 1rem; }
  .sub-list { max-height: calc(100vh - var(--header-h) - 1rem); max-height: calc(100dvh - var(--header-h) - 1rem); overflow-y: auto; overscroll-behavior: contain; }
}
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 2.75rem; padding: .6rem 1.1rem; border-radius: var(--radius); text-decoration: none; font-weight: 600; }
.btn-call { background: var(--c-call); color: var(--c-call-ink); box-shadow: inset 0 -3px 0 var(--c-call-edge); }
.btn-call:hover { background: var(--c-call-hover); }
.btn-call:active { box-shadow: inset 0 2px 0 var(--c-call-edge); }
.btn-call--dark:hover { background: var(--c-dark-ink); }
.btn-call--dark { background: var(--c-call-dark); color: var(--c-call-dark-ink); box-shadow: inset 0 -3px 0 var(--c-call-dark-edge); }
.breadcrumb ol { display: flex; flex-wrap: wrap; gap: .5rem; padding-block: .75rem; font-size: .9375rem; }
.breadcrumb li + li::before { content: "\203A"; margin-right: .5rem; }
.faq details { border-bottom: 1px solid var(--c-line); }
.faq summary { cursor: pointer; padding: .9rem 0; min-height: 2.75rem; font-weight: 600; }
.faq-answer { padding-bottom: 1rem; }
[data-tabs].is-enhanced [role="tabpanel"][hidden] { display: none; }
[role="tab"] { min-height: 2.75rem; }
.site-footer { background: var(--c-dark); color: var(--c-dark-ink); padding-block: 2.5rem; }
.site-footer a { color: inherit; }
.footer-grid { display: grid; gap: 2rem; }
.footer-nav { display: grid; gap: 1.5rem; }
.footer-disclosure { margin-top: 2rem; font-size: .9375rem; }
@media (min-width: 48em) { .footer-grid { grid-template-columns: 1fr 2fr; } .footer-nav { grid-template-columns: 2fr 1fr; } }
@media (min-width: 40em) { .footer-group:first-child ul { columns: 2; column-gap: 2rem; } .footer-group li { break-inside: avoid; } }
.sticky-call { display: none; }
@media (max-width: 47.99em) {
  .sticky-call { position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; display: flex; align-items: center; justify-content: center; gap: .625rem; min-height: calc(4rem + env(safe-area-inset-bottom, 0px)); padding: 0 var(--gutter) env(safe-area-inset-bottom, 0px); background: var(--c-call); color: var(--c-call-ink); border-top: 2px solid var(--c-call-dark); box-shadow: 0 -6px 16px -8px rgba(15, 23, 42, .3); font: 600 1.125rem/1.2 var(--font-body); text-decoration: none; }
  .sticky-call:hover, .sticky-call:active { background: var(--c-call-hover); color: var(--c-call-ink); }
  .sticky-call :focus-visible, .sticky-call:focus-visible { outline: 3px solid var(--c-focus-dark); outline-offset: -6px; }
  .sticky-call .icon { width: 1.375rem; height: 1.375rem; }
  body:has(.sticky-call) { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
  body:has(.sticky-call) .site-footer { margin-bottom: calc(-72px - env(safe-area-inset-bottom, 0px)); padding-bottom: calc(2.5rem + 72px + env(safe-area-inset-bottom, 0px)); }
  body:has(.sticky-call) .header-call-icon { display: none; }
}
.map-frame { max-width: 100%; overflow: hidden; border: 1px solid var(--c-line); border-radius: var(--radius); }
.map-embed { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 5 / 3; border: 0; }
@media (max-width: 47.99em) { .map-embed { aspect-ratio: 4 / 3; } }
.lang-switch { display: inline-flex; align-items: center; gap: .35rem; margin-left: auto; white-space: nowrap; }
.lang-switch a, .lang-switch .lang-current { display: inline-flex; align-items: center; min-height: 2.75rem; padding: 0 .5rem; font-size: var(--fs-small); }
.lang-switch a { text-decoration: none; border-bottom: var(--rule) solid transparent; }
.lang-switch a:hover { border-bottom-color: var(--c-link); }
.lang-switch .lang-current { font-weight: 700; border-bottom: var(--rule) solid var(--c-ink); }
h1, h2, h3, h4 { font-family: var(--font-head); font-weight: 700; line-height: var(--lh-head); letter-spacing: var(--track-head); margin-block: 0 .6em; text-wrap: balance; }
h1 { font-size: var(--fs-h1); font-weight: 800; }
h2 { font-size: var(--fs-h2); }
h3 { font-size: var(--fs-h3); }
a { text-underline-offset: .18em; }
a:not(.btn):hover { color: var(--c-link-hover); }
.on-dark a:not(.btn) { color: var(--c-link-dark); }
.site-footer a:not(.btn):hover, .on-dark a:not(.btn):hover { color: var(--c-dark-ink); }
.site-footer .btn-call--dark { color: var(--c-call-dark-ink); }
.site-footer :focus-visible, .on-dark :focus-visible { outline-color: var(--c-focus-dark); }
.logo { height: 2.5rem; width: auto; overflow: visible; }
.logo--h { display: none; }
.logo--c { display: block; }
.logo-text { font-family: var(--font-head); font-weight: 800; letter-spacing: var(--track-head); }
@media (min-width: 40em) { .logo--h { display: block; } .logo--c { display: none; } }
.footer-logo { height: 3rem; color: var(--c-dark-ink); }
.eyebrow { font-family: var(--font-head); font-size: var(--fs-small); font-weight: 700; letter-spacing: var(--track-eyebrow); text-transform: uppercase; color: var(--c-ink-soft); }
.route-rule { position: relative; padding-top: 1.1rem; }
.route-rule::before { content: ""; position: absolute; left: 0; top: 0; width: 2.75rem; height: .75rem; border-top: 3px solid var(--c-link); border-left: 3px solid var(--c-link); }
.on-dark .route-rule::before { border-color: var(--c-link-dark); }
.blueprint { background-color: var(--c-tint); background-image: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px); background-size: 1.5rem 1.5rem; border: 1px solid var(--c-line); }
.band-alt { background: var(--c-surface); }
.notice-alert { background: var(--c-alert-bg); color: var(--c-alert-ink); border-left: 4px solid var(--c-alert); padding: var(--space-2) var(--space-3); }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
strong, b { font-weight: 600; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.footer-head { font-family: var(--font-head); font-weight: 700; margin: 0 0 .5rem; }
.footer-group li { margin-bottom: .25rem; }
.icon { vertical-align: -.2em; }
.eyebrow { font-size: .875rem; }
.lead { font-size: 1.1875rem; max-width: 36rem; line-height: 1.55; }
.lead strong { font-weight: 600; color: var(--c-ink); }
.intro { font-size: 1.25rem; line-height: 1.5; color: var(--c-ink); max-width: 38rem; }
@media (min-width: 48em) { .lead { font-size: 1.375rem; } .intro { font-size: 1.375rem; } }
.fineprint { font-size: var(--fs-small); color: var(--c-ink-soft); margin: 0; max-width: 34rem; }
.reviewed { font-size: var(--fs-small); color: var(--c-ink-soft); margin: var(--space-3) 0 0; }
.section--tight { padding-block: 2rem; }
.section-head { max-width: 46rem; margin-bottom: var(--space-4); }
.section-head--wide { max-width: 56rem; }
.section-head > .eyebrow { margin: 0 0 .6rem; }
.section-head > :last-child { margin-bottom: 0; }
.section-head h2 { margin-bottom: .45em; }
.prose p { max-width: var(--measure); }
.prose p:last-child { margin-bottom: 0; }
.btn-call--hero { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-3); margin-block: var(--space-3) var(--space-2); }
.hero-actions > a:not(.btn) { display: inline-flex; align-items: center; min-height: 2.75rem; font-weight: 600; }
.dg { display: block; width: 100%; height: auto; }
.dg-house { fill: var(--c-card); stroke: var(--c-ink); stroke-width: 5; stroke-linejoin: miter; }
.dg-roof { fill: none; stroke: var(--c-ink); stroke-width: 5; stroke-linejoin: miter; }
.dg-ink { fill: none; stroke: var(--c-ink); stroke-width: 3; stroke-linejoin: miter; }
.dg-fill { fill: var(--c-card); stroke: var(--c-ink); stroke-width: 3; stroke-linejoin: miter; }
.dg-hair { fill: none; stroke: var(--c-ink-soft); stroke-width: 1.5; }
.dg-water { fill: none; stroke: var(--c-link); stroke-width: 7; stroke-linejoin: miter; }
.dg-sewer { fill: none; stroke: var(--c-ink); stroke-width: 7; stroke-linejoin: miter; }
.dg-city { opacity: .45; }
.dg-dash { fill: none; stroke: var(--c-ink); stroke-width: 2; stroke-dasharray: 9 7; }
.dg-street { fill: var(--c-ink); fill-opacity: .07; }
.dg-hatchline { stroke: var(--c-ink); stroke-opacity: .16; stroke-width: 1.5; }
.dg-lever { fill: none; stroke: var(--c-link); stroke-width: 6; }
.dg-head { fill: var(--c-link); }
.dg-label { font-family: var(--font-head); font-weight: 700; font-size: 13px; letter-spacing: .09em; fill: var(--c-ink); paint-order: stroke; stroke: var(--c-tint); stroke-width: 5px; stroke-linejoin: round; }
.dg-label--m { font-size: 11px; letter-spacing: .07em; stroke-width: 4px; }
.dg-leader { fill: none; stroke: var(--c-link); stroke-width: 2.5; }
.dg-mark rect { fill: var(--c-link); }
.dg-mark text { fill: var(--c-call-ink); font-family: var(--font-head); font-weight: 800; font-size: 15px; text-anchor: middle; dominant-baseline: central; }
.dg--mob { display: block; }
.dg--desk { display: none; }
.hero { position: relative; overflow: hidden; padding-block: 0; }
.hero-field { margin: 0; padding: var(--space-3) 0 var(--space-2); border-width: 1px 0 0; border-style: solid; border-color: var(--c-line); position: relative; }
.hero-field .dg--mob { max-width: 30rem; margin-inline: auto; padding-inline: var(--gutter); }
.hero-cap { font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-ink); padding: var(--space-1) var(--gutter) 0; }
.hero-cap span { color: var(--c-link); margin-right: .5rem; }
.figure-key { list-style: none; margin: var(--space-2) var(--gutter) 0; padding: var(--space-2) 0 0; border-top: 1px solid var(--c-line-strong); display: grid; grid-template-columns: 1fr 1fr; gap: .6rem 1rem; font-size: var(--fs-small); font-weight: 600; }
.figure-key li { display: flex; gap: .5rem; align-items: center; }
.key-n { flex: none; width: 1.6rem; height: 1.6rem; display: grid; place-items: center; background: var(--c-link); color: var(--c-call-ink); font-family: var(--font-head); font-weight: 800; font-size: .9375rem; }
.hero-grid { position: relative; z-index: 2; padding-block: var(--space-4) var(--space-3); order: -1; }
.hero { display: flex; flex-direction: column; }
.hero .eyebrow { margin: 0 0 .75rem; }
.hero h1 { margin-bottom: .45em; }
.dg-label--in { stroke: var(--c-card); }
@media (min-width: 48em) {
  .hero-field .dg--desk { display: block; max-width: 44rem; margin-inline: auto; padding-inline: var(--gutter); }
  .hero-field .dg--mob, .figure-key { display: none; }
  .hero-field { padding-block: var(--space-4) var(--space-3); }
}
@media (min-width: 80em) {
  .hero { --cl: max(var(--gutter), calc((100vw - 72.5rem) / 2)); --fw: 58vw; display: block; min-height: 41rem; }
  .hero-field { position: absolute; top: 0; right: 0; bottom: 0; width: var(--fw); border-width: 0 0 0 1px; padding: var(--space-4) var(--space-4) var(--space-4) 0; display: flex; flex-direction: column; justify-content: center; align-items: flex-end; }
  .hero-field .dg--desk { width: min(54rem, calc(100% - max(0px, calc(var(--cl) + 39.5rem - (100vw - var(--fw))))) ); max-width: none; margin: 0; padding: 0; }
  .hero-cap { position: absolute; left: var(--space-4); top: var(--space-3); padding: 0; }
  .hero-grid { padding-block: 5.5rem 5rem; order: 0; display: flex; align-items: center; min-height: 41rem; }
  .hero h1 { max-width: 11.4em; position: relative; z-index: 3; margin-right: -12rem; }
  .hero-copy { max-width: 40rem; }
}
.split-strip { display: grid; }
@media (min-width: 48em) { .split-strip { grid-template-columns: 1fr 1fr; } }
.split-cell { padding: var(--space-4) var(--gutter); }
@media (min-width: 48em) {
  .split-cell { padding-block: 3.5rem; }
  .split-cell--now { padding-left: max(var(--gutter), calc((100vw - 72.5rem) / 2)); padding-right: var(--space-5); }
  .split-cell--later { padding-right: max(var(--gutter), calc((100vw - 72.5rem) / 2)); padding-left: var(--space-5); }
}
.split-cell--now { background: var(--c-dark); color: var(--c-dark-ink); }
.split-cell--later { background: var(--c-tint); }
.split-title { display: flex; align-items: center; gap: .6rem; font-family: var(--font-head); font-weight: 800; font-size: clamp(1.875rem, 1.4rem + 1.8vw, 2.75rem); line-height: 1.05; letter-spacing: var(--track-head); margin: 0 0 var(--space-3); }
.split-title .icon { width: 1.1em; height: 1.1em; }
.big-list { list-style: none; margin: 0; padding: 0; }
.big-list li { padding: .85rem 0; border-top: 1px solid var(--c-line-strong); font-family: var(--font-head); font-weight: 700; font-size: 1.375rem; line-height: 1.25; }
.split-cell--now .big-list li { border-top-color: var(--c-dark-2); }
.split-note { margin: var(--space-2) 0 0; font-size: var(--fs-small); }
.split-note a { display: inline-flex; align-items: center; min-height: 2.75rem; font-weight: 600; }
.navigator-section { padding-block: var(--space-5); }
.navigator { display: grid; gap: var(--space-3); }
@media (min-width: 64em) { .navigator { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: var(--space-5); align-items: stretch; } }
.nav-num { display: block; font-family: var(--font-head); font-weight: 800; letter-spacing: var(--track-head); line-height: .9; color: var(--c-link); }
.nav-feature { position: relative; background: var(--c-dark); color: var(--c-dark-ink); padding: var(--space-4) var(--space-3); display: flex; flex-direction: column; }
.nav-feature .nav-num { font-size: 6rem; color: var(--c-call-dark); margin-bottom: var(--space-2); }
.nav-feature .nav-icon { position: absolute; right: var(--space-3); top: var(--space-3); width: 6.5rem; height: 6.5rem; color: var(--c-link-dark); }
.nav-feature h3 { font-size: clamp(1.75rem, 1.3rem + 1.5vw, 2.5rem); margin: 0 0 .5rem; max-width: 14ch; }
.nav-lede { font-size: 1.125rem; color: var(--c-dark-soft); max-width: 30rem; margin: 0 0 var(--space-3); }
.nav-feature .nav-links { margin-top: auto; }
.navigator > .nav-list { display: grid; align-content: start; border-top: 3px solid var(--c-ink); }
.nav-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--space-2) var(--space-3); align-items: start; padding: var(--space-3) 0; border-bottom: 1px solid var(--c-line-strong); }
.nav-row .nav-num { font-size: 3.5rem; min-width: 2.5rem; }
.nav-row .nav-icon { width: 3.5rem; height: 3.5rem; color: var(--c-ink); }
.nav-row h3 { font-size: 1.625rem; margin: 0 0 .5rem; }
.nav-links { list-style: none; margin: 0; padding: 0; }
.nav-links li { padding: .65rem 0; border-top: 1px solid var(--c-line); }
.nav-feature .nav-links li { border-top-color: var(--c-dark-2); }
.nav-links strong { display: block; font-family: var(--font-head); font-weight: 700; font-size: 1.1875rem; }
.nav-links span { color: var(--c-ink-soft); font-size: var(--fs-small); }
.nav-feature .nav-links span { color: var(--c-dark-soft); }
@media (max-width: 47.99em) {
  .nav-row { grid-template-columns: auto minmax(0, 1fr); }
  .nav-row .nav-icon { display: none; }
  .nav-feature .nav-icon { width: 4rem; height: 4rem; }
  .nav-feature .nav-num { font-size: 4.5rem; }
}
.own { background: var(--c-dark); color: var(--c-dark-ink); padding-block: var(--space-5); }
.own .eyebrow { color: var(--c-dark-soft); }
.own-head { max-width: 50rem; margin-bottom: var(--space-4); }
.own-head h2 { margin-bottom: .4em; }
.own .intro { color: var(--c-dark-ink); }
.lanes { display: grid; gap: var(--space-5); }
.lane-title { font-size: 1.375rem; margin: 0 0 var(--space-2); color: var(--c-dark-soft); font-weight: 700; }
.lane-grid { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: var(--space-1); }
.pipe { display: block; height: 2.5rem; position: relative; }
.pipe::before, .pipe::after { content: ""; position: absolute; top: -.4rem; bottom: -.4rem; width: .6rem; background: var(--c-call-dark); }
.pipe--city { border: 3px solid var(--c-dark-soft); }
.pipe--city::before { left: -.6rem; background: var(--c-dark-soft); }
.pipe--city::after { right: -.6rem; background: var(--c-dark-soft); }
.pipe--you { background: var(--c-call-dark); }
.pipe--you::before { left: -.6rem; }
.pipe--you::after { display: none; }
.lane-who { display: block; font-family: var(--font-head); font-weight: 800; font-size: 2.5rem; line-height: 1; letter-spacing: var(--track-head); margin: var(--space-1) 0 .35rem; }
.lane-city .lane-who { color: var(--c-dark-soft); }
.lane-you .lane-who { color: var(--c-call-dark); }
.lane-city p, .lane-you p { margin: 0; font-size: 1.125rem; max-width: 30rem; }
.lane-city p { color: var(--c-dark-soft); }
.lane-line { padding: var(--space-1) 0; }
.lane-line span { display: inline-block; font-family: var(--font-head); font-weight: 800; font-size: .875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--c-dark-ink); border-top: 2px dashed var(--c-dark-soft); padding-top: .5rem; min-width: 100%; }
.pipe-join { display: none; }
@media (min-width: 48em) {
  .lane-grid { grid-template-columns: minmax(0, 1fr) 8.5rem minmax(0, 1.25fr); grid-template-areas: ". line ." "pc pj py" "tc . ty"; row-gap: .5rem; align-items: start; }
  .lane-grid > .pipe--city { grid-area: pc; }
  .lane-grid > .pipe--you { grid-area: py; }
  .lane-grid > .pipe-join { display: block; grid-area: pj; position: relative; height: 2.5rem; }
  .lane-grid > .lane-city { grid-area: tc; padding-right: var(--space-3); }
  .lane-grid > .lane-you { grid-area: ty; padding-left: 0; }
  .lane-grid > .lane-line { grid-area: line; text-align: center; padding: 0; align-self: end; }
  .lane-line span { border-top: 0; border-bottom: 0; padding: 0 0 .75rem; min-width: 0; text-align: center; }
  .pipe-join::before { content: ""; position: absolute; left: 50%; top: -3.5rem; bottom: -4.25rem; border-left: 2px dashed var(--c-dark-soft); }
  .pipe-join::after { content: ""; position: absolute; left: 50%; top: 50%; width: 1.1rem; height: 1.1rem; background: var(--c-dark); border: 3px solid var(--c-call-dark); transform: translate(-50%, -50%); }
  .lane-grid--fuzzy > .pipe-join::before { border-left-style: dotted; }
  .lane-grid--fuzzy > .pipe-join::after { border-style: dashed; border-color: var(--c-dark-soft); border-radius: 50%; }
  .lane-grid > .lane-city .lane-who, .lane-grid > .lane-you .lane-who { margin-top: var(--space-2); }
}
.own-statement { font-family: var(--font-head); font-weight: 800; font-size: clamp(1.75rem, 1.2rem + 2vw, 3rem); line-height: 1.12; letter-spacing: var(--track-head); max-width: 24em; margin: var(--space-5) 0 var(--space-2); text-wrap: balance; }
.own-note { color: var(--c-dark-soft); max-width: 40rem; margin: 0; }
.process { padding-block: var(--space-5); }
.run-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
.run-steps > li { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-1) var(--space-3); padding: var(--space-3) 0 0 var(--space-3); border-left: 3px solid var(--c-link); }
.run-steps > li::before { content: ""; position: absolute; left: -3px; top: 0; width: 2.5rem; border-top: 3px solid var(--c-link); }
.rs-num { font-family: var(--font-head); font-weight: 800; font-size: clamp(3.5rem, 2.4rem + 4vw, 6.5rem); line-height: .85; letter-spacing: var(--track-head); color: var(--c-link); }
.run-steps h3 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2.125rem); margin: 0 0 .4rem; }
.run-steps p { margin: 0; max-width: 34rem; font-size: 1.1875rem; }
@media (min-width: 56em) {
  .run-steps { gap: 0; }
  .run-steps > li { margin-left: calc(var(--i) * 7.5rem); padding: var(--space-3) var(--space-3) var(--space-4) var(--space-3); grid-template-columns: 9rem minmax(0, 1fr); }
  .run-steps > li:not(:last-child) { border-bottom: 0; }
}
.areaband { position: relative; background: var(--c-surface); }
.areaband-map .map-frame { border: 0; border-block: 2px solid var(--c-ink); background: var(--c-card); }
.areaband-map .map-embed { aspect-ratio: 4 / 3; }
.areaband-inner { padding-block: var(--space-3) var(--space-4); }
.areaband-card { background: var(--c-dark); color: var(--c-dark-ink); padding: var(--space-4) var(--space-3); }
.areaband-card h2 { font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.375rem); }
.areaband-card .eyebrow { color: var(--c-dark-soft); margin: 0 0 .5rem; }
.areaband-card p { margin: 0 0 var(--space-2); }
.areaband-cap { font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-dark-soft); margin: var(--space-2) 0 0 !important; }
.facts { margin: var(--space-3) 0 0; border-top: 1px solid var(--c-dark-soft); }
.facts > div { display: grid; gap: .15rem; padding: .85rem 0; border-bottom: 1px solid var(--c-dark-2); }
.facts dt { font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-dark-soft); }
.facts dd { margin: 0; font-size: 1.0625rem; }
@media (min-width: 56em) {
  .areaband-map .map-embed { aspect-ratio: auto; height: 44rem; }
  .areaband-inner { position: absolute; inset: 0; padding: 0; display: flex; align-items: center; pointer-events: none; }
  .areaband-card { pointer-events: auto; width: min(30rem, 100%); padding: var(--space-4); margin-left: 0; }
}
.areaband-inner { margin-inline: auto; }
@media (min-width: 56em) { .areaband-inner { width: min(100% - 2 * var(--gutter), 72.5rem); left: 0; right: 0; } }
.reading { padding-block: var(--space-5); }
.read-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
@media (min-width: 48em) { .read-grid { grid-template-columns: 1fr 1fr; gap: var(--space-4); } }
.read-grid li { border-top: 3px solid var(--c-ink); padding-top: var(--space-2); }
.read-card { display: block; position: relative; padding-right: 3.25rem; }
a.read-card { text-decoration: none; color: var(--c-ink); }
.read-kicker { display: block; font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-link); margin-bottom: .4rem; }
.read-card strong { display: block; font-family: var(--font-head); font-weight: 800; font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem); line-height: 1.12; letter-spacing: var(--track-head); margin-bottom: .5rem; }
a.read-card strong { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .15em; color: var(--c-link); }
.read-card > span:last-child { color: var(--c-ink-soft); font-size: 1.125rem; }
a.read-card::after { content: ""; position: absolute; right: 0; top: 1.6rem; width: 2.25rem; height: 2.25rem; background: var(--c-link); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.25' stroke-linecap='square' d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.25' stroke-linecap='square' d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.cta-band { background: var(--c-band); color: var(--c-call-ink); padding-block: var(--space-5) var(--space-3); }
.cta-inner { display: grid; gap: var(--space-3) var(--space-5); align-items: center; }
@media (min-width: 56em) { .cta-inner { grid-template-columns: minmax(0, 1fr) auto; } }
.cta-band h2 { font-size: clamp(2rem, 1.3rem + 2.8vw, 3.75rem); line-height: 1.05; margin: 0 0 .4em; max-width: 14em; }
.cta-band p { margin: 0; font-size: 1.25rem; max-width: 34rem; }
.cta-band .btn-call--dark { min-height: 3.75rem; padding-inline: 2rem; font-size: 1.25rem; font-weight: 600; }
.cta-band .btn-call--dark:hover { background: var(--c-dark-ink); }
.cta-band .reviewed { color: var(--c-dark-ink); margin-top: var(--space-4); }
.cta-band :focus-visible { outline-color: var(--c-focus-dark); }
.emergency-hero { background: var(--c-dark); color: var(--c-dark-ink); padding-block: var(--space-3) var(--space-5); overflow: hidden; }
.emergency-hero .eyebrow { color: var(--c-dark-soft); margin: 0 0 .75rem; }
.emergency-hero .fineprint, .emergency-hero .breadcrumb { color: var(--c-dark-soft); }
.emergency-hero .breadcrumb { margin-bottom: var(--space-2); }
.emergency-hero h1 { margin-bottom: .45em; }
.emergency-grid { display: grid; gap: var(--space-4); align-items: start; }
.emergency-cta { margin-top: calc(var(--space-1) - var(--space-4)); }
.emergency-cta .hero-actions { margin-block: 0 var(--space-2); }
.emergency-cta .btn { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.emergency-cta .fineprint { max-width: 34rem; }
.emergency-rest .lead { margin-bottom: 0; }
@media (max-width: 29.99em) { .emergency-cta .btn { width: 100%; } }
@media (min-width: 56em) { .emergency-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3.5rem; row-gap: 0; padding-block: 2rem 1rem; align-items: start; } .emergency-cta { margin-top: 0; } .emergency-cta .hero-actions { margin-top: var(--space-3); } .emergency-cta .btn { width: auto; } }
.emergency-grid .eyebrow { margin: 0 0 .75rem; }
.start-panel { background: var(--c-dark-2); color: var(--c-dark-ink); border: 1px solid var(--c-line-strong); border-top: 5px solid var(--c-call-dark); }
.start-head { margin: 0; padding: var(--space-2) var(--space-3) var(--space-1); font-family: var(--font-head); font-weight: 800; font-size: 1.5rem; }
.on-dark a.start-row:not(.btn) { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr) 1.5rem; gap: 1rem; align-items: center; padding: 1rem var(--space-3); min-height: 4.75rem; border-top: 1px solid var(--c-dark); color: var(--c-dark-ink); text-decoration: none; }
.on-dark a.start-row:not(.btn):hover { background: var(--c-dark); color: var(--c-dark-ink); }
.start-ic { width: 3.5rem; height: 3.5rem; display: grid; place-items: center; background: var(--c-call-dark); color: var(--c-call-dark-ink); }
.start-ic .icon { width: 1.9rem; height: 1.9rem; }
.start-txt strong { display: block; font-family: var(--font-head); font-weight: 700; font-size: 1.3125rem; line-height: 1.2; }
.start-txt span span { color: var(--c-dark-soft); font-size: var(--fs-small); }
.start-go { width: 1.5rem; height: 1.5rem; color: var(--c-call-dark); }
.on-dark a.start-row--gas:not(.btn) { background: var(--c-alert-bg); color: var(--c-alert-ink); border-top-color: var(--c-alert-bg); }
.on-dark a.start-row--gas:not(.btn):hover { background: var(--c-alert-bg); color: var(--c-alert-ink); }
.start-row--gas .start-ic { background: var(--c-alert); color: var(--c-call-ink); }
.start-row--gas .start-txt span span { color: var(--c-alert-ink); font-weight: 600; }
.start-row--gas .start-go { color: var(--c-alert); }
.triage { display: grid; gap: var(--space-3); }
@media (min-width: 48em) { .triage { grid-template-columns: 1fr 1fr; } }
.triage-col { background: var(--c-card); border: 1px solid var(--c-line-strong); padding: 0 var(--space-3) var(--space-3); }
.triage-head { display: flex; align-items: center; gap: .6rem; margin: 0 calc(-1 * var(--space-3)) var(--space-1); padding: 1rem var(--space-3); font-family: var(--font-head); font-weight: 800; font-size: 1.5rem; background: var(--c-tint); }
.triage-col--now .triage-head { background: var(--c-dark); color: var(--c-dark-ink); }
.triage-note { margin: var(--space-2) 0 0; color: var(--c-ink-soft); font-size: var(--fs-small); }
.mark-list { list-style: none; margin: 0; padding: 0; }
.mark-list li { position: relative; padding: .65rem 0 .65rem 1.6rem; border-top: 1px solid var(--c-line); }
.mark-list li:first-child { border-top: 0; }
.mark-list li::before { content: ""; position: absolute; left: 0; top: 1.2rem; width: .65rem; height: .65rem; background: var(--c-link); }
.mark-list--soft li::before { background: var(--c-line-strong); }
.steps { list-style: none; margin: 0; padding: 0; counter-reset: step; }
.steps > li { counter-increment: step; position: relative; padding: 0 0 var(--space-3) 3.5rem; }
.steps > li::before { content: counter(step); position: absolute; left: 0; top: 0; width: 2.5rem; height: 2.5rem; display: grid; place-items: center; background: var(--c-ink); color: var(--c-bg); font-family: var(--font-head); font-weight: 800; font-size: 1.125rem; }
.steps > li::after { content: ""; position: absolute; left: 1.2rem; top: 2.7rem; bottom: .3rem; width: 2px; background: var(--c-line-strong); }
.steps > li:last-child { padding-bottom: 0; }
.steps > li:last-child::after { display: none; }
.steps h3, .steps h4, .steps p { margin-block: 0 .25rem; }
.steps h3, .steps h4 { font-size: 1.1875rem; }
.sit { background: var(--c-card); border: 1px solid var(--c-line-strong); margin-bottom: var(--space-4); }
.sit-head { display: flex; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); background: var(--c-tint); border-bottom: 1px solid var(--c-line-strong); }
.sit-head h3 { margin: 0; font-size: 1.75rem; }
.sit-head p { margin: .15rem 0 0; color: var(--c-ink-soft); }
.sit-ic { flex: none; width: 3.5rem; height: 3.5rem; display: grid; place-items: center; background: var(--c-ink); color: var(--c-bg); }
.sit-ic .icon { width: 2rem; height: 2rem; }
.sit-grid { display: grid; gap: var(--space-3); padding: var(--space-3); align-items: start; }
@media (min-width: 56em) { .sit-grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: var(--space-4); } .sit--flip .sit-grid { grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); } }
.sit-figure { margin: 0; padding: var(--space-2); }
.sit-figure figcaption { margin-top: .6rem; font-size: var(--fs-small); color: var(--c-ink-soft); }
.sit-figure .dg--tall { max-height: 22rem; margin-inline: auto; width: auto; }
.sit-figure .dg-label { font-size: 12px; stroke-width: 4px; }
.sit--gas { border-color: var(--c-alert); border-width: 2px; }
.sit--gas .sit-head { background: var(--c-alert-bg); color: var(--c-alert-ink); border-bottom-color: var(--c-alert); }
.sit--gas .sit-head p { color: var(--c-alert-ink); }
.sit--gas .sit-ic { background: var(--c-alert); color: var(--c-call-ink); }
.strip-steps { list-style: none; margin: 0; padding: var(--space-3); display: grid; gap: var(--space-3); counter-reset: s; }
@media (min-width: 48em) { .strip-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } .strip-steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.strip-steps > li { counter-increment: s; border-top: 3px solid var(--c-ink); padding-top: var(--space-2); }
.strip-steps > li::before { content: counter(s); display: block; font-family: var(--font-head); font-weight: 800; font-size: 3.5rem; line-height: 1; color: var(--c-link); margin-bottom: .4rem; }
.sit--gas .strip-steps > li { border-top-color: var(--c-alert); }
.sit--gas .strip-steps > li::before { color: var(--c-alert); }
.strip-steps h4 { font-size: 1.1875rem; margin: 0 0 .3rem; }
.strip-steps p { margin: 0; }
.sit--minor { background: var(--c-bg); }
.sit--minor .sit-head { background: var(--c-surface); }
.sit--minor .strip-steps > li::before { font-size: 2rem; }
.branch { display: grid; gap: var(--space-1); }
.branch-root { margin: 0; justify-self: start; padding: .65rem 1rem; background: var(--c-ink); color: var(--c-bg); font-family: var(--font-head); font-weight: 700; }
.branch-arms { display: grid; gap: var(--space-2); margin-left: 1.25rem; padding: var(--space-2) 0 0 var(--space-3); border-left: 3px solid var(--c-link); }
.branch-arm { position: relative; border: 1px solid var(--c-line-strong); background: var(--c-bg); padding: var(--space-2); }
.branch-arm::before { content: ""; position: absolute; left: calc(-1 * var(--space-3) - 3px); top: 1.3rem; width: var(--space-3); border-top: 3px solid var(--c-link); }
.branch-arm--you { background: var(--c-tint); }
.branch-q { margin: 0 0 .3rem; font-family: var(--font-head); font-weight: 700; }
.branch-a { margin: 0; font-size: var(--fs-small); }
.contacts { display: grid; gap: var(--space-3); }
@media (min-width: 56em) { .contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.contact { background: var(--c-card); border: 1px solid var(--c-line-strong); border-top: 5px solid var(--c-ink); padding: var(--space-3); display: flex; flex-direction: column; }
.contact p { margin: 0 0 .5rem; }
.contact-label { font-family: var(--font-head); font-weight: 700; color: var(--c-ink-soft); font-size: var(--fs-small); }
.contact-big { font-family: var(--font-head); font-weight: 800; font-size: clamp(2.5rem, 1.6rem + 2.4vw, 3.75rem); line-height: 1.02; letter-spacing: var(--track-head); margin: .25rem 0 .75rem !important; }
.contact-big--num { font-size: clamp(1.875rem, 1.2rem + 1.5vw, 2.375rem); white-space: nowrap; }
.contact--911 { background: var(--c-alert-bg); color: var(--c-alert-ink); border-color: var(--c-alert); border-top-color: var(--c-alert); }
.contact--911 .contact-label { color: var(--c-alert-ink); }
.contact--plumber { background: var(--c-dark); color: var(--c-dark-ink); border-color: var(--c-dark); border-top-color: var(--c-call-dark); }
.contact--plumber .contact-label { color: var(--c-dark-soft); }
.contact--plumber .btn { margin-top: auto; }
.contact-foot { margin-top: var(--space-3); }
.pair { display: grid; gap: var(--space-3); }
@media (min-width: 48em) { .pair { grid-template-columns: 1fr 1fr; gap: var(--space-4); } }
.ready, .avoid { padding: var(--space-3); }
.ready { background: var(--c-card); border: 1px solid var(--c-line-strong); }
.avoid { background: var(--c-dark); color: var(--c-dark-ink); }
.ready h3, .avoid h3 { font-size: 1.625rem; }
.check-list, .x-list { list-style: none; margin: 0; padding: 0; }
.check-list li, .x-list li { position: relative; padding: .65rem 0 .65rem 2.1rem; border-top: 1px solid var(--c-line); }
.x-list li { border-top-color: var(--c-dark-2); }
.check-list li::before { content: ""; position: absolute; left: 0; top: .95rem; width: 1.1rem; height: 1.1rem; border: 2px solid var(--c-link); }
.x-list li::before { content: "\00d7"; position: absolute; left: 0; top: .2rem; font-family: var(--font-head); font-weight: 800; font-size: 1.7rem; line-height: 1.6; color: var(--c-call-dark); }
.asks { display: grid; gap: var(--space-4); align-items: start; }
@media (min-width: 56em) { .asks { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: var(--space-5); } }
.asks .section-head { margin-bottom: 0; }
.ask-grid { display: grid; gap: var(--space-1); }
.ask-lead { margin: 0 0 var(--space-1); font-family: var(--font-head); font-weight: 800; font-size: 1.375rem; }
.ask { margin: 0; display: grid; grid-template-columns: 2.5rem 1fr; gap: var(--space-2); align-items: center; padding: .8rem var(--space-2); background: var(--c-card); border: 1px solid var(--c-line-strong); font-weight: 600; }
.ask-q { width: 2.5rem; height: 2.5rem; display: grid; place-items: center; background: var(--c-link); color: var(--c-call-ink); font-family: var(--font-head); font-weight: 800; font-size: 1.25rem; }
.handoff { list-style: none; margin: 0; padding: 0; display: grid; gap: 0 var(--space-5); border-top: 3px solid var(--c-ink); }
@media (min-width: 48em) { .handoff { grid-template-columns: 1fr 1fr; } }
.handoff li { padding: .9rem 0; border-bottom: 1px solid var(--c-line-strong); }
.handoff strong { display: block; font-family: var(--font-head); font-weight: 700; font-size: 1.1875rem; }
.handoff span { color: var(--c-ink-soft); }
.faq summary { list-style: none; display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; font-size: 1.125rem; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font-family: var(--font-head); font-weight: 800; font-size: 1.5rem; color: var(--c-link); }
.faq details[open] summary::after { content: "\2212"; }
.faq details:first-of-type { border-top: 3px solid var(--c-ink); }
.faq-answer { max-width: var(--measure); }
.faq-answer p { margin: 0 0 .6rem; }
.faq-answer p:last-child { margin-bottom: 0; }
.btn.header-call { display: none; }
@media (min-width: 48em) { .btn.header-call { display: inline-flex; } .header-call-icon { display: none; } }   
.menu-toggle { padding-inline: .9rem; font-weight: 600; }
.brand { min-width: 0; flex: 0 1 auto; min-height: 2.75rem; }
.logo { flex: none; }
@media (max-width: 47.99em) {
  .section { padding-block: 3.5rem; }
  .section-head { margin-bottom: var(--space-3); }
  .navigator-section, .own, .process, .reading { padding-block: 2.75rem; }
  .steps > li { padding: 0 0 var(--space-2) 3rem; }
  .steps > li::before { width: 2.1rem; height: 2.1rem; }
  .steps > li::after { left: 1rem; top: 2.25rem; }
  .steps h4, .steps h3 { font-size: 1.125rem; }
  .steps p, .strip-steps p { font-size: 1rem; line-height: 1.5; }
  .sit { margin-bottom: var(--space-3); }
  .sit-grid { padding: var(--space-2); gap: var(--space-2); }
  .sit-head { padding: var(--space-2); gap: .75rem; }
  .sit-head h3 { font-size: 1.375rem; }
  .sit-head p { font-size: var(--fs-small); }
  .sit-ic { width: 2.9rem; height: 2.9rem; }
  .sit-ic .icon { width: 1.7rem; height: 1.7rem; }
  .strip-steps { padding: var(--space-2); gap: var(--space-2); }
  .strip-steps > li { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); column-gap: .75rem; padding-top: var(--space-1); }
  .strip-steps > li::before { grid-row: 1 / span 2; font-size: 2.25rem; margin: 0; }
  .sit--minor .strip-steps > li::before { font-size: 1.875rem; }
  .strip-steps h4 { font-size: 1.125rem; }
  .triage-col { padding-inline: var(--space-2); padding-bottom: var(--space-2); }
  .triage-head { margin-inline: calc(-1 * var(--space-2)); padding-inline: var(--space-2); font-size: 1.25rem; }
  .mark-list li { padding-block: .5rem; }
  .mark-list li::before { top: 1rem; }
  .contact { padding: var(--space-2); }
  .contact-big { margin-block: .1rem .5rem !important; }
  .ready, .avoid { padding: var(--space-2); }
  .check-list li, .x-list li { padding-block: .55rem; }
  .emergency-hero { padding-bottom: var(--space-4); }
  .start-head { font-size: 1.375rem; padding-inline: var(--space-2); }
  .on-dark a.start-row:not(.btn) { padding-inline: var(--space-2); min-height: 4.25rem; grid-template-columns: 3rem minmax(0, 1fr) 1.4rem; gap: .8rem; }
  .start-ic { width: 3rem; height: 3rem; }
  .ask { padding: .6rem var(--space-2); }
  .handoff li { padding: .65rem 0; }
  .big-list li { font-size: 1.25rem; padding-block: .7rem; }
  .split-cell { padding-block: 2.5rem; }
  .nav-feature { padding: var(--space-3) var(--space-2); }
  .nav-row .nav-num { font-size: 3rem; }
  .lane-who { font-size: 2.1rem; }
  .run-steps > li { padding-left: var(--space-2); }
  .rs-num { font-size: 3.25rem; }
  .cta-band { padding-block: 3rem var(--space-3); }
  .areaband-card { padding: var(--space-3) var(--space-2); }
}
.hero-field { background-image: linear-gradient(var(--grid-line-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line-major) 1px, transparent 1px), linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px); background-size: 6rem 6rem, 6rem 6rem, 1.5rem 1.5rem, 1.5rem 1.5rem; background-position: -1px -1px; }
@media (min-width: 80em) {
  .hero-field::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 14px; background: var(--c-card); border-right: 1px solid var(--c-line-strong); background-image: repeating-linear-gradient(to bottom, var(--c-line-strong) 0 1px, transparent 1px 1.5rem); background-size: 8px 100%; background-repeat: no-repeat; background-position: right top; }
}
.read-grid li > strong, .read-grid li > span, .read-grid li > .read-kicker { display: block; }
.read-grid li > span:last-child { color: var(--c-ink-soft); font-size: 1.125rem; }
.read-grid li > strong { font-family: var(--font-head); font-weight: 800; font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem); line-height: 1.12; letter-spacing: var(--track-head); margin-bottom: .5rem; }
.nav-lede { font-size: 1.25rem; }
.plate { --plate-ar: 3 / 2; --plate-ar-m: 4 / 3; margin: 0; min-width: 0; }
.plate-frame { position: relative; background: var(--c-card); border: 1px solid var(--c-line-strong); padding: .5rem; }
.plate-frame::before { content: ""; position: absolute; left: -7px; top: -7px; width: 2.75rem; height: .75rem; border-top: 3px solid var(--c-link); border-left: 3px solid var(--c-link); pointer-events: none; z-index: 1; }
.plate-img { display: block; width: 100%; height: auto; aspect-ratio: var(--plate-ar-m); object-fit: cover; border-radius: var(--radius); }
@media (min-width: 48em) { .plate-img { aspect-ratio: var(--plate-ar); } }
.plate-cap { display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .75rem; margin: .65rem 0 0; font-family: var(--font-head); font-weight: 700; font-size: .875rem; line-height: 1.35; letter-spacing: .08em; text-transform: uppercase; color: var(--c-ink); }
.plate-cap span { color: var(--c-link); }
.plate-cap small { font-family: var(--font-body); font-weight: 400; font-size: var(--fs-small); letter-spacing: 0; text-transform: none; color: var(--c-ink-soft); }
.plate--tall { --plate-ar: 4 / 5; --plate-ar-m: 4 / 5; max-width: 26rem; }
.plate--tall .plate-img { aspect-ratio: 4 / 5; }
.plate--drawing .plate-frame { background-color: var(--c-tint); background-image: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px); background-size: 1.5rem 1.5rem; padding: var(--space-2); }
.plate--drawing .dg { margin-inline: auto; }
.on-dark .plate-frame { background: var(--c-dark-2); border-color: var(--c-dark-soft); }
.on-dark .plate-frame::before { border-color: var(--c-link-dark); }
.on-dark .plate-cap { color: var(--c-dark-ink); }
.on-dark .plate-cap span { color: var(--c-link-dark); }
.on-dark .plate-cap small { color: var(--c-dark-soft); }
.plate-split { display: grid; gap: var(--space-4); align-items: center; }
@media (min-width: 56em) {
  .plate-split { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: var(--space-5); }
  .plate-split--flip { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
  .plate-split--flip > .plate { order: -1; }
}
.plate--band { --plate-ar: 3 / 1; --plate-ar-m: 4 / 3; }
.plate--band .plate-frame { border-width: 2px 0; padding: 0; background: none; }
.plate--band .plate-frame::before { display: none; }
.plate--band .plate-cap { width: min(100% - 2 * var(--gutter), 72.5rem); margin-inline: auto; }
.lede-hero { padding-block: var(--space-1) var(--space-5); border-bottom: 1px solid var(--c-line); }
.lede-hero .eyebrow { margin: 0 0 .75rem; }
.lede-hero h1 { max-width: 15em; }
.lede-hero .lead { max-width: 38rem; }
.lede-hero .hero-actions { margin-top: var(--space-3); }
.lede-hero .fineprint { margin-top: var(--space-1); }
@media (max-width: 47.99em) { .lede-hero { padding-bottom: var(--space-4); } }
.hero-link { display: inline-flex; align-items: center; min-height: 2.75rem; font-weight: 600; }
.loc-list { list-style: none; margin: 0; padding: 0; border-top: 3px solid var(--c-ink); }
.loc-list li { display: grid; grid-template-columns: 2.25rem minmax(0, 1fr); gap: .15rem 1rem; padding: .9rem 0; border-bottom: 1px solid var(--c-line-strong); }
.loc-list .key-n { width: 2.25rem; height: 2.25rem; font-size: 1.125rem; grid-row: 1 / span 2; }
.loc-list h3 { font-size: 1.1875rem; margin: 0; align-self: center; }
.loc-list p { margin: 0; grid-column: 2; font-size: var(--fs-small); color: var(--c-ink-soft); }
.plate--drawing .dg { max-width: 34rem; }
.plate--drawing .dg-label { font-size: 14px; }
.plate--drawing .dg-label--m { font-size: 12px; }
.fig-split { display: grid; gap: var(--space-4); align-items: start; }
@media (min-width: 56em) { .fig-split { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: var(--space-5); } .fig-split--flip { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); } .fig-split--flip > .plate { order: -1; } }
.fig-split--flip > .plate { order: 1; }
@media (min-width: 56em) { .fig-split--flip > .plate { order: -1; } }
.fig-split > .section-head { margin-bottom: var(--space-3); }
.fork-cell { padding: var(--space-2) var(--space-3); border-top: 1px solid var(--c-dark); }
.fork-q { margin: 0 0 .3rem; font-family: var(--font-head); font-weight: 700; font-size: 1.1875rem; line-height: 1.25; }
.fork-a { margin: 0; color: var(--c-dark-soft); font-size: var(--fs-small); }
.fork-num { display: block; margin: .15rem 0 .35rem; font-family: var(--font-head); font-weight: 800; font-size: clamp(1.75rem, 1.2rem + 1.6vw, 2.25rem); line-height: 1.05; color: var(--c-call-dark); white-space: nowrap; }
.fork-cell--you { background: var(--c-dark); }
@media (max-width: 47.99em) { .fork-cell { padding-inline: var(--space-2); } }
.stages { display: grid; gap: var(--space-3); }
.stage { border-top: 3px solid var(--c-ink); padding: var(--space-2) 0 0; }
.stage-tag { display: block; font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-link); margin-bottom: .4rem; }
.stage h3 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); margin: 0 0 .5rem; }
.stage p { margin: 0 0 .5rem; }
.stage p:last-child { margin-bottom: 0; }
.stage a.stage-go { display: inline-flex; align-items: center; min-height: 2.75rem; font-weight: 600; }
.stage--now { background: var(--c-dark); color: var(--c-dark-ink); border-top-color: var(--c-call-dark); padding: var(--space-3); }
.stage--now .stage-tag { color: var(--c-call-dark); }
@media (min-width: 56em) {
  .stages { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  .stage { padding: var(--space-3) var(--space-3) var(--space-3) 0; }
  .stage + .stage { border-left: 1px solid var(--c-line-strong); padding-left: var(--space-3); }
  .stage--now { padding: var(--space-3); border-left: 0 !important; }
}
.prep { display: grid; gap: var(--space-3); }
@media (min-width: 56em) { .prep { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.prep-col { background: var(--c-card); border: 1px solid var(--c-line-strong); border-top: 5px solid var(--c-link); padding: var(--space-3); }
.prep-col h3 { font-size: 1.5rem; margin: 0 0 .25rem; }
.prep-col > p { margin: 0 0 var(--space-1); color: var(--c-ink-soft); font-size: var(--fs-small); }
.prep-col .check-list li:first-child { border-top: 0; }
@media (max-width: 47.99em) { .prep-col { padding: var(--space-2); } }
.causes { display: grid; gap: var(--space-3); }
@media (min-width: 48em) { .causes { grid-template-columns: 1fr 1fr; gap: var(--space-4) var(--space-5); } }
.cause { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .25rem var(--space-2); border-top: 3px solid var(--c-ink); padding-top: var(--space-2); }
.cause .sit-ic { grid-row: 1 / span 2; }
.cause h3 { font-size: 1.375rem; margin: 0; align-self: center; }
.cause p { margin: 0; grid-column: 2; }
.strip-steps h3 { font-size: 1.1875rem; margin: 0 0 .3rem; }
@media (max-width: 47.99em) { .strip-steps h3 { font-size: 1.125rem; } }
.guide-layout { display: grid; gap: var(--space-3); padding-block: var(--space-4) var(--space-5); }
@media (min-width: 64em) { .guide-layout { grid-template-columns: 14.5rem minmax(0, 1fr); gap: var(--space-5); align-items: start; } }
.toc { border-top: 3px solid var(--c-ink); padding-top: var(--space-1); }
@media (min-width: 64em) { .toc { position: sticky; top: calc(var(--header-h) + 1.25rem); } }
.toc-head { margin: 0 0 .5rem; font-family: var(--font-head); font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-ink-soft); }
.toc ol { list-style: none; margin: 0; padding: 0; counter-reset: t; display: grid; }
.toc li { counter-increment: t; border-top: 1px solid var(--c-line); }
.toc li:first-child { border-top: 0; }
.toc a { display: grid; grid-template-columns: 1.75rem minmax(0, 1fr); align-items: baseline; min-height: 2.75rem; padding: .5rem 0; text-decoration: none; font-weight: 600; font-size: var(--fs-small); line-height: 1.3; color: var(--c-ink); }
.toc a::before { content: counter(t); font-family: var(--font-head); font-weight: 800; color: var(--c-link); }
.toc a:hover { color: var(--c-link); text-decoration: underline; }
@media (max-width: 63.99em) and (min-width: 36em) { .toc ol { grid-template-columns: 1fr 1fr; column-gap: var(--space-4); } .toc li:nth-child(2) { border-top: 0; } }
.guide-body > section { margin-bottom: var(--space-5); }
.guide-body > section:last-child { margin-bottom: 0; }
.guide-body h2 { font-size: clamp(1.625rem, 1.2rem + 1.4vw, 2.25rem); }
.guide-body h2 + p { font-size: 1.1875rem; }
.guide-body p, .guide-body li { max-width: var(--measure); }
.guide-body .loc-list li, .guide-body .steps li, .guide-body .handoff li, .guide-body .verdict { max-width: none; }
.quick { margin-top: var(--space-3); padding: var(--space-2) var(--space-3); background: var(--c-card); border: 1px solid var(--c-line-strong); border-left: 6px solid var(--c-link); max-width: 40rem; }
.quick-head { margin: 0 0 .35rem; font-family: var(--font-head); font-weight: 800; font-size: 1.1875rem; }
.quick ul { margin: 0; padding-left: 1.2rem; }
.quick li { margin: .2rem 0; }
.quick p:last-child { margin-bottom: 0; }
.aside-call { display: grid; gap: var(--space-2) var(--space-4); align-items: center; padding: var(--space-3); background: var(--c-tint); border: 1px solid var(--c-line-strong); border-left: 6px solid var(--c-ink); }
@media (min-width: 48em) { .aside-call { grid-template-columns: minmax(0, 1fr) auto; } }
.aside-call h2, .aside-call h3 { font-size: 1.375rem; margin: 0 0 .3rem; }
.aside-call p { margin: 0; max-width: 34rem; }
.callout { padding: var(--space-2) var(--space-3); background: var(--c-card); border: 1px solid var(--c-line-strong); border-left: 6px solid var(--c-ink); margin: var(--space-3) 0 0; max-width: 46rem; }
.callout > :last-child { margin-bottom: 0; }
.callout strong:first-child { font-family: var(--font-head); font-weight: 800; }
.qsteps { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); counter-reset: q; }
.qstep { counter-increment: q; position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .25rem var(--space-3); padding: var(--space-2) 0 0 var(--space-3); border-left: 3px solid var(--c-link); }
.qstep::before { content: ""; position: absolute; left: -3px; top: 0; width: 2.25rem; border-top: 3px solid var(--c-link); }
.qstep::after { content: counter(q); grid-row: 1 / span 2; grid-column: 1; font-family: var(--font-head); font-weight: 800; font-size: clamp(2.75rem, 2rem + 3vw, 4.5rem); line-height: .85; color: var(--c-link); letter-spacing: var(--track-head); }
.qstep h3 { grid-column: 2; margin: 0; font-size: 1.375rem; }
.q-ans { grid-column: 2; display: grid; gap: var(--space-1); }
@media (min-width: 48em) { .q-ans { grid-template-columns: 1fr 1fr; gap: var(--space-2); } }
.q-ans p { margin: 0; padding: .7rem var(--space-2); background: var(--c-card); border: 1px solid var(--c-line-strong); font-size: var(--fs-small); max-width: none; }
.q-ans b { display: block; font-family: var(--font-head); font-weight: 800; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--c-link); margin-bottom: .15rem; }
.q-ans .q-main { background: var(--c-tint); }
@media (max-width: 47.99em) { .qstep { gap: .25rem var(--space-2); padding-left: var(--space-2); } .qstep::after { font-size: 2.5rem; } .qstep h3 { font-size: 1.1875rem; } }
.verdicts { list-style: none; margin: 0; padding: 0; border-top: 3px solid var(--c-ink); }
.verdict { display: grid; gap: .25rem var(--space-3); padding: var(--space-2) 0; border-bottom: 1px solid var(--c-line-strong); }
@media (min-width: 48em) { .verdict { grid-template-columns: 13rem minmax(0, 1fr); } }
.verdict-tag { font-family: var(--font-head); font-weight: 800; font-size: 1.1875rem; line-height: 1.2; }
.verdict-tag small { display: block; margin-top: .2rem; font-family: var(--font-body); font-weight: 400; font-size: var(--fs-small); color: var(--c-ink-soft); }
.verdict p { margin: 0 0 .35rem; }
.verdict p:last-child { margin-bottom: 0; }
.verdict a { font-weight: 600; }
.verdict--urgent .verdict-tag { color: var(--c-alert); }
.mini-note { margin: var(--space-2) 0 0; color: var(--c-ink-soft); font-size: var(--fs-small); }
.fig-key { list-style: none; margin: var(--space-2) 0 0; padding: var(--space-2) 0 0; border-top: 1px solid var(--c-line-strong); display: grid; gap: .55rem 1.25rem; font-size: var(--fs-small); font-weight: 600; }
@media (min-width: 30em) { .fig-key { grid-template-columns: 1fr 1fr; } }
.fig-key li { display: flex; gap: .6rem; align-items: center; }
.plate .fig-key { margin-top: var(--space-1); }
.fig-key--rows { grid-template-columns: 1fr !important; font-weight: 400; gap: .65rem; }
.fig-key--rows li { align-items: flex-start; }
.fig-key--rows strong { font-weight: 600; }
.fig-key--rows .key-n { flex: none; }
.emergency-hero + .split-strip { margin-top: 3rem; }
.section-head .own-statement { margin: .35rem 0 var(--space-2); font-size: clamp(1.625rem, 1.2rem + 1.6vw, 2.5rem); }
.plate--hero-d { display: none; }
@media (min-width: 56em) { .plate--hero-d { display: block; } .lede-hero .plate-split { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); } }
:root { --grid-line-dark: rgba(147, 197, 253, .09); --grid-line-dark-major: rgba(147, 197, 253, .17); }
:is(main:has(.b1), :where(body.refined) main) h2 { font-weight: 800; letter-spacing: -.02em; }
:is(main:has(.b1), :where(body.refined) main) .section-head > p:not(.eyebrow):not(.own-statement) { color: var(--c-ink-soft); font-size: 1.1875rem; line-height: 1.55; }
@media (min-width: 48em) { :is(main:has(.b1), :where(body.refined) main) .section-head > p:not(.eyebrow):not(.own-statement) { font-size: 1.3125rem; } }
:is(main:has(.b1), :where(body.refined) main) .section-head .own-statement + p { font-size: 1.1875rem; }
:is(main:has(.b1), :where(body.refined) main) .section-head > .eyebrow::before { content: ""; display: inline-block; width: 1.75rem; height: 3px; background: var(--c-link); vertical-align: .28em; margin-right: .7rem; }
:is(main:has(.b1), :where(body.refined) main) .own .eyebrow::before { content: ""; display: inline-block; width: 1.75rem; height: 3px; background: var(--c-link); vertical-align: .28em; margin-right: .7rem; }
.tone-white { background: var(--c-card); }
.tone-tint { background: var(--c-tint); }
.hl { color: var(--c-link); }
.on-dark .hl { color: var(--c-call-dark); }
.side-sec { display: grid; gap: var(--space-4); }
@media (min-width: 64em) {
  .side-sec { grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 5rem; align-items: start; }
  .side-sec > .section-head { margin-bottom: 0; position: sticky; top: calc(var(--header-h) + 2rem); }
}
.emergency-hero--b1 { position: relative; padding-block: var(--space-3) 4.5rem; }
.emergency-hero--b1 > .container { position: relative; z-index: 1; }
.emergency-hero--b1 h1 { font-size: var(--fs-h1-hero); max-width: 13em; }
.emergency-hero--b1 .emergency-cta .btn { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.emergency-hero--b1 .emergency-rest .lead { max-width: 34rem; }
@media (min-width: 56em) {
  .emergency-hero--b1::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 44%; border-left: 1px solid var(--c-dark-2); background-image: linear-gradient(var(--grid-line-dark-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line-dark-major) 1px, transparent 1px), linear-gradient(var(--grid-line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line-dark) 1px, transparent 1px); background-size: 6rem 6rem, 6rem 6rem, 1.5rem 1.5rem, 1.5rem 1.5rem; background-position: -1px -1px; }
  .emergency-hero--b1 .emergency-grid { padding-block: 2.5rem 0; }
  .emergency-hero--b1 .emergency-cta .btn { width: auto; }
}
.emergency-hero--b1 .start-head { font-size: 1.625rem; padding-block: var(--space-3) var(--space-2); }
.emergency-hero--b1 a.start-row:not(.btn) { min-height: 5.5rem; }
.emergency-hero--b1 .fork-cell { padding-block: var(--space-3); }
.lede-hero--field .lede-grid { display: grid; gap: var(--space-4); }
.lede-hero--field .lede-copy .lead { max-width: 36rem; }
.lede-hero--field h1 { font-size: var(--fs-h1-hero); }
@media (min-width: 56em) {
  .lede-hero--field .lede-grid { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: var(--space-5); align-items: center; }
}
@media (min-width: 72em) {
  .lede-hero--field { position: relative; overflow: hidden; border-bottom: 0; padding-bottom: 0; }
  .lede-hero--field .lede-grid { grid-template-columns: minmax(0, 1fr) 34rem; padding-bottom: var(--space-5); }
  .lede-hero--field::before { content: ""; position: absolute; top: 0; bottom: 0; right: 0; width: calc(max(var(--gutter), (100vw - 72.5rem) / 2) + 34rem + 2rem); background-color: var(--c-tint); background-image: linear-gradient(var(--grid-line-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line-major) 1px, transparent 1px), linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px); background-size: 6rem 6rem, 6rem 6rem, 1.5rem 1.5rem, 1.5rem 1.5rem; background-position: -1px -1px; border-left: 1px solid var(--c-line); }
  .lede-hero--field > .container { position: relative; z-index: 1; }
  .lede-hero--field .plate--drawing .plate-frame { background: none; border: 0; padding: 0; }
  .lede-hero--field .plate--drawing .plate-frame::before { display: none; }
  .lede-hero--field .plate--drawing .dg { max-width: none; }
  .lede-hero--field .plate-cap { margin-top: var(--space-2); }
}
.lede-hero--guide { background: var(--c-card); }
.lede-hero--guide .guide-hero-grid { display: grid; gap: var(--space-4); }
.lede-hero--guide h1 { font-size: var(--fs-h1-hero); max-width: 12em; }
.lede-hero--guide .reviewed { margin-top: var(--space-2); }
.lede-hero--guide .quick { margin: 0; max-width: none; background: var(--c-dark); color: var(--c-dark-ink); border: 0; border-top: 5px solid var(--c-call-dark); padding: var(--space-3); }
.lede-hero--guide .quick-head { font-size: 1.5rem; margin-bottom: .6rem; }
.lede-hero--guide .quick li { margin: .45rem 0; }
.lede-hero--guide .quick .mini-note { color: var(--c-dark-soft); }
@media (min-width: 56em) { .lede-hero--guide .guide-hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 3.5rem; align-items: center; } .lede-hero--guide .quick { padding: var(--space-4) var(--space-3); } }
.callstrip { background: var(--c-dark); color: var(--c-dark-ink); border-top: 3px solid var(--c-call-dark); padding-block: 2rem; }
.callstrip-in { display: grid; gap: var(--space-3) var(--space-5); align-items: center; }
@media (min-width: 56em) { .callstrip-in { grid-template-columns: minmax(0, 1fr) auto; } .callstrip { padding-block: 3.25rem; } }
.callstrip-h { margin: 0; max-width: 30em; font-family: var(--font-head); font-weight: 800; font-size: clamp(1.5rem, 1.1rem + 1.5vw, 2.375rem); line-height: 1.12; letter-spacing: var(--track-head); text-wrap: balance; }
.callstrip .btn { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.callstrip :focus-visible { outline-color: var(--c-focus-dark); }
@media (max-width: 29.99em) { .callstrip .btn { width: 100%; } }
.moves { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); counter-reset: m; }
.moves > li { counter-increment: m; border-top: 3px solid var(--c-ink); padding-top: var(--space-2); }
.moves > li::before { content: counter(m); display: block; font-family: var(--font-head); font-weight: 800; font-size: 5rem; line-height: .9; color: var(--c-link); letter-spacing: var(--track-head); margin-bottom: .75rem; }
.moves h3 { font-size: 1.375rem; margin: 0 0 .4rem; }
.moves p { margin: 0; color: var(--c-ink-soft); }
@media (min-width: 48em) { .moves { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); } }
@media (min-width: 72em) { .moves { grid-template-columns: repeat(4, minmax(0, 1fr)); } .moves > li::before { font-size: 6.5rem; } }
@media (max-width: 47.99em) { .moves > li { display: grid; grid-template-columns: 3.25rem minmax(0, 1fr); column-gap: .85rem; padding-top: var(--space-1); } .moves > li::before { grid-row: 1 / span 2; font-size: 3.5rem; margin: 0; } .moves p { font-size: 1rem; line-height: 1.5; } }
.split-strip--check { margin-top: var(--space-4); }
.split-cell--calm { background: var(--c-tint); }
.split-cell--ask { background: var(--c-dark); color: var(--c-dark-ink); }
@media (min-width: 48em) {
  .split-cell--calm { padding-left: max(var(--gutter), calc((100vw - 72.5rem) / 2)); padding-right: var(--space-5); }
  .split-cell--ask { padding-right: max(var(--gutter), calc((100vw - 72.5rem) / 2)); padding-left: var(--space-5); }
}
.split-cell h3.split-title { font-size: clamp(1.625rem, 1.3rem + 1.2vw, 2.25rem); }
.split-cell .mark-list li { font-size: 1.1875rem; padding-block: .8rem; }
.split-cell .mark-list li::before { top: 1.3rem; }
.split-cell--ask .mark-list li { border-top-color: var(--c-dark-2); }
.split-cell--ask .mark-list li::before { background: var(--c-call-dark); }
.split-cell--ask .triage-note { color: var(--c-dark-soft); }
.split-cell--calm .mark-list--soft li::before { background: var(--c-ink); }
.split-cell--calm .mark-list li { border-top-color: var(--c-line-strong); }
.prep { gap: 0; background: var(--c-card); border: 1px solid var(--c-line-strong); border-top: 5px solid var(--c-link); }
.prep-col { background: none; border: 0; padding: var(--space-3) var(--space-2); }
.prep-col h3 { font-size: clamp(1.75rem, 1.4rem + 1vw, 2.25rem); margin-bottom: .35rem; }
.prep-col > p { font-size: 1.0625rem; margin-bottom: var(--space-2); }
.prep-col + .prep-col { border-top: 1px solid var(--c-line); }
.prep-col .check-list li { padding-block: .7rem; }
.prep-col .check-list li::before { top: 1rem; }
.prep-col .mini-note { margin-top: var(--space-2); }
@media (min-width: 56em) { .prep-col + .prep-col { border-top: 0; border-left: 1px solid var(--c-line); } .prep--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .prep-col { padding: var(--space-4); } }
:is(main:has(.b1), :where(body.refined) main) .ready { border: 0; border-top: 5px solid var(--c-ink); padding: var(--space-3); }
:is(main:has(.b1), :where(body.refined) main) .ready h3, :is(main:has(.b1), :where(body.refined) main) .avoid h3 { font-size: 1.75rem; }
:is(main:has(.b1), :where(body.refined) main) .avoid { padding: var(--space-3); }
@media (min-width: 56em) { :is(main:has(.b1), :where(body.refined) main) .ready, :is(main:has(.b1), :where(body.refined) main) .avoid { padding: var(--space-4); } }
.causes .cause { border-top: 0; padding-top: 0; }
.cause .sit-ic { width: 4rem; height: 4rem; background: var(--c-link); color: var(--c-call-ink); }
.cause .sit-ic .icon { width: 2.25rem; height: 2.25rem; }
.cause h3 { font-size: 1.5rem; }
.causes--side { gap: 0; }
.causes--side .cause { padding-block: var(--space-3); border-top: 1px solid var(--c-line-strong); }
.causes--side .cause:first-child { border-top: 3px solid var(--c-ink); }
.causes--side .cause p { max-width: 38rem; }
@media (min-width: 56em) {
  .run-steps--row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
  .run-steps--row > li { margin-left: 0 !important; grid-template-columns: 1fr; padding: var(--space-3) 0 0 0; border-left: 0; border-top: 3px solid var(--c-link); align-content: start; }
  .run-steps--row > li::before { display: none; }
  .run-steps--row .rs-num { margin-bottom: var(--space-1); }
  .run-steps--row > li.rs-call { padding: var(--space-3); border-top-color: var(--c-call-dark); }
  .run-steps--row p { max-width: none; }
}
.run-steps--row > li.rs-call { background: var(--c-dark); color: var(--c-dark-ink); border-left-color: var(--c-call-dark); }
.run-steps--row > li.rs-call::before { border-top-color: var(--c-call-dark); }
.run-steps--row > li.rs-call .rs-num { color: var(--c-call-dark); }
.run-steps--row > li.rs-call a { color: var(--c-link-dark); }
.run-steps--row > li.rs-call p { color: var(--c-dark-soft); }
@media (max-width: 55.99em) { .run-steps--row > li.rs-call { padding: var(--space-3); } }
:is(main:has(.b1), :where(body.refined) main) .faq details { border-bottom: 1px solid var(--c-line-strong); }
:is(main:has(.b1), :where(body.refined) main) .faq summary { padding-block: 1rem; font-size: 1.125rem; font-weight: 600; }
@media (min-width: 48em) { :is(main:has(.b1), :where(body.refined) main) .faq summary { padding-block: 1.25rem; font-size: 1.1875rem; } }
@media (min-width: 64em) {
  section.faq-split > .container { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); column-gap: 5rem; align-items: start; }
  section.faq-split .section-head { grid-column: 1; grid-row: 1 / span 20; position: sticky; top: calc(var(--header-h) + 2rem); margin-bottom: 0; }
  section.faq-split details { grid-column: 2; }
}
:is(main:has(.b1), :where(body.refined) main) .related-row { padding-block: 0 3rem; }
@media (min-width: 48em) { :is(main:has(.b1), :where(body.refined) main) .related-row { padding-block: 0 4.5rem; } }
.related-row .section-head h2 { font-size: var(--fs-h3); margin-bottom: .5rem; }
.related-row .section-head { margin-bottom: var(--space-2); }
.related-row .handoff li { padding-block: .8rem; }
.related-row .handoff strong { font-size: 1.1875rem; }
@media (min-width: 64em) { .related-row .handoff { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
:is(main:has(.b1), :where(body.refined) main) .faq-split { padding-bottom: 3rem; }
@media (min-width: 56em) { :is(main:has(.b1), :where(body.refined) main) .fig-split > .plate { align-self: start; position: sticky; top: calc(var(--header-h) + 2rem); } }
.process.on-dark { background: var(--c-dark); color: var(--c-dark-ink); }
.process.on-dark .eyebrow { color: var(--c-dark-soft); }
.process.on-dark .section-head > p:not(.eyebrow) { color: var(--c-dark-soft); }
.process.on-dark .run-steps > li { border-left-color: var(--c-call-dark); }
.process.on-dark .run-steps > li::before { border-top-color: var(--c-call-dark); }
.process.on-dark .rs-num { color: var(--c-call-dark); }
.process.on-dark .run-steps p { color: var(--c-dark-soft); }
.guide-body > section::before { content: ""; display: block; width: 2.75rem; height: .75rem; border-top: 3px solid var(--c-link); border-left: 3px solid var(--c-link); margin-bottom: 1rem; }
.guide-body > section { margin-bottom: 4.5rem; }
.guide-body > section:has(> .fig-split:first-child)::before { display: none; }
.guide-body h2 { font-size: clamp(1.875rem, 1.3rem + 1.7vw, 2.625rem); font-weight: 800; letter-spacing: -.02em; }
.guide-body h2 + p { font-size: 1.25rem; color: var(--c-ink-soft); }
.aside-call { background: var(--c-dark); color: var(--c-dark-ink); border: 0; border-top: 5px solid var(--c-call-dark); padding: var(--space-4) var(--space-3); margin-top: var(--space-4); }
.aside-call h2, .aside-call h3 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.aside-call .btn { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.guide-layout { padding-block: var(--space-5) 5rem; }
.toc { border-top-width: 5px; }
.toc-head { color: var(--c-ink); }
:is(main:has(.b1), :where(body.refined) main) .section.pb-0 { padding-bottom: 0; }
.qstep { grid-template-columns: 4.25rem minmax(0, 1fr); }
.q-ans p { background: none; border: 0; border-top: 3px solid var(--c-line-strong); padding: .7rem 0 0; }
.q-ans .q-main { background: none; border-top-color: var(--c-link); }
:is(main:has(.b1), :where(body.refined) main) .sit--minor { background: none; border: 0; }
:is(main:has(.b1), :where(body.refined) main) .sit--minor .sit-head { background: none; border-bottom: 3px solid var(--c-ink); padding-inline: 0; }
:is(main:has(.b1), :where(body.refined) main) .sit--minor .sit-ic { background: var(--c-link); color: var(--c-call-ink); }
:is(main:has(.b1), :where(body.refined) main) .sit--minor .strip-steps { padding-inline: 0; }
@media (min-width: 48em) { .causes.causes--side { grid-template-columns: minmax(0, 1fr); } }
main { --card-bg: var(--c-card); }
.tone-white { --card-bg: var(--c-bg); }
.band-alt { --card-bg: var(--c-card); }
.section { padding-block: 3.5rem; }   
@media (min-width: 48em) { .section { padding-block: 4.75rem; } }
.site-header { box-shadow: 0 1px 0 var(--c-card-line), 0 8px 24px -14px rgba(15, 23, 42, .3); }
.btn.header-call { min-height: 2.75rem; padding-inline: 1.25rem; box-shadow: inset 0 -3px 0 var(--c-call-edge), 0 6px 16px -8px rgba(29, 78, 216, .6); }
.nav-list a { transition: color var(--ease); }
@media (min-width: 64em) { .nav-list > li > a:hover, .nav-list .sub-toggle:hover { color: var(--c-link); } }
.sub-list { border-radius: var(--radius-lg); box-shadow: var(--shadow-card-hover); }
@media (max-width: 47.99em) {
  .sticky-call { gap: .75rem; font-size: 1.1875rem; font-weight: 700; letter-spacing: .005em; box-shadow: 0 -10px 24px -12px rgba(15, 23, 42, .4); }
  .sticky-call .icon { box-sizing: content-box; width: 1.25rem; height: 1.25rem; padding: .5rem; border-radius: 50%; background: var(--c-call-ink); color: var(--c-call); }
}
.btn, .menu-toggle, .header-call-icon, .sticky-call { transition: all .2s ease-in-out; }
.btn-call:hover, .header-call-icon:hover { transform: translateY(-1px); filter: brightness(1.06); box-shadow: inset 0 -3px 0 var(--c-call-edge), 0 10px 20px -10px rgba(29, 78, 216, .7); }
.btn-call--dark:hover { filter: none; box-shadow: inset 0 -3px 0 var(--c-call-dark-edge), 0 10px 22px -10px rgba(0, 0, 0, .6); }
.btn-call:active, .header-call-icon:active, .sticky-call:active { transform: translateY(0); filter: brightness(.96); box-shadow: inset 0 2px 0 var(--c-call-edge); }
.btn-call--dark:active { box-shadow: inset 0 2px 0 var(--c-call-dark-edge); }
.btn-call:focus-visible, .menu-toggle:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 3px; }
.btn-call--dark:focus-visible { outline-color: var(--c-focus-dark); }
.menu-toggle:hover { background: var(--c-tint); border-color: var(--c-link); }
.handoff, .verdicts { display: grid; border-top: 0; gap: var(--space-2); }
.handoff li, .causes .cause, .read-grid li, .verdict, .ask, .loc-list li, .quick, .callout, .triage-col, .contact, .sit, .prep, .areaband-card {
  border: 1px solid var(--c-card-line); border-radius: var(--radius-lg); background: var(--card-bg); box-shadow: var(--shadow-card);
}
.handoff li { position: relative; padding: 1.1rem 1.25rem 1.2rem; }
.causes .cause, .causes--side .cause, .causes--side .cause:first-child { padding: var(--space-3); border: 1px solid var(--c-card-line); }
.causes--side { gap: var(--space-2); }
.read-grid li { padding: var(--space-3); }
.read-grid li > strong { margin-bottom: .6rem; }
a.read-card::after { top: .35rem; }
.verdict { padding: var(--space-2) var(--space-3); }
.loc-list { border-top: 0; display: grid; gap: var(--space-1); }
.loc-list li { padding: .85rem 1rem; align-items: center; }
.quick, .callout { border-left-width: 1px; box-shadow: inset 5px 0 0 var(--c-link), var(--shadow-card); }
.callout { box-shadow: inset 5px 0 0 var(--c-ink), var(--shadow-card); }
.triage-col { overflow: hidden; }
.contact { border-top-width: 1px; box-shadow: inset 0 5px 0 var(--c-ink), var(--shadow-card); }
.contact--911 { border-color: var(--c-alert); box-shadow: inset 0 5px 0 var(--c-alert), var(--shadow-card); }
.contact--plumber { border-color: var(--c-dark); box-shadow: inset 0 5px 0 var(--c-call-dark), var(--shadow-card); }
.sit { overflow: hidden; }
.sit--gas { border-color: var(--c-alert); }
.prep { overflow: hidden; border-top-width: 1px; box-shadow: inset 0 5px 0 var(--c-link), var(--shadow-card); }
.areaband-card { border-color: var(--c-dark-2); }
.start-panel { border-radius: var(--radius-lg); box-shadow: var(--shadow-card-hover); }
.map-frame { border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.handoff li, .read-grid li { transition: all .2s ease-in-out; }
.handoff li:has(strong a):hover, .read-grid li:has(a.read-card):hover { transform: translateY(-2px); border-color: var(--c-link); box-shadow: var(--shadow-card-hover); }
.handoff li strong a::after { content: ""; position: absolute; inset: 0; border-radius: var(--radius-lg); }
.handoff li strong a:focus-visible { outline: 0; }
.handoff li strong a:focus-visible::after { outline: 3px solid var(--c-focus); outline-offset: 2px; }
.handoff strong { margin-bottom: .2rem; }
a.read-card::after { transition: transform var(--ease); }
.read-grid li:has(a.read-card):hover a.read-card::after { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) { .handoff li:has(strong a):hover, .read-grid li:has(a.read-card):hover { transform: none; } }
.faq details, .faq details:first-of-type { border: 1px solid var(--c-card-line); border-radius: var(--radius-lg); background: var(--card-bg); box-shadow: var(--shadow-card); margin-bottom: .75rem; padding-inline: 1.25rem; transition: all .2s ease-in-out; }
.faq details:hover { border-color: var(--c-line-strong); }
.faq details[open] { border-color: var(--c-link); box-shadow: inset 4px 0 0 var(--c-link), var(--shadow-card-hover); }
.faq summary { align-items: center; padding: 1rem 0; min-height: 3.25rem; border-radius: var(--radius); }
.faq summary:focus-visible { outline-offset: 4px; }
.faq summary::after { flex: none; display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: var(--c-tint); line-height: 1; font-size: 1.25rem; transition: all .2s ease-in-out; }
.faq details[open] summary::after { background: var(--c-link); color: var(--c-call-ink); }
.steps > li::before { width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--c-link); color: var(--c-call-ink); }
.steps > li::after { left: calc(1.25rem - 1px); background: var(--c-card-line); }
.strip-steps > li, .sit--gas .strip-steps > li { border-top: 0; padding-top: 0; }
.strip-steps > li::before, .sit--minor .strip-steps > li::before { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border-radius: 50%; background: var(--c-link); color: var(--c-call-ink); font-size: 1.25rem; line-height: 1; margin-bottom: .75rem; }
.sit--gas .strip-steps > li::before { background: var(--c-alert); color: var(--c-call-ink); }
.contact-card { display: grid; gap: var(--space-3); padding: var(--space-3); background: var(--c-card); border: 1px solid var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-card); }
.contact-card-main > :last-child { margin-bottom: 0; }
.contact-card-main h2 { max-width: 20em; }
.contact-card-act { margin: var(--space-3) 0 var(--space-2); }
.contact-facts { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); align-content: start; }
.contact-facts li { display: grid; grid-template-columns: 2.75rem 1fr; gap: .9rem; align-items: start; padding: var(--space-2); background: #f4f6f9; border: 1px solid var(--c-card-line); border-radius: var(--radius-lg); }
.contact-facts .icon { width: 2.75rem; height: 2.75rem; padding: .65rem; border-radius: var(--radius); background: var(--c-link); color: var(--c-call-ink); }
.contact-facts strong { display: block; font-family: var(--font-head); font-weight: 800; margin-bottom: .15rem; }
.contact-facts span { color: var(--c-ink-soft); }
@media (min-width: 64em) {
  .contact-card { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: var(--space-4); padding: var(--space-4); }
}
.sit-ic, .start-ic, .key-n, .ask-q { border-radius: var(--radius); }
@media (max-width: 47.99em) {
  .causes .cause, .causes--side .cause, .read-grid li, .verdict, .triage-col { padding: var(--space-2); }
  .causes .cause p, .causes--side .cause p { grid-column: 1 / -1; }
  .causes .cause .sit-ic { grid-row: auto; width: 3.25rem; height: 3.25rem; }
  .causes .cause .sit-ic .icon { width: 1.75rem; height: 1.75rem; }
  .triage-head { margin-inline: calc(-1 * var(--space-2)); padding-inline: var(--space-2); }
}
@media (max-width: 47.99em) {
  .footer-nav a, .footer-group a, .breadcrumb a { display: inline-flex; align-items: center; min-height: 2.75rem; }
  .breadcrumb ol { padding-block: 0; }
}
.photo-card { margin: 0; min-width: 0; background: var(--c-card); border: 1px solid var(--c-card-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card-hover); overflow: hidden; }
.photo-card-img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
@media (min-width: 48em) { .photo-card-img { aspect-ratio: 3 / 2; } }
.photo-card-cap { margin: 0; padding: .55rem .95rem; border-top: 1px solid var(--c-card-line); font-size: var(--fs-small); line-height: 1.4; color: var(--c-ink-soft); }
.on-dark .photo-card, .emergency-hero .photo-card { background: var(--c-dark-2); border-color: var(--c-dark-2); box-shadow: 0 18px 34px -16px rgba(0, 0, 0, .6); }
.on-dark .photo-card-cap, .emergency-hero .photo-card-cap { border-top-color: var(--c-dark); color: var(--c-dark-soft); }
.hero.hero--photo { display: block; min-height: 0; overflow: visible; }
.hero--photo .hero-grid { display: grid; gap: var(--space-4); align-items: center; order: 0; min-height: 0; padding-block: var(--space-4); }
.hero--photo h1 { max-width: 12em; margin-right: 0; }
@media (min-width: 56em) { .hero--photo .hero-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.5rem; padding-block: 4rem 4.5rem; } }
.lede-hero--photo .lede-grid { display: grid; gap: var(--space-4); align-items: center; }
@media (min-width: 56em) { .lede-hero--photo .lede-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.5rem; } }
.lede-hero--photo h1 { font-size: var(--fs-h1-hero); }
.lede-hero--photo .lede-copy .lead { max-width: 36rem; }
.lede-hero--photo { border-bottom: 1px solid var(--c-line); }
.emergency-main, .emergency-side { display: contents; }
.emergency-head { order: 1; } .emergency-cta { order: 2; } .start-panel { order: 3; } .emergency-rest { order: 4; } .emergency-photo { order: 5; margin-top: var(--space-3); }
@media (min-width: 56em) {
  .emergency-main, .emergency-side { display: flex; flex-direction: column; min-width: 0; }
  .emergency-side { gap: var(--space-3); }
  .emergency-head, .start-panel { order: 0; } .emergency-rest { order: 1; } .emergency-cta { order: 2; } .emergency-photo { order: 1; margin-top: 0; }
}
.photo-band { padding-block: var(--space-4) 0; }
.photo-band .photo-card { max-width: 52rem; margin-inline: auto; }
@media (min-width: 48em) { .photo-band .photo-card-img { aspect-ratio: 2 / 1; } }
.photo-band + .section { padding-top: var(--space-4); }
@media (min-width: 48em) and (max-width: 55.99em) { .lede-hero--photo .photo-card, .hero--photo .photo-card, .plate-split > .photo-card { max-width: 40rem; } }
:root {
  --radius-lg: .875rem;   
  --shadow-card: 0 4px 6px -1px rgba(15, 23, 42, .06), 0 2px 4px -2px rgba(15, 23, 42, .04);
  --shadow-card-hover: 0 14px 30px -10px rgba(15, 23, 42, .16), 0 4px 8px -4px rgba(15, 23, 42, .08);
  --shadow-photo: 0 14px 34px -14px rgba(15, 23, 42, .24), 0 4px 6px -2px rgba(15, 23, 42, .06);
  --shadow-btn: 0 6px 18px -4px rgba(29, 78, 216, .4), 0 2px 4px rgba(29, 78, 216, .16);
  --shadow-btn-hover: 0 10px 22px -4px rgba(29, 78, 216, .5), 0 4px 8px -2px rgba(29, 78, 216, .22);
  --shadow-btn-dark: 0 6px 18px -4px rgba(0, 0, 0, .55), 0 2px 4px rgba(0, 0, 0, .25);
  --shadow-btn-dark-hover: 0 10px 22px -4px rgba(0, 0, 0, .65), 0 4px 8px -2px rgba(0, 0, 0, .3);
}
@media (min-width: 48em) { :root { --gutter: 1.5rem; } }
.btn { min-height: 2.75rem; padding: .875rem 1.75rem; border-radius: 999px; font-weight: 700; letter-spacing: .01em; transition: transform .15s ease, box-shadow .15s ease, filter .15s ease, background-color .15s ease; }
.btn-call, .btn.header-call { box-shadow: var(--shadow-btn); }
.btn-call--dark { box-shadow: var(--shadow-btn-dark); }
.header-call-icon { border-radius: 999px; box-shadow: var(--shadow-btn); }
.btn.header-call { padding: .75rem 1.5rem; }
.btn-call:hover, .header-call-icon:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: var(--shadow-btn-hover); }
.btn-call--dark:hover { filter: brightness(1.03); box-shadow: var(--shadow-btn-dark-hover); }
.btn-call:active, .header-call-icon:active, .sticky-call:active { transform: translateY(0) scale(.98); filter: brightness(.96); box-shadow: var(--shadow-btn); }
.btn-call--dark:active { box-shadow: var(--shadow-btn-dark); }
.btn-call--hero, .emergency-cta .btn, .callstrip .btn, .aside-call .btn { min-height: 3.5rem; padding-inline: 2rem; }
@media (prefers-reduced-motion: reduce) { .btn-call:hover, .header-call-icon:hover, .btn-call:active, .header-call-icon:active { transform: none; } }
.handoff li { padding: 1.25rem 1.5rem 1.35rem; }
.loc-list li { padding: 1rem 1.25rem; }
.verdict { padding: 1.25rem 1.5rem; }
.handoff li:has(strong a):hover, .read-grid li:has(a.read-card):hover { transform: translateY(-4px); }
.photo-card { box-shadow: var(--shadow-photo); }
.on-dark .photo-card, .emergency-hero .photo-card { box-shadow: 0 18px 34px -16px rgba(0, 0, 0, .6); }
.photo-card-cap { padding: .65rem 1.1rem; }
@media (max-width: 47.99em) {
  .handoff li, .verdict { padding: 1.1rem 1.25rem; }
}
@media (min-width: 56em) {
  .emergency-hero:not(.emergency-hero--b1) .start-head { padding-block: 1.1rem .5rem; }
  .emergency-hero:not(.emergency-hero--b1) a.start-row:not(.btn) { min-height: 4.25rem; padding-block: .75rem; }
  .emergency-photo .photo-card-img { aspect-ratio: 16 / 10; }
  .emergency-grid { align-items: center; }   
}
@media (min-width: 56em) { .emergency-hero--b1::before { width: 50%; } }   
.hero.hero--photo, .lede-hero--photo { background: linear-gradient(135deg, var(--c-wash) 0%, var(--c-bg) 66%); }
.hero--photo .hero-grid { padding-block: 4rem 3.25rem; }
@media (min-width: 56em) {
  .hero--photo .hero-grid, .lede-hero--photo .lede-grid { align-items: stretch; }
  .hero--photo .hero-copy, .lede-hero--photo .lede-copy { align-self: center; }
  .hero--photo .photo-card, .lede-hero--photo .photo-card { display: flex; flex-direction: column; align-self: center; height: 100%; max-height: 40rem; }   
  .hero--photo .photo-card-img, .lede-hero--photo .photo-card-img { flex: 1 1 0; width: 100%; height: 100%; min-height: 23.75rem; aspect-ratio: auto; object-fit: cover; }
}
section.split-strip, div.split-strip { width: min(100% - 2 * var(--gutter), 72.5rem); margin-inline: auto; gap: 1.25rem; }
@media (min-width: 48em) { .split-strip { gap: 1.5rem; } }
section.split-strip { margin-top: 3rem; }
.hero + .split-strip { margin-top: 0; }
.split-cell, .split-cell--now, .split-cell--later, .split-cell--calm, .split-cell--ask {
  --chip-bg: var(--c-tint); --chip-ink: var(--c-link-hover); --pill: var(--c-link);
  background: var(--c-card); color: var(--c-ink); border: 1px solid var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-card);
  padding: 1.5rem 1.25rem 1.25rem; transition: transform .2s ease, box-shadow .2s ease;
}
@media (min-width: 48em) { .split-cell, .split-cell--now, .split-cell--later, .split-cell--calm, .split-cell--ask { padding: 2rem; } }
.split-cell:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.split-cell--now { --chip-bg: var(--c-alert-bg); --chip-ink: var(--c-alert-ink); --pill: var(--c-alert); }
.split-cell--ask { --chip-bg: var(--c-warn-bg); --chip-ink: var(--c-warn-ink); --pill: var(--c-warn-edge); }
.split-cell .split-title, .split-cell h3.split-title {
  display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1.25rem; padding: .5rem 1.1rem .5rem .85rem; border-radius: 1.5rem;
  background: var(--chip-bg); color: var(--chip-ink); font-size: 1.125rem; line-height: 1.25; letter-spacing: 0; font-weight: 800;
}
.split-cell .split-title .icon { width: 1.35em; height: 1.35em; }
.split-cell .big-list li, .split-cell .mark-list li {
  position: relative; padding: .7rem 0 .7rem 1.75rem; border-top: 1px solid var(--c-card-line); font-family: var(--font-body); font-weight: 600; font-size: 1.1875rem; line-height: 1.45;
}
.split-cell .big-list li:first-child, .split-cell .mark-list li:first-child { border-top: 0; }
.split-cell .big-list li::before, .split-cell .mark-list li::before {
  content: ""; position: absolute; left: 0; top: 1.05rem; width: .5rem; height: 1.1rem; border-radius: 999px; background: var(--pill);
}
.split-cell .split-note, .split-cell .triage-note { margin: 1rem 0 0; color: var(--c-ink-soft); font-size: var(--fs-small); }
.split-cell .mark-list li { font-weight: 500; }
.split-cell a { color: var(--c-link); }
@media (max-width: 47.99em) { .split-cell .big-list li, .split-cell .mark-list li { font-size: 1.0625rem; } }
.navigator { gap: 1.25rem; }
@media (min-width: 48em) { .navigator { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; } }
@media (min-width: 64em) { .navigator { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; } }
.navigator > .nav-list { display: contents; border: 0; }
.navigator .nav-feature, .navigator .nav-row {
  position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-content: start; gap: 1rem; padding: 1.75rem 1.5rem 1.5rem;
  background: var(--c-card); color: var(--c-ink); border: 1px solid var(--c-card-line); border-radius: .875rem; box-shadow: var(--shadow-card);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.navigator .nav-feature:hover, .navigator .nav-row:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); border-color: var(--c-line); }
.navigator .nav-feature { grid-template-areas: "num . icon" "title title title" "lede lede lede" "links links links"; border-top: 4px solid var(--c-alert); background: linear-gradient(180deg, var(--c-alert-bg) 0, var(--c-card) 9.5rem); }
.navigator .nav-row { grid-template-areas: "num . icon" "body body body"; }
.navigator .nav-feature > .nav-num, .navigator .nav-row > .nav-num { grid-area: num; }
.navigator .nav-feature > .nav-icon, .navigator .nav-row > .nav-icon { grid-area: icon; }
.navigator .nav-feature > h3 { grid-area: title; }
.navigator .nav-feature > .nav-lede { grid-area: lede; }
.navigator .nav-feature > .nav-links { grid-area: links; margin: 0; }
.navigator .nav-row > .nav-body { grid-area: body; }
.navigator .nav-num, .navigator .nav-feature .nav-num, .navigator .nav-row .nav-num {
  display: grid; place-items: center; width: 2.75rem; height: 2.75rem; min-width: 0; border-radius: 50%; background: var(--c-link); color: var(--c-call-ink);
  font-size: 1.25rem; line-height: 1; margin: 0;
}
.navigator .nav-feature .nav-num { background: var(--c-alert); }
.navigator .nav-icon, .navigator .nav-feature .nav-icon, .navigator .nav-row .nav-icon {
  position: static; box-sizing: content-box; display: block; width: 1.75rem; height: 1.75rem; padding: .6rem; border-radius: .75rem; background: var(--c-tint); color: var(--c-link); justify-self: end;
}
.navigator .nav-feature .nav-icon { background: var(--c-alert-bg); color: var(--c-alert); }
.navigator .nav-feature h3, .navigator .nav-row h3 { font-size: 1.5rem; line-height: 1.2; max-width: none; margin: 0 0 .25rem; color: var(--c-ink); }
.navigator .nav-feature .nav-lede { font-size: 1.0625rem; color: var(--c-ink-soft); max-width: none; margin: 0; }
.navigator .nav-links li, .navigator .nav-feature .nav-links li { padding: .8rem 0; border-top: 1px solid var(--c-card-line); }
.navigator .nav-links span, .navigator .nav-feature .nav-links span { color: var(--c-ink-soft); }
.navigator .nav-links strong { font-size: 1.1875rem; }
@media (max-width: 47.99em) { .navigator .nav-row { grid-template-columns: auto minmax(0, 1fr) auto; } .navigator .nav-row .nav-icon { display: block; } }
.own { background: var(--c-surface); color: var(--c-ink); padding-block: 3.5rem; }
@media (min-width: 48em) { .own { padding-block: 4.75rem; } }
.own .eyebrow { color: var(--c-ink-soft); }
.own .intro { color: var(--c-ink); }
.own-head { max-width: 46rem; margin-bottom: 2.25rem; }
.lanes { gap: 1.5rem; }
.lane { background: var(--c-card); border: 1px solid var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-card); padding: 1.5rem 1.25rem; }
@media (min-width: 48em) { .lane { padding: 2rem; } }
.lane-title { margin: 0 0 1.25rem; font-size: 1.375rem; color: var(--c-ink); }
.lane-grid > .pipe, .lane-grid > .pipe-join { display: none; }
.lane-grid, .lane-grid--fuzzy { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: none; gap: 0; align-items: stretch; }
.lane-grid > .lane-city, .lane-grid > .lane-you { grid-area: auto; padding: 1.25rem 1.25rem 1.35rem; border: 1px solid var(--c-card-line); border-radius: .875rem; transition: transform .2s ease, box-shadow .2s ease; }
.lane-grid > .lane-city { background: var(--c-bg); }
.lane-grid > .lane-you { background: var(--c-tint); border-color: #c3d4f5; }
.lane-grid > .lane-city:hover, .lane-grid > .lane-you:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.lane-who, .lane-grid > .lane-city .lane-who, .lane-grid > .lane-you .lane-who {
  display: inline-block; margin: 0 0 .7rem; padding: .3rem .85rem; border-radius: 999px; font-size: .8125rem; line-height: 1.3; letter-spacing: .07em; text-transform: uppercase; font-weight: 800;
}
.lane-city .lane-who { background: #e2e8f0; color: #1e293b; }
.lane-you .lane-who { background: var(--c-link); color: var(--c-call-ink); }
.lane-city p, .lane-you p { max-width: none; font-size: 1.0625rem; line-height: 1.55; }
.lane-city p { color: var(--c-ink-soft); }
.lane-you p { color: var(--c-ink); }
.lane-grid > .lane-line { grid-area: auto; position: relative; display: flex; align-items: center; justify-content: center; min-height: 3.25rem; padding: 0; text-align: center; }
.lane-grid > .lane-line::before { content: ""; position: absolute; left: 8%; right: 8%; top: 50%; border-top: 2px dashed var(--c-line-strong); }
.lane-grid--fuzzy > .lane-line::before { border-top-style: dotted; }
.lane-line span, .lane-grid > .lane-line span {
  position: relative; min-width: 0; padding: .4rem .8rem; background: var(--c-card); border: 1px solid var(--c-line); border-radius: .75rem;
  font-size: .75rem; line-height: 1.25; letter-spacing: .08em; font-weight: 800; text-transform: uppercase; color: var(--c-ink);
}
@media (min-width: 48em) {
  .lane-grid, .lane-grid--fuzzy { grid-template-columns: minmax(0, 1fr) 8.5rem minmax(0, 1fr); grid-template-areas: "tc line ty"; }
  .lane-grid > .lane-city { grid-area: tc; padding-right: 1.5rem; }
  .lane-grid > .lane-you { grid-area: ty; padding-left: 1.5rem; }
  .lane-grid > .lane-line { grid-area: line; padding: 0 .5rem; }
  .lane-grid > .lane-line::before { left: 50%; right: auto; top: 0; bottom: 0; border-top: 0; border-left: 2px dashed var(--c-line-strong); }
  .lane-grid--fuzzy > .lane-line::before { border-left-style: dotted; }
}
.own .own-statement { max-width: none; margin: 1.75rem 0 1rem; padding: 1.25rem 1.5rem; background: var(--c-card); border: 1px solid var(--c-card-line); border-left: 5px solid var(--c-link); border-radius: .875rem; box-shadow: var(--shadow-card); font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem); line-height: 1.3; text-wrap: balance; }
.own .own-note { color: var(--c-ink-soft); max-width: 46rem; }
.areaband-card { background: var(--c-card); color: var(--c-ink); }
.areaband-card .eyebrow, .areaband-cap { color: var(--c-ink-soft); }
:root {
  --c-navy: #0f2942; --c-navy-2: #1e3a5f;
  --c-body: #334155; --c-caption: #64748b;
  --c-sky-bg: #e0f2fe; --c-sky-ink: #075985; --c-sky: #0369a1;
  --c-tile: #e1eafb;                       
  --radius-lg: 1rem;                       
  --shadow-card: 0 4px 6px -1px rgba(15, 23, 42, .04), 0 10px 15px -3px rgba(15, 23, 42, .05);
  --shadow-card-hover: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 22px 32px -10px rgba(15, 23, 42, .14);
  --shadow-photo: 0 4px 6px -1px rgba(15, 23, 42, .05), 0 22px 40px -14px rgba(15, 23, 42, .22);
  --ico-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  --ico-bang: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' d='M12 5v8M12 18.5v.5'/%3E%3C/svg%3E");
  --ico-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}
body { color: var(--c-body); }
h1, h2, h3, h4 { color: var(--c-navy); }
:is(.site-footer, .on-dark:not(.own), .emergency-hero, .cta-band, .start-panel, .callstrip, .aside-call, .avoid, .contact--plumber, .stage--now, .fork-cell--you, .lede-hero--guide .quick, .triage-col--now .triage-head, .rs-call, .plate-frame) :is(h1, h2, h3, h4) { color: inherit; }
.btn-call, .btn-call--hero { padding: 1rem 2rem; }
.btn.header-call { padding: .75rem 1.5rem; }
.btn-call--dark { background: #fff; color: var(--c-navy); box-shadow: var(--shadow-btn-dark); }
.btn-call--dark:hover { background: #fff; }
.hero.hero--photo, .lede-hero--photo { background: linear-gradient(135deg, #e9eff7 0%, var(--c-bg) 62%); border-bottom: 1px solid var(--c-card-line); }
.hero--photo h1, .lede-hero--photo h1 { line-height: 1.15; }
.hero--photo .hero-grid { gap: 3rem; padding-block: 3.5rem; }
@media (min-width: 56em) {
  .hero--photo .hero-grid, .lede-hero--photo .lede-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 3.5rem; padding-block: 4.5rem; }
}
.hero--photo .eyebrow, .lede-hero--photo .eyebrow {
  display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1.1rem; padding: .4rem .95rem .4rem .8rem; border-radius: 999px;
  background: #fff; border: 1px solid var(--c-card-line); color: var(--c-navy); font-size: .8125rem; line-height: 1.3; box-shadow: 0 1px 2px rgba(15, 23, 42, .06);
}
.hero--photo .eyebrow::before, .lede-hero--photo .eyebrow::before {
  content: ""; position: static; flex: none; width: .55rem; height: .55rem; padding: 0; border: 0; border-radius: 50%; background: var(--c-link); box-shadow: 0 0 0 3px rgba(29, 78, 216, .18);
}
.hero--photo .eyebrow.route-rule, .lede-hero--photo .eyebrow.route-rule { padding-top: .4rem; }
.hero--photo .photo-card, .lede-hero--photo .photo-card { position: relative; border: 1px solid var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-photo); background: #fff; }
.hero--photo .photo-card-cap, .lede-hero--photo .photo-card-cap, .photo-band .photo-card-cap { color: var(--c-caption); }
.trust-pill {
  position: absolute; z-index: 2; left: 1rem; top: 1rem; display: inline-flex; align-items: center; gap: .5rem; padding: .5rem 1rem .5rem .6rem; border-radius: 999px;
  background: #fff; color: var(--c-navy); font: 700 .875rem/1.2 var(--font-body); box-shadow: 0 6px 18px -6px rgba(15, 23, 42, .35), 0 1px 3px rgba(15, 23, 42, .12);
}
.trust-pill .icon { width: 1.5rem; height: 1.5rem; padding: .3rem; border-radius: 50%; background: var(--c-link); color: #fff; box-sizing: border-box; }
.split-cell, .split-cell--now, .split-cell--later, .split-cell--calm, .split-cell--ask, .lane, .handoff li, .read-grid li, .verdict, .faq details, .faq details:first-of-type {
  border-color: var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-card);
}
.navigator .nav-feature, .navigator .nav-row { border-radius: 1rem; border-color: var(--c-card-line); }
.handoff li:has(strong a):hover, .read-grid li:has(a.read-card):hover { transform: translateY(-4px); border-color: var(--c-card-line); box-shadow: var(--shadow-card-hover); }
@media (min-width: 48em) {
  .split-cell, .split-cell--now, .split-cell--later, .split-cell--calm, .split-cell--ask { padding: 2rem; }
  .navigator .nav-feature, .navigator .nav-row { padding: 1.75rem 1.75rem 1.5rem; }
  .lane { padding: 2rem; }
}
.split-strip { align-items: stretch; }
.split-cell { display: flex; flex-direction: column; }
.split-cell .split-title { align-self: flex-start; }
.split-cell--later, .split-cell--calm { --chip-bg: var(--c-sky-bg); --chip-ink: var(--c-sky-ink); --pill: var(--c-sky); }
.split-cell .split-title, .split-cell h3.split-title { font-size: 1.0625rem; font-weight: 800; padding: .45rem 1.1rem .45rem .8rem; }
.split-cell .big-list li, .split-cell .mark-list li { padding: .8rem 0 .8rem 2.5rem; line-height: 1.5; color: var(--c-ink); }
.split-cell .big-list li::before, .split-cell .mark-list li::before {
  content: ""; left: 0; top: .8rem; width: 1.65rem; height: 1.65rem; border-radius: 50%; background: var(--chip-bg);
}
.split-cell .big-list li::after, .split-cell .mark-list li::after {
  content: ""; position: absolute; left: 0; top: .8rem; width: 1.65rem; height: 1.65rem; background: var(--pill);
  -webkit-mask: var(--ico-check) center / 62% no-repeat; mask: var(--ico-check) center / 62% no-repeat;
}
.split-cell--now .big-list li::after, .split-cell--now .mark-list li::after { -webkit-mask-image: var(--ico-bang); mask-image: var(--ico-bang); }
.split-cell .split-note { margin-top: auto; padding-top: 1rem; color: var(--c-ink-soft); }
.split-cell .big-list { margin-bottom: 0; }
.navigator { align-items: stretch; }
.navigator .nav-feature, .navigator .nav-row { grid-template-rows: auto 1fr; }
.navigator .nav-feature { grid-template-rows: auto auto auto 1fr; border-top: 1px solid var(--c-card-line); background: var(--c-card); }
.navigator .nav-feature::before { content: ""; position: absolute; left: 1.75rem; right: 1.75rem; top: 0; height: 4px; border-radius: 0 0 4px 4px; background: var(--c-alert); }
.navigator .nav-body { display: flex; flex-direction: column; min-width: 0; }
.navigator .nav-body > .nav-links { margin-top: auto; }
.navigator .nav-feature > .nav-links { align-self: end; }
.navigator .nav-num, .navigator .nav-feature .nav-num, .navigator .nav-row .nav-num {
  width: 2.75rem; height: 2.75rem; border-radius: .75rem; background: var(--c-tile); color: var(--c-link-hover); font-size: 1.125rem; font-weight: 800;
}
.navigator .nav-feature .nav-num { background: var(--c-alert-bg); color: var(--c-alert-ink); }
.navigator .nav-icon, .navigator .nav-feature .nav-icon, .navigator .nav-row .nav-icon {
  width: 1.5rem; height: 1.5rem; padding: .625rem; border-radius: .75rem; background: #f1f5f9; color: var(--c-navy-2);
}
.navigator .nav-feature .nav-icon { background: var(--c-alert-bg); color: var(--c-alert); }
.navigator .nav-feature h3, .navigator .nav-row h3 { color: var(--c-navy); }
.navigator .nav-links li, .navigator .nav-feature .nav-links li {
  position: relative; display: block; padding: .85rem 2.5rem .85rem .35rem; margin-inline: -.35rem; border-top: 1px solid var(--c-card-line); border-radius: .5rem; transition: background-color .2s ease, padding-left .2s ease;
}
.navigator .nav-links li::after {
  content: ""; position: absolute; right: .6rem; top: 50%; width: 1.25rem; height: 1.25rem; margin-top: -.625rem; background: var(--c-link);
  -webkit-mask: var(--ico-arrow) center / contain no-repeat; mask: var(--ico-arrow) center / contain no-repeat; transition: transform .2s ease;
}
.navigator .nav-links li:hover { background: #f1f5f9; padding-left: .7rem; }
.navigator .nav-links li:hover::after { transform: translateX(4px); }
.navigator .nav-links li strong a::before { content: ""; position: absolute; inset: 0; border-radius: .5rem; }
.navigator .nav-links li strong a:focus-visible { outline: 0; }
.navigator .nav-links li strong a:focus-visible::before { outline: 3px solid var(--c-focus); outline-offset: -2px; }
@media (prefers-reduced-motion: reduce) { .navigator .nav-links li:hover { padding-left: .35rem; } .navigator .nav-links li:hover::after { transform: none; } }
.lane-grid > .lane-you { background: var(--c-tile); border-color: #c3d4f5; }
.lane-city .lane-who { background: #e2e8f0; color: #1e293b; }
.lane-you .lane-who { background: var(--c-navy); color: #fff; }
.run-steps > li {
  margin-left: 0 !important; grid-template-columns: 1fr; align-content: start; gap: .5rem; padding: 1.75rem 1.5rem 1.6rem; border: 1px solid var(--c-card-line); border-radius: 1rem;
  background: var(--c-card); color: var(--c-body); box-shadow: var(--shadow-card); transition: transform .2s ease, box-shadow .2s ease;
}
.run-steps > li::before { display: none; }
.run-steps > li:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.rs-num {
  display: grid; place-items: center; width: 2.5rem; height: 2.5rem; margin-bottom: .6rem; border-radius: 50%; background: var(--c-navy); color: #fff;
  font-size: 1rem; line-height: 1; letter-spacing: 0; font-weight: 800;
}
.run-steps h3 { font-size: 1.3125rem; line-height: 1.25; color: var(--c-navy); margin: 0 0 .25rem; }
.run-steps p { font-size: 1.0625rem; color: var(--c-body); max-width: none; }
.run-steps a { color: var(--c-link); }
@media (min-width: 56em) {
  .run-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: stretch; }
  .run-steps > li, .run-steps--row > li { padding: 2rem; }
  .run-steps--row { gap: 1.5rem; }
  .run-steps--row > li { border: 1px solid var(--c-card-line); }
}
.run-steps--row > li.rs-call, .process.on-dark .run-steps > li.rs-call { background: var(--c-navy); color: var(--c-dark-ink); border-color: var(--c-navy); }
.run-steps--row > li.rs-call h3 { color: #fff; }
.run-steps--row > li.rs-call p { color: var(--c-dark-soft); }
.run-steps--row > li.rs-call .rs-num { background: #fff; color: var(--c-navy); }
.process.own.on-dark { background: var(--c-surface); color: var(--c-ink); }
.process.own.on-dark .eyebrow, .process.own.on-dark .section-head > p:not(.eyebrow) { color: var(--c-ink-soft); }
.process.own.on-dark .own-head .intro { color: var(--c-ink); }
.process.on-dark .run-steps > li:not(.rs-call) p { color: var(--c-body); }
.process.own.on-dark a:not(.btn) { color: var(--c-link); }
.process.on-dark .run-steps > li:not(.rs-call) .rs-num { color: #fff; }
.contact--plumber { background: var(--c-navy); border-color: var(--c-navy); }
.areaband { background: var(--c-surface); padding-block: 3rem; display: grid; grid-template-columns: minmax(var(--gutter), 1fr) minmax(0, 72.5rem) minmax(var(--gutter), 1fr); row-gap: 1.5rem; }
.areaband-inner { display: contents; }
.areaband-card, .areaband-map { grid-column: 2; }
.areaband-card { grid-row: 1; width: auto; margin: 0; pointer-events: auto; background: var(--c-card); color: var(--c-body); border: 1px solid var(--c-card-line); border-radius: 1rem; box-shadow: var(--shadow-card); padding: 1.75rem 1.5rem; }
.areaband-map { grid-row: 2; display: flex; min-width: 0; }
.areaband-map .map-frame { flex: 1; border: 1px solid var(--c-card-line); border-radius: 1rem; overflow: hidden; box-shadow: var(--shadow-card); background: var(--c-card); }
.areaband-map .map-embed { height: 100%; min-height: 20rem; aspect-ratio: 4 / 3; }
.areaband-card h2 { color: var(--c-navy); }
.areaband-card .facts { border-top-color: var(--c-card-line); }
.areaband-card .facts > div { border-bottom-color: var(--c-card-line); }
.areaband-card .facts dt, .areaband-card .eyebrow, .areaband-cap { color: var(--c-ink-soft); }
@media (min-width: 56em) {
  .areaband { padding-block: 4.5rem; grid-template-columns: minmax(var(--gutter), 1fr) minmax(0, 27rem) 2rem minmax(0, 44.5rem) minmax(var(--gutter), 1fr); column-gap: 0; }
  .areaband-card { grid-column: 2; grid-row: 1; padding: 2rem; }
  .areaband-map { grid-column: 4; grid-row: 1; }
  .areaband-map .map-embed { aspect-ratio: auto; height: 100%; min-height: 30rem; }
}
.cta-band { background: var(--c-navy-2); }
.site-footer { background: var(--c-navy); }
.home-v2 .hero.hero--commercial {
  position: relative; overflow: hidden; color: var(--c-dark-ink);
  background:
    radial-gradient(60rem 28rem at 88% 8%, rgba(147, 197, 253, .20), transparent 60%),
    linear-gradient(135deg, var(--c-navy) 0%, var(--c-navy-2) 100%);
}
.home-v2 .hero--commercial::before {   
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(rgba(147, 197, 253, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(147, 197, 253, .07) 1px, transparent 1px);
  background-size: 3rem 3rem;
  -webkit-mask-image: linear-gradient(100deg, transparent 20%, #000 90%); mask-image: linear-gradient(100deg, transparent 20%, #000 90%);
}
.home-v2 .hero--commercial .hero-grid { padding-block: 3.5rem 5.5rem; align-items: center; }
.home-v2 .hero--commercial .eyebrow.route-rule { color: var(--c-link-dark); background: rgba(147, 197, 253, .12); border: 1px solid rgba(147, 197, 253, .3); box-shadow: none; }
.home-v2 .hero--commercial .eyebrow::before { background: var(--c-link-dark); }
.home-v2 .hero--commercial h1 { color: #fff; max-width: 13em; }
.home-v2 .hero--commercial .h1-accent { color: var(--c-link-dark); }
.home-v2 .hero--commercial .lead { color: var(--c-dark-soft); max-width: 36rem; }
.home-v2 .hero--commercial .lead strong { color: #fff; }
.home-v2 .hero--commercial .btn-call--dark { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.home-v2 .hero--commercial .hero-actions { margin-block: 1.75rem 0; gap: .75rem 1rem; }
.home-v2 .hero--commercial .hero-actions > a:not(.btn) {
  padding: .7rem 1.25rem; border: 1.5px solid rgba(255, 255, 255, .4); border-radius: var(--radius); color: #fff; text-decoration: none; transition: background var(--ease), border-color var(--ease);
}
.home-v2 .hero--commercial .hero-actions > a:not(.btn):hover { background: rgba(255, 255, 255, .1); border-color: #fff; }
.hero-pills { list-style: none; display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.5rem 0 0; padding: 0; }
.hero-pills li {
  display: inline-flex; align-items: center; gap: .5rem; padding: .4rem .95rem .4rem .45rem; border-radius: 999px;
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .22); color: #fff; font: 600 .9375rem/1.25 var(--font-body);
}
.hero-pills .icon { width: 1.5rem; height: 1.5rem; padding: .3rem; border-radius: 50%; background: var(--c-link-dark); color: var(--c-navy); box-sizing: border-box; }
.home-v2 .hero--commercial .fineprint { color: var(--c-dark-soft); margin-top: 1.25rem; max-width: 38rem; }
.home-v2 .hero--commercial .fineprint a { color: var(--c-link-dark); }
.home-v2 .hero-media { position: relative; min-width: 0; align-self: stretch; display: flex; }
.home-v2 .hero-media .photo-card {
  position: relative; z-index: 1; flex: 1; display: flex; flex-direction: column; height: auto; max-height: none; align-self: stretch; border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 1.125rem; background: var(--c-navy-2); box-shadow: 0 30px 60px -24px rgba(0, 0, 0, .65);
}
.home-v2 .hero-media .photo-card-img { aspect-ratio: 4 / 3; height: auto; flex: 1; min-height: 0; object-fit: cover; }
.home-v2 .hero-media .photo-card-cap { background: var(--c-navy-2); border-top-color: rgba(255, 255, 255, .14); color: var(--c-dark-soft); }
@media (min-width: 56em) {
  .home-v2 .hero--commercial .hero-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 4rem; padding-block: 4.5rem 7rem; }
  .home-v2 .hero-media::before {
    content: ""; position: absolute; z-index: 0; inset: 1.25rem -1.25rem -1.25rem 1.25rem; border-radius: 1.125rem;
    background: rgba(147, 197, 253, .14); border: 1px solid rgba(147, 197, 253, .3);
  }
  .home-v2 .hero-media .photo-card-img { aspect-ratio: auto; }
}
@media (min-width: 48em) {
  .home-v2 .hero.hero--commercial + .split-strip { margin-top: -4.25rem; position: relative; z-index: 3; }
}
@media (max-width: 47.99em) {
  .home-v2 .hero--commercial .hero-grid { padding-block: 2.25rem 2.5rem; }
  .home-v2 .hero.hero--commercial + .split-strip { margin-top: 1.25rem; }
}
.home-v2 .split-strip .split-cell { box-shadow: 0 2px 4px rgba(15, 23, 42, .06), 0 22px 40px -18px rgba(15, 23, 42, .35); }
.home-v2 .svc-section { padding-top: 4rem; }
.svc-grid { display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
@media (min-width: 48em) { .svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; } }
.svc-card {
  position: relative; display: flex; flex-direction: column; padding: 1.5rem 1.25rem 1.25rem; background: var(--c-card); border: 1px solid var(--c-card-line);
  border-top: 4px solid var(--c-link); border-radius: 1rem; box-shadow: var(--shadow-card); transition: transform .2s ease, box-shadow .2s ease;
}
.svc-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.svc-card--urgent { border-top-color: var(--c-alert); background: linear-gradient(180deg, var(--c-alert-bg) 0, var(--c-card) 11rem); }
.svc-head { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.svc-title { min-width: 0; display: grid; gap: .35rem; justify-items: start; }
.svc-icon { display: grid; place-items: center; width: 3.25rem; height: 3.25rem; border-radius: .9rem; background: var(--c-tile); color: var(--c-link); box-shadow: inset 0 0 0 1px rgba(29, 78, 216, .14); }
.svc-icon svg { width: 1.7rem; height: 1.7rem; }
.svc-card--urgent .svc-icon { background: var(--c-alert-bg); color: var(--c-alert); box-shadow: inset 0 0 0 1px rgba(179, 18, 58, .22); }
.svc-tag { padding: .25rem .7rem; border-radius: 999px; background: var(--c-alert); color: #fff; font: 800 .75rem/1.3 var(--font-head); letter-spacing: .08em; text-transform: uppercase; }
.svc-card h3 { margin: 0; font-size: 1.4375rem; line-height: 1.2; color: var(--c-navy); }
.svc-lede { margin: 0 0 .75rem; font-size: 1rem; line-height: 1.5; color: var(--c-ink-soft); }
.svc-links { list-style: none; margin: auto 0 0; padding: .25rem 0 0; display: grid; gap: .6rem; }
@media (min-width: 40em) { .svc-links { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.svc-links > li { display: flex; }
.svc-links > li > .svc-link { flex: 1; }
.svc-link {
  position: relative; display: block; padding: .85rem .95rem 3.1rem; background: var(--c-bg); border: 1px solid var(--c-card-line); border-radius: .75rem;
  color: var(--c-ink); text-decoration: none; transition: background var(--ease), border-color var(--ease), transform var(--ease);
}
.svc-link strong { display: block; font-family: var(--font-head); font-weight: 800; font-size: 1.0625rem; line-height: 1.25; color: var(--c-link); margin-bottom: .15rem; }
.svc-link span { display: block; font-size: .9375rem; line-height: 1.45; color: var(--c-ink-soft); }
.svc-link::after {
  content: ""; position: absolute; right: .8rem; bottom: .75rem; width: 1.9rem; height: 1.9rem; border-radius: 50%; background-color: var(--c-link);
  background-repeat: no-repeat; background-position: center; background-size: 1rem 1rem; transition: transform var(--ease);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='2.5' stroke-linecap='square' d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E");
}
.svc-link:hover { background: var(--c-tile); border-color: var(--c-tile); }
.svc-link:hover::after { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) { .svc-card, .svc-link, .svc-link::after { transition: none; } .svc-card:hover { transform: none; } .svc-link:hover::after { transform: none; } }
.home-v2 .process { background: var(--c-navy); color: var(--c-dark-ink); }
.home-v2 .process .eyebrow { color: var(--c-link-dark); }
.home-v2 .process .section-head h2 { color: #fff; }
.home-v2 .process .rs-num { width: 3rem; height: 3rem; font-size: 1.125rem; background: var(--c-link); box-shadow: 0 0 0 5px var(--c-tile); }
.home-v2 .own.own--compact { background: var(--c-bg); padding-block: 3.5rem; }
@media (min-width: 48em) { .home-v2 .own.own--compact { padding-block: 4.5rem; } }
.own-card { background: var(--c-card); border: 1px solid var(--c-card-line); border-radius: 1.25rem; box-shadow: var(--shadow-card); padding: 1.5rem 1.25rem; display: grid; gap: 1.5rem; }
@media (min-width: 64em) {
  .own-card { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-areas: "head lanes" "stmt lanes" "note lanes"; column-gap: 3rem; row-gap: 0; padding: 2.5rem; align-items: start; }
  .own-card > .own-head { grid-area: head; margin-bottom: 1.25rem; }
  .own-card > .lanes { grid-area: lanes; }
  .own-card > .own-statement { grid-area: stmt; }
  .own-card > .own-note { grid-area: note; }
}
.home-v2 .own-card .own-head { max-width: none; margin-bottom: 0; }
.home-v2 .own-card .own-head h2 { font-size: clamp(1.625rem, 1.25rem + 1.2vw, 2.25rem); color: var(--c-navy); }
.home-v2 .own-card .intro { font-size: 1.0625rem; line-height: 1.55; color: var(--c-ink-soft); max-width: none; }
.home-v2 .own-card .own-statement { margin: 0 0 1rem; padding: 1rem 1.15rem; font-size: 1.1875rem; line-height: 1.35; background: var(--c-tile); border: 0; border-left: 5px solid var(--c-link); border-radius: .75rem; box-shadow: none; color: var(--c-navy); }
.home-v2 .own-card .own-note { margin: 0; font-size: .9375rem; }
.home-v2 .own-card .lanes { gap: 1rem; }
.home-v2 .own-card .lane { padding: 1rem 1.1rem 1.1rem; border-radius: .875rem; box-shadow: none; background: var(--c-bg); }
.home-v2 .own-card .lane-title { margin: 0 0 .7rem; font-size: 1.0625rem; color: var(--c-navy); }
.home-v2 .own-card .lane-grid, .home-v2 .own-card .lane-grid--fuzzy { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: none; gap: 0; }
.home-v2 .own-card .lane-grid > .lane-city, .home-v2 .own-card .lane-grid > .lane-you { grid-area: auto; display: grid; grid-template-columns: 3.75rem minmax(0, 1fr); gap: .75rem; align-items: start; padding: .7rem .8rem; border-radius: .6rem; }
.home-v2 .own-card .lane-grid > .lane-city { background: var(--c-card); }
.home-v2 .own-card .lane-grid > .lane-you { background: var(--c-tile); border-color: transparent; }
.home-v2 .own-card .lane-who { margin: .1rem 0 0; padding: .2rem .6rem; font-size: .75rem; text-align: center; justify-self: start; }
.home-v2 .own-card .lane-city p, .home-v2 .own-card .lane-you p { font-size: .9688rem; line-height: 1.45; margin: 0; }
.home-v2 .own-card .lane-grid > .lane-line { grid-area: auto; min-height: 2rem; padding: 0; }
.home-v2 .own-card .lane-grid > .lane-line::before { left: 0; right: 0; top: 50%; bottom: auto; border-left: 0; border-top: 2px dashed var(--c-line-strong); }
.home-v2 .own-card .lane-grid--fuzzy > .lane-line::before { border-top-style: dotted; }
.home-v2 .own-card .lane-line span { z-index: 1; padding: .2rem .65rem; font-size: .6875rem; background: var(--c-bg); border-radius: 999px; }
@media (min-width: 48em) {
  .home-v2 .own-card .lane-grid, .home-v2 .own-card .lane-grid--fuzzy { grid-template-columns: minmax(0, 1fr); grid-template-areas: none; }
  .home-v2 .own-card .lane-grid > .lane-city, .home-v2 .own-card .lane-grid > .lane-you { grid-area: auto; padding: .7rem .8rem; }
  .home-v2 .own-card .lane-grid > .lane-line::before { left: 0; right: 0; top: 50%; bottom: auto; border-left: 0; border-top: 2px dashed var(--c-line-strong); }
  .home-v2 .own-card .lane-grid--fuzzy > .lane-line::before { border-left-style: initial; border-top-style: dotted; }
}
.home-v2 .reading { background: var(--c-card); }
:root {
  --c-amber: #b45309; --c-amber-hover: #92400e; --c-amber-ink: #ffffff; --c-amber-rim: #f59e0b;
  --shadow-amber: 0 6px 18px rgba(180, 83, 9, .38);
  --shadow-amber-hover: 0 10px 22px rgba(180, 83, 9, .5);
}
:is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon) {
  background: var(--c-amber); color: var(--c-amber-ink); border: 0; filter: none; box-shadow: var(--shadow-amber);
  transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
}
:is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon):hover {
  background: var(--c-amber-hover); color: var(--c-amber-ink); filter: none; transform: translateY(-2px); box-shadow: var(--shadow-amber-hover);
}
:is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon):active {
  background: var(--c-amber-hover); filter: none; transform: translateY(0) scale(.98); box-shadow: var(--shadow-amber);
}
:is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon):focus-visible { outline: 3px solid var(--c-focus); outline-offset: 3px; }
:is(.site-footer, .on-dark, .emergency-hero, .cta-band, .callstrip, .start-panel, .lede-hero--dark) :is(.btn-call, .btn-call--dark):focus-visible { outline-color: var(--c-focus-dark); }
.sticky-call, .sticky-call:hover, .sticky-call:active { background: var(--c-amber); color: var(--c-amber-ink); border-top-color: var(--c-amber-rim); }
.sticky-call:hover, .sticky-call:active { background: var(--c-amber-hover); }
.sticky-call .icon { background: var(--c-amber-ink); color: var(--c-amber); }
.site-footer .btn-call--dark { color: var(--c-amber-ink); }
.btn-pulse { position: relative; }
.btn-pulse > .icon, .btn-pulse > span:not(.ring) { position: relative; z-index: 1; }
.btn-pulse .ring { position: absolute; inset: 0; border-radius: 999px; border: 2px solid var(--c-amber-rim); opacity: 0; pointer-events: none; animation: sonar 2.2s ease-out infinite; }
.btn-pulse .ring--2 { animation-delay: 1.1s; }
@keyframes sonar {
  0% { transform: scale(1); opacity: .55; }
  100% { transform: scale(1.35); opacity: 0; }
}
html { overflow-x: hidden; overflow-x: clip; }
body { overflow-x: clip; }
main, .site-header, .site-footer, .hero.hero--photo, :is(.hero, .lede-hero, .emergency-hero, .cta-band, .callstrip, .start-panel) { overflow-x: clip; }
@media (prefers-reduced-motion: reduce) {
  .btn-pulse .ring { display: none; }
  :is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon, .sticky-call):hover,
  :is(.btn-call, .btn-call--dark, .btn-call--hero, .btn.header-call, .header-call-icon, .sticky-call):active { transform: none; }
}
.lede-hero--dark, .emergency-hero {
  position: relative; overflow: hidden; color: var(--c-dark-ink); border-bottom: 0;
  background:
    radial-gradient(60rem 28rem at 88% 8%, rgba(147, 197, 253, .20), transparent 60%),
    linear-gradient(135deg, var(--c-navy) 0%, var(--c-navy-2) 100%);
}
.lede-hero--dark::before, .emergency-hero:not(.emergency-hero--b1)::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(rgba(147, 197, 253, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(147, 197, 253, .07) 1px, transparent 1px);
  background-size: 3rem 3rem;
  -webkit-mask-image: linear-gradient(100deg, transparent 20%, #000 90%); mask-image: linear-gradient(100deg, transparent 20%, #000 90%);
}
.lede-hero--dark > .container, .emergency-hero > .container { position: relative; z-index: 1; }
.lede-hero--dark h1 { color: #fff; }
.lede-hero--dark .hl, .lede-hero--dark .h1-accent { color: var(--c-link-dark); }
.lede-hero--dark .lead { color: var(--c-dark-soft); }
.lede-hero--dark .lead strong { color: #fff; }
.lede-hero--dark .fineprint, .lede-hero--dark .breadcrumb { color: var(--c-dark-soft); }
.lede-hero--dark .breadcrumb a, .lede-hero--dark .fineprint a { color: var(--c-link-dark); }
.lede-hero--dark .eyebrow.route-rule, .lede-hero--dark.lede-hero--photo .eyebrow.route-rule {
  color: var(--c-link-dark); background: rgba(147, 197, 253, .12); border: 1px solid rgba(147, 197, 253, .3); box-shadow: none;
}
.lede-hero--dark.lede-hero--photo .eyebrow::before { background: var(--c-link-dark); box-shadow: 0 0 0 3px rgba(147, 197, 253, .25); }
.lede-hero--dark .hero-actions > a:not(.btn) {
  padding: .7rem 1.25rem; border: 1.5px solid rgba(255, 255, 255, .4); border-radius: var(--radius); color: #fff; text-decoration: none; transition: background var(--ease), border-color var(--ease);
}
.lede-hero--dark .hero-actions > a:not(.btn):hover { background: rgba(255, 255, 255, .1); border-color: #fff; }
.lede-hero--dark.lede-hero--photo .photo-card {
  border: 1px solid rgba(255, 255, 255, .28); border-radius: 1.125rem; background: var(--c-navy-2); box-shadow: 0 30px 60px -24px rgba(0, 0, 0, .65);
}
.lede-hero--dark .photo-card-cap { background: var(--c-navy-2); border-top-color: rgba(255, 255, 255, .14); color: var(--c-dark-soft); }
@media (min-width: 56em) {
  .lede-hero--dark .lede-grid { position: relative; }
  .lede-hero--dark .lede-grid > .photo-card { position: relative; z-index: 1; }
  .lede-hero--dark .lede-grid::after {   
    content: ""; position: absolute; z-index: 0; right: -1.25rem; bottom: -1.25rem; width: 46%; height: 78%; border-radius: 1.125rem;
    background: rgba(147, 197, 253, .14); border: 1px solid rgba(147, 197, 253, .3); pointer-events: none;
  }
}
.home-v2 .photo-strip-section { background: var(--c-surface); }
.photo-strip { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 48em) { .photo-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; } }
.photo-strip > li { display: flex; min-width: 0; }
.strip-card { flex: 1; display: flex; flex-direction: column; border-radius: 1rem; transition: transform .2s ease, box-shadow .2s ease; }
.strip-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.strip-card .photo-card-img { aspect-ratio: 4 / 3; }
.strip-card .photo-card-cap { flex: 1; display: grid; align-content: start; gap: .3rem; padding: 1rem 1.15rem 1.15rem; color: var(--c-ink-soft); }
.strip-card .photo-card-cap strong { font: 800 1.1875rem/1.25 var(--font-head); color: var(--c-navy); }
.strip-link { font-weight: 600; margin-top: .25rem; }
.process-split { display: grid; gap: 2rem; align-items: start; }
.home-v2 .process-photo { border-color: rgba(255, 255, 255, .28); background: var(--c-navy-2); }
.home-v2 .process-photo .photo-card-img { aspect-ratio: 4 / 3; }
.home-v2 .process-photo .photo-card-cap { background: var(--c-navy-2); border-top-color: rgba(255, 255, 255, .14); color: var(--c-dark-soft); }
@media (min-width: 64em) {
  .process-split { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; align-items: stretch; }
  .process-split .run-steps { grid-template-columns: minmax(0, 1fr); }
  .home-v2 .process-photo { display: flex; flex-direction: column; }
  .home-v2 .process-photo .photo-card-img { flex: 1; min-height: 0; aspect-ratio: auto; }
}
@media (prefers-reduced-motion: reduce) { .strip-card { transition: none; } .strip-card:hover { transform: none; } }
.lede-hero--service .lede-grid { align-items: center; }
@media (min-width: 56em) {
  .lede-hero--service .lede-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 4rem; padding-block: .75rem 2rem; }
}
.lede-hero--service.lede-hero--dark.lede-hero--photo .photo-card {
  border-radius: 1rem; border: 1px solid rgba(255, 255, 255, .12); background: var(--c-navy-2);
  box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .4); height: auto; max-height: none; align-self: auto;
}
.lede-hero--service .lede-grid::after { content: none; }   
.lede-hero--service .photo-card-img { flex: none; width: 100%; height: auto; min-height: 0; aspect-ratio: 1 / 1; max-height: 480px; object-fit: cover; object-position: 38% 50%; border-radius: 1rem 1rem 0 0; }
.lede-hero--service .photo-card-cap { border-radius: 0 0 1rem 1rem; }
.lede-hero--service .hero-media { display: flex; flex-direction: column; gap: 1rem; min-width: 0; }
.lede-hero--service .hero-fact { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .25rem 1rem; padding: .9rem 1.25rem; border: 1px solid rgba(255, 255, 255, .12); border-radius: .875rem; background: rgba(255, 255, 255, .06); }
.lede-hero--service .hero-fact-k { font-family: var(--font-head); font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--c-link-dark); }
.lede-hero--service .hero-fact-v { font-weight: 600; color: #fff; }
@media (min-width: 56em) {
  .lede-hero--service .lede-grid { align-items: center; }
}
.lede-hero--service .hero-actions { margin-top: 1.75rem; gap: .75rem 1rem; }
.lede-hero--service .btn-call--hero { min-height: 3.5rem; padding-inline: 1.75rem; font-size: 1.1875rem; }
.service-v2 .sv-slate { background: #f4f6f9; --card-bg: #ffffff; }
.service-v2 .sv-white { background: #ffffff; --card-bg: #ffffff; }
.service-v2 .section-head h2 { letter-spacing: -.01em; }
.service-v2 .handoff li, .service-v2 .verdict, .service-v2 .triage-col, .service-v2 .prep-col, .service-v2 .ready, .service-v2 .callout { background: #ffffff; }
.service-v2 main .ready { border: 1px solid #e2e8f0; border-radius: 1rem; box-shadow: inset 0 5px 0 var(--c-link), var(--shadow-card); padding: var(--space-3); }
.service-v2 .verdict-tag small { display: inline-block; margin-top: .35rem; padding: .1rem .55rem; border-radius: 999px; background: var(--c-tint); color: var(--c-ink-soft); font-size: .75rem; font-weight: 600; line-height: 1.5; }
.service-v2 .sv-slate--head { padding-bottom: 3rem; }
.service-v2 .sv-slate--tail { padding-top: 0; }
.service-v2 .sv-slate--tail > .container { border-top: 1px solid #dbe2ec; padding-top: 3rem; }
.service-v2 #route .handoff li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: var(--space-2); padding: 1.5rem; }
.service-v2 #route .handoff li > strong, .service-v2 #route .handoff li > span { grid-column: 1; }
.service-v2 #route .handoff li::after { content: "\2192"; grid-column: 2; grid-row: 1 / span 2; align-self: center; width: 2.25rem; height: 2.25rem; display: grid; place-items: center; border-radius: 50%; background: var(--c-tint); color: var(--c-link); font-size: 1.25rem; font-weight: 700; line-height: 1; transition: transform .2s ease, background-color .2s ease, color .2s ease; }
.service-v2 #route .handoff li:hover::after { transform: translateX(4px); background: var(--c-link); color: #fff; }
.service-v2 #route .handoff li:hover strong a { color: var(--c-link-hover); text-decoration: underline; text-underline-offset: .2em; }
.service-v2 .verdicts { gap: .75rem; }
.service-v2 .verdict { border: 1px solid #e2e8f0; border-radius: .75rem; box-shadow: 0 2px 4px rgba(15, 23, 42, .04); padding: 1.25rem 1.5rem; transition: background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.service-v2 .verdict:hover { background: #f8fafc; border-color: #cbd5e1; transform: translateY(-2px); box-shadow: 0 2px 4px rgba(15, 23, 42, .06), 0 12px 24px -16px rgba(15, 23, 42, .28); }
.service-v2 .verdict-tag { color: var(--c-ink); }
@media (min-width: 48em) {
  .service-v2 .verdict { grid-template-columns: 11.25rem minmax(0, 1fr); gap: 0 var(--space-3); align-items: start; }
  .service-v2 .verdict-tag { padding-right: var(--space-3); border-right: 1px solid #e2e8f0; align-self: stretch; }
}
@media (min-width: 64em) {
  .service-v2 .verdict { grid-template-columns: 11.25rem minmax(0, 1fr) minmax(0, 1fr); gap: 0 var(--space-4); }
  .service-v2 .verdict > div:not(.verdict-tag) { display: contents; }
  .service-v2 .verdict > div:not(.verdict-tag) > p { margin: 0; grid-column: 2; }
  .service-v2 .verdict > div:not(.verdict-tag) > p:nth-child(2) { grid-column: 3; padding-left: var(--space-3); border-left: 1px solid #e2e8f0; }
  .service-v2 .verdict > div:not(.verdict-tag) > p:only-child { grid-column: 2 / -1; }
}
.service-v2 #parts .callout { max-width: none; margin-top: var(--space-3); background: #fffbeb; border: 1px solid #fde68a; border-left-width: 1px; box-shadow: none; }
.service-v2 .prep { background: none; border: 0; box-shadow: none; overflow: visible; gap: var(--space-3); border-radius: 0; }
.service-v2 .prep-col { border: 1px solid #e2e8f0; border-top: 3px solid #1d4ed8; border-radius: 1rem; box-shadow: var(--shadow-card); padding: 1.5rem; }
.service-v2 .prep-col + .prep-col { border-top: 3px solid #0d9488; }
.service-v2 .prep-col h3 { font-size: 1.5rem; margin: 0 0 .25rem; }
.service-v2 .prep-col .mark-list li { padding-block: .6rem; }
.service-v2 .prep-col .mark-list li::before { top: 1.1rem; }
@media (min-width: 48em) { .service-v2 .prep--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; } }
.service-v2 .prep-col + .prep-col .mark-list li::before { background: #0d9488; }
.service-v2 .triage { gap: var(--space-3); }
@media (min-width: 48em) { .service-v2 .triage { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; } }
.service-v2 .triage-col { display: flex; flex-direction: column; border: 1px solid #e2e8f0; border-radius: 1rem; box-shadow: var(--shadow-card); padding: var(--space-3); overflow: visible; }
.service-v2 .triage--chips .triage-col::before { content: "Repair candidate"; align-self: flex-start; margin-bottom: .85rem; padding: .2rem .75rem; border-radius: 999px; background: #dcfce7; color: #14532d; border: 1px solid #86efac; font-family: var(--font-head); font-size: .8125rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; line-height: 1.5; }
.service-v2 .triage--chips .triage-col--now::before { content: "Replacement candidate"; background: #fef3c7; color: #78350f; border-color: #fcd34d; }
.service-v2 .triage-head, .service-v2 .triage-col--now .triage-head { margin: 0 0 var(--space-1); padding: 0 0 var(--space-2); background: none; color: var(--c-ink); border-bottom: 1px solid #e2e8f0; font-size: 1.5rem; }
.service-v2 .triage-col .mark-list { flex: 1; }
.service-v2 .triage-col .mark-list li::before { background: #16a34a; }
.service-v2 .triage-col--now .mark-list li::before { background: #d97706; }
.service-v2 #repair-or-replace .callout { max-width: none; }
.service-v2 .split-2 { display: grid; gap: var(--space-3); align-items: center; }
@media (min-width: 56em) { .service-v2 .split-2 { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 3.5rem; } }
.service-v2 .split-prose > p { margin: 0 0 var(--space-2); max-width: 40rem; }
.service-v2 .split-prose > p:last-child { margin-bottom: 0; }
.service-v2 .callout--card { margin: 0; max-width: none; border: 1px solid #e2e8f0; border-radius: 1rem; padding: var(--space-3); box-shadow: inset 0 5px 0 var(--c-link), var(--shadow-card-hover); font-size: 1.125rem; }
@media (min-width: 56em) { .service-v2 .asks { align-items: center; } }
.service-v2 .faq details { --card-bg: #f8fafc; border-color: #e2e8f0; }
.service-v2 .faq details[open] { --card-bg: #ffffff; }
.service-v2 .related-row { padding-block: 0 3.5rem; }
.service-v2 .related-row > .container { border-top: 1px solid #e2e8f0; padding-top: 3rem; }
.service-v2 .related-row .handoff { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
@media (min-width: 40em) { .service-v2 .related-row .handoff { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64em) { .service-v2 .related-row .handoff { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.service-v2 .related-row .handoff li { display: flex; flex-direction: column; border-radius: .875rem; padding: 1.5rem; min-height: 13rem; }
.service-v2 .rel-tag { display: block; margin: 0 0 .6rem; color: #64748b; font-family: var(--font-head); font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; line-height: 1.4; }
.service-v2 .related-row .handoff strong { margin-bottom: .4rem; font-size: 1.25rem; font-weight: 700; line-height: 1.25; color: var(--c-ink); }
.service-v2 .related-row .handoff strong a { color: var(--c-ink); text-decoration: none; }
.service-v2 .related-row .handoff li:hover strong a { color: var(--c-link); }
.service-v2 .related-row .handoff li::after { content: "\2192"; margin-top: auto; padding-top: .75rem; border-top: 1px solid #e2e8f0; color: var(--c-link); font-size: 1.375rem; font-weight: 700; line-height: 1; text-align: right; transition: transform .2s ease; }
.service-v2 .related-row .handoff li > span { margin-bottom: 1rem; }
.service-v2 .related-row .handoff li:hover::after { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
  .service-v2 .verdict, .service-v2 .related-row .handoff li::after, .service-v2 #route .handoff li::after { transition: none; }
  .service-v2 .verdict:hover, .service-v2 .related-row .handoff li:hover::after, .service-v2 #route .handoff li:hover::after { transform: none; }
}
.service-v2 .callstrip { position: relative; padding-block: 3rem; border-top: 1px solid rgba(147, 197, 253, .3); box-shadow: inset 0 1px 0 rgba(147, 197, 253, .12), inset 0 -1px 0 rgba(147, 197, 253, .12);
  background: radial-gradient(40rem 16rem at 8% 0%, rgba(147, 197, 253, .16), transparent 65%), linear-gradient(135deg, #0f2942 0%, #14355a 100%); }
.service-v2 .callstrip::before { content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(rgba(147, 197, 253, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(147, 197, 253, .06) 1px, transparent 1px); background-size: 3rem 3rem;
  -webkit-mask-image: linear-gradient(100deg, transparent 15%, #000 85%); mask-image: linear-gradient(100deg, transparent 15%, #000 85%); }
.service-v2 .callstrip-in { position: relative; z-index: 1; align-items: center; }
.service-v2 .callstrip-h { max-width: 34em; font-size: clamp(1.375rem, 1rem + 1.3vw, 2rem); line-height: 1.2; }
@media (min-width: 56em) { .service-v2 .callstrip-in { grid-template-columns: minmax(0, 1fr) auto; column-gap: 3rem; } .service-v2 .callstrip { padding-block: 3rem; } }
.lede-hero--service .hero-media { align-self: center; width: 100%; max-width: 32rem; justify-self: center; }
@media (min-width: 56em) { .lede-hero--service .hero-media { justify-self: end; } }
.lede-hero--service.lede-hero--field { padding-bottom: 0; }
.lede-hero--service.lede-hero--field::before { width: auto; background-color: transparent; inset: 0; }
.lede-hero--service.lede-hero--field .lede-grid { padding-bottom: 3rem; }
.lede-hero--service .plate--drawing .plate-frame {
  background: #ffffff; border: 1px solid rgba(255, 255, 255, .12); border-radius: 1rem; padding: 1rem 1.25rem; box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .4);
}
.lede-hero--service .plate--drawing .plate-frame::before { display: none; }
.lede-hero--service .plate-cap { color: var(--c-dark-ink); }
.lede-hero--service .plate-cap span { color: var(--c-link-dark); }
.lede-hero--service .plate-cap small { color: var(--c-dark-soft); }
.lede-hero--service .fig-key { border-top-color: rgba(255, 255, 255, .18); color: var(--c-dark-ink); }
.lede-hero--field.lede-hero--service .lede-copy .lead { max-width: 38rem; }
.service-v2 .lede-hero--dark .eyebrow.route-rule { display: inline-flex; align-items: center; gap: .55rem; padding: .4rem .95rem .4rem .8rem; border-radius: 999px; }
.service-v2 .lede-hero--dark .eyebrow.route-rule::before { content: ""; position: static; flex: none; width: .55rem; height: .55rem; padding: 0; border: 0; border-radius: 50%; background: var(--c-link-dark); box-shadow: 0 0 0 3px rgba(147, 197, 253, .25); }
.lede-hero--guide.lede-hero--dark .guide-hero-grid { align-items: center; }
.lede-hero--guide.lede-hero--dark .reviewed { color: var(--c-dark-soft); }
.lede-hero--guide.lede-hero--dark .quick {
  background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .16); border-top: 4px solid var(--c-amber-rim); border-radius: 1rem; box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .4);
}
.lede-hero--guide.lede-hero--dark .quick a { color: var(--c-link-dark); }
@media (min-width: 64em) { .service-v2 .related-row .handoff:has(> li:nth-child(5)) { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.service-v2 .sv-slate.faq details, .service-v2 .sv-slate.faq details[open] { --card-bg: #ffffff; }
.service-v2 .photo-band { background: #ffffff; padding-block: 3rem 0; }
.service-v2 .photo-band + .section { padding-top: 3.5rem; }
.service-v2 .section.pb-0 { padding-bottom: 0; }
.service-v2 .section.tone-tint { --card-bg: #ffffff; }
.service-v2 main :is(.causes .cause, .read-grid li, .ask, .loc-list li, .split-cell, .sit, .contact, .areaband-card, .quick:not(.on-dark)) {
  border: 1px solid #e2e8f0; border-radius: 1rem; box-shadow: var(--shadow-card);
}
.service-v2 main :is(.causes .cause, .read-grid li, .ask, .loc-list li, .split-cell, .sit) { background: #ffffff; }
.service-v2 main .loc-list li { border-radius: .875rem; }
.service-v2 main .causes .cause { padding: 1.5rem; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.service-v2 main .causes .cause:hover { border-color: #cbd5e1; transform: translateY(-2px); box-shadow: 0 2px 4px rgba(15, 23, 42, .06), 0 12px 24px -16px rgba(15, 23, 42, .28); }
.service-v2 main .sit { overflow: hidden; }
.service-v2 main .sit--gas { border-color: var(--c-alert); }
.service-v2 main .contact { box-shadow: inset 0 5px 0 var(--c-ink), var(--shadow-card); }
.service-v2 main .contact--911 { background: var(--c-alert-bg); border-color: var(--c-alert); box-shadow: inset 0 5px 0 var(--c-alert), var(--shadow-card); }
.service-v2 main .contact--plumber { background: var(--c-dark); border-color: var(--c-dark); box-shadow: inset 0 5px 0 var(--c-call-dark), var(--shadow-card); }
.service-v2 main .pair > .ready { border-radius: 1rem; }
.service-v2 main .pair > .avoid { border-radius: 1rem; box-shadow: var(--shadow-card); }
.service-v2 main .split-strip { gap: var(--space-3); align-items: stretch; }
.service-v2 main .split-cell { padding: 1.5rem; }
.service-v2 .triage-note { max-width: none; }
.service-v2 .moves { gap: var(--space-2); }
.service-v2 .moves > li { background: #ffffff; border: 1px solid #e2e8f0; border-top: 3px solid var(--c-link); border-radius: 1rem; box-shadow: var(--shadow-card); padding: 1.25rem 1.5rem 1.5rem; }
.service-v2 .moves > li::before { font-size: 3rem; margin-bottom: .5rem; }
@media (min-width: 72em) { .service-v2 .moves > li::before { font-size: 3.5rem; } }
.service-v2 main .guide-body .handoff li { padding: 1.25rem 1.5rem; }
.service-v2 main .read-grid li { padding: 1.5rem; }
.service-v2 main .plate--drawing .plate-frame {
  background: #ffffff; border: 1px solid #e2e8f0; border-radius: 1rem; box-shadow: var(--shadow-card); padding: 1rem 1.25rem;
}
.service-v2 main .plate--drawing .plate-frame::before { display: none; }
.service-v2 main .plate--drawing .plate-cap, .service-v2 main .plate--drawing .fig-key { padding-inline: .25rem; }
.service-v2 main .on-dark .plate--drawing .plate-frame { background: #ffffff; border-color: rgba(255, 255, 255, .14); box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .4); }
.service-v2 main .plate:not(.plate--drawing) .plate-frame { border-radius: 1rem; box-shadow: var(--shadow-card); }
.service-v2 .photo-band .photo-card, .service-v2 main .photo-card:not(.emergency-photo) { border-radius: 1rem; box-shadow: var(--shadow-card); }
.service-v2 .photo-band .photo-card { border: 1px solid #e2e8f0; overflow: hidden; }
.service-v2 .photo-band .photo-card-img { max-height: 480px; object-fit: cover; }
.service-v2 .emergency-hero .photo-card { border-radius: 1rem; }
.service-v2 .start-panel { border-radius: 1rem; }
.service-v2 .sit-head { background: #f8fafc; }
.service-v2 .sit--gas .sit-head { background: var(--c-alert-bg); }
.service-v2 .sit--minor { background: #ffffff; }
.service-v2 .map-frame, .service-v2 .areaband-map .map-frame { border: 1px solid #e2e8f0; border-radius: 1rem; overflow: hidden; box-shadow: var(--shadow-card); background: #ffffff; }
.guide-v2 main { background: #f4f6f9; --card-bg: #ffffff; }
.guide-v2 .photo-band { background: #f4f6f9; }
.guide-v2 .guide-layout { padding-block: 3rem 4rem; }
.guide-v2 .toc { border: 1px solid #e2e8f0; border-radius: 1rem; background: #ffffff; box-shadow: var(--shadow-card); padding: 1.25rem 1.5rem; }
.guide-v2 .guide-body h2 { letter-spacing: -.01em; }
.guide-v2 .guide-body .aside-call { border-radius: 1rem; box-shadow: 0 12px 30px -12px rgba(15, 41, 66, .5); }
.guide-v2 .guide-body :is(.verdict, .callout) { background: #ffffff; }
