/* ==========================================================================
   PlumberFinderUSA site.css  (BK1, 2026-11-04)
   ONE stylesheet for every front-end page. Load order: tokens.css -> site.css.
   Never put a raw colour, size, radius, shadow or duration here: use a token
   from tokens.css. Change a token once and it changes everywhere.
   Layers in this file:
     1. Base + layout + type helpers
     2. Components (buttons, links, labels, forms, ratings, lists, FAQ, pager)
     3. Chrome (nav, footer, mobile bar)
     4. Templates (home stage, search, area, profile, join, 404)
     5. Pages layer (page mast, doc, card, steps, band, alerts, auth, blog,
        specialty guides, WPForms)   <- appended at the end
     6. Motion + reduced motion
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font:var(--w-regular) var(--t-base)/var(--lh-body) var(--body-font);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
button,input,select{font:inherit;color:inherit}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:var(--s4);top:-64px;z-index:100;background:var(--white);color:var(--ink);padding:var(--s3) var(--s4);border-radius:var(--r-sm);font-weight:var(--w-semi)}
.skip:focus{top:var(--s4)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.on-stage :focus-visible,.stage :focus-visible,.band :focus-visible,.pfspec-hero :focus-visible,.pfspec-cta-section :focus-visible{outline-color:var(--white)}
.wrap{max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:0 var(--pad)}
.num{font-variant-numeric:tabular-nums}
.ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ico-sm{width:16px;height:16px}
.display{font:var(--w-regular) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance}
.h2{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance}
.lead{font-size:var(--t-lg);line-height:var(--lh-body);color:var(--muted);max-width:34em}
@media (min-width:768px){.lead{font-size:var(--t-lg)}}
.stage .lead{color:var(--white)}
.fine{font-size:var(--t-sm);color:var(--muted)}
.gattr{font-family:"Roboto Attrib",Roboto,Arial,sans-serif;font-weight:var(--w-medium);color:var(--gattr)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:48px;padding:0 var(--s5);border-radius:var(--pill);border:0;font-weight:var(--w-semi);font-size:var(--t-base);text-decoration:none;cursor:pointer;transition:background-color var(--d-fast) var(--ease),transform var(--d-fast) var(--ease)}
.btn-primary{background:var(--navy);color:var(--white)}
.btn-primary:hover{background:var(--navy-2)}
.btn-white{background:var(--white);color:var(--navy)}
.btn-white:hover{background:var(--paper)}
.btn-lg{min-height:56px;padding:0 var(--s6);font-size:var(--t-lg)}
.btn-block{width:100%}
.tlink{gap:var(--s2);font-weight:var(--w-semi);color:var(--link);text-decoration:none}
.tlink:hover{text-decoration:underline;text-underline-offset:4px}
.stage{background:var(--navy);color:var(--white);position:relative}
.states{display:grid;grid-template-columns:1fr;column-gap:var(--s6)}
.states a{display:flex;justify-content:space-between;align-items:center;min-height:48px;border-bottom:1px solid var(--line);text-decoration:none;font-size:var(--t-lg)}
.states a span{color:var(--muted);font-size:var(--t-base)}
.states a:hover{color:var(--link)}
@media (min-width:600px){.states{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.states{grid-template-columns:repeat(3,1fr)}}
.ledger{border-top:1px solid var(--on-dark-line)}
.ledger div{display:grid;grid-template-columns:1fr auto;gap:var(--s1) var(--s5);padding:var(--s5) 0;border-bottom:1px solid var(--on-dark-line)}
.ledger b{font-size:var(--t-lg)}
.ledger em{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);font-style:normal;text-align:right;grid-row:span 2;align-self:center}
.ledger span{color:var(--on-dark);font-size:var(--t-base)}
.av{width:56px;height:56px;border-radius:var(--r-sm);overflow:hidden;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;font:var(--w-regular) var(--t-xl)/var(--lh-tight) var(--display-font);color:var(--muted)}
.av img{width:100%;height:100%;object-fit:cover}
.rmeta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s3);margin-top:var(--s1);font-size:var(--t-sm);color:var(--muted)}
.stars{display:inline-flex;gap:1px}
.stars svg{width:14px;height:14px}
.rating{display:inline-flex;align-items:center;gap:var(--s2)}
.rating strong{font-weight:var(--w-semi);color:var(--ink)}
.lbl{display:inline-flex;align-items:center;min-height:24px;padding:0 var(--s2);border-radius:var(--pill);font-size:var(--t-xs);font-weight:var(--w-semi);vertical-align:middle;margin-left:var(--s2)}
.lbl-feat{background:var(--copper);color:var(--ink)}
.lbl-ex{box-shadow:var(--sh-ring);color:var(--muted)}
.lbl-soon{background:var(--white);color:var(--navy)}
.ledger em small{font-size:var(--t-lg)}
.rtop{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4);font-size:var(--t-sm);color:var(--muted)}
.seg{display:inline-flex;gap:var(--s1)}
.seg a{display:inline-flex;align-items:center;gap:var(--s2);min-height:40px;padding:0 var(--s4);border-radius:var(--pill);text-decoration:none;font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--muted)}
.seg a[aria-current]{background:var(--ink);color:var(--white)}
.seg a:not([aria-current]):hover{background:var(--line)}
.list{background:var(--white);border-radius:var(--r);overflow:hidden}
.crumbs{display:flex;flex-wrap:wrap;gap:var(--s2);font-size:var(--t-sm)}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.mast{padding:var(--s7) 0 0}
.mast h1{margin-top:var(--s5)}
.mast .lead{margin-top:var(--s5)}
.mast-edge{position:relative;z-index:2}
.cfacts{display:flex;flex-wrap:wrap;gap:var(--s5) var(--s7);margin-top:var(--s6)}
.cfacts div{display:flex;flex-direction:column}
.cfacts b{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font)}
.cfacts span{font-size:var(--t-sm);color:var(--on-dark)}
.cbody{padding:var(--s9) 0 var(--sec)}
.cbody .wrap{display:grid;gap:var(--s8)}
.side{display:grid;gap:var(--s7);align-content:start}
.side h2{font:var(--w-regular) var(--t-xl)/var(--lh-head) var(--display-font);margin-bottom:var(--s3)}
.side h2.serif{font-size:var(--t-2xl)}
.nearby a{display:flex;justify-content:space-between;align-items:center;min-height:48px;border-bottom:1px solid var(--line);text-decoration:none}
.nearby a span{color:var(--muted);font-size:var(--t-sm)}
.nearby a:hover{color:var(--link)}
.prose{margin-top:var(--s8);max-width:40em}
.prose h2{font:var(--w-regular) var(--t-2xl)/var(--lh-head) var(--display-font);margin-bottom:var(--s4)}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);min-height:64px;font-size:var(--t-lg);font-weight:var(--w-semi);cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{transition:transform var(--d-fast) var(--ease)}
.faq details[open] summary .ico{transform:rotate(90deg)}
.faq details p{padding:0 0 var(--s5);color:var(--muted);max-width:36em}
@media (min-width:960px){.cbody .wrap{grid-template-columns:8fr 4fr;gap:var(--s9)}}
.pmast{padding:var(--s6) 0 var(--s9)}
.pmast .who{display:grid;gap:var(--s5);margin-top:var(--s6)}
.pmast .av{width:96px;height:96px;border-radius:var(--r)}
.pmast h1{font:var(--w-regular) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance;max-width:14ch}
.pmast .rmeta{color:var(--on-dark);font-size:var(--t-base);margin-top:var(--s4)}
.pmast .rating strong{color:var(--white)}
.pmast .acts{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center;margin-top:var(--s6)}
.pmast .acts .tlink{color:var(--white)}
@media (min-width:768px){.pmast .who{grid-template-columns:96px 1fr;gap:var(--s6);align-items:start}}
.facts{border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:1fr;gap:var(--s1);padding:var(--s4) 0;border-bottom:1px solid var(--line)}
.facts dt{font-size:var(--t-sm);color:var(--muted)}
.facts dd{font-size:var(--t-lg)}
.facts dd a{color:var(--link);text-underline-offset:3px}
@media (min-width:768px){.facts div{grid-template-columns:200px 1fr;align-items:baseline}}
.claim{background:var(--white);border-radius:var(--r);padding:var(--s6)}
.claim p{color:var(--muted);margin:var(--s3) 0 var(--s5)}
/* Form fields: ONE system for join, login, contact and manage-listing. Labels above, 48px boxes, 16px text (no iOS zoom). */
.fld{display:grid;gap:var(--s1);align-content:start;min-width:0}
.fld label,.pick legend{font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--ink)}
.fld input,.fld select{width:100%;min-height:48px;border:1px solid var(--muted);border-radius:var(--r-sm);padding:0 var(--s3);background:var(--white);color:var(--ink);font:inherit;font-size:var(--t-base);transition:border-color var(--d-fast) var(--ease)}
.fld select{appearance:none;-webkit-appearance:none;padding-right:var(--s7);background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A1533' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right var(--s3) center/var(--s5) var(--s5)}
.fld input:hover,.fld select:hover{border-color:var(--ink)}
.fld input:focus,.fld select:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}
.fld [aria-invalid=true]{border-color:var(--err)}
.fld [aria-invalid=true]:focus{outline-color:var(--err);border-color:var(--err)}
.ferr{display:flex;gap:var(--s1);align-items:center;font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--err)}
.ferr[hidden]{display:none}
.fld .ferr{min-height:calc(var(--t-sm) * var(--lh-body))}
.fld .ferr[hidden]{display:flex;visibility:hidden} /* bk17b: error slot reserved, nothing below moves when a message appears */
/* Choice cards (radio): plan + billing pickers */
.pick{display:grid;gap:var(--s2);min-width:0;margin:0;padding:0;border:0}
.pick legend{padding:0;margin-bottom:var(--s2)}
.pick-o{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 var(--s3);align-items:center;min-height:var(--tap);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--white);color:var(--ink);cursor:pointer;transition:border-color var(--d-fast) var(--ease),background-color var(--d-fast) var(--ease)}
.pick-o:hover{border-color:var(--muted)}
.pick-o:has(input:checked){border-color:var(--navy);background:var(--paper)}
.pick-o:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
.pick-o input{width:var(--s5);height:var(--s5);margin:0;accent-color:var(--navy)}
.pick-o input:focus-visible{outline:0}
.pick-o b{font-weight:var(--w-semi)}
.pick-o small{grid-column:2;font-size:var(--t-sm);color:var(--muted)}
@media (min-width:480px){.pick-2,.jform4 .ticks{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sec-tight{padding:0 0 var(--sec)}
.shead{display:grid;gap:var(--s4);margin-bottom:var(--s7)}
@media (min-width:960px){.shead{grid-template-columns:6fr 6fr;align-items:end}}
.tbl{width:100%;border-collapse:collapse;font-size:var(--t-base)}
.tbl th,.tbl td{padding:var(--s4) var(--s3);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl th:first-child,.tbl td:first-child{padding-left:0}
.tbl thead th{font-weight:var(--w-semi);font-size:var(--t-sm);color:var(--muted);vertical-align:bottom}
.tbl .r{text-align:right;font-variant-numeric:tabular-nums}
.plans thead th{font-size:var(--t-base);color:var(--ink)}
.plans thead th small{display:block;font:var(--w-regular) var(--t-2xl)/var(--lh-head) var(--display-font);margin-top:var(--s2)}
.plans thead th small i{font:var(--w-regular) var(--t-sm)/var(--lh-tight) var(--body-font);font-style:normal;color:var(--muted)}
.plans thead th.fcol{background:var(--white);border-top:4px solid var(--copper)}
.plans td.fcol{background:var(--white)}
.plans td{text-align:center}
.plans td:first-child{text-align:left}
.plans th{text-align:center}
.plans th:first-child{text-align:left}
.plans .yes{color:var(--ink)}
.plans .no{color:var(--muted)}
.plans tfoot td{border-bottom:0;padding-top:var(--s5)}
.plans tfoot .btn{min-height:var(--tap);padding:0 var(--s4);font-size:var(--t-sm);width:100%}
.btn-ghost{box-shadow:var(--sh-ring);background:transparent;color:var(--ink)}
.btn-ghost:hover{background:var(--white)}
.tscroll{overflow-x:auto}
@media (max-width:599px){.plans th,.plans td{padding:var(--s3) var(--s2);font-size:var(--t-sm)}
.plans thead th small{font-size:var(--t-xl)}}
.offer{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:baseline;padding:var(--s5) 0;border-top:4px solid var(--copper);margin-bottom:var(--s5)}
.offer b{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);font-weight:var(--w-regular)}
.split{display:grid;gap:var(--s7)}
@media (min-width:960px){.split{grid-template-columns:5fr 7fr;gap:var(--s9)}}
.rules{border-top:1px solid var(--line)}
.rules div{padding:var(--s5) 0;border-bottom:1px solid var(--line);display:grid;gap:var(--s1)}
.rules dt{font-weight:var(--w-semi);font-size:var(--t-lg)}
.rules dd{color:var(--muted)}
@media (min-width:768px){.rules div{grid-template-columns:240px 1fr;gap:var(--s5)}}
.tbl .us{font-weight:var(--w-semi);color:var(--link)}
.nf{min-height:calc(100svh - var(--nav-h));padding:var(--s7) 0 var(--s9);display:flex;align-items:center}
.nf .wrap{display:grid;gap:var(--s6);width:100%;position:relative}
.nf h1{max-width:8ch}
.nf .lead{margin-top:var(--s5)}
.nf .more{margin-top:var(--s6);font-size:var(--t-base)}
.nf .more a{color:var(--white);text-underline-offset:3px;margin-right:var(--s4);display:inline-block;min-height:32px}
.nf figure img{width:clamp(120px,24vw,280px)}
@media (min-width:960px){.nf .wrap{grid-template-columns:1fr auto;align-items:end}}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:var(--s3) var(--pad) calc(var(--s3) + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);transition:transform var(--d-fast) var(--ease)}
.mbar.is-hidden{transform:translateY(110%)}
@media (min-width:960px){.mbar{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
.cbody .wrap>*{min-width:0}
@media (max-width:767px){.mast-edge{transform:translateY(72px)}
.cbody.after-edge{padding-top:calc(var(--nav-h) + var(--s6))}}
.tlink{display:inline-flex;align-items:center;min-height:var(--tap)}
.illus{position:absolute;z-index:6;right:var(--pad);bottom:var(--s3)}
.giant{font:var(--w-regular) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);text-wrap:balance}
@supports (animation-timeline:scroll()){}
.js-rv .rv{opacity:0;transform:translateY(40px);transition:opacity var(--d-slow) var(--ease),transform var(--d-slow) var(--ease)}
.js-rv .rv.in{opacity:1;transform:none}
.say3{display:grid;gap:var(--s4);margin-top:var(--s6)}
.say3 .say{font-size:var(--t-xl);line-height:var(--lh-head);max-width:22em}
.say3 .fine{color:var(--on-dark)}
@media (min-width:960px){.say3{margin-left:50%}
.say3 .say{font-size:var(--t-xl)}}
.browse3{padding:var(--sec) 0;background:var(--paper)}
.browse3-grid{display:grid;gap:var(--s7);margin-top:var(--s8)}
.browse3 .lead a{color:var(--link);text-underline-offset:3px}
@media (min-width:960px){.browse3-grid{grid-template-columns:4fr 8fr;gap:var(--s9)}}
.pros3{position:relative;background:var(--navy);color:var(--white);overflow:hidden}
.pros3-img{position:absolute;inset:0}
.pros3-img img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.pros3::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,var(--navy) 0%,var(--scrim) 45%,transparent 100%)}
.pros3-in{position:relative;z-index:2;display:grid;gap:var(--s7);padding-top:var(--sec);padding-bottom:var(--sec)}
.pros3-copy h2{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);max-width:11ch}
.pros3-copy p{margin:var(--s5) 0 var(--s6);font-size:var(--t-lg);max-width:24em;color:var(--on-dark)}
.pros3 .ledger{align-self:end;background:var(--scrim);backdrop-filter:blur(8px);padding:0 var(--s5);border-radius:var(--r);border-top:0}
.pros3 .ledger div{border-bottom-color:var(--on-dark-line)}
.pros3 .ledger div:last-child{border-bottom:0}
@media (min-width:960px){.pros3-in{grid-template-columns:7fr 5fr;gap:var(--s9)}}
@media (prefers-reduced-motion:reduce){.js-rv .rv{opacity:1;transform:none}}
.illus{background:var(--scrim);padding:2px var(--s2);border-radius:var(--r-sm);text-shadow:none}
@media (max-width:767px){
 .pros3::before{background:linear-gradient(180deg,var(--navy),var(--scrim))}
}
.stage.nf{background:linear-gradient(90deg,var(--navy) 0%,var(--scrim) 60%,transparent),url(assets/stage-wide-1280.webp) 70% 60%/cover no-repeat var(--navy)}
.mast h1.display{font-size:var(--t-display);letter-spacing:var(--tr-display)}
.nf h1.display{font-size:var(--t-display);letter-spacing:var(--tr-display);line-height:var(--lh-tight)}
.stage.mast::after,.stage.pmast::after,.stage.nf::after,.pfspec-hero::after{content:none;position:absolute;right:var(--pad);bottom:var(--s4);font-size:var(--t-xs);background:var(--scrim);color:var(--white);padding:var(--s1) var(--s2);border-radius:var(--r-sm)}
.stage.nf{position:relative}
.giant em{color:var(--copper-d);font-style:italic}
.illus{font-size:var(--t-xs);letter-spacing:normal;color:var(--on-dark)}
.btn-copper{background:var(--copper);color:var(--navy)}
.btn-copper:hover{background:var(--copper-hi)}
.kick{font-size:var(--t-sm);font-weight:var(--w-semi);letter-spacing:normal;color:var(--copper-d)}
.stage4{--H:clamp(64px,min(10.4vw,17svh),150px);position:relative;height:100svh;min-height:680px;max-height:1000px;overflow:hidden;background:var(--navy);color:var(--white);isolation:isolate}
.stage4-media{position:absolute;inset:0;z-index:-2}
.stage4-media img{width:100%;height:100%;object-fit:cover;object-position:62% 72%}
.stage4-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--scrim) 0%,transparent 40%,transparent 60%),linear-gradient(180deg,var(--scrim) 0%,transparent 22%)}
.stage4-fig{position:absolute;z-index:1;left:58%;bottom:1.5%;height:min(70%,640px);pointer-events:none}
.plumby4{display:block;height:100%;width:auto}
.stage4-in{position:relative;z-index:2;padding-top:calc(var(--nav-h) + clamp(20px,9svh,88px))}
.stage4 .illus{right:var(--pad);bottom:var(--s4);left:auto}
.h4-a{display:block;font:var(--w-semi) var(--t-display)/var(--lh-tight) var(--display-font)}
.h4-a>span{display:block;white-space:nowrap}
.h4-b{display:block;text-align:right;margin-top:calc(var(--H) * .14);font:italic 400 var(--t-2xl)/var(--lh-tight) var(--display-font);color:var(--copper)}
.ss{display:block;margin-top:calc(var(--H) * .42);max-width:12.2em;font:var(--w-regular) var(--t-2xl)/var(--lh-head) var(--display-font);color:var(--white)}
.ss-w{white-space:nowrap}
.ss-f{display:inline-block;vertical-align:baseline}
.ss-f input{font:inherit;letter-spacing:inherit;color:var(--white);background:transparent;border:0;border-bottom:3px solid var(--copper);border-radius:0;padding:0 .08em;margin:0 .06em;min-height:var(--tap);height:1.3em;vertical-align:baseline;caret-color:var(--copper)}
.ss-q input{width:5.3em}
.ss-z input{width:3.1em}
.ss-f input::placeholder{color:var(--on-dark);opacity:1}
.ss-f input:focus{outline:none;background:var(--on-dark-line)}
.ss-f input:focus-visible{outline:2px solid var(--white);outline-offset:4px}
.ss-go{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:max(44px,1.25em);height:max(44px,1.25em);margin-left:.22em;border:0;border-radius:var(--pill);background:var(--copper);color:var(--navy);cursor:pointer;transition:transform var(--d-fast) var(--ease),background-color var(--d-fast) var(--ease)}
.ss-go svg{width:52%;height:52%;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ss-go:hover{background:var(--copper-hi);transform:translateX(3px)}
.ss-go:focus-visible{outline:2px solid var(--white);outline-offset:3px}
.stage4-note{margin-top:var(--s4);font-size:var(--t-sm);color:var(--on-dark)}
@media (max-width:767px){
 .stage4{--H:19.6vw}
 .ss{max-width:none;line-height:var(--lh-body)}
 .ss-q input{width:5.6em}
}
.run{position:relative}
/* PIPE v3.1: tube = copper-d edge 8 / copper body 4 / copper-hi 2 offset 1px up-left (2px dark | 2px hi | 2px copper | 2px dark, reads on cream and navy), square ends. Fittings are HTML: token radius + token shadow, fade/scale in (transform+opacity only) */
.pipe{position:absolute;left:0;top:0;width:100%;z-index:4;pointer-events:none;overflow:visible;contain:layout paint}
.pipe path{fill:none;stroke-linecap:butt;stroke-linejoin:round}
.p-edge{stroke:var(--copper-d);stroke-width:8}
.p-body{stroke:var(--copper);stroke-width:4}
.p-hi{stroke:var(--copper-hi);stroke-width:2;transform:translate(-1px,-1px)}
.pipe-fx{position:absolute;inset:0;z-index:6;pointer-events:none}
.pf{position:absolute;display:block;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity var(--d-fast) var(--ease),transform var(--d-fast) var(--ease);background:linear-gradient(180deg,var(--copper-hi),var(--copper),var(--copper-d));border-radius:var(--r-sm);box-shadow:var(--sh-card)}
.pf.on{opacity:1;transform:translate(-50%,-50%)}
.pf-plate{width:var(--s6);height:var(--s3);box-shadow:var(--sh-float)}
.pipe-tight .pf-plate{width:var(--s5)}
.pf-flange{width:var(--s2);height:var(--s6);background:linear-gradient(90deg,var(--copper-hi),var(--copper),var(--copper-d))}
.run>.statement4{z-index:5}
@media (max-width:767px){.home{--pad:var(--s6)}
.pf-plate{width:var(--s5)}
.pf-flange{height:var(--s5)}}
@media (prefers-reduced-motion:reduce){.pipe,.pipe-fx{display:none}}
.res4{background:var(--paper);color:var(--ink);padding:var(--s10) 0 var(--s10)}
.res4-head{max-width:980px}
.res4-h{margin-top:var(--s3);font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);text-wrap:balance}
.res4-h em{display:block;font-style:italic;color:var(--copper-d)}
.res4-sub{margin-top:var(--s5);font-size:var(--t-lg);color:var(--muted);max-width:30em}
.list4{margin-top:var(--s8);border-top:2px solid var(--ink)}
.row4{display:grid;grid-template-columns:172px minmax(0,1fr) auto;gap:var(--s6);align-items:center;padding:var(--s6) 0;border-bottom:1px solid var(--line)}
.r4-score{margin:0;display:flex;flex-direction:column;gap:var(--s2)}
.r4-num{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);font-variant-numeric:lining-nums tabular-nums;color:var(--ink);transition:color var(--d-med) var(--ease)}
.row4.lit .r4-num{color:var(--copper-d)}
.r4-score .stars svg{width:15px;height:15px}
.r4-name{font:var(--w-medium) var(--t-xl)/var(--lh-head) var(--display-font);margin:0}
.r4-name a{text-decoration:none;color:inherit}
.r4-name a:hover{text-decoration:underline;text-underline-offset:4px}
.r4-meta{margin-top:var(--s2);display:flex;flex-wrap:wrap;gap:0 var(--s3);font-size:var(--t-sm);color:var(--muted)}
.r4-meta span+span::before{content:"·";margin-right:var(--s3)}
.r4-tags{margin-top:var(--s2);display:flex;gap:var(--s2)}
.r4-call{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s2)}
.r4-tel{display:inline-flex;align-items:center;min-height:48px;font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);color:var(--ink);text-decoration:none;border-bottom:2px solid var(--copper);transition:color var(--d-fast) var(--ease),border-color var(--d-fast) var(--ease)}
.r4-tel:hover{color:var(--copper-d);border-bottom-color:var(--copper-d)}
.r4-tel.is-off{color:var(--muted);border-bottom:2px dashed var(--line)}
.row4.feat{background:var(--white);margin:0 calc(-1*var(--s4));padding-left:var(--s4);padding-right:var(--s4)}
.r4-note{grid-column:1/-1;margin:0}
.filt4{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center;margin-top:var(--s6)}
.filt4 fieldset{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s2)}
.chip{display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--tap);padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--pill);font-size:var(--t-sm);background:var(--white);cursor:pointer}
.chip small{color:var(--muted)}
.chip input{accent-color:var(--copper-d);width:18px;height:18px;margin:0}
.filt4 .seg{margin-left:auto}
@media (max-width:767px){
 .res4{padding:var(--s9) 0}
 .row4{grid-template-columns:72px minmax(0,1fr);gap:var(--s2) var(--s4);padding:var(--s5) 0}
 .r4-num{font-size:var(--t-2xl)}
 .r4-score .stars svg{width:11px;height:11px}
 .r4-call{grid-column:2;align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:var(--s2) var(--s4)}
 .r4-tel{font-size:var(--t-2xl)}
 .filt4 .seg{margin-left:0}
}
.statement4{position:relative;background:var(--navy);color:var(--white);padding:var(--sec) 0;overflow:hidden;isolation:isolate}
.statement4-img{position:absolute;inset:0}
.statement4-img img{width:100%;height:100%;object-fit:cover;object-position:80% 50%}
.statement4::before{content:"";position:absolute;inset:0;z-index:-1}
.bignum4{font:var(--w-regular) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);font-variant-numeric:lining-nums}
.statement4 .say3 .fine{color:var(--on-dark)}
.statement4 .illus{bottom:var(--s4)}
.pros4 .pros3-img img{object-position:70% 50%}
.pros4::before{background:linear-gradient(90deg,var(--navy) 0%,var(--scrim) 45%,transparent 100%)}
.pros4 .pros3-copy h2{font-weight:var(--w-regular)}
.pros4 .ledger{background:var(--scrim)}
.smast4{--H:clamp(56px,7.4vw,108px);position:relative;color:var(--white);background:var(--navy);isolation:isolate;padding:calc(var(--nav-h) + var(--s8)) 0 var(--s9)}
.smast4-img{position:absolute;inset:0;z-index:-2}
.smast4-img img{width:100%;height:100%;object-fit:cover;object-position:85% 60%}
.smast4::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--scrim),var(--scrim) 60%,transparent)}
.smast4 .kick{color:var(--copper)}
.smast4-h{margin-top:var(--s3);font:var(--w-semi) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);max-width:13ch;text-wrap:balance}
.smast4 .ss{margin-top:var(--s6);max-width:none;font-size:var(--t-2xl)}
.smast4 .illus{right:var(--pad);bottom:var(--s4)}
@media (max-width:767px){.smast4{padding:calc(var(--nav-h-m) + var(--s6)) 0 var(--s8)}
.smast4-img img{object-position:58% 100%}
.smast4::before{background:linear-gradient(180deg,var(--scrim),var(--scrim))}
.smast4 .ss{font-size:var(--t-2xl);line-height:var(--lh-body)}}
.empty4{max-width:860px}
.sugg4{display:grid;gap:var(--s4);margin-top:var(--s7)}
.sugg4 a{display:flex;align-items:baseline;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--line);text-decoration:none;font:var(--w-regular) var(--t-xl)/var(--lh-head) var(--display-font)}
.sugg4 b{font:var(--w-regular) var(--t-2xl)/var(--lh-tight) var(--display-font);color:var(--copper-d);min-width:1.2em}
.stage .ss{font-size:var(--t-2xl);max-width:none;margin-top:var(--s5)}
.jstage4{--H:clamp(60px,8.6vw,132px);position:relative;color:var(--white);background:var(--navy);isolation:isolate;padding:calc(var(--nav-h) + var(--s7)) 0 var(--s9);overflow:hidden}
.jstage4-img{position:absolute;inset:0;z-index:-2}
.jstage4-img img{width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.jstage4-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--scrim),transparent 50%,transparent 70%)}
.jstage4-in{position:relative;display:grid;gap:var(--s6)}
.h4-join .h4-a{font-size:var(--t-display)}
.jproof4{display:none} /* bk17c: phone-only social proof, replaces the hidden lead */
.jlead4{margin-top:var(--s5);max-width:26em;font-size:var(--t-lg);line-height:var(--lh-body);color:var(--on-dark)}
.jstage4-fig{position:absolute;left:62%;bottom:calc(-1*var(--s9));height:min(560px,62vh);pointer-events:none;z-index:0}
.jform4{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s4);max-width:640px;padding:var(--s6);border-radius:var(--r);background:var(--white);color:var(--ink);box-shadow:var(--sh-float)}
.jform4 h2{font:var(--w-regular) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title)}
.jform4-sub{margin-top:calc(-1*var(--s2));color:var(--muted)}
.jform4 .disc{font-size:var(--t-sm);color:var(--ink)}
.jform4 .ticks{grid-template-columns:minmax(0,1fr);gap:var(--s2) var(--s4);font-size:var(--t-sm);color:var(--muted);padding-top:var(--s4);border-top:1px solid var(--line)}
.jform4 .tlink{min-height:var(--tap);font-size:var(--t-sm)}
.h4-join .h4-b{text-align:left}
.jform4 .fine{color:var(--muted)}
.jform4 .fine:empty{display:none}
.jform4 .check{justify-self:start;margin-top:calc(-1*var(--s2))}
.jform4 .check[hidden]{display:none}
.jform4 .ticks .ico{color:var(--copper-d)}
.jform4 .ticks .tk-wide{grid-column:1/-1}
.jform4 .consent{justify-self:stretch;margin-top:0;align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--muted);border-radius:var(--r-sm);color:var(--ink);line-height:var(--lh-body)}
.jform4 .consent input{margin-top:3px;flex:none}
.jform4 .consent:has([aria-invalid=true]){border-color:var(--err);box-shadow:inset 0 0 0 1px var(--err)}
.jform4 .consent:has(:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
.jform4 .consent a{color:var(--link);text-decoration:underline;text-underline-offset:2px}
.jform4 #cc-e{margin-top:calc(-1*var(--s2))}
.claiming{padding:var(--s3) var(--s4);border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line)}
.claiming-k{font-size:var(--t-xs);font-weight:var(--w-semi);color:var(--muted)}
.fld input[readonly]{background:var(--paper);border-color:var(--line);cursor:default}
.jstage4 .illus{right:var(--pad);bottom:var(--s4)}
@media (min-width:768px) and (max-width:1179px){.jstage4-fig{display:none}} /* bk15b hotfix: Plumby only where he clears the 640px card */
@media (max-width:767px){
 .jstage4{padding:calc(var(--nav-h-m) + var(--s6)) 0 var(--s8)}
 .jstage4-img img{object-position:78% 50%}
 .jstage4-shade{background:linear-gradient(180deg,var(--scrim),transparent 45%,var(--scrim))}
 .jstage4 .jproof4{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s3);font-size:var(--t-sm);line-height:var(--lh-body);color:var(--on-dark)}
 .jstage4 .jproof4 .ico{color:var(--copper);flex:none}
 .jstage4 .jlead4{display:none} /* bk17b: headline + card subhead carry the message on phones; form starts higher */
 .jstage4-fig{display:none} /* bk17b: form starts right under the copy on phones; Plumby shows from 1180px */
 .jform4{padding:var(--s5)}
 .jstage4 .illus{display:none}
}
@media (prefers-reduced-motion:no-preference){
 .h4-a>span{animation:fadeup 1s var(--ease) both}
.h4-a>span+span{animation-delay:.08s}
 .h4-b,.ss,.stage4-note{animation:fadeup .9s .3s var(--ease) both}
 .stage4-fig{animation:fadeup 1.1s var(--d-fast) var(--ease) both}
}
@keyframes fadeup{from{opacity:0;transform:translateY(24px)}
to{opacity:1;transform:none}}
.filt4 .seg a{min-height:var(--tap)}
.ss-n{white-space:nowrap}
.ss-q input,.ss-z input{max-width:100%}
.pipe-end{height:var(--nav-h)}
.rnote4{margin-top:0}
.js-pipe .rnote4{padding-left:0}
.statement4 .say3{margin-left:0;max-width:34em}
@media (min-width:960px){.statement4 .say3{margin-left:0}
.statement4-img img{object-position:100% 50%}}
.statement4 .bignum4{text-shadow:0 1px 12px var(--scrim)}
.jstage4 + section{padding-top:var(--sec)}
@media (max-width:767px){.jstage4{--H:13.4vw}}
.chip small{font-size:var(--t-xs)}
@media (max-width:767px){
 .r4-meta{flex-direction:column}
.r4-meta span+span::before{content:none}}
.statement4-img{z-index:-2}
.stage.mast,.stage.pmast,.stage.nf{background:linear-gradient(90deg,var(--navy) 0%,var(--scrim) 55%,var(--scrim)),url(assets/stage-wide-1280.webp) 70% 55%/cover no-repeat var(--navy)}
.mast-edge{transform:none!important;max-width:none;margin-top:var(--s7);padding-bottom:var(--s6)}
.stage.mast .ss{font-size:var(--t-2xl)}
.statement4::before{background:linear-gradient(90deg,var(--navy) 0%,var(--navy) 52%,var(--scrim) 74%,transparent 100%)}
@media (max-width:767px){
 .statement4{padding-bottom:calc(var(--sec) + 230px)}
 .statement4-img{top:auto;height:300px}
 .statement4-img img{object-position:70% 45%}
 .statement4::before{background:linear-gradient(180deg,var(--navy) 0%,var(--navy) calc(100% - 300px),var(--scrim) calc(100% - 200px),transparent 100%)}
}
.r4-new{font-size:var(--t-2xl);line-height:var(--lh-tight);letter-spacing:var(--tr-title);color:var(--ink)}
.row4.lit .r4-new{color:var(--copper-d)}
.r4-fewnote{font-size:var(--t-xs);color:var(--muted);font-family:inherit}
@media (max-width:767px){.r4-new{font-size:var(--t-2xl)}}
.ss-f input{border-bottom-style:dashed}
.ss-f input:hover{border-bottom-color:var(--white)}
.ss-f input:focus{border-bottom-style:solid;border-bottom-color:var(--copper);animation:ssblink 1.06s steps(1) infinite}
@keyframes ssblink{50%{border-bottom-color:var(--on-dark)}}
.ss-hint{display:none}
@media (max-width:767px){.ss-hint{display:block;margin-top:var(--s3);font:var(--w-medium) var(--t-xs)/var(--lh-head) var(--body-font);letter-spacing:normal;color:var(--on-dark)}
 .ss-hint::before{content:"";display:inline-block;width:18px;border-bottom:2px dashed var(--copper);margin-right:var(--s2);vertical-align:middle}}
