/* Charlotte NC Siding Advisor theme brand-v7-kit (GENSITE-50-ONBOARD) generated 2026-10-07T07:04Z */
:root{--font-display:'Fraunces',system-ui,sans-serif;--font-body:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--fs-xs:0.738rem;--fs-sm:0.885rem;--fs-base:1.062rem;--fs-lg:1.275rem;--fs-xl:1.530rem;--fs-2xl:clamp(1.530rem, 0.84rem + 2.48vw, 1.836rem);--fs-3xl:clamp(1.586rem, 0.87rem + 2.97vw, 2.203rem);--fs-4xl:clamp(1.904rem, 1.05rem + 3.57vw, 2.644rem);--sp-0:0px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--radius-sm:5px;--radius-md:10px;--radius-lg:15px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 6px 20px rgba(0,0,0,.07);--shadow-lg:0 18px 44px rgba(0,0,0,.10);--dur-fast:140ms;--dur-base:220ms;--dur-slow:360ms;--ease:cubic-bezier(.2,.7,.2,1);--pr-50:#e7fdf4;--pr-100:#daefe7;--pr-200:#b5dfcf;--pr-300:#88c7b0;--pr-400:#6aa791;--pr-500:#4b8874;--pr-600:#306e5a;--pr-700:#135543;--pr-800:#0f3c2f;--pr-900:#02261c;--ac-50:#f1f8fe;--ac-100:#d9ecfe;--ac-200:#b0dafe;--ac-300:#7fbef4;--ac-400:#609fd2;--ac-500:#4280b2;--ac-600:#256595;--ac-700:#034d7b;--ac-800:#063656;--ac-900:#012139;--nu-50:#f4f8f6;--nu-100:#e7eae9;--nu-200:#cfd6d3;--nu-300:#b0bab6;--nu-400:#919b97;--nu-500:#747d79;--nu-600:#5a635f;--nu-700:#434b48;--nu-800:#2f3432;--nu-900:#1b211f;--bg:#fdfaf3;--surface:#f6f0e6;--border:#e0d8ca;--ink:#0f241d;--muted:#50625b;--primary:#1b5443;--primary-strong:#004131;--on-primary:#ffffff;--accent:#2a6592;--accent-ink:#ffffff;--accent-soft:#e0effd;--accent-soft-ink:#014671;--focus:#1b5443;--accent-hover:#225276;--field-border:#9fa398;--zebra:#faf5ec;--footer-bg:#0f241d;--footer-ink:#f4f2ee;--footer-link:#bfcfca;--success:#0d7f3b;--success-soft:#dcf7e1;--warning:#946406;--warning-soft:#ffebd2;--danger:#b54b43;--danger-soft:#fee9e6;--info:#0872b4;--info-soft:#e2f1fe;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1613;--surface:#16211d;--border:#2d3c36;--ink:#eaf0ed;--muted:#a7b5af;--primary:#76b49d;--primary-strong:#95d4bd;--on-primary:#02140d;--accent:#4e8cbf;--accent-ink:#04111c;--accent-soft:#163045;--accent-soft-ink:#b7dcfd;--focus:#76b49d;--accent-hover:#609fd3;--field-border:#566660;--zebra:#151b19;--footer-bg:#05100c;--footer-ink:#eaf0ed;--footer-link:#76b49d;--success:#6fd087;--success-soft:#1a2e1e;--warning:#eba941;--warning-soft:#342611;--danger:#ff968a;--danger-soft:#3a211e;--info:#71bfff;--info-soft:#172b3b;color-scheme:dark}}
:root[data-theme=dark]{--bg:#0e1613;--surface:#16211d;--border:#2d3c36;--ink:#eaf0ed;--muted:#a7b5af;--primary:#7ab29e;--primary-strong:#99d2bd;--on-primary:#02140d;--accent:#528cbb;--accent-ink:#04111c;--accent-soft:#163045;--accent-soft-ink:#b7ddfd;--focus:#7ab29e;--accent-hover:#6c9dc5;--field-border:#64726c;--zebra:#121c18;--footer-bg:#080d0b;--footer-ink:#eaf0ed;--footer-link:#7ab29e;--success:#6fd087;--success-soft:#1a2e1e;--warning:#eba941;--warning-soft:#342611;--danger:#ff968a;--danger-soft:#3a211e;--info:#71bfff;--info-soft:#172b3b;color-scheme:dark}

.bgx-header{background:var(--bg);color:var(--ink);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.bgx-header a:not(.bgx-cta):not(.bgx-btn){color:var(--muted);text-decoration:none}.bgx-header a:not(.bgx-cta):not(.bgx-btn):hover{color:var(--ink)}.bgx-header a[aria-current]:not(.bgx-cta){color:var(--primary)}
.bgx-hero{background:var(--bg);color:var(--ink);padding-block:var(--sp-8)}.bgx-hero .kicker{color:var(--primary);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.bgx-hero h1{font-family:var(--font-display);font-size:var(--fs-4xl);line-height:1.1}.bgx-hero .lede{color:var(--muted);font-size:var(--fs-lg)}
.bgx-card{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-5);transition:box-shadow var(--dur-base) var(--ease)}
.bgx-card:hover{box-shadow:var(--shadow-md)}
.bgx-cta{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 var(--sp-4);border-radius:var(--radius-md);background:var(--accent);color:var(--accent-ink);font-weight:700;text-decoration:none;border:0;transition:background var(--dur-fast) var(--ease)}
.bgx-cta:hover{background:var(--accent-hover)}.bgx-cta:focus-visible,.bgx-btn:focus-visible,.bgx-field:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.bgx-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--sp-4);border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);font-weight:600;text-decoration:none;border:0}
.bgx-btn:hover{background:var(--primary-strong)}.bgx-ghost{background:var(--bg);color:var(--primary);border:1px solid var(--primary)}
.bgx-field{width:100%;min-height:48px;padding:0 var(--sp-3);background:var(--bg);color:var(--ink);border:1px solid var(--field-border);border-radius:var(--radius-md);font:inherit}
.bgx-label{display:block;font-weight:600;margin-bottom:var(--sp-1)}.bgx-help{color:var(--muted);font-size:var(--fs-sm)}.bgx-error{color:var(--danger);font-size:var(--fs-sm)}
.bgx-table{border-collapse:collapse;width:100%}.bgx-table th{background:var(--surface);color:var(--ink);text-align:left}.bgx-table td,.bgx-table th{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border)}
.bgx-table tbody tr:nth-child(even){background:var(--zebra)}.bgx-table td.num{text-align:right;font-variant-numeric:tabular-nums}
.bgx-faq details{border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--sp-2);overflow:hidden}.bgx-faq summary{background:var(--surface);color:var(--ink);padding:var(--sp-3) var(--sp-4);cursor:pointer;font-weight:600}
.bgx-faq details>div{padding:var(--sp-3) var(--sp-4)}
.bgx-callout{background:var(--accent-soft);color:var(--accent-soft-ink);border-left:4px solid var(--accent);border-radius:var(--radius-sm);padding:var(--sp-3) var(--sp-4)}
.bgx-badge{display:inline-block;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 10px;font-size:var(--fs-xs)}
.bgx-footer{background:var(--footer-bg);color:var(--footer-ink);border-top:1px solid var(--border)}.bgx-footer a{color:var(--footer-link)}
.bgx-callbar{position:fixed;inset:auto 0 0 0;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);z-index:30}
@media (min-width:900px){.bgx-callbar{display:none}}
@media (prefers-reduced-motion:reduce){*{transition-duration:0ms!important;animation-duration:0ms!important;scroll-behavior:auto!important}}
/* builder map layer (theme-v2-1.0, bg_theme_v2.py) */
@font-face{font-family:'Fraunces';src:url(fonts/Fraunces-600.sub.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}html:root{--c-bg:#fdfaf3;--c-surface:#f6f0e6;--c-line:#e0d8ca;--c-line-strong:#9fa398;--c-ink:#0f241d;--c-ink-strong:#0f241d;--c-muted:#50625b;--c-primary:#1b5443;--c-on-primary:#ffffff;--c-accent:#2a6592;--c-on-accent:#ffffff;--c-accent-hover:#225276;--c-accent-ink:#1b5443;--c-link:#1b5443;--c-link-hover:#004131;--c-focus:#1b5443;--c-foot:#0f241d;--c-on-foot:#f4f2ee;--c-foot-link:#bfcfca;--c-zebra:#faf5ec;--font-head:'Fraunces',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--radius:10px;--fw-head:600}@media (prefers-color-scheme:dark){html:root:not([data-theme=light]){--c-bg:#0e1613;--c-surface:#16211d;--c-line:#2d3c36;--c-line-strong:#64726c;--c-ink:#eaf0ed;--c-ink-strong:#eaf0ed;--c-muted:#a7b5af;--c-primary:#7ab29e;--c-on-primary:#02140d;--c-accent:#528cbb;--c-on-accent:#04111c;--c-accent-hover:#6c9dc5;--c-accent-ink:#7ab29e;--c-link:#7ab29e;--c-link-hover:#99d2bd;--c-focus:#7ab29e;--c-foot:#080d0b;--c-on-foot:#eaf0ed;--c-foot-link:#7ab29e;--c-zebra:#121c18;color-scheme:dark}}html:root[data-theme=dark]{--c-bg:#0e1613;--c-surface:#16211d;--c-line:#2d3c36;--c-line-strong:#64726c;--c-ink:#eaf0ed;--c-ink-strong:#eaf0ed;--c-muted:#a7b5af;--c-primary:#7ab29e;--c-on-primary:#02140d;--c-accent:#528cbb;--c-on-accent:#04111c;--c-accent-hover:#6c9dc5;--c-accent-ink:#7ab29e;--c-link:#7ab29e;--c-link-hover:#99d2bd;--c-focus:#7ab29e;--c-foot:#080d0b;--c-on-foot:#eaf0ed;--c-foot-link:#7ab29e;--c-zebra:#121c18;color-scheme:dark}@media (prefers-color-scheme:dark){html:root:not([data-theme=light]) .brand svg [fill="#1b5443" i]{fill:#7ab29e}html:root:not([data-theme=light]) .brand svg [fill="#2a6592" i]{fill:#528cbb}}html:root[data-theme=dark] .brand svg [fill="#1b5443" i]{fill:#7ab29e}html:root[data-theme=dark] .brand svg [fill="#2a6592" i]{fill:#528cbb}h1,h2,h3,.brand{font-weight:600}a.btn.btn-p,button.btn.btn-p,.sbar a.btn.btn-p,.foot a.btn.btn-p{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-on-accent)}a.btn.btn-p:hover,button.btn.btn-p:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);color:var(--c-on-accent)}.foot a:not(.btn){color:var(--c-foot-link)}.skip:focus{background:var(--c-bg);color:var(--c-ink)}.fld input[type=text],.fld input[type=tel],.fld input[type=email],.fld select,.chips label{background:var(--c-bg);color:var(--c-ink);border-color:var(--c-line-strong)}.foot .legal{border-top-color:var(--c-line)}.r4-foot .r4-op{border-bottom-color:var(--c-line)}.r3-legal th,.r3-legal td{border-color:var(--c-line)}.v7-method details{border-top-color:var(--c-line)}main svg text[fill="#333"]{fill:var(--c-ink)}main svg text[fill="#565c63" i]{fill:var(--c-muted)}main svg rect[fill="#e6e8eb" i]{fill:var(--c-line)}main svg circle[fill="#fff"]{fill:var(--c-bg)}.r4-foot .r4-op .r4-tagline{flex:1 1 100%;margin:0;font-family:var(--font-head);font-weight:var(--fw-head,700);font-size:1.05rem}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
