/* NetZero light theme (owner 2026-10-25: "a soft or light flow like Apple, or like what light-themed things do").
   OUR layer, loaded LAST (after the release's design-system.css + customer.css and our nz-business.css). CSS only:
   it re-points the release's :root tokens and re-skins the shared classes; it never changes markup, behaviour, wording
   or what any page shows. Delete this file's <link> and the site is exactly as before.

   The language, in one breath:
   - a calm near-white ground, light warm-grey tiles instead of black slabs, hairlines instead of borders;
   - ONE dark action per view: primary buttons are a charcoal pill (#1d1d1f). Brand red stays the brand's voice — the
     logo, the system drawing's line, a headline's accent words, small icons — never the default fill of every button;
   - in grids of cards each card's action is a light "tinted" pill, so a page of six cards does not shout six times;
   - large radii (pills for buttons and chips, 22px cards, 28px hero tiles), one very soft shadow, only to lift;
   - tighter, calmer headlines; body copy a little larger; eyebrows quiet (muted grey, not red).
   Not touched on purpose: the road photo hero itself and the road's SVG stop markers (.nzr-stop … another session
   owns them). Their card (.nzr-card), the hero card and the leg bar are restyled here. */

/* ── 1. Tokens ─────────────────────────────────────────────────────────────────────────────────────────────────── */
:root{
  --ink:#1d1d1f; --ink-dark:#000; --body:#3d3d41; --muted:#66666b;
  --paper:#fafaf9; --white:#fff; --surface:#fff; --line:#e6e4df; --soft:#f2f1ee; --sage:#eeede9;
  --surface-warm:#f6f5f2; --surface-selected:#f5efe2;
  --action:#1d1d1f; --action-hover:#3a3a3d; --action-label:#fff;
  --accent:#d1252d;            /* the brand red, as accent text (≥4.5:1 on the ground) */
  --text-brand:#b3232b; --accent-soft:#fdeeee; --danger:#a31e29;
  --amber:#7a4b05; --amber-bg:#fdf5e1;
  --on-dark:#1d1d1f; --on-dark-muted:#4a4a4f;   /* the release's "dark slabs" are light tiles in this theme */
  --tile:#f2f1ee; --hairline:rgba(29,29,31,.09); --hairline-strong:rgba(29,29,31,.16);
  --radius:22px; --radius-lg:28px; --radius-sm:14px; --pill:980px;
  --shadow:0 1px 2px rgba(20,20,22,.04),0 12px 40px rgba(20,20,22,.07);
  --shadow-lift:0 2px 4px rgba(20,20,22,.04),0 18px 50px rgba(20,20,22,.10);
  --focus:#b3232b;
  /* system fonts first (SF on Apple devices, with its own optical sizes), Inter if installed, then Windows 11's Segoe UI
     Variable: no font download, no third party. A locally installed "SF Pro Display" is NOT named on purpose: that is the
     display cut, too tight at body sizes. */
  --font-text:-apple-system,BlinkMacSystemFont,Inter,"Segoe UI Variable Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-display:-apple-system,BlinkMacSystemFont,Inter,"Segoe UI Variable Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-family:var(--font-text);
}
body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* ── 2. Type ───────────────────────────────────────────────────────────────────────────────────────────────────── */
h1,h2,.section-heading{font-family:var(--font-display);letter-spacing:-.024em}
h3{letter-spacing:-.012em}
p{line-height:1.6}
.section-heading,.v5-section-head h2,.v5-discover h2,.v5-bottom h2,.faq-intro .section-heading{font-weight:600;letter-spacing:-.026em;line-height:1.1}
.section-copy{font-size:17px;line-height:1.55;color:var(--body)}
.eyebrow,.v5-home .eyebrow,.v5-page .eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--muted)}
.eyebrow .dot,.dot{width:6px;height:6px;background:var(--accent);box-shadow:none}
.hero h1,.v5-hero-copy h1{font-weight:600;letter-spacing:-.03em;line-height:1.05}
.hero h1 em,.v5-hero-copy h1 em,.lc-page-intro h1 em,.lc-care-top h1 em,.lc-circular-hero h2 em,.v5-page-heading h1 em,.nz-page-heading h1 em,.nz-client-heading h1 em{color:var(--accent)}
.lc-page-intro h1,.lc-care-top h1,.v5-page-heading h1,.nz-page-heading h1,.page-title,.lc-detail-copy h1{font-weight:600;letter-spacing:-.026em}
.v5-hero-copy>p,.hero-copy>p,.v5-page-heading>p,.lc-page-intro p,.nz-page-heading>p{font-size:18px;line-height:1.55;color:var(--body)}
.text-link{color:var(--ink);font-weight:600}
.text-link:hover,.btn-ghost:hover{color:var(--accent)}
.small,.tiny,.muted{color:var(--muted)}