@media (prefers-reduced-motion:reduce){.ss-f input:focus{animation:none;border-bottom-color:var(--white)}}
.stage4-fig::after,.jstage4-fig::after{content:"";position:absolute;z-index:-1;left:4%;right:2%;bottom:-1.5%;height:9%;background:radial-gradient(closest-side,var(--scrim),transparent 55%,transparent);pointer-events:none}
.stage4-fig::before{content:"";position:absolute;z-index:-1;left:-30%;width:60%;top:30%;bottom:0;background:none;pointer-events:none}
@media (max-width:767px){
 .stage4-note{text-shadow:0 1px 12px var(--scrim)}
 .stage4-shade::after{content:"";position:absolute;left:0;top:18%;width:100%;height:52%;background:radial-gradient(130% 50% at 0% 50%,var(--navy) 0%,var(--scrim) 50%,transparent 100%);pointer-events:none}
}
@media (max-width:767px){.stage4-shade{background:linear-gradient(180deg,var(--scrim) 0%,var(--scrim) 22%,transparent 40%),radial-gradient(40% 14% at 92% 25%,var(--scrim),transparent)}}
.h4-a{font-size:var(--t-display);font-weight:var(--w-semi);letter-spacing:var(--tr-display);line-height:var(--lh-tight)}
.h4-b,.res4-h em,.giant em,.ledger em,.smast4-h em{font-style:normal}
.h4-b{font-weight:var(--w-medium);letter-spacing:var(--tr-title)}
.ss{font-weight:var(--w-medium);letter-spacing:var(--tr-title)}
.r4-num,.bignum4{font-weight:var(--w-semi);letter-spacing:var(--tr-display);font-variant-numeric:tabular-nums lining-nums}
.r4-tel{font-weight:var(--w-semi);letter-spacing:var(--tr-title);font-variant-numeric:tabular-nums}
.r4-name{font-weight:var(--w-semi);letter-spacing:var(--tr-title)}
.display,.h2,.pmast h1,.side h2,.prose h2,.pros3-copy h2,.smast4-h,.res4-h,.jform4 h2,.giant,.cfacts b,.offer b,.av,.sugg4 b{font-weight:var(--w-semi);letter-spacing:var(--tr-display);line-height:var(--lh-tight)}
.sugg4 a{font-weight:var(--w-medium)}
@media (max-width:767px){.ss-f input{font-size:inherit}}
.d1-main{display:block}
.d1-main:focus{outline:0}
.admin-bar .pfnav.over{top:32px}
@media (max-width:782px){.admin-bar .pfnav.over{top:46px}}
@media (max-width:959px){body:has(.mbar) .foot{padding-bottom:calc(var(--s6) + 76px + env(safe-area-inset-bottom))}}
.notice4{background:var(--white);border-bottom:1px solid var(--ok);color:var(--ok);font-weight:var(--w-semi)}
.notice4 p{margin:0;padding:var(--s4) 0}
.lbl-new{background:var(--white);color:var(--navy)}
.lbl-ok{background:var(--white);color:var(--ok)}
.stage .lbl-ok,.stage .lbl-new{background:var(--on-dark-line);color:var(--white)}
.filt4-form{align-items:flex-start}
.filt4-form .chip:has(input:checked){border-color:var(--ink);outline:1px solid var(--ink);outline-offset:-1px}
.filt4-form .chip:focus-within{outline:2px solid var(--focus);outline-offset:2px}
.filt4-apply{min-height:var(--tap)}
[hidden]{display:none!important}
.pager4{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;justify-content:center;margin:var(--s7) 0 0}
.pager4 a,.pager4 span{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);min-height:var(--tap);padding:0 var(--s3);border-radius:var(--pill);font-weight:var(--w-semi);font-size:var(--t-sm);text-decoration:none;color:var(--ink)}
.pager4 a{box-shadow:var(--sh-ring)}
.pager4 a:hover{outline:1px solid var(--ink);outline-offset:-1px}
.pager4 .pager4-cur{background:var(--ink);color:var(--white)}
.pager4 .pager4-gap{min-width:24px;color:var(--muted)}
.pager4-prev,.pager4-next{gap:var(--s2)}
.map4{height:420px;margin-top:var(--s6);border-radius:var(--r);background:var(--paper);overflow:hidden}
@media (max-width:767px){.map4{height:320px}}
.empty4{padding:var(--s7) 0}
.hours4{list-style:none;margin:0;padding:0;display:grid;gap:var(--s1);max-width:360px}
.hours4 li{display:flex;justify-content:space-between;gap:var(--s4)}
.hours4 li.closed{color:var(--muted)}
.chips4{display:flex;flex-wrap:wrap;gap:var(--s2)}
.chip4{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--s3);border-radius:var(--pill);background:var(--paper);font-size:var(--t-sm);color:var(--ink)}
.svc4 ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}
.svc4 li{display:flex;gap:var(--s2);align-items:flex-start;line-height:var(--lh-body)}
.svc4 li .ico{flex:0 0 auto;margin-top:3px;color:var(--ok)}
.svc4 h3{font-size:var(--t-base);font-weight:var(--w-semi);margin:0 0 var(--s2)}
.svc4-grid{display:grid;gap:var(--s5)}
@media (min-width:640px){.svc4-grid{grid-template-columns:1fr 1fr}}
.gal4{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2)}
@media (min-width:640px){.gal4{grid-template-columns:repeat(3,1fr)}}
.gal4 img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-sm);background:var(--paper)}
.bars4{margin:0;display:grid;gap:var(--s2);max-width:420px}
.bars4 div{display:grid;grid-template-columns:96px 1fr;gap:var(--s3);align-items:center}
.bars4 dt{font-size:var(--t-sm);color:var(--muted)}
.bars4 dd{margin:0;display:flex;align-items:center;gap:var(--s3);font-size:var(--t-sm)}
.bar4{flex:1;height:8px;border-radius:var(--pill);background:var(--paper);overflow:hidden}
.bar4 span{display:block;height:100%;background:var(--copper)}
.pscore h2 .num{font-size:var(--t-lg);color:var(--muted)}
.rev4 h2 .fine{font-size:var(--t-sm);font-family:var(--body-font);margin-left:var(--s2)}
.rev4-sum{display:grid;gap:var(--s5);margin-bottom:var(--s6)}
@media (min-width:640px){.rev4-sum{grid-template-columns:auto 1fr;align-items:center}}
.rev4-avg{display:grid;gap:var(--s1);margin:0}
.rev4-avg b{font-size:var(--t-2xl);line-height:var(--lh-tight)}
.rev4-avg .num{font-size:var(--t-sm);color:var(--muted)}
.rev4-list{display:grid;gap:var(--s5)}
.rv4{border-top:1px solid var(--line);padding-top:var(--s5)}
.rv4 header{display:flex;gap:var(--s3);align-items:center;margin-bottom:var(--s2)}
.rv4 header b{display:block}
.rv4-av{flex:0 0 40px;width:40px;height:40px;border-radius:var(--pill);background:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-weight:var(--w-semi)}
.rv4-m{display:flex;gap:var(--s2);align-items:center;font-size:var(--t-sm);color:var(--muted)}
.rv4-m .stars svg{width:14px;height:14px}
.rv4 p{margin:var(--s2) 0 0;line-height:var(--lh-body)}
.rv4-ph{display:flex;gap:var(--s2);margin-top:var(--s3)}
.rv4-ph img{width:72px;height:72px;object-fit:cover;border-radius:var(--r-sm)}
.rv4-own{margin-top:var(--s3);padding:var(--s3) var(--s4);border-left:3px solid var(--muted);background:var(--paper)}
.rv4-own p{margin-top:var(--s1)}
#rev4-more{margin-top:var(--s5);min-height:var(--tap)}
.fld2{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s4)}
@media (min-width:480px){.fld2{grid-template-columns:repeat(2,minmax(0,1fr))}
.fld2-wide{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}
.hp4{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.jform4 .fine.err{color:var(--err);font-weight:var(--w-semi)}
.tlink,.more a{min-height:var(--tap);display:inline-flex;align-items:center}
.crumbs a{min-height:24px}
@media (pointer:coarse){.crumbs a{min-height:var(--tap)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (max-width:767px){
 .stage4{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%)}
 .stage4-shade{display:none}
 .stage4-in{order:1;padding-top:calc(var(--nav-h-m) + var(--s6));padding-bottom:0}
 .stage4 .ss{margin-top:calc(var(--H) * .36);line-height:var(--lh-head)}
 .stage4 .ss-n{display:flex;align-items:center;gap:.1em;margin-top:.3em}
 .stage4 .ss-go{margin-left:.3em}
 .stage4 .ss-hint{margin-top:var(--s4)}
 .stage4-note{margin-top:var(--s2);font-size:var(--t-xs);line-height:var(--lh-body);color:var(--on-dark);max-width:30em}
 .stage4-media{position:relative;inset:auto;order:2;z-index:0;margin-top:var(--s5);aspect-ratio:1320/1086;-webkit-mask-image:linear-gradient(180deg,transparent 0,var(--navy) 24%);mask-image:linear-gradient(180deg,transparent 0,var(--navy) 24%)}
 .stage4-media img{object-position:50% 50%}
 .stage4-fig{left:3%;right:auto;bottom:3.5%;height:calc((100vw * 1086 / 1320) * .88);max-height:none;z-index:1}
 .stage4 .illus{left:auto;right:var(--pad);bottom:var(--s3);z-index:2}
}
.plumby4{-webkit-mask-image:linear-gradient(90deg,transparent 0,var(--navy) 7%,var(--navy) 93%,transparent 100%),linear-gradient(180deg,var(--navy) 92%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,var(--navy) 7%,var(--navy) 93%,transparent 100%),linear-gradient(180deg,var(--navy) 92%,transparent 100%);mask-composite:intersect}
/* base normalisation: keep UA defaults on the token scale */
b,strong{font-weight:var(--w-semi)}
.sr,.screen-reader-text{font-size:var(--t-sm);font-weight:var(--w-semi)}
:where(input,select,textarea){border-color:var(--line)}
.form-card select{background-color:var(--white)}

/* ==========================================================================
   PAGES: shared components for every content page (BK1).
   Page = .stage.mast.page-mast (night CG plate, crumbs, title, lead)
        + .cbody (8/4 grid: main + .side) or .page-body (single column)
        + optional .band (night call to action).
   ========================================================================== */
.page-mast{padding-bottom:var(--s8)}
.page-h1{margin-top:var(--s5);font:var(--w-semi) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);max-width:16ch;text-wrap:balance}
.page-mast .lead{color:var(--on-dark)}
.page-mast .acts{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center;margin-top:var(--s6)}
.page-mast .tlink,.band .tlink{color:var(--white)}
.page-mast .rmeta{color:var(--on-dark);margin-top:var(--s5)}
.page-body{padding:var(--s9) 0 var(--sec)}
.page-body>.wrap>*+*{margin-top:var(--s8)}
.cbody .side .card+.card{margin-top:0}
.sec-h{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance}
.sec-h+*{margin-top:var(--s4)}

/* ---- doc: long-form rich text (WP content, legal, posts, guides) ---- */
.doc{max-width:var(--measure);font-size:var(--t-lg);line-height:var(--lh-body);color:var(--ink)}
.doc>*+*{margin-top:var(--s4)}
.doc h2{margin-top:var(--s8);font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance}
.doc h3{margin-top:var(--s6);font:var(--w-semi) var(--t-lg)/var(--lh-head) var(--body-font)}
.doc h4,.doc h5,.doc h6{margin-top:var(--s5);font:var(--w-semi) var(--t-lg)/var(--lh-head) var(--body-font)}
.doc h2:first-child,.doc h3:first-child{margin-top:0}
.doc ul,.doc ol{padding-left:1.25em}
.doc ul{list-style:disc}.doc ol{list-style:decimal}
.doc li+li{margin-top:var(--s2)}
.doc li::marker{color:var(--copper-d)}
.doc a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}
.doc a:hover{text-decoration-thickness:2px}
.doc strong,.doc b{font-weight:var(--w-semi)}
.doc blockquote{margin:var(--s6) 0;padding-left:var(--s5);border-left:3px solid var(--copper);color:var(--muted)}
.doc img,.doc figure img{border-radius:var(--r-sm)}
.doc figure{margin:var(--s6) 0}
.doc figcaption{margin-top:var(--s2);font-size:var(--t-sm);color:var(--muted)}
.doc hr{border:0;border-top:1px solid var(--line);margin:var(--s7) 0}
.doc table{width:100%;border-collapse:collapse;font-size:var(--t-base)}
.doc th,.doc td{padding:var(--s3);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.doc thead th{font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--muted);border-bottom-color:var(--ink)}
.doc .table-scroll,.doc .wp-block-table{overflow-x:auto}
.doc iframe,.doc video{max-width:100%}
.doc .alignleft{float:left;margin:0 var(--s5) var(--s4) 0}.doc .alignright{float:right;margin:0 0 var(--s4) var(--s5)}
.doc .aligncenter{margin-left:auto;margin-right:auto}

/* ---- card ---- */
.card{background:var(--white);border-radius:var(--r);padding:var(--s6);box-shadow:var(--sh-card)}
.card>*+*{margin-top:var(--s4)}
.card h2,.card h3{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title)}
.card p{color:var(--muted)}
.card .btn{margin-top:var(--s5)}
.cards{display:grid;gap:var(--s5)}
@media (min-width:768px){.cards{grid-template-columns:repeat(2,1fr)}.cards-3{grid-template-columns:repeat(3,1fr)}}
.ticks{display:grid;gap:var(--s2)}
.ticks li{display:flex;gap:var(--s2);align-items:flex-start}
.ticks .ico{margin-top:3px;color:var(--ok)}

