/* BG gensite shared design system (v1). Per-site brand = :root tokens injected inline. No third-party assets. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-bottom:var(--bar-h,0px);scroll-padding-top:12px}
body{margin:0;background:var(--c-bg);color:var(--c-ink);font:17px/1.6 var(--font-body);overflow-wrap:break-word}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--c-link)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,label:focus-within{outline:3px solid var(--c-focus);outline-offset:2px}
h1,h2,h3{font-family:var(--font-head);line-height:1.2;color:var(--c-ink-strong);letter-spacing:-.01em}
h1{font-size:clamp(1.7rem,4.6vw,2.5rem);margin:.2em 0 .35em}
h2{font-size:clamp(1.3rem,3.2vw,1.7rem);margin:1.6em 0 .5em}
h3{font-size:1.1rem;margin:1.2em 0 .4em}
p{margin:0 0 1em}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
.narrow{max-width:760px}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:8px;z-index:99;background:#fff;padding:8px}
/* staging ribbon */
.stg-rib{background:#111;color:#ffd84d;font:600 13px/1.4 system-ui,sans-serif;padding:6px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.stg-rib button{font:inherit;background:#333;color:#fff;border:1px solid #666;border-radius:4px;padding:2px 8px;cursor:pointer}
html.rib-off .stg-rib{display:none}
.fixture-banner{background:#fff3cd;color:#5c4300;border:2px dashed #b88600;padding:8px 12px;margin:12px 0;font:600 14px/1.4 system-ui,sans-serif}
.ph{background:#fff3cd;color:#5c4300;border-radius:3px;padding:0 3px;font-size:.85em;font-weight:600}
/* masthead */
.mast{background:var(--c-surface);border-bottom:1px solid var(--c-line)}
.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--c-ink-strong);font:700 1.05rem/1.2 var(--font-head)}
.brand svg{width:34px;height:34px;flex:none}
.tel{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 14px;border-radius:var(--radius);font-weight:700;text-decoration:none;white-space:nowrap}
.tel svg{width:18px;height:18px}
.mast .tel{color:var(--c-primary);border:2px solid var(--c-primary)}
.mast .tel.emg{background:var(--c-primary);color:var(--c-on-primary)}
.crumbs{font-size:.85rem;color:var(--c-muted);padding:8px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crumbs a{color:var(--c-muted)}
/* hero */
.hero{padding:18px 0 8px}
.hero .grid{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:900px){.hero .grid.has-img{grid-template-columns:1.35fr 1fr;align-items:center}}
.answer{font-size:1.06rem;max-width:44em}
.hero-img{border-radius:var(--radius);overflow:hidden;background:var(--c-surface);aspect-ratio:3/2}
.hero-img img{width:100%;height:100%;object-fit:cover}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 20px;border-radius:var(--radius);font:700 1rem/1.2 var(--font-body);text-decoration:none;border:2px solid var(--c-primary);cursor:pointer}
.btn-p{background:var(--c-primary);color:var(--c-on-primary)}
.btn-s{background:transparent;color:var(--c-primary)}
.btn svg{width:18px;height:18px}
.disc{font-size:.92rem;color:var(--c-muted);margin:6px 0 0}
.disc a{color:inherit}
.avail{font-size:.95rem;color:var(--c-ink);margin:4px 0}
.upd{font-size:.82rem;color:var(--c-muted)}
/* trust band */
.trust{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:14px 0}
.trust li{background:var(--c-surface);border:1px solid var(--c-line);border-radius:999px;padding:6px 12px;font-size:.9rem}
.trust li::before{content:"\2713\00a0";color:var(--c-accent-ink);font-weight:700}
/* sections */
section{margin:0}
.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:16px}
.grid-subs{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));list-style:none;padding:0;margin:0}
.grid-subs a{display:block;min-height:48px;padding:12px 14px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);text-decoration:none;color:var(--c-ink-strong);font-weight:600}
.grid-subs a:hover{border-color:var(--c-primary)}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--c-line);vertical-align:top}
th{font-weight:700;background:var(--c-surface)}
.src{font-size:.8rem;color:var(--c-muted)}
@media(max-width:480px){
 table.stack thead{display:none}
 table.stack tr{display:block;border:1px solid var(--c-line);border-radius:var(--radius);margin:0 0 10px;padding:6px 10px;background:var(--c-surface)}
 table.stack td{display:flex;justify-content:space-between;gap:10px;border:0;padding:4px 0}
 table.stack td::before{content:attr(data-l);font-weight:600;color:var(--c-muted)}
}
.facts{padding-left:1.2em}.facts li{margin:0 0 .6em}
sup.cite a{text-decoration:none;font-size:.75em}
.steps{counter-reset:s;list-style:none;padding:0}
.steps li{counter-increment:s;position:relative;padding:0 0 12px 46px;min-height:36px}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;background:var(--c-primary);color:var(--c-on-primary);display:grid;place-items:center;font-weight:700}
.checklist{list-style:none;padding:0}.checklist li{padding:4px 0 4px 28px;position:relative}.checklist li::before{content:"\2610";position:absolute;left:0}
.honest{border-left:4px solid var(--c-accent);background:var(--c-surface);padding:12px 16px;border-radius:0 var(--radius) var(--radius) 0}
.urg{list-style:none;padding:0}.urg li{padding:10px 12px;border:1px solid var(--c-line);border-radius:var(--radius);margin:0 0 8px;background:var(--c-surface)}
.urg b.lv{display:inline-block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;padding:1px 8px;border-radius:999px;margin-right:6px;background:var(--c-line)}
.urg b.lv-now{background:#b3261e;color:#fff}.urg b.lv-soon{background:#8a5a00;color:#fff}
.diagram{margin:14px 0}.diagram figcaption{font-size:.82rem;color:var(--c-muted)}
.hiw{counter-reset:h;list-style:none;padding:0;display:grid;gap:10px}
@media(min-width:760px){.hiw{grid-template-columns:repeat(3,1fr)}}
.hiw li{counter-increment:h;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:14px}
.hiw li::before{content:counter(h);display:block;font:700 1.4rem/1 var(--font-head);color:var(--c-primary);margin-bottom:6px}
details{border:1px solid var(--c-line);border-radius:var(--radius);margin:0 0 8px;background:var(--c-surface)}
summary{cursor:pointer;padding:12px 14px;font-weight:600;min-height:48px;list-style-position:inside}
details>div{padding:0 14px 12px}
.areas{font-size:.95rem}
.procard{border:2px dashed var(--c-line);border-radius:var(--radius);padding:16px;background:var(--c-surface)}
/* forms */
form.lead{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:16px;max-width:560px}
fieldset{border:0;padding:0;margin:0 0 12px}
legend,.flabel{font-weight:700;margin:0 0 6px;display:block}
.fld{margin:0 0 12px}
.fld input[type=text],.fld input[type=tel],.fld input[type=email],.fld select{width:100%;min-height:48px;padding:10px 12px;font:inherit;border:1px solid var(--c-line-strong);border-radius:8px;background:#fff;color:#111}
.chips{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.chips label{display:flex;align-items:center;gap:8px;min-height:56px;padding:8px 12px;border:1px solid var(--c-line-strong);border-radius:var(--radius);background:#fff;color:#111;cursor:pointer}
.chips input{width:20px;height:20px;accent-color:var(--c-primary)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:1rem;margin:12px 0}
.consent input{width:24px;height:24px;flex:none;margin-top:3px;accent-color:var(--c-primary)}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.est-out{margin:12px 0;padding:14px;border-radius:var(--radius);background:var(--c-bg);border:1px solid var(--c-line)}
.est-out .rng{font:700 1.5rem/1.2 var(--font-head);color:var(--c-ink-strong)}
.step-h{font-size:.85rem;color:var(--c-muted)}
.js .q-step[hidden]{display:none}
/* footer */
.foot{margin-top:40px;background:var(--c-foot);color:var(--c-on-foot);padding:26px 0 30px;font-size:.92rem}
.foot a{color:var(--c-on-foot)}
.foot .cols{display:grid;gap:18px}
@media(min-width:760px){.foot .cols{grid-template-columns:2fr 1fr 1fr}}
.foot ul{list-style:none;padding:0;margin:0}.foot li{margin:0 0 6px}
.foot .legal{border-top:1px solid rgba(255,255,255,.2);margin-top:16px;padding-top:12px;font-size:.85rem}
/* sticky bar */
.sbar{display:none}
@media(max-width:768px){
 body.has-bar{padding-bottom:calc(var(--bar-h) + env(safe-area-inset-bottom,0px))}
 .sbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;gap:8px;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--c-surface);border-top:1px solid var(--c-line);min-height:var(--bar-h)}
 .sbar a{flex:1;min-height:52px}
 body.kb-open .sbar{display:none}
 .sbar.sbar-note{flex-wrap:wrap;row-gap:4px}
 .sbar-t{flex:1 0 100%;margin:0;font-size:.78rem;line-height:1.3;text-align:center;color:var(--c-ink)}
}
.center{text-align:center}
.mt0{margin-top:0}
.muted{color:var(--c-muted)}
.stg-rename{background:#b00020;color:#fff;font:600 14px/1.45 system-ui,sans-serif;padding:8px 16px}
.notice-coll{font-size:.9rem;margin:8px 0}.consent-b{margin-top:8px}
.r3-legal .tb{overflow-x:auto}.r3-legal table{border-collapse:collapse;width:100%;font-size:.9rem}.r3-legal th,.r3-legal td{border:1px solid rgba(0,0,0,.15);padding:6px 8px;text-align:left;vertical-align:top}
.foot .fh{font-size:.95rem;margin:0 0 8px}.foot nav ul{columns:1}.foot img{vertical-align:middle}
.r3-privacy{margin:12px 0 20px}.r3-privacy select,.r3-privacy textarea{width:100%;font:inherit}
.foot .disc{color:var(--c-on-foot);font-size:inherit;margin:0}
.foot .fh{color:var(--c-on-foot)}
table.stack td{overflow-wrap:anywhere}

/* header menu bar (cleanup 92726): desktop bar + mobile toggle; links always in HTML, <details> dropdowns work without JS */
.mast{position:relative}
.nav-tg{display:none;align-items:center;gap:8px;min-height:44px;padding:0 12px;margin-left:auto;border:1px solid var(--c-line-strong);border-radius:var(--radius);background:var(--c-bg);color:var(--c-ink-strong);font:600 .95rem/1 var(--font-body);cursor:pointer}
.nav-bars,.nav-bars::before,.nav-bars::after{display:block;width:18px;height:2px;background:currentColor;position:relative}
.nav-bars::before,.nav-bars::after{content:"";position:absolute;left:0}.nav-bars::before{top:-6px}.nav-bars::after{top:6px}
.mnav{border-top:1px solid var(--c-line);background:var(--c-surface)}
.mnav-l{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.mnav-l>li{position:relative}
.mnav a,.mnav summary{display:flex;align-items:center;min-height:44px;padding:0 12px;color:var(--c-ink-strong);font-weight:600;text-decoration:none;cursor:pointer;border-radius:var(--radius)}
.mnav details{border:0;margin:0;background:none}.mnav summary{list-style:none}.mnav summary::-webkit-details-marker{display:none}
.mnav summary::after{content:"";margin-left:6px;border:5px solid transparent;border-top-color:currentColor;transform:translateY(3px)}
.mnav details[open]>summary::after{transform:translateY(-2px) rotate(180deg)}
.mnav a:hover,.mnav summary:hover{background:var(--c-bg);color:var(--c-primary)}
.mnav a[aria-current=page]{color:var(--c-primary);text-decoration:underline;text-underline-offset:4px}
.dd ul{list-style:none;margin:0;padding:6px;background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--radius)}
.dd ul a{font-weight:500;min-height:40px}
@media(min-width:900px){.dd ul{position:absolute;top:100%;left:0;z-index:30;min-width:260px;max-width:340px;box-shadow:0 8px 24px rgba(0,0,0,.12)}}
@media(max-width:899px){.nav-tg{display:inline-flex}.mnav{display:none}.nav-open .mnav{display:block}.mnav-l{flex-direction:column;padding:6px 0}.dd ul{border:0;padding:0 0 6px 12px;background:none}.mast>.wrap{gap:8px}.mast>.wrap .brand{min-width:0;flex:1 1 auto}.mast>.wrap .nav-tg{margin-left:0}}
@media(max-width:560px){.nav-tg{padding:0 10px}.mast .tel{padding:0 12px}.mast .tel span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
/* v7-L source mode (V7L lane) */
.sec-a{font-size:1.05em;font-weight:500}.byline{font-size:.9em;color:var(--c-muted);margin:4px 0 8px}
.v7-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:18px 0}.v7-stat{background:var(--c-surface);border-radius:var(--radius);padding:10px 12px}.v7-stat b{display:block;font-size:1.35em}.v7-stat span{font-size:.88em}
.v7-tool{background:var(--c-surface);border-radius:var(--radius);padding:10px 14px;margin:14px 0}.v7-method{margin-top:18px;font-size:.92em}.v7-method details{border-top:1px solid rgba(0,0,0,.12);padding-top:10px}
.v7-fig{margin:18px 0}.v7-fig img,.v7-hero img{width:100%;height:auto;border-radius:var(--radius)}.v7-hero{margin:0}