/* ── 3. Focus + tap targets ────────────────────────────────────────────────────────────────────────────────────── */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2.5px solid var(--focus);outline-offset:3px}
.nz-client :focus-visible{outline:2.5px solid var(--focus);outline-offset:3px}

/* ── 4. Buttons: pills; one charcoal primary, the rest light ───────────────────────────────────────────────────── */
.btn{border-radius:var(--pill);min-height:44px;padding:11px 22px;font-size:15px;font-weight:600;letter-spacing:0;line-height:1.35;gap:9px;box-shadow:none;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.btn:hover,.btn:active{transform:none}
.btn-primary,.nz-client .btn-primary{background:var(--action);border:1px solid var(--action);color:var(--action-label)}
.btn-primary:hover,.nz-client .btn-primary:hover{background:var(--action-hover);border-color:var(--action-hover);color:#fff;box-shadow:none}
.btn-secondary{background:var(--white);color:var(--ink);border:1px solid var(--hairline-strong)}
.btn-secondary:hover{background:var(--soft);color:var(--ink);border-color:var(--hairline-strong)}
.btn-lime{background:var(--white);color:var(--ink);border:1px solid var(--hairline-strong)}
.btn-lime:hover{background:var(--soft);color:var(--ink)}
.btn-sm{min-height:40px;padding:8px 16px;font-size:14px}
.btn:disabled{opacity:.45}
/* the "tinted" pill: a card's own action inside a grid of cards */
.v5-intent-grid .btn-primary,.v5-epc-actions .btn-primary,.nzg-door .btn,.nzg-door .btn-primary,.nzg-door .btn-secondary,
.lc-card-actions .btn-primary,.nz-reference-card>.btn-primary,.lc-service-plans .btn-primary{background:var(--soft);border-color:transparent;color:var(--ink)}
.v5-intent-grid .btn-primary:hover,.v5-epc-actions .btn-primary:hover,.lc-card-actions .btn-primary:hover,.nz-reference-card>.btn-primary:hover,.lc-service-plans .btn-primary:hover{background:var(--action);border-color:var(--action);color:#fff}
.lc-card-actions .btn{min-height:40px;font-size:14px;padding:8px 15px}

/* ── 5. Pills, chips, notices ──────────────────────────────────────────────────────────────────────────────────── */
.pill{border-radius:var(--pill);background:var(--soft);color:var(--body);font-weight:600;padding:5px 11px}
.pill-outline{background:transparent;border:1px solid var(--hairline-strong);color:var(--body)}
.pill-neutral{background:var(--soft);color:var(--body)}
.pill-warning{background:var(--amber-bg);color:var(--amber)}
.pill-dark{background:var(--ink);color:#fff}
.lc-chip,.nzb .nzb-chip,.v5-route-tabs button,.filter-tabs button{border-radius:var(--pill);border:1px solid var(--hairline-strong);background:var(--white);color:var(--body);min-height:40px;font-weight:600}
.lc-chip:hover,.nzb .nzb-chip:hover{border-color:var(--ink);color:var(--ink)}
.lc-chip.active,.nzb .nzb-chip-on,.nzb .nzb-chip-on:hover,.v5-route-tabs button.active,.filter-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff}
.nzb .nzb-chips-label{font-weight:600;letter-spacing:.08em;color:var(--muted)}
.notice{border:0;border-radius:var(--radius-sm);background:var(--soft);color:var(--body);font-size:14px;padding:16px 18px}
.notice-neutral{background:var(--soft);color:var(--body)}
.notice-warning{background:var(--amber-bg);color:#6b4406;border:0}
.nz-draft-status{border:0;background:var(--soft);border-radius:var(--radius-sm)}
.nz-draft-status a{color:var(--ink)}

/* ── 6. Header, announcement, footer ───────────────────────────────────────────────────────────────────────────── */
.announcement{background:var(--soft);color:var(--body);border-bottom:1px solid var(--hairline)}
.announcement strong{color:var(--ink);font-weight:600}
.announcement .preview-state{color:var(--amber)}
.site-header{background:rgba(250,250,249,.72);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--hairline)}
.nav-wrap{height:72px}
.nav-links{color:var(--body);font-size:14px}
.nav-links a:hover{color:var(--ink)}
.nav-actions .text-link{color:var(--ink);font-weight:500}
.nav-actions .btn{min-height:40px;padding:8px 18px;font-size:14px}
.site-footer{background:var(--soft);border-top:1px solid var(--hairline);padding-top:56px}
.footer-col{align-content:start;color:var(--body)}
.footer-col h4{color:var(--ink);font-weight:600}
.footer-col a,.footer-col button{color:var(--body)}
.footer-col button:hover,.footer-col a:hover,.lc-footer-extra a:hover{color:var(--ink)}
.footer-bottom{border-top:1px solid var(--hairline);color:var(--muted)}
.footer-bottom button{color:var(--muted)}
.nz-hb-strip{background:var(--soft)!important;border-top:1px solid var(--hairline)!important}
.support-float,.support-float:hover{background:var(--white);color:var(--ink);box-shadow:var(--shadow-lift);border:1px solid var(--hairline)}
.preview-float{border:1px solid var(--hairline);border-radius:var(--pill);box-shadow:var(--shadow);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.toast{background:rgba(29,29,31,.92);color:#fff;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.toast .icon{color:#f3be33}
.skip-link{border-radius:var(--pill)}

/* ── 7. Surfaces: cards and panels in one soft language ────────────────────────────────────────────────────────── */
.panel,.form-card,.project-card,.solution-card,.v5-solution,.lc-product-card,.lc-shop-card,.lc-asset-card,.lc-metrics>div,
.nz-reference-card,.nz-request-form,.v5-person,.lc-compare-bar,.select-card,.nz-choice,.nz-tech,.tier-option{border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:none}
.panel{background:var(--white);padding:30px}
.panel-copy,.v5-page .panel>p{font-size:15px;line-height:1.6;color:var(--body)}
.v5-solution,.lc-product-card,.solution-card,.nz-reference-card,.lc-link-panel{transition:box-shadow .25s ease,transform .25s ease}
.v5-solution:hover,.lc-product-card:hover,.solution-card:hover,.project-card:hover,.lc-link-panel:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);border-color:var(--hairline)}
.v5-solution p{font-size:15px;line-height:1.55}
.v5-solution-icon,.lc-plan-icon,.lc-record-icon,.project-card-icon,.lc-shop-logo{background:var(--accent-soft);color:var(--accent);border:0}
.v5-solution .text-link{color:var(--ink)}
.v5-index{color:var(--muted)}
.select-card.selected,.tier-option.selected,.tier-option.active{background:var(--white);border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.select-card.selected:after{background:var(--ink);color:#fff}
.v5-person.selected{background:var(--white);border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.v5-person>.icon{color:var(--accent)}
.nz-choice.selected,.nz-tech.selected{background:var(--white);border:1px solid var(--ink);box-shadow:0 0 0 1px var(--ink);padding:1.15rem .9rem}
.nz-tech.selected{padding:1rem}
.data-card,.scope-box,.package-overview,.fulfilment-summary,.route-flow,.lc-process-strip,.v5-draft-summary,.nz-client-details,.nz-intake-storage,.nz-reference-summary,.nz-payment-lanes article{background:var(--soft);border:0;border-radius:var(--radius-sm)}
.v5-protection-strip,.v5-drs-band,.nz-programme-callout,.nz-inline-programme,.cta-inner,.lc-post-install,.v5-drafts-strip{background:var(--soft);border:0;border-radius:var(--radius)}
.v5-protection-strip>.icon,.lc-three-panels>.panel>.icon,.nz-three>.panel>.icon,.lc-orbit .icon{color:var(--accent)}
.v5-programme-label{color:var(--muted)}
.nz-programme-mark{background:var(--white);color:var(--accent);box-shadow:var(--shadow)}
.empty-state>.icon,.v5-empty .icon{color:var(--muted)}

/* the release's dark slabs, as light tiles */
.epc-panel,.v5-dark-card,.lc-seller-banner,.lc-care-banner,.upload-banner,.next-action,.nz-energy-result,.nz-drs-summary,.nz-aside-card,.nz-diesel-band,.price-total,.nzr-here{background:var(--tile);color:var(--ink);border:0;border-radius:var(--radius)}
.epc-panel,.lc-seller-banner,.v5-dark-card{border-radius:var(--radius-lg)}
.epc-panel h2,.epc-benefits h3,.v5-dark-card h2,.lc-seller-banner h2,.lc-care-banner h2,.upload-banner h3,.next-action h3,.nz-drs-summary h2,.nz-aside-card h2,.nz-aside-card h3,.nz-diesel-band h2,.nz-diesel-band h3,.price-total strong,.nz-energy-result>strong,.nzr-here strong{color:var(--ink)}
.epc-panel p,.epc-benefits p,.v5-dark-card p,.lc-seller-banner p,.lc-care-banner p,.upload-banner p,.next-action p,.nz-energy-result>p,.nz-energy-result .nz-result-formula,.nz-energy-result .nz-result-disclaimer,.nz-planner .nz-energy-result>p,
.nz-drs-summary p,.nz-aside-card p,.nz-diesel-band p,.price-total small,.nzr-here span:last-child,.nz-source-stamp{color:var(--body)}
.epc-panel .eyebrow,.v5-dark-card>.eyebrow,.lc-seller-banner .eyebrow,.lc-care-banner .eyebrow,.next-action .eyebrow,.nz-energy-result .eyebrow,.nz-drs-summary .eyebrow,.nz-aside-card .eyebrow,.nz-diesel-band .eyebrow,.lc-site-status,.nzr-eyebrow{color:var(--muted)}
.epc-benefits .icon,.upload-banner>.icon{color:var(--accent)}
.epc-benefits>div,.nz-result-row,.nz-aside-card li,.nz-source-stamp{border-color:var(--hairline-strong)}
.nz-aside-card li b{color:var(--text-brand)}
.nz-aside-light{background:var(--white);border:1px solid var(--hairline)}
.v5-dark-card>.text-link,.lc-epc-shop-link,.lc-epc-shop-link:hover{color:var(--ink)}
.upload-banner .btn-secondary,.lc-care-banner-actions .btn-secondary{background:var(--white);color:var(--ink);border-color:var(--hairline-strong)}
.upload-banner .btn-secondary:hover,.lc-care-banner-actions .btn-secondary:hover{background:var(--white);border-color:var(--ink)}
.nz-drs-summary{border-bottom:0}

/* ── 8. Home (v5 + release hero) ───────────────────────────────────────────────────────────────────────────────── */
.v5-audience{background:var(--soft);border:0;border-radius:var(--pill);padding:4px}
.v5-audience button{border-radius:var(--pill);color:var(--body);font-size:13px;min-height:40px}
.v5-audience button[aria-selected=true]{background:var(--white);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.06)}
.v5-hero-actions .btn{min-height:48px;padding:12px 24px;font-size:15px}
.v5-hero-assurances .icon{color:var(--accent)}
.nz-customer-shortcuts a{border:1px solid var(--hairline-strong);border-radius:var(--pill);background:var(--white);color:var(--ink);font-weight:600;min-height:44px;display:inline-flex;align-items:center;padding:.6rem 1.1rem}
.nz-customer-shortcuts a:hover{border-color:var(--ink);color:var(--ink);background:var(--white)}
.nz-home-pump-links a{color:var(--ink)}
.v5-scene{background-color:var(--soft);background-image:radial-gradient(rgba(29,29,31,.08) 1px,transparent 1px);border:0;border-radius:var(--radius-lg)}
.v5-scene:before{border-color:rgba(29,29,31,.08);opacity:1}
.v5-compass{background:var(--white);border:0;color:var(--ink);box-shadow:var(--shadow)}
.v5-scene-chip{background:rgba(255,255,255,.92);border:0;border-radius:var(--radius-sm);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.v5-scene-chip>.icon{color:var(--accent)}
.v5-scene-footer{background:rgba(255,255,255,.86);color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--hairline)}
.v5-scene-footer .v5-tiny-label{color:var(--muted)}
.v5-scene-footer p{color:var(--body)}
.v5-scene-footer a{background:var(--ink);color:#fff}
.v5-proof-strip{border-color:var(--hairline);color:var(--body)}
.v5-section-head h2{font-size:40px}
.v5-drs-band{padding:22px 26px}
.v5-road-section,.journey-section{background:var(--soft);border:0}
.journey-node,.v5-road-section .journey-node{background:var(--white);border:0;box-shadow:0 0 0 8px var(--soft),0 1px 3px rgba(0,0,0,.08)}
.journey-step.active .journey-node,.v5-road-section .journey-step.active .journey-node{background:var(--ink);color:#fff;border:0;box-shadow:0 0 0 8px var(--soft),0 6px 16px rgba(0,0,0,.14)}
.journey-detail,.v5-road-section .journey-detail{background:var(--white);border:0;border-radius:var(--radius-sm);box-shadow:var(--shadow)}
.journey-detail>.icon{color:var(--accent)}
.journey-detail .text-link{color:var(--ink)}
.view-switch{background:var(--white);border:0;border-radius:var(--pill);box-shadow:0 0 0 1px var(--hairline)}
.view-switch button{border-radius:var(--pill)}
.view-switch button.active{background:var(--ink);color:#fff}
.simple-track .journey-step{border-radius:var(--radius-sm);border-color:var(--hairline)}
.simple-track .journey-step.active{border-color:var(--ink);background:var(--white)}
.v5-brand-grid a{border:0;border-radius:var(--radius-sm);background:var(--white);box-shadow:0 0 0 1px var(--hairline);letter-spacing:-.03em;font-weight:650}
.v5-brand-grid a:hover{color:var(--ink);box-shadow:var(--shadow-lift)}
.lc-brand-word:hover{color:var(--ink)}
/* the lifetime band: two quiet tiles side by side instead of a black slab + a beige one */
.v5-lifetime{background:transparent;color:var(--ink);gap:16px;overflow:visible;border-radius:0}
.v5-lifetime-main{background:var(--tile);border-radius:var(--radius-lg)}
.v5-lifetime-main>.eyebrow{color:var(--muted)}
.v5-lifetime-main p{color:var(--body)}
.v5-lifetime-links a{color:var(--ink)}
.v5-lifetime-links .icon{color:var(--accent)}
.v5-lifetime-side{background:var(--white);border-radius:var(--radius-lg);box-shadow:0 0 0 1px var(--hairline) inset}
.v5-lifetime-side .text-link{color:var(--ink)}
.faq-list,.faq-list details{border-color:var(--hairline)}
.faq-list summary{font-weight:600}
.hero-scene{background:var(--soft);border:0;border-radius:var(--radius-lg)}
.scene-card{border:0;border-radius:var(--radius-sm);box-shadow:var(--shadow)}
.scene-card .icon-wrap{background:var(--accent-soft);color:var(--accent)}
.solution-image{background:var(--soft)}
.cta-inner h2{letter-spacing:-.025em}
.lc-lifetime-strip{background:var(--soft);border:0}
.lc-story-core{background:var(--white);color:var(--ink);box-shadow:var(--shadow-lift)}
.lc-story-core span{color:var(--muted)}
.lc-story-core .icon{color:var(--accent)}
.lc-orbit{border:0;border-radius:var(--pill);box-shadow:var(--shadow)}
.lc-circle-story:before{border-color:rgba(29,29,31,.14)}
.lc-circle-story:after{border-color:var(--hairline)}

/* ── 9. Forms, tables ──────────────────────────────────────────────────────────────────────────────────────────── */
.field,.lc-search,.nz-client-field .field,.role-control select{border:1px solid #c4c1ba;border-radius:12px;background:var(--white);color:var(--ink);transition:border-color .15s,box-shadow .15s}
.lc-search input{border:0;background:none}
.field:hover{border-color:#a8a49c}
.field:focus,.nz-client-field .field:focus{border-color:var(--ink);box-shadow:0 0 0 4px rgba(29,29,31,.08);outline:none}
.field:focus-visible{outline:2.5px solid var(--focus);outline-offset:2px}
.field-label,.field-group>label,.nz-client-field label{color:var(--ink);font-weight:600}
.form-card{background:var(--white);padding:30px}
.consent input,.lc-consent input,.nz-tech input,.lc-compare-check input{accent-color:var(--ink)}
.form-progress span.active b,.nz-request-steps button.active b{background:var(--ink);border-color:var(--ink);color:#fff}
.nz-request-steps{background:var(--soft);border-bottom:1px solid var(--hairline)}
.nz-request-steps button.active{color:var(--ink);border-bottom-color:var(--ink)}
.nz-form-actions,.nz-send-options{background:var(--surface-warm);border-color:var(--hairline)}
.radio-tabs{background:var(--soft);border:0;border-radius:var(--pill)}
.radio-tabs button{border-radius:var(--pill)}
.radio-tabs button.active{background:var(--white);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.05)}
.upload-zone{background:var(--surface-warm);border-color:#c4c1ba;border-radius:var(--radius-sm)}
.upload-zone .upload-icon{background:var(--white);color:var(--ink)}
.lc-catalog-toolbar,.nz-filter-bar{background:var(--soft);border:0;border-radius:var(--radius)}
.table-wrap,.nzb .nzb-table-wrap{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--white)}
.data-table th,.nzb .nzb-table th{background:transparent;text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--muted);border-bottom:1px solid var(--hairline)}
.data-table td,.nzb .nzb-table td{border-bottom:1px solid var(--hairline);color:var(--body)}
.data-table td:first-child{color:var(--ink)}
.nzb .nzb-table tr:hover td{background:var(--surface-warm)}
.workspace-stations{border:0;border-radius:var(--radius);box-shadow:0 0 0 1px var(--hairline)}
.workspace-stations button{border-color:var(--hairline)}
.workspace-stations button.active{background:var(--surface-warm)}
.workspace-stations button.active:after{background:var(--ink)}
.workspace-stations button.active .station-num{background:var(--ink);color:#fff}
.timeline-item.current .timeline-node{background:var(--ink);color:#fff;border-color:var(--ink)}
.progress-ring{background:conic-gradient(var(--ink) var(--progress),var(--line) 0)}
.price-total strong{letter-spacing:-.03em}
.lc-phase-road>a.current span,.lc-phase-road>a.active span{background:var(--ink);border-color:var(--ink);color:#fff}
.lc-care-tabs a.active{background:var(--soft);border-color:transparent}
.modal{border:0;border-radius:var(--radius-lg);box-shadow:0 30px 90px rgba(0,0,0,.18)}
.modal-backdrop{background:rgba(29,29,31,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.modal-close{border:0;background:var(--soft)}

/* ── 10. Products / catalogue (release) ────────────────────────────────────────────────────────────────────────── */
.lc-art-box,.lc-detail-art,.lc-asset-visual{background:var(--soft);border:0}
.lc-art-box>.pill{background:rgba(255,255,255,.9);border:0}
.lc-card-meta{border-color:var(--hairline)}
.lc-counter{background:var(--accent);color:#fff}
.lc-store-banner,.lc-store-trust{border-color:var(--hairline)}

/* ── 11. Our add-on (nz-business.css): the business pages, catalogue rows, offers, start page ────────────────────── */
.nzb .nz-client-heading{border-bottom:1px solid var(--hairline)}
.nzb .nz-client-heading::after{width:7px;height:7px;bottom:-4px;background:var(--accent)}
.nzb .nz-client-heading .eyebrow{color:var(--muted)}
.nzb .nz-client-heading h1{letter-spacing:-.026em;font-weight:600}
.nzb .nzb-section .nz-section-title h2{font-weight:600;letter-spacing:-.02em}
.nzb .nzb-section .nz-section-title h2::before{width:7px;height:7px;background:var(--accent);box-shadow:none}
.nzb .nzb-form{border-left:1px solid var(--hairline)}
/* the catalogue's second form (offer filters) is a refinement, not the page's action: a light pill under the search */
.nzb [data-nzb-form="cat-offer-filter"] .btn-primary{background:var(--white);color:var(--ink);border-color:var(--hairline-strong)}
.nzb [data-nzb-form="cat-offer-filter"] .btn-primary:hover{background:var(--soft)}
.nzb .nzb-card,.nzb .nzb-prow,.nzb .nzb-offer,.nzb .nzb-part,.nzb .nzb-candidates,.nzb .nzb-kinds{border:1px solid var(--hairline);border-radius:var(--radius);background:var(--white)}
.nzb .nzb-prow,.nzb .nzb-offer{padding:20px 22px}
.nzb .nzb-card:hover{border-color:var(--hairline);box-shadow:var(--shadow-lift);transform:translateY(-2px)}
.nzb .nzb-model:hover{color:var(--accent)}
.nzb .nzb-maker{font-weight:600;letter-spacing:.08em}
.nzb .nzb-offer-best{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.nzb .nzb-offer-foot{border-color:var(--hairline)}
.nzb .nzb-add,.nzb .nzb-totals{background:var(--soft);border:0;border-radius:var(--radius-sm)}
.nzb .nzb-totals.nzb-incomplete{background:var(--amber-bg);border:0}
/* start page: four doors */
.nzg-doors{gap:16px}
.nzg-door{border:1px solid var(--hairline);border-radius:var(--radius);padding:26px;transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease}
.nzg-door:hover{border-color:var(--hairline);box-shadow:var(--shadow-lift);transform:translateY(-2px)}
.nzg-door:hover .btn{background:var(--ink);color:#fff}
.nzg-door strong{font-weight:600}
.nzg-door em{font-weight:600;letter-spacing:.02em;color:var(--muted)}
.nzg-door-on{border:1px solid var(--ink);box-shadow:0 0 0 1px var(--ink)}
.nzg-door-on .btn{background:var(--ink);color:#fff}
.nzg-eyebrow,.nzr-card-eyebrow{color:var(--muted);font-weight:600;letter-spacing:.08em}
.nzg-result{background:var(--soft);border-radius:var(--radius);padding:28px}
.nzg-result strong{font-weight:600;letter-spacing:-.03em}
.nzg-help a{color:var(--ink)}
/* the road: hero card, leg bar, stop card (NOT the stop markers) */
.nzr-hero-card{background:rgba(255,255,255,.86);-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px);border-radius:var(--radius-lg);box-shadow:0 20px 60px rgba(0,0,0,.18)}
.nzr-hero-eyebrow{color:var(--muted);font-weight:600;letter-spacing:.08em}
.nzr-hero-card h1{font-weight:600;letter-spacing:-.028em}
.nzr-hero-card p{color:var(--body)}
.nzr-card{background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius);box-shadow:0 16px 48px rgba(0,0,0,.18)}
.nzr-legs{display:inline-flex;max-width:100%;gap:2px;padding:4px;background:var(--soft);border-radius:var(--pill)}
.nzr-leg{background:transparent;color:var(--muted);font-weight:600;letter-spacing:.06em;min-height:36px;padding:6px 14px 6px 6px}
.nzr-leg b{background:var(--white);color:var(--ink);box-shadow:0 0 0 1px var(--hairline)}
.nzr-leg-on{background:var(--white);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.06)}
.nzr-leg-on b{background:var(--ink);color:#fff;box-shadow:none}
.nzr-photo{border:0;border-radius:var(--radius-lg)}
.nzr-li{border:1px solid var(--hairline);border-radius:var(--radius-sm)}
/* the system drawing styles itself (the soft isometric scene, nz-business.css); only its phone list is themed here */
.nzs-li{border:1px solid var(--hairline);border-radius:var(--radius-sm)}
.nzs-li a{color:var(--ink)}

/* ── 12. The map designer widget (HoneyWatt's hw-diy.css — themed from here through its own --hwd-* hooks) ────────── */
.hwd{--hwd-ink:#1d1d1f;--hwd-dim:#66666b;--hwd-line:rgba(29,29,31,.12);--hwd-bg:#f2f1ee;--hwd-card:#fff;--hwd-accent:#1d1d1f;--hwd-accent-ink:#fff;--n-amber-dim:rgba(29,29,31,.06);--n-radius-sm:14px;--n-shadow-sm:0 1px 2px rgba(20,20,22,.04),0 8px 24px rgba(20,20,22,.06)}
.hwd .hwd-btn{border-radius:980px;min-height:44px;font-weight:600;letter-spacing:-.01em;transition:background .2s ease}
.hwd .hwd-btn:hover{background:#3a3a3d}
.hwd .hwd-btn-2{min-height:40px;padding:0 18px}
/* "Draw a roof" is the widget's first step (owner 2026-10-24: people could not find how to trace a roof), so it keeps the
   dark pill; "Finish roof" beside it is the light one */
.hwd .hwd-btn-2[data-hwd-finish]{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline-strong)}
.hwd .hwd-btn-2[data-hwd-finish]:hover{background:var(--soft)}
.hwd .hwd-steps li::before{color:var(--accent)}
.hwd .hwd-card{border-radius:var(--radius);padding:18px 20px}
.hwd .hwd-search,.hwd .hwd-card input,.hwd .hwd-card select{border-radius:12px;border-color:#c4c1ba;min-height:40px}
.hwd .hwd-map{border-radius:var(--radius);border:0;box-shadow:0 0 0 1px var(--hairline)}
.hwd .hwd-tiles div,.hwd .hwd-roof{border-radius:var(--radius-sm)}

/* ── 13. Narrow screens ────────────────────────────────────────────────────────────────────────────────────────── */
@media(max-width:1024px){
  /* the card leaves the photo and sits under it: solid, on the page's ground (the photo keeps its own placeholder tint) */
  .nzr-hero{background:var(--paper)}
  .nzr-hero-photo{background:#c8d6c0}
  .nzr-hero-card{border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-lift)}
}
@media(max-width:850px){.v5-lifetime{gap:12px}}
@media(max-width:720px){
  /* the stations become a swipe row of cards: same card language, the current one ringed in ink */
  .journey-step{border:1px solid var(--hairline);border-radius:var(--radius-sm)}
  .journey-step.active{border-color:var(--ink);background:var(--white);box-shadow:0 0 0 1px var(--ink)}
  .journey-node,.v5-road-section .journey-node{box-shadow:0 0 0 1px var(--hairline)}
  .journey-step.active .journey-node,.v5-road-section .journey-step.active .journey-node{box-shadow:none}
}
@media(max-width:640px){
  .nav-wrap{height:64px}
  .v5-section-head h2{font-size:30px}
  .v5-hero-copy>p,.hero-copy>p,.v5-page-heading>p,.lc-page-intro p,.nz-page-heading>p{font-size:16px}
  .section-copy{font-size:16px}
  .panel{padding:22px 20px}
  .nzg-door{padding:22px}
  .nzr-legs{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .nzr-leg{flex-shrink:0}
}
@media(max-width:560px){
  .v5-audience{border-radius:20px}
  .v5-audience button{border-radius:16px;min-height:54px}
  .v5-hero-actions .btn{padding:12px 10px;font-size:14px}
  .v5-road-section .journey-step{padding:14px}
  .btn{padding:11px 18px}
}
@media(prefers-reduced-motion:reduce){.v5-solution,.lc-product-card,.solution-card,.nzg-door,.nzb .nzb-card{transition:none}.v5-solution:hover,.lc-product-card:hover,.solution-card:hover,.nzg-door:hover,.nzb .nzb-card:hover,.project-card:hover,.lc-link-panel:hover{transform:none}}

/* ── 12. The warm edition (owner 2026-10-25, his mockup: "red + serif + cream", the road kept) ───────────────────────────
   Cream ground, an editorial serif for headlines (the device's own: New York on Apple, Charter/Georgia/Cambria elsewhere —
   nothing downloaded), ONE red pill as the main action, cards' own actions as red text links, and the road hero warmed:
   the headline sits on the photo over a soft cream haze; the stops stay. */
:root{
  --paper:#f8f5ef; --soft:#f1ece3; --surface-warm:#f6f1e8; --line:#e7dfd2; --tile:#f1ece3; --sage:#efe9df;
  --hairline:rgba(70,48,24,.10); --hairline-strong:rgba(70,48,24,.18);
  --action:#b3262d; --action-hover:#93202a; --action-label:#fff; --accent:#b3262d; --text-brand:#9e2229; --focus:#b3262d;
  --font-display:ui-serif,"New York","Iowan Old Style",Charter,"Bitstream Charter",Georgia,Cambria,"Times New Roman",serif;
}
h1,h2,.section-heading,.v5-section-head h2,.v5-discover h2,.v5-bottom h2,.faq-intro .section-heading,.hero h1,.v5-hero-copy h1,
.lc-page-intro h1,.lc-care-top h1,.v5-page-heading h1,.nz-page-heading h1,.nz-client-heading h1,.page-title,.nzr-hero-card h1{font-family:var(--font-display);font-weight:400;letter-spacing:-.012em;line-height:1.08}
.nz-client-heading h1{font-size:clamp(34px,4vw,54px)}
/* a card's own action in a grid of cards: a red text link with its arrow, not a second button */
.v5-intent-grid .btn-primary,.v5-epc-actions .btn-primary,.lc-card-actions .btn-primary,.nz-reference-card>.btn-primary,.lc-service-plans .btn-primary,
.nzg-door .btn,.nzg-door .btn-primary,.nzg-door .btn-secondary{background:transparent;border-color:transparent;color:var(--accent);padding-left:0;padding-right:0;min-height:40px}
.v5-intent-grid .btn-primary:hover,.v5-epc-actions .btn-primary:hover,.lc-card-actions .btn-primary:hover,.nz-reference-card>.btn-primary:hover,.lc-service-plans .btn-primary:hover,
.nzg-door:hover .btn,.nzg-door-on .btn{background:transparent;border-color:transparent;color:var(--action-hover);text-decoration:underline;text-underline-offset:4px}
.nzg-door-on{border:1px solid var(--accent);box-shadow:0 0 0 1px var(--accent)}
.v5-solution,.lc-product-card,.solution-card,.nzg-door,.panel{background:var(--white)}
/* the road hero, warmed: a soft haze and the headline on the photo */
.nzr-hero{background:var(--paper)}
.nzr-hero-photo img{filter:saturate(.86) sepia(.22) brightness(1.07) contrast(.93)}
.nzr-hero-photo::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(248,245,239,.96) 0%,rgba(248,245,239,.84) 26%,rgba(248,245,239,.4) 38%,rgba(248,245,239,0) 50%),linear-gradient(180deg,rgba(255,236,205,.22) 0%,rgba(255,236,205,0) 40%,rgba(248,245,239,.35) 100%)}
.nzr-hero-photo svg{z-index:2}
.nzr-hero-photo .nzr-card{z-index:4}
.nzr-hero-card{z-index:3;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border:0;left:clamp(20px,4.4vw,72px);top:50%;bottom:auto;transform:translateY(-50%);width:min(460px,29vw);padding:0}
.nzr-hero-card h1{font-size:clamp(38px,4.2vw,72px);line-height:1.02;color:var(--ink)}
.nzr-hero-eyebrow{color:var(--accent);letter-spacing:.14em}
.nzr-hero-card p{font-size:clamp(15px,1.15vw,18px);color:var(--body)}
.nzr-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:12px clamp(20px,4vw,56px);padding:18px 24px;border-bottom:1px solid var(--hairline);background:var(--white)}
.nzr-trust span{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--body)}
.nzr-trust span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.85}
@media (max-width:1024px){
  .nzr-hero-photo::after{background:linear-gradient(180deg,rgba(255,236,205,.2) 0%,rgba(248,245,239,0) 50%,rgba(248,245,239,.6) 100%)}
  .nzr-hero-card{position:static;transform:none;width:auto;margin:-24px 16px 0;padding:24px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-lift)}
  .nzr-trust{justify-content:flex-start}
}

/* ── 13. Pictures (owner 2026-10-25: his mockup's photo cards; free Unsplash photos credited on the home page) ─────────────
   Only local files under /netzero_assets/img/ — nothing from another site. */
.v5-solutions .v5-solution{overflow:hidden;padding-top:0}
.v5-solutions .v5-solution::before{content:"";display:block;height:150px;margin:0 -25px 20px;background:var(--soft) center/cover no-repeat}
.v5-solutions .v5-solution:nth-child(1)::before{background-image:url(/netzero_assets/img/nz-sol-rooftop.jpg)}
.v5-solutions .v5-solution:nth-child(2)::before{background-image:url(/netzero_assets/img/nz-sol-battery.jpg)}
.v5-solutions .v5-solution:nth-child(3)::before{background-image:url(/netzero_assets/img/nz-sol-pump.jpg)}
.v5-solutions .v5-solution:nth-child(4)::before{background-image:url(/netzero_assets/img/nz-sol-ev.jpg)}
.v5-solutions .v5-solution .v5-solution-icon{position:relative;margin-top:-44px;background:var(--white);box-shadow:var(--shadow)}
.v5-solutions .v5-solution .text-link{color:var(--accent)}
.v5-lifetime-main{background:linear-gradient(90deg,#f6efe4 0%,#f6efe4 46%,rgba(246,239,228,.55) 66%,rgba(246,239,228,0) 86%),url(/netzero_assets/img/nz-card-today.jpg) right center/cover no-repeat}
.v5-lifetime-side{background:linear-gradient(180deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.9) 52%,rgba(255,255,255,.35) 100%),url(/netzero_assets/img/nz-card-install.jpg) center bottom/cover no-repeat}