/* ---- steps: numbered how-it-works rows ---- */
.steps{border-top:2px solid var(--ink);counter-reset:step}
.steps li{display:grid;grid-template-columns:72px 1fr;gap:var(--s2) var(--s5);padding:var(--s6) 0;border-bottom:1px solid var(--line);counter-increment:step}
.steps li::before{content:counter(step);grid-row:span 2;font:var(--w-semi) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);color:var(--copper-d);font-variant-numeric:tabular-nums}
.steps h3{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title)}
.steps p{color:var(--muted);max-width:36em}
@media (min-width:768px){.steps li{grid-template-columns:160px 1fr}}

/* ---- band: night call to action ---- */
.band{background:var(--navy);color:var(--white);padding:var(--s9) 0}
.band .wrap{display:grid;gap:var(--s5);align-items:end}
.band h2{font:var(--w-semi) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);max-width:14ch;text-wrap:balance}
.band p{color:var(--on-dark);font-size:var(--t-lg);max-width:30em}
.band .acts{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center}
@media (min-width:960px){.band .wrap{grid-template-columns:7fr 5fr}.band .acts{justify-content:flex-end}}

/* ---- alerts ---- */
.alert{padding:var(--s4) var(--s5);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--white);font-weight:var(--w-medium)}
.alert-ok{background:var(--white);border-color:var(--ok);color:var(--ok)}
.alert-err{background:var(--white);border-color:var(--err);color:var(--err)}
.alert-info{background:var(--white);border-color:transparent;color:var(--navy)}

/* ---- forms on light surfaces (extends .fld) ---- */
.form{display:grid;gap:var(--s5)}
.form .btn{justify-self:start}
.fld textarea{min-height:144px;padding:var(--s3);border:1px solid var(--muted);border-radius:var(--r-sm);background:var(--white);font:inherit;resize:vertical}
.fld textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}
.fld input::placeholder,.fld textarea::placeholder{color:var(--hint);opacity:1}
.fld .hint{font-size:var(--t-sm);color:var(--muted)}
.check{display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--tap);font-size:var(--t-sm);cursor:pointer}
.check input{width:18px;height:18px;margin:0;accent-color:var(--navy)}
.form-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s3)}
.form .tlink,.card .tlink{color:var(--link)}
.or{display:flex;align-items:center;gap:var(--s3);color:var(--muted);font-size:var(--t-sm)}
.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--line)}

/* ---- index lists: states, specialties, glossary (extends .states) ---- */
.finder{max-width:420px}
.states a b{font-weight:var(--w-medium)}
.states a.is-off{color:var(--muted)}
.idx-group+.idx-group{margin-top:var(--s7)}
.idx-group>h2{font:var(--w-semi) var(--t-xl)/var(--lh-tight) var(--display-font);color:var(--copper-d);margin-bottom:var(--s3)}
.letters{display:flex;flex-wrap:wrap;gap:var(--s1)}
.letters a{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);min-height:var(--tap);border-radius:var(--pill);text-decoration:none;font-weight:var(--w-semi);font-size:var(--t-sm)}
.letters a:hover{background:var(--line)}
.spec-list a{align-items:flex-start;flex-direction:column;justify-content:center;gap:var(--s1);padding:var(--s4) 0;min-height:var(--tap)}
.spec-list a b{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title)}
.spec-list a span{font-size:var(--t-sm)}
.spec-list a:hover b{color:var(--copper-d)}

