/* Blue Horizon is the selected brand; alternatives are archived on palettes.html. */
:root{--accent-ink:#000;--petrol:#112A46;--sage:#286D9A;--amber:#EF8A42}
html[data-theme="current"]{--petrol:#123B45;--sage:#6D927D;--amber:#E4A446;--accent-ink:#000}
html[data-theme="blue"]{--petrol:#112A46;--sage:#286D9A;--amber:#EF8A42;--accent-ink:#000}
html[data-theme="copper"]{--petrol:#7B3F34;--sage:#D7BA8B;--amber:#2A7F7C;--accent-ink:#fff}

html[data-theme] .button{background:linear-gradient(135deg,color-mix(in srgb,var(--petrol) 87%,white),var(--petrol));border-color:var(--petrol);color:#fff}
html[data-theme] .button:hover{background:color-mix(in srgb,var(--petrol) 85%,black);border-color:var(--petrol)}
html[data-theme] .button-light,html[data-theme] .dark .button{background:linear-gradient(135deg,#fff,#f2f5f3);border-color:rgba(0,0,0,.1);color:var(--petrol)}
html[data-theme] .property-hero .button{background:linear-gradient(125deg,color-mix(in srgb,var(--amber) 80%,white),var(--amber));border-color:var(--amber);color:var(--accent-ink)}
html[data-theme] .property-hero .button:hover{background:var(--amber);color:var(--accent-ink)}
html[data-theme] .funding-route .button,html[data-theme] .incentive-hero-action .button,html[data-theme] .cta-band .button{background:var(--amber);border-color:var(--amber);color:var(--accent-ink)}
html[data-theme] .funding-route .button:hover,html[data-theme] .incentive-hero-action .button:hover,html[data-theme] .cta-band .button:hover{background:color-mix(in srgb,var(--amber) 90%,white);border-color:var(--amber);color:var(--accent-ink)}
html[data-theme] .funding-route{background:radial-gradient(ellipse at 90% 100%,color-mix(in srgb,var(--sage) 38%,transparent),transparent 58%),var(--petrol)}
html[data-theme] .assessment-section{background:linear-gradient(145deg,color-mix(in srgb,var(--sage) 7%,white),#fff)}
html[data-theme] .project-answers details[open],html[data-theme] #homeowners{background:color-mix(in srgb,var(--sage) 8%,white)}
html[data-theme] .guide-note{background:color-mix(in srgb,var(--sage) 13%,white)}
html[data-theme] .solar-scene{--ss-petrol:var(--petrol);--ss-sage:var(--sage);--ss-amber:var(--amber)}
html[data-theme] .ss-chapters button[aria-pressed=true],html[data-theme] .ss-chapters button[aria-pressed=true]:hover,html[data-theme] .ss-hotspot[aria-expanded=true]{background:linear-gradient(145deg,color-mix(in srgb,var(--petrol) 85%,white),var(--petrol));color:#fff}
html[data-theme] .solar-scene-fallback [fill="#123B45"]{fill:var(--petrol)}
html[data-theme] .solar-scene-fallback [stroke="#123B45"]{stroke:var(--petrol)}
html[data-theme] .solar-scene-fallback [fill="#6D927D"]{fill:var(--sage)}
html[data-theme] .solar-scene-fallback [stroke="#6D927D"]{stroke:var(--sage)}
html[data-theme] .solar-scene-fallback [fill="#E4A446"]{fill:var(--amber)}
html[data-theme] .solar-scene-fallback [stroke="#E4A446"]{stroke:var(--amber)}

.theme-picker{position:relative;flex:0 0 auto}
.theme-trigger{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--petrol) 22%,white);border-radius:8px;background:#fff;color:var(--petrol);font-size:12px;font-weight:500;white-space:nowrap}
.theme-trigger:hover,.theme-trigger[aria-expanded="true"]{background:color-mix(in srgb,var(--sage) 9%,white)}
.theme-dots,.palette-option-swatches{display:inline-flex;align-items:center;gap:3px}
.theme-dots i{display:block;width:9px;height:9px;border-radius:50%;background:var(--petrol)}
.theme-dots i:nth-child(2){background:var(--sage)}
.theme-dots i:nth-child(3){background:var(--amber)}
.theme-intro-active .theme-trigger{position:relative;z-index:47;box-shadow:0 0 0 4px color-mix(in srgb,var(--amber) 42%,transparent),0 0 0 8px color-mix(in srgb,var(--amber) 14%,transparent)}
.theme-intro{position:absolute;z-index:46;top:calc(100% + 12px);right:0;width:min(318px,calc(100vw - 36px));display:flex;gap:12px;align-items:flex-start;padding:17px 17px 15px;border:1px solid color-mix(in srgb,var(--petrol) 18%,white);border-radius:12px;background:#fff;box-shadow:0 16px 42px rgba(0,0,0,.18);color:#182a30}
.theme-intro[hidden]{display:none!important}.theme-intro p{margin:0;font-size:13px;line-height:1.5}.theme-intro-close{flex:0 0 auto;width:26px;height:26px;border:0;border-radius:5px;background:transparent;color:var(--petrol);font-size:21px;line-height:1;cursor:pointer}
.theme-intro-close:hover{background:#eef2f0}
.theme-panel{position:absolute;z-index:45;top:calc(100% + 12px);right:0;width:min(360px,calc(100vw - 36px));padding:13px;border:1px solid color-mix(in srgb,var(--petrol) 18%,white);border-radius:14px;background:#fff;box-shadow:0 18px 48px rgba(0,0,0,.16);color:#111}
.theme-panel[hidden]{display:none!important}
.theme-panel-title{margin:3px 4px 11px;font-size:13px;font-weight:600;color:#111}
.theme-panel-help{margin:0 4px 11px;font-size:12px;line-height:1.45;color:#40505a}
.palette-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:54px;padding:8px 10px;border:1px solid transparent;border-radius:9px;background:#fff;color:#111;text-align:left;font-size:13px}
.palette-option:hover,.palette-option[aria-pressed="true"]{background:#f5f7f6;border-color:#d9e0dc}
.palette-option[aria-pressed="true"]::after{content:'✓';font-weight:700;color:var(--petrol)}
.palette-option-swatches i{display:block;width:25px;height:25px;border:1px solid rgba(0,0,0,.12);border-radius:5px}
.palette-option[data-theme-option="current"] .palette-option-swatches i:nth-child(1){background:#123B45}
.palette-option[data-theme-option="current"] .palette-option-swatches i:nth-child(2){background:#6D927D}
.palette-option[data-theme-option="current"] .palette-option-swatches i:nth-child(3){background:#E4A446}
.palette-option[data-theme-option="blue"] .palette-option-swatches i:nth-child(1){background:#112A46}
.palette-option[data-theme-option="blue"] .palette-option-swatches i:nth-child(2){background:#286D9A}
.palette-option[data-theme-option="blue"] .palette-option-swatches i:nth-child(3){background:#EF8A42}
.palette-option[data-theme-option="copper"] .palette-option-swatches i:nth-child(1){background:#7B3F34}
.palette-option[data-theme-option="copper"] .palette-option-swatches i:nth-child(2){background:#D7BA8B}
.palette-option[data-theme-option="copper"] .palette-option-swatches i:nth-child(3){background:#2A7F7C}
.theme-panel>a{display:inline-flex;align-items:center;min-height:42px;margin:8px 9px 0;font-size:12px;color:var(--petrol);font-weight:600}
@media(max-width:780px){.theme-picker{order:5;position:static}.theme-trigger{width:44px;justify-content:center;padding:8px}.theme-trigger-label{display:none}.theme-panel,.theme-intro{right:0;top:calc(100% - 1px)}}
@media(max-width:480px){.nav{gap:6px}.js .menu-toggle{padding-inline:2px}.js .menu-toggle span{display:none}.nav-cta{padding-inline:7px!important;gap:5px!important}.theme-trigger{width:38px}.brand{gap:5px}}
@media(max-width:360px){.js .menu-toggle{font-size:11px}.nav-cta{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.theme-panel,.theme-trigger{transition:none}}

/* Exact swatches shown on the Bill-facing review page. */
.palette-book{padding-block:64px 90px}.palette-book h1{max-width:760px}.palette-book>p{max-width:780px}
.palette-review{padding:34px 0;border-top:1px solid #cbd4cf}.palette-review h2{margin-bottom:8px}.palette-review>p{font-size:15px;max-width:750px}
.palette-swatch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:24px 0}
.palette-swatch{min-width:0;border:1px solid #d6ded8;border-radius:11px;overflow:hidden;background:#fff}
.palette-swatch-color{height:100px;background:var(--swatch)}
.palette-swatch-body{padding:14px 12px 16px;color:#111}
.palette-swatch-body strong{display:block;font-size:13px;margin-bottom:7px}
.palette-swatch-body code{display:block;font:500 12px/1.5 var(--mono);white-space:nowrap}
.swatch-current-primary{--swatch:#123B45}.swatch-current-secondary{--swatch:#6D927D}.swatch-current-accent{--swatch:#E4A446}
.swatch-blue-primary{--swatch:#112A46}.swatch-blue-secondary{--swatch:#286D9A}.swatch-blue-accent{--swatch:#EF8A42}
.swatch-copper-primary{--swatch:#7B3F34}.swatch-copper-secondary{--swatch:#D7BA8B}.swatch-copper-accent{--swatch:#2A7F7C}
.swatch-black{--swatch:#000000}.swatch-white{--swatch:#FFFFFF}
.palette-review .palette-try{font-size:13px}
@media(max-width:800px){.palette-swatch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){.palette-book{padding-block:42px 64px}.palette-swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.palette-swatch-color{height:82px}}
