/*
 * Pinnacle 2026 design tokens (handoff v001 — tokens/tokens.css + design-tokens.json).
 * Light values on :root, dark values under html.theme-dark.
 * Trade accents: --acc / --acc-text / --acc-tint resolve from the body or
 * section accent class (accent-roofing … accent-chimneys / acc-*).
 */
:root{
  --ink:#15171A;--text-1:#2A2D31;--text-2:#3A3E43;--text-3:#4A4E54;--text-muted:#5A5F66;--icon-muted:#8D9399;
  --surface:#FFFFFF;--surface-soft:#F7F8F5;--surface-alt:#F4F5F2;--surface-sunk:#EEF0EB;--util-bar:#E9EBE6;--footer:#EDEFEA;
  --border:#E2E4DF;--border-soft:#EEF0EB;--border-control:#D5D9D2;--border-strong:#C9CDD2;--border-footer:#DADDD7;--foot-mark:#C9D3C6;
  --dark-surface:#15171A;--dark-surface-deep:#0E1012;--dark-card:#1D2024;--dark-border:#2E3237;--dark-text:#C9CDD2;--dark-muted:#A9AEB4;
  --header-glass:rgba(255,255,255,.58);--header-glass-border:rgba(255,255,254,.45);
  --roofing-accent:#22B455;--roofing-text:#12703A;--roofing-tint:#E3F5E9;--roofing-hover:#F2FAF5;
  --solar-accent:#F2B544;--solar-text:#8F5D00;--solar-tint:#FDF1D6;--solar-hover:#FEF8EA;
  --electrical-accent:#5DB4EA;--electrical-text:#1C6AA3;--electrical-tint:#E1F0FA;--electrical-hover:#F0F7FD;
  --chimneys-accent:#E8845A;--chimneys-text:#AE4C24;--chimneys-tint:#FBE6DC;--chimneys-hover:#FDF3EE;
  --danger:#C62828;--brand-deep:#0E3B2A;
  --acc:var(--roofing-accent);--acc-text:var(--roofing-text);--acc-tint:var(--roofing-tint);--acc-hover:var(--roofing-hover);--acc-ink:#08130C;
  --font-display:'Big Shoulders Display',Impact,'Arial Narrow',sans-serif;
  --font-body:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --radius-pill:999px;--radius-control:14px;--radius-card:24px;--radius-feature:28px;--radius-image:24px;
  --shadow-card:0 30px 60px -40px rgba(21,23,26,.35);--shadow-quote:0 40px 80px -48px rgba(21,23,26,.45);--shadow-film:0 40px 80px -40px rgba(0,0,0,.7);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);--ease-out:cubic-bezier(.2,.8,.2,1);
  --max-w:1600px;--max-w-wide:calc(var(--max-w) + 128px);--gutter:24px;--edge:clamp(16px,3vw,48px);--section-y:clamp(64px,8vw,112px);
  --h1:clamp(48px,6.2vw,96px);--h2:clamp(40px,5vw,68px);
}
html.theme-dark{
  color-scheme:dark;
  --ink:#F4F5F2;--text-1:#E6E8EA;--text-2:#C9CDD2;--text-3:#B7BCC2;--text-muted:#8D9399;
  --surface:#1D2024;--surface-soft:#1A1D20;--surface-alt:#15171A;--surface-sunk:#23272B;--util-bar:#0E1012;--footer:#0E1012;
  --border:#2E3237;--border-soft:#2A2D31;--border-control:#3D4247;--border-strong:#3D4247;--border-footer:#2E3237;--foot-mark:#3D4247;
  --dark-surface:#0E1012;
  --header-glass:rgba(21,23,26,.55);--header-glass-border:rgba(255,255,255,.08);
  --roofing-text:#22B455;--roofing-tint:#1A2A22;--roofing-hover:#1A2A22;
  --solar-text:#F2B544;--solar-tint:#2E2614;--solar-hover:#2E2614;
  --electrical-text:#5DB4EA;--electrical-tint:#0E2433;--electrical-hover:#0E2433;
  --chimneys-text:#E8845A;--chimneys-tint:#2E1C15;--chimneys-hover:#2E1C15;
  --shadow-card:0 30px 60px -40px rgba(0,0,0,.8);
}
.accent-solar,.acc-solar{--acc:var(--solar-accent);--acc-text:var(--solar-text);--acc-tint:var(--solar-tint);--acc-hover:var(--solar-hover);--acc-ink:#1E1503}
.accent-electrical,.acc-electrical{--acc:var(--electrical-accent);--acc-text:var(--electrical-text);--acc-tint:var(--electrical-tint);--acc-hover:var(--electrical-hover);--acc-ink:#04121C}
.accent-chimneys,.acc-chimneys{--acc:var(--chimneys-accent);--acc-text:var(--chimneys-text);--acc-tint:var(--chimneys-tint);--acc-hover:var(--chimneys-hover);--acc-ink:#1C0B04}
.acc-roofing{--acc:var(--roofing-accent);--acc-text:var(--roofing-text);--acc-tint:var(--roofing-tint);--acc-hover:var(--roofing-hover);--acc-ink:#08130C}

/* Borderless zones: each light section fades from the previous end tone into a new tint with soft blooms. */
.zn{position:relative;isolation:isolate}
.zn.zn0{--zn-end:#EEF6F0;background:radial-gradient(46vw 32vw at 8% 30%, rgba(34,180,85,0.16) 0%, rgba(34,180,85,0) 70%),radial-gradient(38vw 27vw at 92% 70%, rgba(242,181,68,0.128) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.056) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#FFFFFF 0%,#EEF6F0 100%)}
html.theme-dark .zn.zn0{--zn-end:#14201A;background:radial-gradient(46vw 32vw at 8% 30%, rgba(34,180,85,0.1) 0%, rgba(34,180,85,0) 70%),radial-gradient(38vw 27vw at 92% 70%, rgba(242,181,68,0.08) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.035) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#15171A 0%,#14201A 100%)}
.zn.zn1{--zn-end:#F8F5EC;background:radial-gradient(44vw 31vw at 85% 25%, rgba(242,181,68,0.16) 0%, rgba(242,181,68,0) 70%),radial-gradient(36vw 25vw at 15% 80%, rgba(93,180,234,0.128) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.056) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#EEF6F0 0%,#F8F5EC 100%)}
html.theme-dark .zn.zn1{--zn-end:#1D1B16;background:radial-gradient(44vw 31vw at 85% 25%, rgba(242,181,68,0.1) 0%, rgba(242,181,68,0) 70%),radial-gradient(36vw 25vw at 15% 80%, rgba(93,180,234,0.08) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.035) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#14201A 0%,#1D1B16 100%)}
.zn.zn2{--zn-end:#F1F5F7;background:radial-gradient(52vw 36vw at 50% 10%, rgba(93,180,234,0.16) 0%, rgba(93,180,234,0) 70%),radial-gradient(30vw 21vw at 95% 90%, rgba(34,180,85,0.128) 0%, rgba(34,180,85,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(242,181,68,0.056) 0%, rgba(242,181,68,0) 70%),linear-gradient(180deg,#F8F5EC 0%,#F1F5F7 100%)}
html.theme-dark .zn.zn2{--zn-end:#151C21;background:radial-gradient(52vw 36vw at 50% 10%, rgba(93,180,234,0.1) 0%, rgba(93,180,234,0) 70%),radial-gradient(30vw 21vw at 95% 90%, rgba(34,180,85,0.08) 0%, rgba(34,180,85,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(242,181,68,0.035) 0%, rgba(242,181,68,0) 70%),linear-gradient(180deg,#1D1B16 0%,#151C21 100%)}
.zn.zn3{--zn-end:#F5F1EA;background:radial-gradient(40vw 28vw at 5% 75%, rgba(34,180,85,0.16) 0%, rgba(34,180,85,0) 70%),radial-gradient(42vw 29vw at 70% 35%, rgba(242,181,68,0.128) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.056) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#F1F5F7 0%,#F5F1EA 100%)}
html.theme-dark .zn.zn3{--zn-end:#1E1A17;background:radial-gradient(40vw 28vw at 5% 75%, rgba(34,180,85,0.1) 0%, rgba(34,180,85,0) 70%),radial-gradient(42vw 29vw at 70% 35%, rgba(242,181,68,0.08) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.035) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#151C21 0%,#1E1A17 100%)}
.zn.zn4{--zn-end:#EFF5F0;background:radial-gradient(46vw 32vw at 8% 30%, rgba(242,181,68,0.16) 0%, rgba(242,181,68,0) 70%),radial-gradient(38vw 27vw at 92% 70%, rgba(93,180,234,0.128) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.056) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#F5F1EA 0%,#EFF5F0 100%)}
html.theme-dark .zn.zn4{--zn-end:#141F19;background:radial-gradient(46vw 32vw at 8% 30%, rgba(242,181,68,0.1) 0%, rgba(242,181,68,0) 70%),radial-gradient(38vw 27vw at 92% 70%, rgba(93,180,234,0.08) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.035) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#1E1A17 0%,#141F19 100%)}
.zn.zn5{--zn-end:#FFFFFF;background:radial-gradient(44vw 31vw at 85% 25%, rgba(93,180,234,0.16) 0%, rgba(93,180,234,0) 70%),radial-gradient(36vw 25vw at 15% 80%, rgba(34,180,85,0.128) 0%, rgba(34,180,85,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(242,181,68,0.056) 0%, rgba(242,181,68,0) 70%),linear-gradient(180deg,#EFF5F0 0%,#FFFFFF 100%)}
html.theme-dark .zn.zn5{--zn-end:#15171A;background:radial-gradient(44vw 31vw at 85% 25%, rgba(93,180,234,0.1) 0%, rgba(93,180,234,0) 70%),radial-gradient(36vw 25vw at 15% 80%, rgba(34,180,85,0.08) 0%, rgba(34,180,85,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(242,181,68,0.035) 0%, rgba(242,181,68,0) 70%),linear-gradient(180deg,#141F19 0%,#15171A 100%)}
.zn.zn6{--zn-end:#EEF6F0;background:radial-gradient(52vw 36vw at 50% 10%, rgba(34,180,85,0.16) 0%, rgba(34,180,85,0) 70%),radial-gradient(30vw 21vw at 95% 90%, rgba(242,181,68,0.128) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.056) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#FFFFFF 0%,#EEF6F0 100%)}
html.theme-dark .zn.zn6{--zn-end:#14201A;background:radial-gradient(52vw 36vw at 50% 10%, rgba(34,180,85,0.1) 0%, rgba(34,180,85,0) 70%),radial-gradient(30vw 21vw at 95% 90%, rgba(242,181,68,0.08) 0%, rgba(242,181,68,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(93,180,234,0.035) 0%, rgba(93,180,234,0) 70%),linear-gradient(180deg,#15171A 0%,#14201A 100%)}
.zn.zn7{--zn-end:#F8F5EC;background:radial-gradient(40vw 28vw at 5% 75%, rgba(242,181,68,0.16) 0%, rgba(242,181,68,0) 70%),radial-gradient(42vw 29vw at 70% 35%, rgba(93,180,234,0.128) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.056) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#EEF6F0 0%,#F8F5EC 100%)}
html.theme-dark .zn.zn7{--zn-end:#1D1B16;background:radial-gradient(40vw 28vw at 5% 75%, rgba(242,181,68,0.1) 0%, rgba(242,181,68,0) 70%),radial-gradient(42vw 29vw at 70% 35%, rgba(93,180,234,0.08) 0%, rgba(93,180,234,0) 70%),radial-gradient(60vw 30vw at 50% 50%, rgba(34,180,85,0.035) 0%, rgba(34,180,85,0) 70%),linear-gradient(180deg,#14201A 0%,#1D1B16 100%)}
.prp-footer.after-zn0{background:linear-gradient(180deg,#EEF6F0 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn0{background:linear-gradient(180deg,#14201A 0%,var(--footer) 220px)}
.prp-footer.after-zn1{background:linear-gradient(180deg,#F8F5EC 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn1{background:linear-gradient(180deg,#1D1B16 0%,var(--footer) 220px)}
.prp-footer.after-zn2{background:linear-gradient(180deg,#F1F5F7 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn2{background:linear-gradient(180deg,#151C21 0%,var(--footer) 220px)}
.prp-footer.after-zn3{background:linear-gradient(180deg,#F5F1EA 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn3{background:linear-gradient(180deg,#1E1A17 0%,var(--footer) 220px)}
.prp-footer.after-zn4{background:linear-gradient(180deg,#EFF5F0 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn4{background:linear-gradient(180deg,#141F19 0%,var(--footer) 220px)}
.prp-footer.after-zn5{background:linear-gradient(180deg,#FFFFFF 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn5{background:linear-gradient(180deg,#15171A 0%,var(--footer) 220px)}
.prp-footer.after-zn6{background:linear-gradient(180deg,#EEF6F0 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn6{background:linear-gradient(180deg,#14201A 0%,var(--footer) 220px)}
.prp-footer.after-zn7{background:linear-gradient(180deg,#F8F5EC 0%,var(--footer) 220px)}
html.theme-dark .prp-footer.after-zn7{background:linear-gradient(180deg,#1D1B16 0%,var(--footer) 220px)}