/* ---- blog ---- */
.posts{display:grid;gap:var(--s7) var(--s6)}
@media (min-width:768px){.posts{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.posts{grid-template-columns:repeat(3,1fr)}}
.post-card{display:grid;gap:var(--s3);align-content:start}
.post-card .ph{display:block;aspect-ratio:16/10;border-radius:var(--r);overflow:hidden;background:var(--paper)}
.post-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform var(--d-med) var(--ease)}
.post-card:hover .ph img{transform:scale(1.03)}
.post-card h2,.post-card h3{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance}
.post-card h2 a,.post-card h3 a{text-decoration:none}
.post-card h2 a:hover,.post-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.post-card p{color:var(--muted)}
.post-meta{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);font-size:var(--t-sm);color:var(--muted)}
.post-meta .cat{color:var(--copper-d);font-weight:var(--w-semi);text-decoration:none}
.stage .post-meta{color:var(--on-dark)}.stage .post-meta .cat{color:var(--copper)}
.post-hero{margin-bottom:var(--s7);border-radius:var(--r);overflow:hidden}
.post-hero img{width:100%;aspect-ratio:16/9;object-fit:cover}
.share{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);align-items:center;font-size:var(--t-sm);color:var(--muted)}
.share a{color:var(--link)}

/* ---- dialog (terms modal on the update form) ---- */
.dlg{width:min(920px,calc(100vw - 2*var(--s5)));height:min(80svh,760px);padding:0;border:0;border-radius:var(--r);box-shadow:var(--sh-float);background:var(--white);color:var(--ink)}
.dlg::backdrop{background:var(--scrim)}
.dlg form{display:flex;flex-direction:column;height:100%}
.dlg header{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border-bottom:1px solid var(--line)}
.dlg h2{font:var(--w-semi) var(--t-lg)/var(--lh-head) var(--display-font)}
.dlg iframe{flex:1;width:100%;border:0}

/* ---- specialty guides (post_content uses pfspec-* classes) ---- */
.pfspec-hero{position:relative;color:var(--white);padding:calc(var(--s8)) 0 var(--s8);background:linear-gradient(90deg,var(--navy) 0%,var(--scrim) 55%,var(--scrim)),url(assets/stage-wide-1280.webp) 70% 55%/cover no-repeat var(--navy)}
.pfspec-hero-inner,.pfspec-body,.pfspec-cta-section{max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.pfspec-hero-eyebrow{font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--copper)}
.pfspec-hero-h1{margin-top:var(--s4);font:var(--w-semi) var(--t-display)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);max-width:16ch;text-wrap:balance}
.pfspec-hero-sub{margin-top:var(--s5);font-size:var(--t-lg);line-height:var(--lh-body);color:var(--on-dark);max-width:34em}
.pfspec-hero-actions{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center;margin-top:var(--s6)}
.pfspec-hero-btn-primary,.pfspec-cta-btn,.pfspec-sidebar-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:48px;padding:0 var(--s5);border-radius:var(--pill);font-weight:var(--w-semi);text-decoration:none;background:var(--copper);color:var(--navy);transition:background-color var(--d-fast) var(--ease)}
.pfspec-hero-btn-primary:hover,.pfspec-cta-btn:hover{background:var(--copper-hi)}
.pfspec-hero-btn-secondary{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:var(--w-semi);color:var(--white);text-decoration:none}
.pfspec-hero-btn-secondary:hover{text-decoration:underline;text-underline-offset:4px}
.pfspec-hero-trust{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-top:var(--s6);font-size:var(--t-sm);color:var(--on-dark)}
.pfspec-body{padding-top:var(--s9);padding-bottom:var(--s9)}
.pfspec-layout{display:grid;gap:var(--s8)}
.pfspec-layout>*{min-width:0}
@media (min-width:960px){.pfspec-layout{grid-template-columns:8fr 4fr;gap:var(--s9)}}
.pfspec-toc{padding:var(--s5) var(--s6);border-radius:var(--r);background:var(--white);box-shadow:var(--sh-card);margin-bottom:var(--s7)}
.pfspec-toc h3{font:var(--w-semi) var(--t-sm)/var(--lh-head) var(--body-font);color:var(--muted);margin:0 0 var(--s2)}
.pfspec-toc ul{list-style:none!important;padding:0!important}
.pfspec-toc li+li{margin-top:0}
.pfspec-toc a{display:flex;align-items:center;min-height:var(--tap);text-decoration:none;color:var(--ink)}
.pfspec-toc a:hover{color:var(--copper-d)}
.pfspec-table{font-size:var(--t-base)}
.pfspec-states-grid{display:grid;grid-template-columns:1fr;column-gap:var(--s6)}
@media (min-width:600px){.pfspec-states-grid{grid-template-columns:1fr 1fr}}
.pfspec-state-link{display:flex;justify-content:space-between;align-items:center;min-height:48px;border-bottom:1px solid var(--line);text-decoration:none!important;color:var(--ink)!important}
.pfspec-state-link span{color:var(--muted);font-size:var(--t-sm)}
.pfspec-state-link:hover{color:var(--copper-d)!important}
.pfspec-sidebar{display:grid;gap:var(--s5);align-content:start}
.pfspec-sidebar-card{background:var(--white);border-radius:var(--r);padding:var(--s6);box-shadow:var(--sh-card)}
.pfspec-sidebar-card>*+*{margin-top:var(--s3)}
.pfspec-sidebar-card h3,.pfspec-sidebar-card h4{font:var(--w-semi) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title)}
.pfspec-sidebar-card p{color:var(--muted)}
.pfspec-sidebar-icon{display:none}
.pfspec-sidebar-btn{width:100%;margin-top:var(--s5);background:var(--navy);color:var(--white)}
.pfspec-sidebar-btn:hover{background:var(--navy-2)}
.pfspec-sidebar-btn-green{background:transparent;color:var(--ink);box-shadow:var(--sh-ring)}
.pfspec-sidebar-btn-green:hover{background:var(--paper)}
.pfspec-stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--line)}
.pfspec-stat-num{font:var(--w-semi) var(--t-xl)/var(--lh-tight) var(--display-font);font-variant-numeric:tabular-nums}
.pfspec-stat-label{font-size:var(--t-sm);color:var(--muted)}
.pfspec-cta-section{padding-top:var(--s9);padding-bottom:var(--s9);background:var(--navy);color:var(--white);max-width:none}
.pfspec-cta-section>*{max-width:var(--max);margin-left:auto;margin-right:auto}
.pfspec-cta-section h2{font:var(--w-semi) var(--t-2xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-display);text-wrap:balance}
.pfspec-cta-section p{margin-top:var(--s4);color:var(--on-dark);font-size:var(--t-lg)}
.pfspec-cta-btn{margin-top:var(--s6)}

/* ---- WPForms (update-listing): map the plugin's variables to our tokens ---- */
.wpforms-container{--wpforms-field-border-color:var(--muted);--wpforms-field-border-radius:var(--r-sm);--wpforms-field-background-color:var(--white);--wpforms-field-text-color:var(--ink);--wpforms-label-color:var(--ink);--wpforms-label-sublabel-color:var(--muted);--wpforms-button-background-color:var(--navy);--wpforms-button-text-color:var(--white);--wpforms-button-border-radius:var(--pill);--wpforms-page-break-color:var(--copper);--wpforms-label-error-color:var(--err);--wpforms-field-size-input-height:48px;--wpforms-button-size-height:48px;font-family:var(--body-font)!important}
.wpforms-container .wpforms-field-label{font-weight:var(--w-semi)!important;font-size:var(--t-sm)!important}
.wpforms-container input:not([type=checkbox]):not([type=radio]),.wpforms-container select,.wpforms-container textarea{font-family:var(--body-font)!important;font-size:var(--t-base)!important;border:1px solid var(--muted)!important;border-radius:var(--r-sm)!important;min-height:48px}
.wpforms-container input:focus,.wpforms-container select:focus,.wpforms-container textarea:focus{outline:2px solid var(--focus)!important;outline-offset:0;border-color:var(--focus)!important;box-shadow:none!important}
.wpforms-container button[type=submit],.wpforms-container .wpforms-submit{min-height:48px!important;padding:0 var(--s6)!important;border:0!important;border-radius:var(--pill)!important;background:var(--navy)!important;color:var(--white)!important;font:var(--w-semi) var(--t-base)/var(--lh-tight) var(--body-font)!important}
.wpforms-container button[type=submit]:hover{background:var(--navy-2)!important}
.wpforms-container a{color:var(--link)}
.wpforms-container .wpforms-error,.wpforms-container label.wpforms-error{color:var(--err)!important}

/* ---- brand marks: logo + rating stars (colours only from tokens) ---- */
.stars .s-on{fill:var(--copper)}.stars .s-half{fill:url(#half)}.stars .s-off{fill:var(--line)}
.st-on{stop-color:var(--copper)}.st-off{stop-color:var(--line)}
.prose-wide{max-width:none}

/* ---- spacing utilities (replace one-off inline styles) ---- */
.mt-0{margin-top:0}.mt-2{margin-top:var(--s2)}.mt-3{margin-top:var(--s3)}.mt-4{margin-top:var(--s4)}.mt-5{margin-top:var(--s5)}.mt-6{margin-top:var(--s6)}.mt-7{margin-top:var(--s7)}.mt-8{margin-top:var(--s8)}
.muted{color:var(--muted)}.small{font-size:var(--t-sm)}
.lbl-solo{margin-left:0}
.side .rules div{grid-template-columns:1fr;gap:var(--s1);padding:var(--s4) 0}
.mt-9{margin-top:var(--s9)}.mt-10{margin-top:var(--s10)}

/* ---- BK1 shared bits used by several templates ---- */
.acts{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center}
.pt-0{padding-top:0}
.chip.is-on{background:var(--navy);border-color:var(--navy);color:var(--white)}
.chip .num{font-size:var(--t-xs);color:inherit;opacity:.72}
.side-list li{padding:var(--s3) 0;border-bottom:1px solid var(--line)}
.side-list li:last-child{border-bottom:0}
.side-list a{font-weight:var(--w-semi);color:var(--ink);text-decoration:none}
.side-list a:hover{color:var(--copper-d);text-decoration:underline;text-underline-offset:3px}
.side-list .small{display:block;margin-top:var(--s1)}
.letters .off{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);min-height:var(--tap);color:var(--muted)}
.gloss-list{display:grid;gap:var(--s2) var(--s6)}
@media (min-width:768px){.gloss-list{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.gloss-list{grid-template-columns:repeat(3,1fr)}}
.gloss-list>li>a{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:var(--w-semi);color:var(--ink)}
.gloss-sub{margin:0 0 var(--s2) var(--s4);padding-left:var(--s4);border-left:1px solid var(--line)}
.gloss-sub a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--muted)}
.gloss-list a:hover{color:var(--copper-d)}
.gloss-terms{display:grid;gap:var(--s1) var(--s6)}
.gloss-terms dt{margin-top:var(--s4);font-weight:var(--w-semi)}
.gloss-terms dt a{color:var(--ink)}
.gloss-terms dd{color:var(--muted);max-width:60em}
.form-card .container,.form-card .row,.form-card .col-12{all:unset;display:block}
/* Data bars: width from a 5% step class, set by lwm_bk_pct5() */
.bar4.w-0 span{width:0}
.bar4.w-5 span{width:5%}
.bar4.w-10 span{width:10%}
.bar4.w-15 span{width:15%}
.bar4.w-20 span{width:20%}
.bar4.w-25 span{width:25%}
.bar4.w-30 span{width:30%}
.bar4.w-35 span{width:35%}
.bar4.w-40 span{width:40%}
.bar4.w-45 span{width:45%}
.bar4.w-50 span{width:50%}
.bar4.w-55 span{width:55%}
.bar4.w-60 span{width:60%}
.bar4.w-65 span{width:65%}
.bar4.w-70 span{width:70%}
.bar4.w-75 span{width:75%}
.bar4.w-80 span{width:80%}
.bar4.w-85 span{width:85%}
.bar4.w-90 span{width:90%}
.bar4.w-95 span{width:95%}
.bar4.w-100 span{width:100%}
@supports (field-sizing:content){.ss-q input,.ss-z input{field-sizing:content;width:auto;min-width:3.1em;max-width:14em}}
/* BK1: mobile rhythm for body + side cards (tighter, even spacing on phones) */
@media (max-width:767px){
.cbody{padding-top:var(--s7)}
.cbody .wrap{gap:var(--s7)}
.side{gap:var(--s4)}
.card{padding:var(--s5)}
}


/* ===== BK2 chrome: logo, header, mobile sheet, footer (20261104) ===== */
.logo{display:inline-flex;align-items:center;min-height:var(--tap);flex:none;text-decoration:none}
.logo svg{display:block;height:var(--s6);width:auto}
.logo-on-dark .lg-mark{stroke:var(--copper)}.logo-on-dark .lg-markf{fill:var(--copper)}.logo-on-dark .lg-word{fill:var(--white)}.logo-on-dark .lg-usa{fill:var(--copper)}
.logo-on-light .lg-mark{stroke:var(--copper-d)}.logo-on-light .lg-markf{fill:var(--copper-d)}.logo-on-light .lg-word{fill:var(--navy)}.logo-on-light .lg-usa{fill:var(--copper-d)}
.pfnav{position:sticky;top:0;z-index:40;background:var(--navy);color:var(--white)}
.pfnav>.wrap{display:flex;align-items:center;gap:var(--s6);height:var(--nav-h)}
.pfnav.over{position:absolute;left:0;right:0;top:0;background:transparent}
@supports (animation-timeline:scroll()){
 /* every page opens on a navy stage: header is transparent over it (no seam), solid navy once scrolled */
 .pfnav.on-stage{position:fixed;left:0;right:0;top:0;background:transparent;animation:pfnav-fill linear both;animation-timeline:scroll(root);animation-range:0 var(--s9)}
 body:has(.pfnav.on-stage:not(.over)) .d1-main>.stage:first-child{border-top:var(--nav-h) solid transparent;background-origin:border-box}
 @media (max-width:767px){body:has(.pfnav.on-stage:not(.over)) .d1-main>.stage:first-child{border-top-width:var(--nav-h-m)}}
 @keyframes pfnav-fill{to{background:var(--navy);box-shadow:inset 0 -1px 0 var(--on-dark-line)}}
 @media (prefers-reduced-motion:no-preference){
  .pfnav.on-stage>.wrap{animation:pfnav-shrink linear both;animation-timeline:scroll(root);animation-range:0 var(--s9)}
  @keyframes pfnav-shrink{to{height:var(--nav-h-s)}}}
 .pfnav:has(.mnav.open)>.wrap{animation:none}
 /* reduced motion: no shrink, but the colour fill (not motion) is kept so text never sits on content */
 @media (prefers-reduced-motion:reduce){.pfnav.on-stage{animation:pfnav-fill linear both!important;animation-duration:auto!important;animation-timeline:scroll(root)!important;animation-range:0 var(--s9)!important}}}
.pfnav:has(.mnav.open){background:var(--navy)}
.nav-links{display:none;align-items:center;gap:var(--s5)}
.nav-links a,.nav-login{display:inline-flex;align-items:center;min-height:var(--tap);font-size:var(--t-sm);font-weight:var(--w-medium);color:var(--on-dark);text-decoration:underline 2px transparent;text-underline-offset:var(--s2);transition:color .15s,text-decoration-color .15s}
.nav-links a:hover,.nav-login:hover,.nav-links a[aria-current],.nav-login[aria-current]{color:var(--white);text-decoration-color:var(--copper)}
.nav-right{display:none;align-items:center;gap:var(--s5);margin-left:auto}
.nav-cta.btn{min-height:var(--tap);padding:0 var(--s5);font-size:var(--t-sm)}
.burger{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);margin-left:auto;margin-right:calc(-1 * var(--s2));padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--white);cursor:pointer}
.burger:hover{background:var(--on-dark-line)}
.burger .ico{width:var(--s5);height:var(--s5)}
.burger .ico-close,.burger[aria-expanded=true] .ico-menu{display:none}
.burger[aria-expanded=true] .ico-close{display:block}
.mnav{display:none;position:fixed;left:0;right:0;top:var(--nav-h);bottom:0;overflow-y:auto;background:var(--navy);color:var(--white);box-shadow:inset 0 1px 0 var(--on-dark-line)}
.mnav.open{display:block}
html:has(.mnav.open){overflow:hidden}
.mnav .wrap{display:flex;flex-direction:column;min-height:100%;padding-top:var(--s5);padding-bottom:calc(var(--s7) + env(safe-area-inset-bottom))}
.mnav-links a{display:flex;align-items:center;justify-content:space-between;min-height:var(--s8);border-bottom:1px solid var(--on-dark-line);font:var(--w-semi) var(--t-xl)/var(--lh-tight) var(--display-font);letter-spacing:var(--tr-title);color:var(--white);text-decoration:none}
.mnav-links a[aria-current]{color:var(--copper)}
.mnav-acts{display:grid;gap:var(--s3);margin-top:auto;padding-top:var(--s7)}
.btn-block{display:flex;width:100%}
.btn-line{background:transparent;color:var(--white);border:1px solid var(--on-dark-line)}
.btn-line:hover{border-color:var(--white)}
@media (max-width:767px){.pfnav>.wrap{height:var(--nav-h-m)}.mnav{top:var(--nav-h-m)}}
@media (min-width:960px){.nav-links,.nav-right{display:flex}.burger,.mnav,.mnav.open{display:none}}
.admin-bar .pfnav{top:32px}
@media (max-width:782px){.admin-bar .pfnav{top:46px}}
@media (max-width:600px){.admin-bar .pfnav{top:0}}

.foot{position:relative;overflow:hidden;background:var(--navy);color:var(--on-dark);padding:var(--s9) 0 var(--s6);font-size:var(--t-sm)}
.foot-top{display:grid;gap:var(--s8)}
.foot-brand .logo{margin-top:calc(-1 * var(--s2))}
.foot-brand p{max-width:30ch;margin:var(--s5) 0 var(--s6);font-size:var(--t-base);line-height:var(--lh-body);color:var(--on-dark)}
.foot-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s7) var(--s6)}
.foot h2{margin:0 0 var(--s4);font:var(--w-semi) var(--t-sm)/var(--lh-tight) var(--body-font);letter-spacing:normal;color:var(--white)}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3)}
.foot a{color:var(--on-dark);text-decoration:none;transition:color .15s}
.foot a:hover{color:var(--white)}
.foot a.btn{color:var(--navy)}
.foot address{margin-top:var(--s3);font-style:normal;line-height:var(--lh-body)}
.foot-bot{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s6);margin-top:var(--s9);padding-top:var(--s5);border-top:1px solid var(--on-dark-line);font-size:var(--t-xs)}
.foot-bot nav{display:flex;flex-wrap:wrap;gap:0 var(--s5)}
.foot-bot a,.foot-bot span{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--on-dark)}
/* V5: 44px tap boxes on touch devices AND at every tablet/phone width (QC TAP-768-FOOTCOLS) */
@media (pointer:coarse),(max-width:1099px){.foot li a,.foot-bot a{display:inline-flex;align-items:center;min-height:var(--tap)}.foot ul{gap:0}}
@media (min-width:768px){.foot-cols{grid-template-columns:repeat(4,auto);justify-content:space-between}}
@media (min-width:1100px){.foot-top{grid-template-columns:1fr 2fr;gap:var(--s7)}}
@media (max-width:767px){.foot-cols>div:last-child{grid-column:1 / -1}}

/* claim finder + account (plugin markup, styled from the system) */
.pfc-main .list{display:grid;gap:var(--s3);margin:var(--s5) 0 0;padding:0;list-style:none;background:none}
.pfc-main .list>li.card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--s1) var(--s5);margin:0;padding:var(--s5)}
.pfc-main .list>li.card>*{margin:0}
.pfc-main .list>li.card>strong{grid-column:1;align-self:end;font-size:var(--t-base)}
.pfc-main .list>li.card>.muted{grid-column:1;align-self:start;font-size:var(--t-sm)}
.pfc-main .list>li.card>.btn{grid-column:2;grid-row:1 / span 2;margin:0;white-space:nowrap}
.pfc-main .list>li.card>.lbl{grid-column:2;grid-row:1 / span 2}
@media (max-width:479px){.pfc-main .list>li.card{grid-template-columns:1fr}.pfc-main .list>li.card>.btn{grid-column:1;grid-row:auto;margin-top:var(--s3);width:100%}}
.pfc-main fieldset{margin:0 0 var(--s6);padding:0;border:0;min-width:0}
.pfc-main legend{padding:0;margin-bottom:var(--s4);font:var(--w-semi) var(--t-lg)/var(--lh-tight) var(--display-font)}
/* V4: below 1100 the mast search row runs full width, so the "Illustrative scene" badge (bottom-right) sat on the arrow (768) and the hint (390). Reserve a band for it under the content. */
@media (max-width:1099px){.stage.mast,.stage.pmast{padding-bottom:var(--s7)}}

/* ==========================================================================
   PV2 2026-11-05 (staged): business profile as a microsite.
   Hero strip + action row + 8/4 body with a sticky contact rail + claim band. Tokens only.
   ========================================================================== */
.pv2-hero{position:relative;background:var(--navy);color:var(--white);min-height:400px;display:grid;align-items:end;overflow:hidden}
.pv2-strip{position:absolute;inset:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-rows:100%;gap:var(--s1)}
.pv2-strip figure{overflow:hidden;min-height:0}.pv2-strip figure img{position:absolute;inset:0}
.pv2-strip picture,.pv2-strip img,.pv2-strip figure{display:block;width:100%;height:100%;margin:0;position:relative}
.pv2-strip img{object-fit:cover}
.pv2-strip figcaption{position:absolute;left:var(--s2);bottom:var(--s2);z-index:1;max-width:calc(100% - var(--s4));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--t-xs);background:var(--navy);color:var(--white);padding:0 var(--s2);border-radius:var(--pill)}
.pv2-strip figcaption a{color:var(--white)}
.pv2-hero:has(figcaption) .pv2-cred{display:none}.pv2-hero.has-ph:has(figcaption) .pv2-hin{padding-bottom:calc(var(--s6) + var(--s5))}
.pv2-hero:not(.has-ph) .pv2-strip,.pv2-hero.has-ph .pv2-panel{display:none}
.pv2-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--scrim) 0%,transparent 60%)}
.pv2-hero.has-ph .pv2-shade{background:linear-gradient(180deg,var(--scrim) 0,transparent calc(var(--nav-h) + var(--s11))),linear-gradient(0deg,var(--navy) 0%,var(--scrim) 42%,transparent 78%),linear-gradient(90deg,var(--scrim) 0%,var(--scrim) 40%,transparent 75%)}
@media (max-width:767px){.pv2-hero.has-ph .pv2-shade{background:linear-gradient(0deg,var(--navy) 0%,var(--scrim) 60%),var(--scrim)}}
.pv2-panel{position:absolute;inset:0;overflow:hidden;background:var(--navy);display:grid;align-items:center;justify-items:end;padding:calc(var(--nav-h) + var(--s4)) max(var(--pad),calc((100% - var(--max))/2))}
.pv2-grid-tx{position:absolute;inset:-40%;transform:rotate(var(--pv-rot,0deg));opacity:.55;background-image:repeating-linear-gradient(0deg,var(--on-dark-line) 0 1px,transparent 1px 56px),repeating-linear-gradient(90deg,var(--on-dark-line) 0 1px,transparent 1px 88px);-webkit-mask-image:linear-gradient(90deg,transparent 15%,var(--navy) 70%);mask-image:linear-gradient(90deg,transparent 15%,var(--navy) 70%)}
.pv2-pfield{position:absolute;top:var(--nav-h);right:0;bottom:0;width:44%;background:var(--pv-brand,var(--navy-2));clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);display:grid;place-items:center;padding:0 0 0 12%;overflow:hidden}
.pv2-pfield .pv2-grid-tx{-webkit-mask-image:none;mask-image:none;opacity:.6}
.pv2-plogo{position:relative;width:224px;height:224px;border-radius:var(--r);background:var(--white);box-shadow:var(--sh-float);display:grid;place-items:center;padding:var(--s5)}
.pv2-plogo img{width:100%;height:100%;object-fit:contain}
.pv2-pfield~.pv2-pmono{display:none}.pv2-hero.no-logo .pv2-pfield{display:none}.pv2-hero.no-logo .pv2-pmono{display:grid}
.pv2-pmono{position:relative;display:grid;justify-items:end;text-align:right;gap:var(--s1);color:var(--on-dark)}
.pv2-pmono b{font:var(--w-medium) var(--t-display)/1 var(--display-font);color:var(--copper);width:160px;height:160px;display:grid;place-items:center;border-radius:var(--r);box-shadow:inset 0 0 0 1px var(--on-dark-line);background:var(--navy-2);margin-bottom:var(--s3)}
.pv2-pmono span{font-size:var(--t-sm);max-width:28ch}
.pv2-pmono span:first-of-type{color:var(--white);font-weight:var(--w-semi)}
.pv2-hin{position:relative;width:100%;padding-top:calc(var(--nav-h) + var(--s4));padding-bottom:var(--s6)}
.pv2-hin .crumbs{margin-bottom:var(--s8)}
.pv2-id{display:grid;gap:var(--s4);align-items:end}
.pv2-av{width:80px;height:80px;border-radius:var(--r);overflow:hidden;background:var(--white);box-shadow:var(--sh-float);display:grid;place-items:center}
.pv2-av img{width:100%;height:100%;object-fit:cover}
.pv2-av.is-logo img{object-fit:contain;padding:var(--s2)}
.pv2-av.is-init{background:var(--navy-2);color:var(--copper);font:var(--w-medium) var(--t-xl)/1 var(--display-font);box-shadow:inset 0 0 0 1px var(--on-dark-line)}
.pv2-hero h1{font:var(--w-medium) var(--t-2xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance;max-width:22ch}
.pv2-rate{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s3);font-size:var(--t-base)}
.pv2-rate b{font-size:var(--t-lg)}
.pv2-rate a{color:var(--white);text-underline-offset:3px}
.pv2-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s3)}
.pv2-badge{display:inline-flex;align-items:center;gap:var(--s1);min-height:28px;padding:0 var(--s3);border-radius:var(--pill);font-size:var(--t-sm);font-weight:var(--w-semi);background:var(--on-dark-line);color:var(--white)}
.pv2-badge.is-ok{background:var(--white);color:var(--ok)}
.pv2-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--s3);border-radius:var(--pill);font-size:var(--t-sm);box-shadow:inset 0 0 0 1px var(--on-dark-line);color:var(--white)}
.pv2-hrs{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s3);font-size:var(--t-sm);color:var(--on-dark)}
.pv2-hrs a{color:var(--white);font-weight:var(--w-semi)}
.pv2-cred{position:absolute;right:var(--pad);bottom:var(--s4);font-size:var(--t-xs);background:var(--scrim);color:var(--on-dark);padding:0 var(--s2);border-radius:var(--pill)}
@media (min-width:768px){.pv2-hero{min-height:440px}.pv2-id{grid-template-columns:96px minmax(0,1fr);gap:var(--s5)}.pv2-av{width:96px;height:96px}.pv2-hin{max-width:calc(var(--max) + 2*var(--pad))}}
@media (min-width:960px){.pv2-hero.is-panel .pv2-av{display:none}.pv2-hero.is-panel .pv2-id{grid-template-columns:minmax(0,1fr)}.pv2-hero.is-panel .pv2-idt{max-width:60%}}
@media (max-width:959px){.pv2-pfield,.pv2-pmono,.pv2-hero.no-logo .pv2-pmono{display:none}}
@media (max-width:767px){.pv2-strip figure:not(:first-child){display:none}.pv2-hero{min-height:0}.pv2-hin{padding-top:calc(var(--nav-h-m) + var(--s3));padding-bottom:var(--s4)}.pv2-hin .crumbs{margin-bottom:var(--s9)}.pv2-cred{position:relative;right:auto;bottom:auto;justify-self:start;margin:0 0 var(--s5) var(--pad)}}

.pv2-bar{background:var(--white);border-bottom:1px solid var(--line)}
.pv2-acts{display:flex;flex-wrap:wrap;gap:var(--s2);padding:var(--s4) 0;position:relative}
.pv2-acts .btn{min-height:var(--tap);font-size:var(--t-sm)}
.pv2-toast{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:var(--t-sm);color:var(--ok);opacity:0;transition:opacity var(--d-fast) var(--ease)}
.pv2-toast.on{opacity:1}
@media (min-width:768px) and (max-width:1023px){.pv2-acts{flex-wrap:nowrap}.pv2-acts .btn{padding-left:var(--s3);padding-right:var(--s3)}}
@media (max-width:767px){.pv2-acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pv2-acts .btn-primary{grid-column:1/-1}.pv2-toast{position:static;transform:none;grid-column:1/-1}}

.pv2-body{padding:var(--s7) 0 var(--s9)}
.pv2-grid{display:grid;gap:var(--s7)}
.pv2-grid>*{min-width:0}
@media (min-width:960px){.pv2-grid{grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:var(--s8)}.pv2-rail{position:sticky;top:calc(var(--nav-h-s) + var(--s5));align-self:start}
@media (max-height:879px){.pv2-rail{position:static}}}
.pv2-sec{padding:var(--s7) 0;border-top:1px solid var(--line)}
.pv2-sec:first-child{padding-top:0;border-top:0}
.pv2-sec h2{font:var(--w-medium) var(--t-xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);margin-bottom:var(--s4)}
.pv2-sec h3{font-size:var(--t-base);font-weight:var(--w-semi);margin:var(--s5) 0 var(--s2)}
.pv2-sec>p{max-width:var(--measure);color:var(--ink)}
.pv2-sec>p+p{margin-top:var(--s3)}
.pv2-sec .fine{margin-top:var(--s3)}
.pv2-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4);margin-top:var(--s5)}
.pv2-facts div{padding:var(--s4);background:var(--white);border-radius:var(--r-sm);box-shadow:var(--sh-card)}
.pv2-facts dt{font-size:var(--t-xs);color:var(--muted)}
.pv2-facts dd{margin-top:var(--s1);font-weight:var(--w-semi)}
@media (min-width:1180px){.pv2-facts{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pv2-note{margin-top:var(--s4);font-size:var(--t-sm);color:var(--muted)}
.pv2-svc{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--s2)}
.pv2-svc li{display:flex;align-items:center;gap:var(--s2);min-height:48px;padding:0 var(--s4);background:var(--white);border-radius:var(--r-sm);box-shadow:var(--sh-card);font-weight:var(--w-medium)}
.pv2-svc .ico,.pv2-gets .ico,.pv2-attr .ico{color:var(--copper-d);flex:none}
.pv2-attr{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s4) var(--s5)}
.pv2-attr ul{display:grid;gap:var(--s2)}
.pv2-attr li{display:flex;gap:var(--s2);align-items:flex-start;font-size:var(--t-sm)}
.pv2-attr>.fine{grid-column:1/-1}
.pv2-map{position:relative;margin:0 0 var(--s4);border-radius:var(--r);overflow:hidden;background:var(--white);box-shadow:var(--sh-card);aspect-ratio:16/9}
.pv2-map-f{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:var(--s3);text-align:center;padding:var(--s5)}
.pv2-map-f>.ico{width:32px;height:32px;color:var(--copper-d)}
.pv2-map-f p{display:grid;gap:var(--s1)}
.pv2-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;opacity:0;transition:opacity var(--d-med) var(--ease)}
.pv2-map.on iframe{opacity:1}
@media (max-width:767px){.pv2-map{aspect-ratio:4/3}}
.pv2-towns{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}
.pv2-towns li{display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--tap);padding:0 var(--s4);border-radius:var(--pill);background:var(--white);box-shadow:var(--sh-card)}
.pv2-towns a{font-weight:var(--w-semi);color:var(--ink);text-decoration:none}
.pv2-towns a:hover{color:var(--copper-d);text-decoration:underline}
.pv2-towns span{font-size:var(--t-xs);color:var(--muted)}
.pv2-none{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s4) var(--s5);background:var(--white);border-radius:var(--r-sm);box-shadow:var(--sh-card);max-width:var(--measure)}
.pv2-none>.ico,.pv2-none>.stars{flex:none;color:var(--muted);margin-top:var(--s1)}
.pv2-rsum{display:grid;gap:var(--s5);align-items:start}
.pv2-rsum p+p{margin-top:var(--s3)}
.pv2-big{display:grid;justify-items:start;gap:var(--s2);padding:var(--s5);background:var(--white);border-radius:var(--r);box-shadow:var(--sh-card)}
.pv2-rtx{display:grid;gap:var(--s3);justify-items:start;align-content:center;height:100%}.pv2-rtx p{font-size:var(--t-lg)}
.pv2-grev{display:grid;gap:var(--s4);margin-top:var(--s5)}.pv2-grev .rv4{padding:var(--s4) var(--s5);background:var(--white);border-radius:var(--r-sm);box-shadow:var(--sh-card)}.pv2-grev header{display:grid;gap:var(--s1)}.pv2-grev .rv4-m{font-size:var(--t-sm);color:var(--muted)}
.pv2-big b{font:var(--w-medium) var(--t-2xl)/1 var(--display-font)}
.pv2-big span{font-size:var(--t-sm);color:var(--muted)}
.pv2-rsum{grid-template-columns:auto minmax(0,1fr);gap:var(--s5);align-items:center}@media (min-width:768px){.pv2-rsum{gap:var(--s6)}}
.pv2-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s2)}
.pv2-gal img,.pv2-gal figure{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-sm);margin:0;position:relative;overflow:hidden}
.pv2-gal figure img{height:100%}
.pv2-gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:var(--s1) var(--s2);font-size:var(--t-xs);background:var(--scrim);color:var(--white)}
.pv2-gal figcaption a{color:var(--white)}

.pv2-rail{display:grid;gap:var(--s5)}
.pv2-card{background:var(--white);border-radius:var(--r);box-shadow:var(--sh-card);padding:var(--s1) var(--s5)}
.pv2-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:64px;padding:var(--s3) 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.pv2-row:first-child{border-top:0}
.pv2-row>span{display:grid;gap:var(--s1);min-width:0}
.pv2-row b{color:var(--copper-d);font-weight:var(--w-semi);overflow-wrap:anywhere}
.pv2-row .fine{color:var(--muted)}
.pv2-row>.ico{flex:none;width:20px;height:20px;color:var(--ink)}
.pv2-row:hover b{text-decoration:underline;text-underline-offset:3px}
.pv2-alt h2{font:var(--w-medium) var(--t-lg)/var(--lh-head) var(--display-font);margin-bottom:var(--s3)}
.pv2-alt ul{display:grid}
.pv2-alt li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--s3);padding:var(--s3) 0;border-top:1px solid var(--line)}
.pv2-alt li:first-child{border-top:0}
.pv2-ini{width:40px;height:40px;border-radius:var(--r-sm);background:var(--navy);color:var(--copper);display:grid;place-items:center;font:var(--w-medium) var(--t-base)/1 var(--display-font)}
.pv2-alt-n{font-weight:var(--w-semi);color:var(--ink);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:var(--lh-head)}
.pv2-alt-n:hover{color:var(--copper-d);text-decoration:underline}
.pv2-alt-r{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s1);font-size:var(--t-sm);color:var(--muted)}
.pv2-alt-p{display:inline-flex;align-items:center;min-height:var(--tap);font-size:var(--t-sm);color:var(--link);text-decoration:underline;text-underline-offset:3px}
.pv2-alt .tlink{margin-top:var(--s2)}

.pv2-claim{background:var(--navy);color:var(--white);padding:var(--s9) 0}
.pv2-claim-in{display:grid;gap:var(--s7);align-items:center}
.pv2-kick{font-size:var(--t-sm);font-weight:var(--w-semi);color:var(--copper)}
.pv2-claim h2{font:var(--w-medium) var(--t-2xl)/var(--lh-head) var(--display-font);letter-spacing:var(--tr-title);text-wrap:balance;margin:var(--s3) 0 var(--s4);max-width:20ch}
.pv2-claim p{color:var(--on-dark)}
.pv2-claim .btn{margin-top:var(--s5)}
.pv2-gets{display:grid;gap:var(--s3)}
.pv2-gets li{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s4) var(--s5);border-radius:var(--r-sm);background:var(--navy-2)}
.pv2-gets .ico{color:var(--copper)}
@media (min-width:960px){.pv2-claim-in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s9)}}

/* Google Maps text attribution (Places policy): Roboto or our body sans, 400, normal, 12-16px, no wrap; white on dark, #5E5E5E (Google-specified) on light */
.gmp{font-family:Roboto,var(--body-font);font-style:normal;font-weight:400;font-size:var(--t-xs);letter-spacing:normal;white-space:nowrap;color:var(--white)}.gmp-l{color:#5E5E5E}
/* Photo links to Google Maps source (Places policy) */
.pv2-phl{display:block;position:absolute;inset:0}.pv2-gal .pv2-phl{position:static}.pv2-phl:focus-visible{outline:none;box-shadow:var(--sh-ring)}
/* pv3c: one breadcrumb bar under the hero, one photo credit line */
.pv2-crumbs{background:var(--paper);border-bottom:1px solid var(--line)}
.pv2-crumbs .wrap{display:block}
.pv2-crumbs .crumbs{list-style:none;margin:0;padding:var(--s2) 0;display:flex;flex-wrap:nowrap;align-items:center;gap:var(--s2);min-width:0;overflow:hidden;white-space:nowrap;font-size:var(--t-xs);line-height:var(--lh-body);color:var(--muted)}
.pv2-crumbs li{display:flex;align-items:center;gap:var(--s2);flex:0 0 auto;min-width:0}
.pv2-crumbs li+li::before{content:"/" / "";color:var(--muted)}
.pv2-crumbs li:last-child{flex:0 1 auto}
.pv2-crumbs li:last-child span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pv2-crumbs a{display:inline-flex;align-items:center;min-height:24px;color:var(--ink);text-decoration:none}
.pv2-crumbs a:hover{text-decoration:underline}
.pv2-crumbs a:focus-visible{outline:none;box-shadow:var(--sh-ring);border-radius:var(--r-sm)}
.pv2-cred.is-gmp{right:max(var(--pad),calc((100% - var(--max)) / 2));max-width:calc(100% - 2*var(--pad));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1}
.pv2-cred.is-gmp a{color:var(--white)}
@media (max-width:767px){.pv2-cred.is-gmp{right:auto;white-space:normal;overflow:visible;border-radius:var(--r-sm);padding:var(--s1) var(--s2)}}
/* pv3e: Services block on every profile */
.pv2-svc-l{margin:0 0 var(--s4);font-size:var(--t-sm);color:var(--muted)}
.pv2-svc-g{margin-top:var(--s4);font-size:var(--t-sm);color:var(--muted)}
.pv2-svc-g b{color:var(--ink);font-weight:var(--w-semi)}

/* sv3 2026-11-05: state page v3 (from stage/state-v2/state-v2.css) */
/* STATE v2 (staged). Tokens only. Shares .pv2-crumbs with the profile. */
.sv2-hero{position:relative;background:var(--navy);color:var(--on-dark);overflow:hidden}
.sv2-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 40%,var(--navy-2),transparent 70%);pointer-events:none}
.sv2-hin{position:relative;display:grid;gap:var(--s7);padding-top:calc(var(--nav-h-m) + var(--s6));padding-bottom:var(--s7)}
.sv2-eyebrow{margin:0 0 var(--s3);font-size:var(--t-xs);font-weight:var(--w-semi);letter-spacing:var(--tr-title);text-transform:uppercase;color:var(--copper-hi)}
.sv2-h1{margin:0;font-family:var(--display-font);font-weight:var(--w-semi);font-size:clamp(2.25rem,6vw,var(--t-display));line-height:var(--lh-tight);letter-spacing:var(--tr-display);color:var(--white);text-wrap:balance}
.sv2-lede{margin:var(--s4) 0 0;max-width:var(--measure);font-size:var(--t-lg);line-height:var(--lh-body);color:var(--on-dark)}
.sv2-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4) var(--s6);margin:var(--s6) 0 0;padding:var(--s5) 0 0;border-top:1px solid var(--on-dark-line)}
.sv2-stats div{min-width:0}
.sv2-stats dt{font-size:var(--t-xs);color:var(--on-dark)}
.sv2-stats dd{display:flex;align-items:center;gap:var(--s2);margin:var(--s1) 0 0;font-family:var(--display-font);font-size:var(--t-2xl);font-weight:var(--w-semi);line-height:var(--lh-tight);color:var(--white)}
.sv2-stats .stars svg{width:14px;height:14px}
.sv2-acts{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}
.sv2-acts .btn{flex:1 1 auto;justify-content:center}
.sv2-map{margin:0;align-self:center}
.sv2-map svg{display:block;width:100%;height:auto;max-height:420px;overflow:hidden}
.sv2-map figcaption{margin-top:var(--s2);font-size:var(--t-xs);color:var(--on-dark)}
.sv2-body{background:var(--paper)}
.sv2-sec{padding:var(--s8) 0}
.sv2-sec + .sv2-sec{padding-top:0}
.sv2-alt{padding-top:0}
.sv2-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s4) var(--s6);margin-bottom:var(--s5)}
.sv2-head h2{margin:0;font-family:var(--display-font);font-weight:var(--w-semi);font-size:var(--t-xl);line-height:var(--lh-head);letter-spacing:var(--tr-title);color:var(--ink)}
.sv2-sub{margin:var(--s1) 0 0;font-size:var(--t-sm);color:var(--muted)}
.sv2-find{flex:1 1 280px;max-width:360px}
.sv2-find label{display:block;margin-bottom:var(--s1);font-size:var(--t-sm);font-weight:var(--w-medium);color:var(--ink)}
.sv2-inp{position:relative}
.sv2-inp .ico{position:absolute;left:var(--s3);top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.sv2-inp input{width:100%;min-height:var(--tap);padding:0 var(--s3) 0 calc(var(--s3) + 24px);border:1px solid var(--line);border-radius:var(--r);background:var(--white);font:inherit;font-size:var(--t-base);color:var(--ink)}
.sv2-inp input:focus-visible{outline:none;border-color:var(--navy);box-shadow:var(--sh-ring)}
.sv2-cnt{min-height:1em;margin:var(--s1) 0 0;font-size:var(--t-xs);color:var(--muted)}
.sv2-cities{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
.sv2-cities a{position:relative;display:flex;flex-direction:column;gap:var(--s1);height:100%;padding:var(--s4) calc(var(--s4) + 20px) var(--s4) var(--s4);background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-card);text-decoration:none;color:var(--ink);transition:border-color var(--d-fast) var(--ease),box-shadow var(--d-fast) var(--ease)}
.sv2-cities a:hover{border-color:var(--copper);box-shadow:var(--sh-float)}
.sv2-cities a:focus-visible{outline:none;box-shadow:var(--sh-ring)}
.sv2-cities b{font-weight:var(--w-semi);font-size:var(--t-base);line-height:var(--lh-head)}
.sv2-cities span{font-size:var(--t-sm);color:var(--muted)}
.sv2-cities .ico{position:absolute;right:var(--s4);top:var(--s4);color:var(--copper-d)}
.sv2-allc{margin-top:var(--s5);border-top:1px solid var(--line)}
.sv2-allc summary{display:flex;align-items:center;justify-content:space-between;min-height:var(--tap);padding:var(--s3) 0;cursor:pointer;list-style:none;font-weight:var(--w-semi);color:var(--ink)}
.sv2-allc summary::-webkit-details-marker{display:none}
.sv2-allc summary .ico{transform:rotate(90deg);transition:transform var(--d-fast) var(--ease)}
.sv2-allc[open] summary .ico{transform:rotate(-90deg)}
.sv2-allc summary:focus-visible{outline:none;box-shadow:var(--sh-ring);border-radius:var(--r-sm)}
.sv2-alist{list-style:none;margin:0;padding:0 0 var(--s4);columns:2;column-gap:var(--s6)}
.sv2-alist li{break-inside:avoid}
.sv2-alist a{display:flex;justify-content:space-between;gap:var(--s3);min-height:var(--tap);align-items:center;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--ink);text-decoration:none}
.sv2-alist a:hover{color:var(--copper-d)}
.sv2-alist span{color:var(--muted)}
.sv2-none{margin:var(--s4) 0 0;font-size:var(--t-sm);color:var(--muted)}
.sv2-spot,.sv2-list{display:grid;gap:var(--s3)}
.sv2-nm{margin:0;font-family:var(--display-font);font-weight:var(--w-semi);font-size:var(--t-lg);line-height:var(--lh-head);letter-spacing:var(--tr-title)}
.sv2-nm a{color:var(--ink);text-decoration:none}
.sv2-nm a:hover{text-decoration:underline}
.sv2-tel{display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--tap);font-weight:var(--w-semi);font-size:var(--t-base);color:var(--ink);text-decoration:none}
.sv2-tel .ico{color:var(--copper-d)}
.sv2-tel:hover{text-decoration:underline}
.sv2-prof{min-height:var(--tap)}
.sv2-info .wrap{display:grid;gap:var(--s7)}
.sv2-info .prose{margin:0}
.sv2-band{background:var(--navy);color:var(--on-dark);padding:var(--s8) 0}
.sv2-band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s5)}
.sv2-band h2{margin:0;font-family:var(--display-font);font-weight:var(--w-semi);font-size:var(--t-xl);line-height:var(--lh-head);color:var(--white)}
.sv2-band p{margin:var(--s2) 0 0;max-width:var(--measure);color:var(--on-dark)}
.sv2-body .pager4{margin-top:var(--s6)}
.sv2-body .seg a{scroll-margin-top:var(--nav-h)}
#pros,#cities.sv2-sec{scroll-margin-top:calc(var(--nav-h) + var(--s4))}
@media (max-width:767px){.sv2-map svg{max-height:240px}.sv2-map{order:2}.sv2-hin{gap:var(--s5)}.sv2-find{max-width:none;flex-basis:100%}.sv2-alist{columns:1}.sv2-head h2{font-size:var(--t-lg)}.sv2-band .btn{width:100%;justify-content:center}}
@media (min-width:768px){.sv2-stats{grid-template-columns:repeat(4,auto);justify-content:start}.sv2-acts .btn{flex:0 0 auto}.sv2-cities{grid-template-columns:repeat(3,minmax(0,1fr))}.sv2-alist{columns:3}.sv2-sec{padding:var(--s9) 0}}
@media (min-width:960px){.sv2-hin{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:center;gap:var(--s8);padding-top:calc(var(--nav-h) + var(--s8));padding-bottom:var(--s9)}.sv2-cities{grid-template-columns:repeat(4,minmax(0,1fr))}.sv2-alist{columns:4}.sv2-spot{grid-template-columns:repeat(3,minmax(0,1fr))}.sv2-info .wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}}
.sv2-cm{display:flex;flex-wrap:wrap;gap:0 var(--s3)}
.sv2-info h2{font-family:var(--display-font);font-weight:var(--w-semi);font-size:var(--t-xl);line-height:var(--lh-head);letter-spacing:var(--tr-title);margin:0 0 var(--s4)}
.sv2-info .prose p{margin:0 0 var(--s3);font-size:var(--t-base);line-height:var(--lh-body);color:var(--ink)}
.sv2-info .prose{max-width:none}
@media (max-width:767px){.sv2-map svg{max-height:200px}.sv2-cm{display:grid}.sv2-cities a{padding:var(--s3) calc(var(--s3) + 20px) var(--s3) var(--s3)}.sv2-cities .ico{right:var(--s3);top:var(--s3)}.sv2-lede{font-size:var(--t-base)}}
@media (min-width:960px){}
/* v3: map */
.sv2-nb{fill:none;stroke:var(--on-dark-line);stroke-width:1;vector-effect:non-scaling-stroke}
.sv2-shape{fill:var(--navy-2);stroke:var(--on-dark);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.sv2-dot{fill:var(--copper);fill-opacity:.4;stroke:var(--copper-hi);stroke-opacity:.7;stroke-width:1;vector-effect:non-scaling-stroke}
.sv2-dot.is-top{fill-opacity:.85;stroke:var(--white);stroke-opacity:.9;transition:fill-opacity var(--d-fast) var(--ease)}
.sv2-hit{fill:transparent}
.sv2-map a{cursor:pointer}
.sv2-map a:hover .sv2-dot,.sv2-map a:focus-visible .sv2-dot{fill:var(--copper-hi);fill-opacity:1;stroke-width:2}
.sv2-map a:focus-visible{outline:none}
.sv2-map a:focus-visible .sv2-dot{stroke:var(--focus);stroke-width:3}
.sv2-hov{display:none}
.sv2-map a:hover .sv2-hov,.sv2-map a:focus-visible .sv2-hov{display:inline}
.sv2-lbl text,.sv2-hov{fill:var(--white);font-family:var(--body-font);font-weight:var(--w-medium);paint-order:stroke;stroke:var(--navy);stroke-width:4px;stroke-linejoin:round}
.sv2-lc{fill:var(--copper-hi);font-weight:var(--w-semi)}
.sv2-lead{fill:none;stroke:var(--on-dark);stroke-width:1;vector-effect:non-scaling-stroke}
/* v3: cards (compact rows at desktop) */
.sv2-card{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-areas:"av who" "act act";gap:var(--s3);padding:var(--s4);background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-card)}
.sv2-card.is-spot{border-top:3px solid var(--copper)}
.sv2-av{grid-area:av;width:48px;height:48px;border-radius:var(--r-sm);overflow:hidden;display:grid;place-items:center;background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.sv2-av img{width:100%;height:100%;object-fit:contain;padding:var(--s1)}
.sv2-av.is-init{background:var(--navy-2);color:var(--copper);font:var(--w-medium) var(--t-base)/1 var(--display-font);box-shadow:none}
.sv2-who{grid-area:who;min-width:0}
.sv2-nm{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);margin:0;font-family:var(--display-font);font-weight:var(--w-semi);font-size:var(--t-lg);line-height:var(--lh-head);letter-spacing:var(--tr-title)}
.sv2-nm a{color:var(--ink);text-decoration:none}
.sv2-nm a:hover{text-decoration:underline}
.sv2-badge{display:inline-flex;align-items:center;gap:var(--s1);padding:0 var(--s2);border-radius:var(--pill);font-family:var(--body-font);font-size:var(--t-xs);font-weight:var(--w-semi);letter-spacing:normal;color:var(--ok);border:1px solid var(--ok)}
.sv2-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s3);margin:var(--s1) 0 0;font-size:var(--t-sm);color:var(--muted)}
.sv2-rt{display:inline-flex;align-items:center;gap:var(--s1)}
.sv2-rt b{color:var(--ink);font-weight:var(--w-semi)}
.sv2-rt .stars svg{width:12px;height:12px}
.sv2-rt.is-new b{padding:0 var(--s2);border-radius:var(--pill);border:1px solid var(--line);font-size:var(--t-xs)}
.sv2-chips{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s2) 0 0}
.sv2-chip{display:inline-flex;align-items:center;gap:var(--s1);min-height:28px;padding:0 var(--s3);border-radius:var(--pill);border:1px solid var(--line);background:var(--paper);font-size:var(--t-xs);font-weight:var(--w-medium);color:var(--ink);text-decoration:none}
.sv2-chip .ico{color:var(--copper-d)}
a.sv2-chip:hover{border-color:var(--copper)}
a.sv2-chip:focus-visible{outline:none;box-shadow:var(--sh-ring)}
.sv2-act{grid-area:act;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}
.sv2-tel{display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--tap);font-weight:var(--w-semi);font-size:var(--t-base);color:var(--ink);text-decoration:none}
.sv2-tel .ico{color:var(--copper-d)}
.sv2-tel:hover{text-decoration:underline}
.sv2-prof{min-height:var(--tap)}
.sv2-more{width:100%;justify-content:center;margin-top:var(--s4);min-height:var(--tap)}
.sv2-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}
.sv2-jump{display:inline-flex;align-items:center;gap:var(--s1);min-height:var(--tap);font-size:var(--t-sm);font-weight:var(--w-medium);color:var(--ink)}
#cities.sv2-sec{padding-top:var(--s6)}
@media (pointer:coarse){.sv2-chip{min-height:var(--tap)}}
@media (max-width:767px){.sv2-lbl{display:none}.sv2-list.is-capped>.sv2-card:nth-child(n+11){display:none}.sv2-jump{display:inline-flex}}
@media (min-width:768px){.sv2-jump{display:none}}
@media (min-width:960px){
#cities.sv2-sec{padding-top:var(--s7)}
.sv2-list{gap:0;background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-card);overflow:hidden}
.sv2-list .sv2-card{grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"av who act";align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border:0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line)}
.sv2-list .sv2-card:last-child{border-bottom:0}
.sv2-list .sv2-card:hover{background:var(--paper)}
.sv2-list .sv2-who{display:grid;grid-template-columns:minmax(0,1fr);}
.sv2-list .sv2-act{padding-top:0;border-top:0;flex-wrap:nowrap;gap:var(--s5)}
.sv2-list .sv2-tel{min-width:150px}
.sv2-list .sv2-nm{font-size:var(--t-base)}
}


/* CITY v1 2026-11-05 (Dayton test) */
.cv1-search{align-self:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:24px}
.cv1-sl{margin:0 0 12px;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.cv1-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}
.cv1-side{display:grid;gap:20px;position:sticky;top:96px}
.cv1-panel{border:1px solid var(--line,#e3e6ea);border-radius:16px;padding:20px;background:#fff}
.cv1-panel h2{font-size:1.125rem;margin:0 0 12px}
.cv1-near{list-style:none;margin:0;padding:0}
.cv1-near a{display:flex;align-items:center;gap:8px;padding:10px 0;border-top:1px solid var(--line,#eef0f2);text-decoration:none;color:inherit}
.cv1-near li:first-child a{border-top:0}
.cv1-near b{flex:1;font-weight:600}.cv1-near .num{opacity:.65;font-size:.875rem}
.cv1-near svg{width:16px;height:16px;opacity:.5}
.cv1-near a:hover b{text-decoration:underline}
.cv1-all{display:inline-flex;gap:6px;align-items:center;margin-top:12px;font-weight:600}
.cv1-all svg{width:16px;height:16px}
.cv1-claim p{margin:0 0 16px;font-size:.9375rem}
.cv1-feat{background:#fff3e6;color:#9a4b12}
@media (max-width:960px){.cv1-grid{grid-template-columns:1fr}.cv1-side{position:static}.cv1-search{padding:16px}}
.cv1-search .ss{margin-top:0;font-size:clamp(1.5rem,2.4vw,2.25rem);opacity:1;transform:none;visibility:visible}
.cv1-form{display:grid;gap:8px}.cv1-form label{font-size:.875rem;color:rgba(255,255,255,.8)}.cv1-form input{width:100%;min-height:48px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#fff;color:#0f1a33;font:inherit}.cv1-form .btn{margin-top:8px;justify-content:center}
@media (min-width:960px){.cv1-hero .sv2-hin{grid-template-columns:minmax(0,1fr)}}.cv1-featsec{margin-bottom:28px}.cv1-fh{display:flex;align-items:center;gap:10px;font-size:1.125rem;margin:0 0 12px}.cv1-open{border-style:dashed}.cv1-open .sv2-av{background:#fff3e6;color:#9a4b12}.cv1-fnote{font-size:.8125rem;opacity:.7;margin:8px 0 0}

/* HOME v2 preview 2026-11-05 */
.hv2-search{align-self:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:24px}
.hv2-jobs{margin:14px 0 0;font-size:.875rem;color:rgba(255,255,255,.75)}.hv2-jobs a{color:#fff;margin-right:10px;text-decoration:underline;text-underline-offset:3px}
.hv2-k{color:var(--copper-ink,#9a4b12)}
.hv2-dk{color:var(--navy,#0f1a33);border-color:currentColor}
.hv2-plans{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.hv2-plans h3{margin:12px 0 4px;font-size:1.125rem}.hv2-p{font-size:2rem;font-weight:700;margin:0 0 8px}.hv2-p small{font-size:1rem;opacity:.6}
.hv2-fp{border-color:var(--copper,#e0a060);box-shadow:0 8px 24px rgba(224,160,96,.18)}
/* HOME v2b: original hero + stat strip */
.hv2-strip{background:#fff;border-bottom:1px solid var(--line,#e3e6ea);padding:28px 0}
.hv2-strip .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 40px}
.hv2-stats{margin:0;color:var(--navy,#0f1a33)}.hv2-stats dt{color:var(--ink-2,#5b6472)}.hv2-stats dd{color:var(--navy,#0f1a33)}
.hv2-sn{margin:0;max-width:34ch;font-size:.875rem;color:var(--ink-2,#5b6472)}
/* HOME v2c: no empty band under strip; sections always visible */.hv2-strip+.sv2-body>.sv2-sec:first-child{padding-top:var(--s7)}.hv2-strip~.sv2-body .sv2-sec,.hv2-strip~.sv2-body .sv2-card,.hv2-strip~.sv2-body .sv2-band{opacity:1;visibility:visible;transform:none}
/* HOME v2d: Dayton layout */.hv2-strip{padding:20px 0}.sv2-body>.hv2-first{padding-top:var(--s7)}.sv2-body>.sv2-sec{padding-top:var(--s7);padding-bottom:var(--s7)}
/* HOME v2e homeowner */.hv2-how{list-style:none;margin:0;padding:0;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hv2-how h3{margin:10px 0 4px;font-size:1.0625rem}.hv2-how p{margin:0;font-size:.9375rem}.hv2-n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--navy,#0f1a33);color:#fff;font-weight:700}.hv2-more{margin:16px 0 0}.hv2-cov{font-size:clamp(1.25rem,2vw,1.75rem)!important}
/* HOME v2f */.stage4+.sv2-body{margin-top:0;border-top:0}.stage4+.sv2-body>.hv2-first{padding-top:var(--s7)}.hv2-note{margin:6px 0 0;font-size:.8125rem;color:var(--ink-2,#5b6472)}
/* PAGES sv2 2026-11-05: shared page mast + no illustration labels */.sv2-hero.page-mast .sv2-hin{grid-template-columns:minmax(0,1fr)}.sv2-hero.page-mast .page-h1{max-width:20ch;margin-top:0}.sv2-hero.page-mast .sv2-lede{max-width:60ch}.pv2-crumbs+.cbody{background:var(--paper);padding-top:var(--s7)}.illus{display:none!important}
/* SEARCH sv2 list skin 2026-11-05 (results page only) */.page-template-browse-listings .list4{background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-card);overflow:hidden;gap:0}.page-template-browse-listings .list4>.row4{border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:var(--white);padding:var(--s4) var(--s5);margin:0}.page-template-browse-listings .list4>.row4:last-child{border-bottom:0}.page-template-browse-listings .list4>.row4:hover{background:var(--paper)}.page-template-browse-listings .list4>.row4.feat{border-top:3px solid var(--copper)}.page-template-browse-listings .r4-name{font-size:var(--t-base)}
/* CRED v1: photo credits under hero strip */.pv2-phcred{margin:0;padding:8px var(--pad,24px);background:var(--white);border-bottom:1px solid var(--line);font:400 .8125rem/1.5 Roboto,var(--body-font,sans-serif);color:#5e5e5e;text-align:right}.pv2-phcred a{color:#1f1f1f;text-decoration:underline;text-underline-offset:2px}.pv2-phcred .gmp{white-space:nowrap;color:#5e5e5e}.pv2-hero figcaption{display:none}
/* HEADERS sv2 2026-11-05: search, join, 404 use the state/city navy hero (no photo plate) */.smast4,.stage.nf{background:radial-gradient(60% 80% at 85% 40%,var(--navy-2),transparent 70%),var(--navy)!important}.smast4-img,.smast4::before{display:none!important}.smast4 .kick{color:var(--copper-hi)}
/* HOME hero explainer 2026-11-05 */.stage4-lede{position:relative;margin:var(--s4) 0 0;max-width:34ch;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.5;color:var(--white);text-shadow:0 1px 2px rgba(6,17,31,.5)}.stage4-lede+.ss-wrap .ss{margin-top:var(--s5)}@media (max-width:767px){.stage4-lede{max-width:none;font-size:1rem;margin-top:var(--s3)}}
/* HOME restore 2026-11-05: blog strip */.hv2-blog{list-style:none;margin:0;padding:0;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.hv2-blog li{display:flex;flex-direction:column;gap:8px}.hv2-bimg{display:block;margin:-20px -20px 4px;border-radius:16px 16px 0 0;overflow:hidden;aspect-ratio:16/9}.hv2-bimg img{width:100%;height:100%;object-fit:cover}.hv2-blog h3{margin:0;font-size:1.0625rem;line-height:1.35}.hv2-blog h3 a{color:inherit;text-decoration:none}.hv2-blog h3 a:hover{text-decoration:underline}.hv2-blog p{margin:0;font-size:.9375rem;color:var(--ink-2,#5b6472)}
/* PFUSA Score block 2026-11-05 */.pv2-scb{display:flex;flex-wrap:wrap;gap:24px;align-items:center}.pv2-scg{display:flex;align-items:baseline;gap:10px;margin:0}.pv2-scg b{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:12px;background:var(--navy);color:#fff;font-size:1.75rem}.pv2-scg .num{font-size:1.5rem;font-weight:600}.pv2-scg small{font-size:.875rem;opacity:.6}.pv2-scl{list-style:none;margin:0;padding:0;flex:1;min-width:240px;display:grid;gap:8px}.pv2-scl li{display:grid;grid-template-columns:96px 1fr 64px;gap:10px;align-items:center;font-size:.875rem}.pv2-sct{height:8px;border-radius:4px;background:var(--line)}.pv2-sct span{display:block;height:100%;border-radius:4px;background:var(--copper)}
/* PFUSA chip + profile anchors 2026-11-05 */.pfs-chip{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border:1px solid var(--line);border-radius:999px;font-size:.75rem;line-height:1.6;color:var(--navy);background:var(--white);white-space:nowrap}.pfs-chip b{color:var(--copper-ink,#9a4b12)}.pfs-of{opacity:.6}.pfs-chip::before{content:"PFUSA";font-weight:600;font-size:.6875rem;letter-spacing:.04em;opacity:.7}.pv2-sec[id]{scroll-margin-top:calc(var(--nav-h,72px) + 16px)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* hero ZIP error */.ss-err{margin:8px 0 0;font:500 .9375rem/1.4 var(--body-font,sans-serif);color:#ffd7b0}.ss-err:empty{display:none}
/* home local */.hv2-loc{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.hv2-locmsg{margin:6px 0 0;font-size:.9375rem}.hv2-locmsg:empty{display:none}
/* GeoNames attribution */.foot-attr{font-size:.8125rem;opacity:.85}.foot-attr a{color:inherit;text-decoration:underline}

/* SEARCH v1 2026-11-06: city hero + real Plumby/pipes plate, shared cards. */
.srch-hero{overflow:hidden}.srch-hero .sv2-hin{grid-template-columns:minmax(0,7fr) minmax(240px,4fr)}
.srch-htx,.srch-find{position:relative;z-index:2}
.srch-find{margin-top:var(--s6);padding:var(--s5);border:1px solid var(--on-dark-line);border-radius:var(--r);background:var(--on-dark)}
.srch-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.55fr) auto;gap:var(--s3);align-items:end}
.srch-fields input{display:block;width:100%;min-width:0;min-height:var(--tap);padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--white);color:var(--ink);font:inherit}
.srch-fields input:focus-visible{outline:2px solid var(--copper-hi);outline-offset:2px}
.srch-go{justify-content:center;min-height:var(--tap)}
.srch-art{position:relative;align-self:stretch;min-height:320px;border-radius:var(--r);background:var(--navy-2);isolation:isolate}
.srch-art>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.srch-art>picture::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--scrim),transparent)}
.srch-plumby{position:absolute;right:5%;bottom:0;width:auto;height:88%;max-width:100%;object-fit:contain;object-position:right bottom;z-index:2}
.srch-error{grid-column:1/-1;margin:var(--s1) 0 0;color:var(--copper-hi);font-size:var(--t-sm)}
.srch-error:empty{display:none}
.srch-filters{margin:0 0 var(--s6)}
.srch-filters .sv2-tools{margin-left:auto}
.sv2-claim{margin:var(--s2) 0 0;font-size:var(--t-xs)}
.sv2-claim a{color:var(--muted);text-underline-offset:3px}
.sv2-meta .pfs-chip{padding:var(--s1) var(--s3);min-height:28px;font-size:var(--t-xs);line-height:var(--lh-body)}
@media (max-width:959px){.srch-hero .sv2-hin{grid-template-columns:minmax(0,1fr)}.srch-art{position:absolute;inset:0;z-index:0;opacity:.22;border-radius:0}.srch-hero .sv2-htx{position:relative;z-index:2}.srch-hero .sv2-hin{position:relative}.srch-hero .sv2-htx{max-width:720px}.srch-art>picture::after{background:var(--scrim)}.srch-fields{grid-template-columns:1fr 1fr}.srch-go{grid-column:1/-1}.srch-filters .sv2-tools{margin-left:0;width:100%}}
@media (max-width:600px){.srch-fields{grid-template-columns:1fr}.srch-go{grid-column:auto;width:100%}.srch-find{padding:var(--s4)}.srch-filters .sv2-tools{display:grid;grid-template-columns:1fr 1fr}.srch-filters .seg{display:grid;grid-template-columns:1fr 1fr}.srch-filters .seg a{justify-content:center}.sv2-list .sv2-act{justify-content:flex-start}.sv2-list .sv2-prof{flex:1;justify-content:center}.sv2-meta .pfs-chip{min-height:24px}}

/* Balance the repaired search hero; old header rules were applied to a different mast. */
.page-template-browse-listings .srch-hero .sv2-h1{font-size:clamp(2rem,4vw,3.5rem)}
.page-template-browse-listings .srch-hero .sv2-lede{max-width:62ch}
.page-template-browse-listings .srch-find{padding:var(--s4)}
@media (min-width:960px){.page-template-browse-listings .srch-hero .sv2-hin{gap:var(--s5);padding-bottom:var(--s8)}.page-template-browse-listings .srch-art{min-height:260px}.page-template-browse-listings .srch-find{margin-top:var(--s4)}}

/* HOME SEARCH v2 2026-11-06: Pixel training pass. Home only; locked brand tokens. */
.srch-filters>fieldset{display:flex;align-items:center;gap:var(--s2)}
.srch-filters select{min-height:var(--tap);padding:0 var(--s6) 0 var(--s3);border:1px solid var(--line);border-radius:var(--pill);background:var(--white);color:var(--ink);font:inherit;font-size:var(--t-sm)}
.srch-filters select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.pfind{display:block;position:relative;box-sizing:border-box;z-index:3;font-family:var(--body-font)}
.pfind-form{position:relative;max-width:100%;margin:0;background:var(--white);color:var(--ink)}
.pfind-fields{display:grid;align-items:center;gap:0;min-width:0}
.pfind-field{position:relative;display:flex;align-items:center;gap:var(--s3);min-width:0}
.pfind-icon{flex:none;width:20px;height:20px;fill:none;stroke:var(--muted);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}

.pfind-field input,.pfind-field select{display:block;width:100%;min-width:0;min-height:52px;margin:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;color:var(--ink);font:var(--w-medium) 16px/var(--lh-body) var(--body-font)}
.pfind-field input::placeholder{color:var(--hint);opacity:1}
.pfind-field input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}
.pfind-field select{cursor:pointer;appearance:none;-webkit-appearance:none}
.pfind-field :focus,.pfind-field :focus-visible,.pfind-field select:focus-visible{outline:0;box-shadow:none}
.pfind:focus{outline:0}
.pfind:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--navy)}
.pfind-field:focus-within{border-radius:0;box-shadow:none}
.pfind-field[data-invalid=true]{box-shadow:none}
.pfind-chevron{position:absolute;fill:none;stroke:var(--muted);stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.pfind-go{margin:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);border:0;background:var(--navy);color:var(--white);font:var(--w-semi) var(--t-base)/1 var(--body-font);cursor:pointer;transition:background-color var(--d-fast) var(--ease),transform var(--d-fast) var(--ease)}
.pfind-go:hover{background:var(--navy-2)}
.pfind-go:active{transform:translateY(1px)}
.pfind-go:focus-visible,.pfind-clear:focus-visible{outline:2px solid var(--copper-hi);outline-offset:2px}
.pfind-clear{display:grid;place-items:center;flex:none;width:var(--tap);height:var(--tap);margin:0 var(--s2) 0 0;padding:0;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);cursor:pointer}
.pfind-clear[hidden]{display:none}
.pfind-clear svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.pfind-error{margin:var(--s3) var(--s4) 0;font-size:var(--t-base);font-weight:var(--w-semi);line-height:var(--lh-body)}
.pfind-error:empty{display:none}
.pfind-trending ul{display:flex;gap:var(--s2);margin:0;padding:0;list-style:none}
.pfind-trending a{display:inline-flex;white-space:nowrap;align-items:center;justify-content:center;border-radius:var(--pill);font-weight:var(--w-medium);line-height:1.2;text-decoration:none;transition:background-color var(--d-fast) var(--ease),border-color var(--d-fast) var(--ease)}
.pfind-trending a:hover{border-color:var(--copper);background:var(--copper-hi)}
.pfind-trending a:focus-visible{outline:2px solid var(--copper-hi);outline-offset:3px}
.pfind-noscript{margin-top:var(--s4);color:var(--on-dark);font-size:var(--t-sm)}
@media (prefers-reduced-motion:reduce){.pfind *{transition:none}}

.stage4:has(.pfind){min-height:800px;height:100svh;max-height:1120px}
.stage4:has(.pfind) .stage4-in{padding-top:clamp(144px,19svh,208px);padding-bottom:var(--s8)}
.stage4:has(.pfind) .stage4-media img{object-position:68% 50%}
.stage4:has(.pfind) .stage4-shade{background:linear-gradient(90deg,var(--navy) 0%,var(--navy) 40%,var(--scrim) 68%,transparent 100%)}
.stage4:has(.pfind) .stage4-fig{left:auto;right:3%;bottom:-8%;height:min(52%,496px);opacity:1}
.stage4:has(.pfind) .h4,.stage4:has(.pfind) .stage4-lede,.stage4:has(.pfind) .stage4-note{position:relative;z-index:2;max-width:70%}
.stage4:has(.pfind) .h4-a{font:var(--w-semi) clamp(48px,6.8vw,104px)/var(--lh-tight) var(--display-font)}
.stage4:has(.pfind) .h4-b{margin-top:var(--s2)}
.stage4:has(.pfind) .stage4-lede{max-width:38ch;margin-top:var(--s4);font-size:var(--t-lg);color:var(--white)}
.stage4:has(.pfind) .stage4-note{margin-top:var(--s5);font-size:var(--t-base);line-height:var(--lh-body);color:var(--paper)}
.pfind{max-width:min(800px,calc(70% - var(--s6)));margin-top:var(--s5)}
.pfind-form{padding:var(--s2);border-radius:var(--pill);box-shadow:var(--sh-float)}
.pfind-fields{grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr) 144px 128px;position:relative;padding:0}
.pfind-field{min-height:72px;padding:0 var(--s4);border-right:1px solid var(--muted);border-radius:0}
.pfind-field:focus-within{border-radius:var(--r)}
.pfind-field input,.pfind-field select{font-size:16px;font-weight:var(--w-medium)}
.pfind-grade{min-width:0;max-width:none;width:auto;border-right:0;padding:0 var(--s3) 0 var(--s4);gap:var(--s2);background:var(--white)}
.pfind-grade select{padding-right:var(--s5)}
.pfind-grade .pfind-icon{width:16px;height:16px;stroke:var(--navy)}
.pfind-grade .pfind-chevron{right:var(--s3);width:16px;height:16px;stroke-width:1.5}
.pfind-go{min-width:104px;min-height:64px;margin:var(--s2);padding:0 var(--s5);border-radius:var(--r-sm)}
.pfind-trending{align-items:center;gap:var(--s3);margin:var(--s4) 0 0}
.pfind-trending{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
.pfind-trending ul{flex-wrap:nowrap;flex:0 0 auto}
.pfind-trending li{flex:0 0 auto}
.pfind-trendlabel{flex:0 0 auto;padding:0;min-height:var(--tap);display:inline-flex;align-items:center;font-size:var(--t-base);font-weight:var(--w-medium);color:var(--paper)}
.pfind-trending a{min-height:var(--tap);padding:var(--s2) var(--s4);border:1px solid var(--muted);background:var(--paper);color:var(--navy);font-size:var(--t-sm);box-shadow:none}
.pfind-error{color:var(--copper-hi)}
@media (min-width:1440px){
 .stage4:has(.pfind) .stage4-fig{right:5%;height:min(58%,560px)}
 .pfind{max-width:min(840px,calc(70% - var(--s6)))}
}
@media (min-width:1600px){
 .pfind-go{min-width:128px}
 .pfind-grade{padding-left:var(--s5);width:176px}
 .pfind-fields{grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr) 176px 152px}
}
@media (min-width:768px) and (max-width:959px) and (max-height:850px){
 .stage4:has(.pfind) .stage4-in{padding-top:var(--s7)}
}
@media (min-width:960px) and (max-width:1199px){
 .stage4:has(.pfind) .stage4-fig{height:48%;right:0;bottom:-4%}
 .pfind{max-width:calc(68% - var(--s6))}
 .pfind-field{padding-right:var(--s2);padding-left:var(--s3);gap:var(--s2)}
 .pfind-grade{width:128px;padding-left:var(--s3);gap:var(--s1)}
 .pfind-go{min-width:96px;padding:0 var(--s4)}
 .stage4:has(.pfind) .h4-a{font-size:72px}
}
@media (min-width:768px) and (max-width:959px){
 .pfind-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"job where" "grade go"}
 .pfind-field{min-height:56px}
 .pfind-job{grid-area:job;border-right:1px solid var(--muted);border-bottom:1px solid var(--muted)}
 .pfind-where{grid-area:where;border-bottom:1px solid var(--muted);border-right:0}
 .pfind-grade{grid-area:grade;width:auto;border-right:0}
 .pfind-go{grid-area:go;min-width:calc(100% - var(--s4));min-height:48px;margin:var(--s2);padding:0 var(--s4)}
 .pfind-form{border-radius:var(--r)}
}
@media (min-width:768px) and (max-width:959px){

 .stage4:has(.pfind) .stage4-fig{top:52%;bottom:auto;left:auto;right:-2%;height:auto;width:36%;max-width:300px;opacity:1}
 .stage4:has(.pfind) .plumby4{display:block;width:100%;height:auto}
 .pfind{max-width:calc(76% - var(--s6))}
 .stage4:has(.pfind) .h4-a{font-size:72px}
 .stage4:has(.pfind) .stage4-lede{font-size:var(--t-base)}
}
@media (min-width:768px) and (max-width:899px){
 .pfind-field{padding:0 var(--s3);gap:var(--s2)}
 .pfind-job input{font-size:16px;max-width:100%}
 .pfind-field .pfind-icon{width:16px;height:16px}
 .pfind-go{min-width:80px;padding:0 var(--s3)}
 .pfind-grade{width:128px;padding:0 var(--s2);gap:var(--s1)}
 .pfind-clear{width:44px;height:44px}
 .pfind-trending{align-items:flex-start}
}
@media (max-width:767px){
 .stage4:has(.pfind){min-height:0;max-height:none}
 .stage4:has(.pfind) .stage4-in{padding-top:calc(var(--nav-h-m) + var(--s5));padding-bottom:var(--s4)}
 .stage4:has(.pfind) .stage4-media{display:none}
 .stage4:has(.pfind) .stage4-shade{display:none}
 .stage4:has(.pfind) .h4,.stage4:has(.pfind) .stage4-lede,.stage4:has(.pfind) .stage4-note{max-width:100%}
 .stage4:has(.pfind) .h4-a{display:block;font:var(--w-semi) 48px/var(--lh-tight) var(--display-font)}
 .stage4:has(.pfind) .h4-b{margin-top:var(--s2);font:var(--w-medium) var(--t-xl)/var(--lh-tight) var(--display-font)}
 .stage4:has(.pfind) .h4-a>span{display:inline-block}
 .stage4:has(.pfind) .stage4-lede{max-width:40ch;margin-top:var(--s4);font-size:var(--t-base)}
 .stage4:has(.pfind) .stage4-note{margin-top:var(--s4);font-size:var(--t-base)}
 .stage4:has(.pfind) .stage4-fig{position:relative;order:2;inset:auto;align-self:flex-end;width:40%;max-width:176px;height:auto;margin:0 var(--s4) 0 0;opacity:1;pointer-events:none}
 .stage4:has(.pfind) .plumby4{display:block;width:100%;height:auto}
 .pfind{width:100%;max-width:100%;margin-top:var(--s5)}
 .pfind-form{padding:var(--s2);border-radius:var(--r);box-shadow:var(--sh-card)}
 .pfind-fields{display:grid;grid-template-columns:minmax(0,1fr) 120px;grid-template-areas:"job job" "where grade" "go go";padding:0}
 .pfind-job{grid-area:job;min-height:56px;border:0;border-bottom:1px solid var(--muted)}
 .pfind-where{grid-area:where;min-height:56px;padding-right:var(--s2);border-right:0}
 .pfind-job input,.pfind-where input{padding:0}
 .pfind-grade{position:static;grid-area:grade;width:auto;max-width:100%;height:auto;min-height:56px;margin:0;padding:0 var(--s2) 0 var(--s3);border:0;border-left:1px solid var(--muted);border-bottom:1px solid var(--muted);border-radius:0;background:var(--white)}
 .pfind-grade .pfind-icon{display:none}
 .pfind-grade select{height:52px;min-height:44px;padding-right:var(--s5);font-size:16px;color:var(--navy)}
 .pfind-grade .pfind-chevron{right:var(--s2)}
 .pfind-grade:focus-within{border-radius:var(--r-sm)}
 .pfind-go{grid-area:go;min-height:48px;width:calc(100% - var(--s4));margin:var(--s3) var(--s2) var(--s3);border-radius:var(--r-sm)}
 .pfind-trending{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;width:calc(100% + var(--s6));max-width:calc(100% + var(--s6));box-sizing:border-box;overflow-x:auto;overflow-y:hidden;gap:var(--s2);margin:var(--s4) 0 0;padding:0 var(--s6) var(--s2) 0;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
 .pfind-trendlabel{flex:0 0 auto;font-size:var(--t-base);color:var(--paper)}
 .pfind-trending ul{flex-wrap:nowrap;flex:1 0 auto;gap:var(--s2);margin:0;padding:0}
 .pfind-trending li{flex:0 0 auto;scroll-snap-align:start}
 .pfind-trending a{min-height:44px;padding:var(--s3) var(--s4);border:1px solid var(--paper);font-size:var(--t-base);white-space:nowrap}
 .pfind-error{font-size:var(--t-base)}
 .home .mbar{transition:transform var(--d-fast) var(--ease)}
 .stage4:has(.pfind){background:var(--navy)}
}
@media (max-width:360px){
 .pfind-form{padding:var(--s2)}
 .pfind-field{padding-left:var(--s3)}
 .pfind-grade{padding-left:var(--s3)}
}

@media (min-width:768px) and (max-width:959px) and (max-height:850px){
 .stage4:has(.pfind) .stage4-in{padding-top:var(--s7)}
}
/* HOME SEARCH restyle restraint 2026-11-06: actual attached focused capture audited.
Only this refinement, no hero or control mechanism changes. Desktop concentric caps:
40px outer = 32px button cap + 8px consistent inset. Narrow/mobile use the already designed layout with 24px cap +8px inset.
Focus surface owned once by parent. Text/select no second box or rounded outline. Active is a low profile bottom cue at inner-cell edge, not another container. Button/clear are already bounded click actions and retain one accessible ring. */
@media (min-width:960px){
 .pfind-form{border-radius:40px}
 .pfind-go{margin:0;border-radius:32px}
}
@media (min-width:768px) and (max-width:959px){
 .pfind-form,.pfind-go{border-radius:24px}
}
@media (max-width:767px){
 .pfind-go{border-radius:16px}
}
.pfind-field{border-color:var(--line);border-radius:0}
.pfind-field input,.pfind-field select{border-radius:0}
.pfind-field :focus,.pfind-field :focus-visible,.pfind-field select:focus-visible{outline:0;box-shadow:none}
.pfind-field:focus-within{border-radius:0;box-shadow:none;z-index:1}
.pfind-form:focus-within{border-radius:40px;outline:2px solid var(--copper-hi);outline-offset:2px}
.pfind-field:has(input:focus-visible),.pfind-field:has(select:focus-visible){background-image:linear-gradient(0deg,var(--navy),var(--navy));background-repeat:no-repeat;background-size:calc(100% - var(--s8)) 2px;background-position:50% 100%}
.pfind-where:has(.pfind-clear:focus-visible),
.pfind-field:has(input:focus-visible):has(.pfind-clear:focus-visible),
.pfind-field:has(select:focus-visible):has(.pfind-clear:focus-visible){background-image:none}
.pfind-clear:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--navy);background:var(--white)}
.pfind-go:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--white)}
.pfind-field[data-invalid=true]:has(input:focus){background-image:none}
@media (max-width:959px){.pfind-form:focus-within{border-radius:var(--r)}}
@media (prefers-reduced-motion:reduce){.pfind-form:focus-within{transition:none}}
.pfind-form:has([data-invalid=true]){box-shadow:inset 0 0 0 1px var(--err),var(--sh-float)}
.pfind-form:has([data-invalid=true]):focus-within{outline-color:var(--copper-hi)}
.pfind-field:focus-within{border-radius:0}
.pfind-grade:focus-within{border-radius:0}

/* HOME SEARCH rendered defect correction 2026-11-06 hr13.
Evidence /workspace/plumberfinder/shots/home/hr12:390 stage-in min-content
tracks nowrap chip list; do not mask that with section overflow. Own chips width
inside pfind rather than shifting into home gutter. Inputs, native select, form
both include a hard shrink permission despite grid min track zero. */
.stage4:has(.pfind) .stage4-in{width:100%;min-width:0;max-width:100%}
.pfind,.pfind-form,.pfind-fields{width:100%;min-width:0;max-width:100%}
.pfind-field input,.pfind-field select{max-width:100%;flex:1 1 0}
/* Native replaced controls default to flex-basis:auto; shrink from full width,
not from their intrinsic fallback option measurement. */
.pfind-trending{width:100%;min-width:0;max-width:100%}
.pfind-trending ul{min-width:0}
@media (max-width:767px){
 .pfind-fields{grid-template-columns:minmax(0,1fr) 160px}
 .pfind-trending ul{flex:0 0 auto;max-width:none}
}
@media (min-width:768px) and (max-width:959px){
 .pfind-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"job job" "where grade" "go go"}
 .pfind-job{border-right:0;border-bottom:1px solid var(--muted)}
 .pfind-where{border-bottom:0;border-right:1px solid var(--muted)}
 .pfind-grade{width:auto;border-bottom:0}
 .pfind-go{width:calc(100% - var(--s4));min-width:0}
}
/* Entire enhancement strictly desktop. Leave every artwork size, anchor and
composition below 960 exactly as-is. Existing source transparent PNG without
any new art is scaled. At 1280 x800 and 1440 x900 cap starts at130 (1280 special
top padding rule leaves cap even with h1); figure rises old bottom -8% to32;
height set min640 at both 800/900 shots, cap right boundary. Final real pixel overlap in rendered shots is QA. */
@media (min-width:960px){
 .stage4:has(.pfind) .stage4-fig{right:0;bottom:var(--s6);height:clamp(640px,80svh,768px);max-height:calc(100% - var(--s6))}
}
@media (min-width:1320px){
 .pfind{max-width:min(768px,calc(70% - var(--s11)))}
}
@media (min-width:1320px) and (max-width:1599px){
 .stage4:has(.pfind) .stage4-fig{left:65%;right:auto}
}
@media (min-width:1600px){
 .stage4:has(.pfind) .stage4-fig{right:var(--s6);height:min(85svh,768px)}
}

/* DESKTOP task intrinsics — hr15 rendered correction.
The previous width:100% differs from a cap computed with calc(vw-gap):
shrink-to-fit otherwise stays max-content inside auto-min stage child and grows
to 1184 at1280. Constrain actual pill and grid at every >=960 (not the inherited
less-specific margins). All previously passing flex/tablet/mobile sizes below
960 are deliberately unaffected. No artwork adjustments added in this block. */
@media (min-width:960px){
 .stage4:has(.pfind) .h4-b{text-align:left}
 .pfind{width:min(750px,calc(60vw - var(--s6)));max-width:100%}
 .pfind-form{width:min(750px,calc(60vw - var(--s6)));max-width:100%}
 .pfind-fields{width:100%;max-width:100%;grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr) 160px 128px}
 .pfind-grade{width:160px;padding:0 var(--s3);gap:var(--s2)}
 .pfind-trending{display:flex;flex-wrap:nowrap;align-items:center;overflow-x:visible;gap:var(--s2)}
 .pfind-trendlabel{min-width:0}
 .pfind-trending ul{flex:1 1 auto;width:auto;min-width:0;display:flex;flex-wrap:wrap;gap:var(--s2)}
 .pfind-trending li{flex:0 0 auto;max-width:100%}
 .pfind-trending a{width:auto;max-width:100%;white-space:normal}
}
@media (min-width:1600px){
 .pfind,.pfind-form{width:750px;max-width:750px}
 .pfind-grade{width:160px;padding:0 var(--s3)}
 .pfind-fields{grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr) 160px 128px}
}

/* hr16: only desktop keeps separate fields one line when space sufficient.
At intermediate sizes preserve full readable copy and full grade by moving Search
below. This is avoiding collision inside requested column, not mascot movement. */
@media (min-width:960px) and (max-width:1199px){
 .pfind,.pfind-form{width:min(480px,calc(55vw - var(--s8)));max-width:100%}
 .pfind-fields{grid-template-columns:minmax(0,1fr) 160px;grid-template-areas:"job where" "grade go"}
 .pfind-field{min-height:56px}
 .pfind-job{border-bottom:1px solid var(--muted)}
 .pfind-where{border-right:0;border-bottom:1px solid var(--muted)}
 .pfind-grade{grid-area:grade;width:auto;padding:0 var(--s3);border-right:0}
 .pfind-go{grid-area:go;min-width:0;margin:var(--s2);border-radius:var(--r)}
 .pfind-form{border-radius:var(--r)}
 .pfind-form:focus-within{border-radius:var(--r)}
}
@media (min-width:1200px){
 .stage4:has(.pfind) .stage4-in{padding-top:112px}
}
