:root{--bg:oklch(97.1% .005 229);--bg-tint:oklch(94.8% .009 232);--surface:oklch(99.5% .002 229);--surface-2:oklch(98.3% .003 220);--fg:oklch(31.5% .028 247);--muted:oklch(52.4% .03 248);--accent:oklch(54.2% .088 231);--accent-strong:oklch(44.2% .074 232);--accent-soft:oklch(94.8% .015 229);--accent-ink:oklch(99.5% .002 229);--border:oklch(91.1% .013 237);--rule:oklch(86% .018 240);--brand:oklch(62.1% .139 242);--good:oklch(57.8% .133 151);--middle:oklch(67% .143 70);--good-text:oklch(50.6% .117 150);--middle-text:oklch(51.6% .111 71);--bad:oklch(55.4% .175 31);--font-display:"Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-body:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", sans-serif;--serif:var(--font-display);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--radius:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:12px;--hairline:1px solid var(--rule);--shadow-sm:0 1px 2px color-mix(in oklab, var(--fg) 6%, transparent), 0 6px 18px color-mix(in oklab, var(--fg) 7%, transparent);--shadow-md:0 2px 4px color-mix(in oklab, var(--fg) 7%, transparent), 0 14px 34px color-mix(in oklab, var(--fg) 10%, transparent);--shadow-lg:0 12px 32px color-mix(in oklab, var(--fg) 14%, transparent);--ring:0 0 0 3px color-mix(in oklab, var(--accent) 35%, transparent);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-short:.16s;--dur-mid:.24s;--header-h:0px;--page-max:1180px;--wide-max:1680px;--page-gutter:var(--space-4);color-scheme:light;font-family:var(--font-body)}:root[data-scheme=dark]{color-scheme:dark;--bg:oklch(22.2% .004 85);--bg-tint:oklch(24.8% .006 92);--surface:oklch(26.4% .006 92);--surface-2:oklch(28.9% .007 95);--fg:oklch(93.2% .01 82);--muted:oklch(72.1% .016 81);--accent:oklch(76.8% .076 178);--accent-strong:oklch(85.3% .058 178);--accent-soft:oklch(30.8% .019 174);--accent-ink:oklch(23.8% .026 179);--border:oklch(34.1% .009 89);--rule:oklch(39.9% .012 88);--brand:oklch(74.9% .105 233);--good:oklch(70.7% .133 152);--middle:oklch(79.3% .128 78);--good-text:var(--good);--middle-text:var(--middle);--bad:oklch(73.7% .127 32);--shadow-lg:0 12px 32px oklch(0% 0 0/.45)}:root[data-tone=navy]{--bg:oklch(18% .045 258);--bg-tint:oklch(20.5% .048 258);--surface:oklch(22% .05 257);--surface-2:oklch(25% .052 256);--fg:oklch(90.5% .018 240);--muted:oklch(75% .03 244);--accent:oklch(80.5% .095 222);--accent-strong:oklch(88% .07 220);--accent-soft:oklch(29% .06 250);--accent-ink:oklch(17% .045 258);--border:oklch(30% .048 254);--rule:oklch(37% .05 252);--brand:oklch(74% .125 236);--shadow-lg:0 12px 32px oklch(10% .04 256/.5);--shadow-sm:0 1px 2px oklch(8% .04 258/.35), 0 8px 22px oklch(8% .04 258/.35);--shadow-md:0 2px 6px oklch(8% .04 258/.4), 0 16px 40px oklch(8% .04 258/.45)}@media (prefers-reduced-motion:reduce){:root{--dur-short:1ms;--dur-mid:.12s}}@media (width>=640px){:root{--page-gutter:var(--space-5)}}@media (width>=1600px){:root{--page-max:1420px;--wide-max:1920px;--page-gutter:var(--space-6)}html{font-size:112.5%}}*{box-sizing:border-box}body{background:var(--bg);background-image:radial-gradient(120% 60% at 50% 0%, var(--bg-tint) 0%, var(--bg) 60%);min-height:100vh;color:var(--fg);-webkit-font-smoothing:antialiased;background-attachment:fixed;flex-direction:column;margin:0;font-size:clamp(1rem,.97rem + .15vw,1.0625rem);line-height:1.6;display:flex}h1,h2,h3,h4,.brand{font-family:var(--serif);text-wrap:balance;font-weight:600;line-height:1.2}h1,.rise-word{overflow-wrap:anywhere}.rise-word{max-width:100%}h1{letter-spacing:-.01em;margin:0 0 var(--space-3);font-size:clamp(1.75rem,1.25rem + 2vw,2.6rem)}h2{margin:var(--space-6) 0 var(--space-3);font-size:clamp(1.3rem,1.15rem + .6vw,1.6rem)}h3{margin:var(--space-4) 0 var(--space-2);font-size:1.15rem}h4{margin:var(--space-4) 0 var(--space-2);font-size:1rem}p{text-wrap:pretty;max-width:68ch}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--accent-strong);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}::selection{background:color-mix(in srgb, var(--accent) 25%, transparent)}hr{border:0;border-top:1px solid var(--border);margin:var(--space-6) 0}small{font-size:.85em}.site-header{z-index:20;align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, transparent);backdrop-filter:blur(10px);flex-wrap:wrap;display:flex;position:sticky;top:0}.site-header nav{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.site-header a{color:var(--fg);text-decoration:none}.site-header nav a{border-radius:var(--radius-pill);padding:.25rem .6rem;font-size:.95rem;transition:background-color .16s,color .16s}.site-header nav a:hover{background:var(--accent-soft);color:var(--accent-strong)}.site-header nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.brand{letter-spacing:.01em;align-items:center;gap:.35rem;font-size:1.35rem;display:inline-flex}.brand img{width:auto;height:2.1rem;display:block}.brand .logo-dark,:root[data-scheme=dark] .brand .logo-light{display:none}:root[data-scheme=dark] .brand .logo-dark{display:block}.lang{color:var(--muted);margin-left:auto;font-size:.85rem}.lang a[aria-current=true]{color:var(--accent-strong);background:var(--accent-soft);font-weight:700}main{width:100%;max-width:var(--page-max);padding:var(--space-5) var(--page-gutter) var(--space-7);flex:1;margin:0 auto}main>section{margin-bottom:var(--space-6)}main>section:last-child{margin-bottom:0}.site-footer{align-items:baseline;gap:var(--space-2) var(--space-4);padding:var(--space-5) var(--space-4);border-top:1px solid var(--border);background:var(--surface);color:var(--muted);flex-wrap:wrap;font-size:.85rem;display:flex}.site-footer a{color:var(--muted);margin-left:0}.site-footer a:hover{color:var(--accent-strong)}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-4) var(--space-5);min-width:0;box-shadow:var(--shadow-sm);transition:transform .22s,box-shadow .22s,border-color .22s}.panel:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));box-shadow:var(--shadow-md);transform:translateY(-1px)}.panel h2{margin:0 0 var(--space-2);align-items:center;gap:.4rem;font-size:1.15rem;display:flex}.panel h3{margin:var(--space-4) 0 var(--space-2);font-size:1rem}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--bad)}.goal{font-weight:600}a.button,button.button{border-radius:var(--radius-lg);background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);box-shadow:var(--shadow-sm);align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s,background-color .16s;display:inline-flex}a.button:hover,button.button:hover{background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}a.button.secondary,button.button.secondary{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:none;background:0 0}.map-frame{border:1px solid var(--border);border-radius:var(--radius-lg);height:min(70vh,640px);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.map-frame .map{position:absolute;inset:0}.layer-toggle{color:var(--muted);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.layer-toggle input[type=range]{accent-color:var(--accent);width:6rem}.landing-hero{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);align-items:center;gap:2rem;min-height:min(62vh,38rem);padding:clamp(2rem,7vw,6rem) 0;display:grid}.landing-copy{max-width:42rem}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .7rem;font-size:.78rem;font-weight:700}.landing-hero h1{margin:0 0 1rem;font-size:clamp(2.5rem,6vw,5.4rem)}.lead{color:var(--muted);max-width:58ch;font-size:clamp(1.1rem,1rem + .4vw,1.35rem)}.hero-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.6rem;display:flex}a.button.secondary{color:var(--accent);background:0 0}.landing-visual{border:1px solid var(--border);border-radius:var(--radius-lg);background-color:color-mix(in srgb, var(--accent) 12%, var(--surface));min-height:20rem;box-shadow:var(--shadow-md);background-image:url(/brand/droply-hero-fog.webp);background-position:50% 46%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.landing-visual:after{content:"";background:linear-gradient(135deg, color-mix(in srgb, var(--fg) 18%, transparent), transparent 58%, color-mix(in srgb, var(--accent) 20%, transparent));pointer-events:none;position:absolute;inset:0}.landing-visual:before{content:"";border:1px solid color-mix(in srgb, var(--surface) 42%, transparent);opacity:.5;pointer-events:none;border-radius:50%;animation:14s ease-in-out infinite alternate visual-drift;position:absolute;inset:12% 18%;transform:rotate(-12deg)scale(1)}.home-grid{grid-template-columns:repeat(3,1fr);gap:1rem;padding-bottom:2rem;display:grid}.home-grid .panel{min-height:10rem}.home-grid h2{margin-top:0}.home-features{gap:1.25rem}.home-feature{flex-direction:column;gap:.6rem;padding:1.5rem 1.6rem;display:flex}.home-feature h2{margin:0;font-size:1.2rem}.home-feature p{margin:0}.home-feature-icon{border-radius:var(--radius-lg);background:var(--accent-soft);width:2.6rem;height:2.6rem;color:var(--accent-strong);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);justify-content:center;align-items:center;margin-bottom:.3rem;display:inline-flex}.home-feature-icon svg{width:1.5rem;height:1.5rem;display:block}.home-feature:hover .home-feature-icon{background:color-mix(in srgb, var(--accent) 16%, var(--surface))}.page-intro .eyebrow{margin-bottom:0}.destination-section{padding:1rem 0 3rem}.destination-section h2{margin-top:0;font-size:clamp(1.8rem,3vw,2.6rem)}.destination-grid{grid-template-columns:repeat(4,1fr);gap:.8rem;display:grid}.destination-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-height:10rem;color:var(--fg);box-shadow:var(--shadow-sm);flex-direction:column;gap:.45rem;padding:1.1rem;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex}.destination-card:hover{border-color:var(--accent);box-shadow:0 .5rem 1.5rem color-mix(in srgb, var(--fg) 10%, transparent);transform:translateY(-3px)}.destination-card strong{font-family:var(--serif);font-size:1.15rem}.destination-card>span:last-child{color:var(--muted);font-size:.9rem}.destination-number{color:var(--accent);letter-spacing:.12em;font-size:.75rem;font-weight:700}.home-story{padding:2rem 0 4rem;position:relative}.home-story-heading{max-width:48rem;margin-bottom:1rem}.home-story-heading h2{margin-top:0;font-size:clamp(1.8rem,3vw,2.6rem)}.home-story-heading p:not(.eyebrow){max-width:65ch;color:var(--muted)}.home-story-track{scroll-snap-type:y proximity;scrollbar-color:var(--accent) transparent;gap:1rem;max-height:min(78vh,47rem);display:grid;overflow-y:auto}.home-story-slide{border-radius:var(--radius-lg);isolation:isolate;scroll-snap-align:start;background:var(--surface);align-items:end;min-height:min(78vh,47rem);scroll-margin-top:1rem;display:flex;position:relative;overflow:hidden}.home-story-slide:before{content:"";z-index:-2;background:var(--story-image) var(--story-position) / cover no-repeat;transition:transform .9s;position:absolute;inset:0;transform:scale(1.02)}.home-story-slide:after{content:"";z-index:-1;background:linear-gradient(#0a141e14 20%,#0a141ed1 100%);position:absolute;inset:0}.home-story-slide--rain:after{background:linear-gradient(#0c2d4114 15%,#081d2ad6 100%)}.home-story-slide--solar:after{background:linear-gradient(#1e14080a 15%,#12181cd6 100%)}.home-story-slide--fog:after{background:linear-gradient(#23353f1a 15%,#121e26db 100%)}.home-story-slide:target:before{transform:scale(1.06)}.home-story-overlay{color:#fff;width:min(100%,48rem);padding:clamp(1.5rem,5vw,4rem)}.story-kicker{color:#d5f2ff;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .7rem;font-size:.78rem;font-weight:700}.home-story-overlay h3{text-wrap:balance;margin:0 0 .8rem;font-size:clamp(2rem,5vw,4rem)}.home-story-overlay>p:not(.story-kicker){text-wrap:pretty;max-width:55ch;margin-bottom:1.3rem;font-size:clamp(1rem,1rem + .3vw,1.25rem)}.story-progress{gap:.45rem;margin-top:1rem;display:flex}.story-progress a{border:1px solid var(--border);width:2.35rem;height:2.35rem;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;text-decoration:none;display:inline-flex}.story-progress a:hover,.story-progress a:focus-visible{border-color:var(--accent);color:var(--accent)}@media (width<=639.98px){.home-story-slide{min-height:78vh}.home-story-overlay{padding:1.4rem}}@media (prefers-reduced-motion:reduce){.home-story-slide:before{transition:none;transform:none}}@keyframes visual-drift{0%{opacity:.25;transform:rotate(-12deg)scale(.98)}to{opacity:.55;transform:rotate(-5deg)scale(1.03)}}@media (width<=639.98px){.landing-hero{grid-template-columns:1fr;padding:2.5rem 0 2rem}.landing-visual{min-height:13rem}.home-grid{grid-template-columns:1fr}}@media (width<=1023.98px){.destination-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=519.98px){.destination-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){a.button,button.button,.destination-card{transition:none}}.map-wrap{flex-direction:column;gap:.75rem;display:flex}.map-toolbar{align-items:flex-end;gap:var(--space-3) var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);flex-wrap:wrap;display:flex}.map-toolbar>label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:.2rem;font-size:.75rem;display:flex}.map-toolbar select{min-height:2.6rem;padding:.35rem .6rem;font-size:.95rem}.map-toolbar .compare-toggle,.map-toolbar .layer-toggle{text-transform:none;letter-spacing:0;flex-direction:row;align-items:center;min-height:2.6rem;font-size:.88rem}.map-toolbar input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--accent)}.compare-toggle{color:var(--fg);align-items:center;gap:.45rem;display:inline-flex}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.8rem;display:inline-flex}.swatch{border-radius:2px;width:.9rem;height:.9rem;margin-left:.4rem;display:inline-block}.swatch.good{background:#1a9850}.swatch.middle{background:#fec44f}.swatch.bad{background:#d73027}.ramp{border:1px solid var(--border);border-radius:2px;width:100%;height:.7rem;display:inline-block}.legend-scale{flex-direction:column;gap:.1rem;min-width:9rem;display:inline-flex}.legend-ticks{font-variant-numeric:tabular-nums;color:var(--muted);grid-template-columns:1fr 1fr 1fr;font-size:.72rem;display:grid}.legend-ticks span:first-child{text-align:left}.legend-ticks span:nth-child(2){text-align:center}.legend-ticks span:last-child{text-align:right}.legend-note{color:var(--muted);flex-basis:100%;font-size:.75rem}.legend-unit{color:var(--muted);white-space:nowrap;font-size:.78rem}.ramp-abs_humidity{background:linear-gradient(90deg,#ffffd9,#7fcdbb,#1d91c0,#081d58)}.ramp-dew_point{background:linear-gradient(90deg,#313695,#abd9e9,#fee090,#a50026)}.ramp-solar{background:linear-gradient(90deg,#ffc,#feb24c,#f03b20,#800026)}.ramp-wind{background:linear-gradient(90deg,#fff7fb,#a6bddb,#3690c0,#023858)}.ramp-precip{background:linear-gradient(90deg,#f7fcf0,#a8ddb5,#4eb3d3,#084081)}.ramp-fog{background:linear-gradient(90deg,#f7fbff,#9ecae1,#4292c6,#08306b)}.maplibregl-ctrl-attrib{font-size:.7rem}@media (width<=639.98px){.map-frame{height:min(72vh,520px);min-height:20rem}.map-toolbar{align-items:stretch}.map-toolbar>label{flex:12rem}.map-toolbar select{width:100%}}.site-info{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);padding:1rem 1.1rem}.site-info h2{margin:0 0 .5rem;font-size:1.1rem}.site-info h3{margin:.6rem 0 .3rem;font-size:1rem}.site-data-status{border-top:1px solid var(--border);margin-top:.8rem;padding-top:.6rem}.site-data-status h3{align-items:center;gap:.35rem;display:flex}.site-data-status p{margin:.25rem 0}.site-data-status ul{margin:.4rem 0;padding:0;list-style:none}.site-data-status li{justify-content:space-between;gap:1rem;padding:.2rem 0;display:flex}.site-data-status.compact{font-size:.88rem}.site-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.5rem 2.5rem;display:grid}.status-list{margin:0;padding:0;list-style:none}.status-list li{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.3rem 0;display:flex}.badge{white-space:nowrap;border:1px solid;border-radius:2px;padding:.05rem .5rem;font-size:.85rem}.badge.good{border-color:var(--good);color:var(--good-text);background:color-mix(in srgb, var(--good) 10%, transparent)}.badge.middle{border-color:var(--middle);color:var(--middle-text);background:color-mix(in srgb, var(--middle) 10%, transparent)}.badge.bad{border-color:var(--muted);color:var(--muted)}.badge.warn{border-color:var(--bad);color:color-mix(in srgb, var(--bad) 78%, var(--fg));background:color-mix(in srgb, var(--bad) 12%, transparent);font-weight:700}.badge.neutral{border-color:var(--border);color:var(--muted)}.values{margin:0}.values div{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.3rem 0;display:flex}.values dt{color:var(--muted)}.values dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.note-warn{border-left:3px solid var(--middle);background:color-mix(in srgb, var(--middle) 8%, transparent);padding:.35rem .7rem;font-size:.9rem}.source{border-top:1px solid var(--rule);margin-top:1.2rem;padding-top:.6rem}.source a,.source dd{overflow-wrap:anywhere}.notice{font-size:.9rem}.lab-table{border-collapse:collapse;width:100%;margin:var(--space-3,.75rem) 0;font-size:.9rem}.lab-table th,.lab-table td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.35rem .5rem}.lab-table thead th{color:var(--muted);font-size:.8rem}.lab-table tbody th{white-space:nowrap;font-weight:600}.module-list{columns:2 16rem;padding-left:1.2rem}:root{--cat-source_active:#35708f;--cat-source_passive:#4a94b3;--cat-treatment:#3d8f88;--cat-energy:#e08a1e;--cat-storage:#6b7b8c;--cat-addon:#4aa645;--cat-use:#7c5cd6}:root[data-scheme=dark]{--cat-source_active:#8ab4cc;--cat-source_passive:#7fb0c8;--cat-treatment:#74b8b2;--cat-energy:#f0b45a;--cat-storage:#9fb0c0;--cat-addon:#7cc975;--cat-use:#b79cf0}.module-icon{border-radius:var(--radius);flex-shrink:0;place-items:center;width:2rem;height:2rem;display:inline-grid}.module-icon img{display:block}.module-icon-glyph{-webkit-mask:var(--glyph) center / contain no-repeat;mask:var(--glyph) center / contain no-repeat;background-color:currentColor;display:block}.cat-source_active{color:var(--cat-source_active);background:color-mix(in srgb, var(--cat-source_active) 12%, transparent)}.cat-source_passive{color:var(--cat-source_passive);background:color-mix(in srgb, var(--cat-source_passive) 12%, transparent)}.cat-treatment{color:var(--cat-treatment);background:color-mix(in srgb, var(--cat-treatment) 12%, transparent)}.cat-energy{color:var(--cat-energy);background:color-mix(in srgb, var(--cat-energy) 12%, transparent)}.cat-storage{color:var(--cat-storage);background:color-mix(in srgb, var(--cat-storage) 12%, transparent)}.cat-addon{color:var(--cat-addon);background:color-mix(in srgb, var(--cat-addon) 12%, transparent)}.cat-use{color:var(--cat-use);background:color-mix(in srgb, var(--cat-use) 12%, transparent)}.builder{flex-direction:column;gap:1rem;display:flex}.location-row{flex-wrap:wrap;align-items:end;gap:.5rem .9rem;display:flex}.location-row label{color:var(--muted);flex-direction:column;font-size:.85rem;display:flex}.builder input,.builder select,.builder button,.map-toolbar select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:.32rem .5rem}.builder button{cursor:pointer;align-items:center;gap:.25rem;display:inline-flex}.builder button:hover{border-color:var(--accent)}.builder-layout{--layout-w:min(calc(100vw - 2 * var(--page-gutter)), var(--wide-max));gap:var(--space-4);width:var(--layout-w);margin-inline:calc((100% - var(--layout-w)) / 2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.builder-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.results-rail{top:calc(var(--header-h) + var(--space-4));min-height:calc(100vh - var(--header-h) - 2 * var(--space-4));gap:var(--space-4);flex-direction:column;display:flex;position:sticky}.results-rail>.system{flex:auto}.results-rail>.results{flex:none}@media (width<=1023.98px){.builder-layout{grid-template-columns:1fr;width:auto;margin-inline:0}.results-rail{min-height:0;position:static}.results-rail>.system{flex:none}}.setup-controls{gap:var(--space-3) var(--space-4);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));display:grid}.control{flex-direction:column;gap:.25rem;min-width:0;display:flex}.control>label:first-child{color:var(--muted);font-size:.85rem}.control-wide{grid-column:span 2}@media (width<=639.98px){.control-wide{grid-column:auto}}.control-toggles{justify-content:center;gap:.35rem}.control-toggles .check{color:var(--fg);align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.control-toggles .check input{margin:0}.control .demand-inputs input[type=number],.control .demand-inputs select{flex:1;min-width:0}.site-summary{margin:var(--space-2) 0 0}.suggest-row{margin-top:var(--space-3);flex-wrap:wrap;align-items:center;gap:.5rem .9rem;display:flex}.builder .suggest-button,.builder .build-myself-button{border-radius:var(--radius-md);justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.7rem 1.35rem;font-size:1.05rem;font-weight:600;display:inline-flex}.builder .suggest-button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.builder .suggest-button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.builder .suggest-button:disabled{opacity:.55;cursor:not-allowed}.builder .build-myself-button{background:var(--surface);color:var(--accent-strong);border:1.5px solid var(--accent)}.builder .build-myself-button:hover{background:var(--accent-soft)}@media (width<=519.98px){.builder .suggest-button,.builder .build-myself-button{flex:100%}}.size-class{margin:var(--space-2) 0 0;color:var(--muted);font-size:.9rem}.size-class strong{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-strong);padding:.1rem .55rem;font-weight:600;display:inline-block}.size-class-large strong,.size-class-xlarge strong{background:color-mix(in srgb, var(--middle) 16%, transparent);color:var(--fg)}.suggest-row .muted{flex:1;min-width:12rem}.suggest-note{margin-top:var(--space-2);border-left:3px solid var(--accent);padding:var(--space-2) var(--space-3);background:var(--accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0}.suggest-note.over{border-left-color:var(--middle);background:color-mix(in srgb, var(--middle) 10%, transparent)}.suggest-note p{align-items:flex-start;gap:.4rem;margin:0 0 .25rem;font-size:.9rem;display:flex}.suggest-note p:last-child{margin-bottom:0}.suggest-note svg{flex-shrink:0;margin-top:.15rem}.suggest-note .over-budget{color:var(--middle-text);font-weight:600}.setup-hints{margin-top:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-2)}.setup-hints summary{cursor:pointer;color:var(--accent-strong);font-size:.9rem;font-weight:600}.setup-hints p{margin:var(--space-2) 0 0;max-width:72ch}.builder .link-button{color:var(--accent-strong);background:0 0;border:none;align-self:flex-start;padding:0;font-size:.85rem;text-decoration:underline}.builder .link-button:hover{color:var(--accent);border-color:#0000}.system-heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.system-heading h2{margin:0}.kpi-grid{gap:var(--space-3);margin-bottom:var(--space-4);display:grid}.kpi{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);flex-direction:column;gap:.3rem;display:flex}.kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.kpi-label svg{color:var(--accent)}.kpi-value{font-variant-numeric:tabular-nums;font-size:1.35rem;line-height:1.15}.kpi-value small{color:var(--muted);white-space:nowrap;font-size:.8rem;font-weight:400}.kpi-note{color:var(--muted);font-size:.8rem}@media (width<=1023.98px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}}.result-group{border-top:1px solid var(--border)}.result-group summary{cursor:pointer;padding:var(--space-2) 0;color:var(--accent-strong);font-size:.92rem;font-weight:600}.result-group[open] summary{color:var(--fg)}.result-group .values{margin-bottom:var(--space-2)}.result-group .water-origins h3{margin:var(--space-2) 0 var(--space-1);font-size:.9rem}.result-group .water-origins ul{margin:0 0 var(--space-2);color:var(--muted);padding-left:1.1rem;font-size:.85rem}.demo-profiles{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);scroll-margin-top:calc(var(--header-h) + .75rem);padding:.9rem}.demo-profiles-heading{flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;display:flex}.demo-profiles-heading h2{margin:0;font-size:1.15rem}.demo-profiles-heading p{margin:0}.demo-profile-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-top:.75rem;display:grid}.demo-profile{text-align:left;border:1px solid var(--border);background:var(--bg);flex-direction:column;align-items:flex-start;gap:.18rem;min-height:8rem;padding:.65rem;display:flex}.demo-profile:hover,.demo-profile.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.demo-profile strong{font-size:.95rem}.demo-profile span:not(.demo-profile-badge){color:var(--muted);font-size:.78rem}.demo-profile small{color:var(--muted);margin-top:auto}.demo-profile-badge{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:700}.demand-inputs{align-items:center;gap:.45rem;display:flex}.demand-inputs input[type=range]{min-width:8rem;accent-color:var(--accent);flex:1}.demand-inputs input[type=number]{width:5.5rem}.demand-inputs span{white-space:nowrap;color:var(--muted);font-size:.85rem}@media (width<=1023.98px){.demo-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=519.98px){.demo-profile-grid{grid-template-columns:1fr}}.palette-heading{flex-wrap:wrap;align-items:baseline;gap:.3rem 1rem;display:flex}.palette-heading h2,.palette-heading p{margin:0}.palette-filter{margin:var(--space-3) 0;flex-wrap:wrap;gap:.4rem;display:flex}.builder .palette-filter button{border-radius:var(--radius-pill);background:var(--bg);min-height:2.4rem;color:var(--muted);gap:.45rem;padding:.35rem .85rem;font-size:.92rem}.builder .palette-filter button:hover{color:var(--fg);border-color:var(--accent)}.builder .palette-filter button[aria-pressed=true]{background:var(--accent-soft);color:var(--fg);border-color:var(--accent);font-weight:600}.cat-dot{background:var(--dot,var(--muted));border-radius:50%;flex:none;width:.65rem;height:.65rem}.cat-dot-source_active{--dot:var(--cat-source_active)}.cat-dot-source_passive{--dot:var(--cat-source_passive)}.cat-dot-treatment{--dot:var(--cat-treatment)}.cat-dot-energy{--dot:var(--cat-energy)}.cat-dot-storage{--dot:var(--cat-storage)}.cat-dot-addon{--dot:var(--cat-addon)}.cat-dot-use{--dot:var(--cat-use)}.builder .palette-filter .cat-chip[aria-pressed=true]{border-color:var(--chip);background:color-mix(in srgb, var(--chip) 14%, var(--surface))}.builder .palette-filter .cat-chip-source_active{--chip:var(--cat-source_active)}.builder .palette-filter .cat-chip-source_passive{--chip:var(--cat-source_passive)}.builder .palette-filter .cat-chip-treatment{--chip:var(--cat-treatment)}.builder .palette-filter .cat-chip-energy{--chip:var(--cat-energy)}.builder .palette-filter .cat-chip-storage{--chip:var(--cat-storage)}.builder .palette-filter .cat-chip-addon{--chip:var(--cat-addon)}.builder .palette-filter .cat-chip-use{--chip:var(--cat-use)}.palette-count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.8rem}.palette-grid{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.palette-block-head{margin:0 0 var(--space-1);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;font-size:.76rem;font-weight:700;line-height:1.2;display:flex}.builder .palette-tile{text-align:center;cursor:grab;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);border-top-width:3px;flex-direction:column;justify-content:flex-start;align-items:center;gap:.3rem;width:100%;height:100%;min-height:5.4rem;padding:.55rem .35rem;transition:border-color .14s,background-color .14s,transform .14s;display:flex;position:relative}.builder .palette-tile:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-1px)}.builder .palette-tile:active{cursor:grabbing;transform:none}.palette-tile-name{color:var(--muted);hyphens:auto;font-size:.74rem;line-height:1.25}.builder .palette-tile:hover .palette-tile-name{color:var(--fg)}.palette-tile-add{color:var(--muted);opacity:0;transition:opacity .14s;position:absolute;top:.2rem;right:.3rem}.builder .palette-tile:hover .palette-tile-add{opacity:1;color:var(--accent)}.palette-tile.cat-border-source_active{border-top-color:var(--cat-source_active)}.palette-tile.cat-border-source_passive{border-top-color:var(--cat-source_passive)}.palette-tile.cat-border-treatment{border-top-color:var(--cat-treatment)}.palette-tile.cat-border-energy{border-top-color:var(--cat-energy)}.palette-tile.cat-border-storage{border-top-color:var(--cat-storage)}.palette-tile.cat-border-addon{border-top-color:var(--cat-addon)}.palette-tile.cat-border-use{border-top-color:var(--cat-use)}.builder .palette-tile.is-family{cursor:pointer;border-style:dashed}.builder .palette-tile.is-family[aria-expanded=true]{background:var(--accent-soft);border-style:solid;border-color:var(--accent)}.palette-tile-count{font-variant-numeric:tabular-nums;color:var(--muted);background:var(--bg-tint);border-radius:var(--radius-pill);padding:.02rem .35rem;font-size:.7rem;position:absolute;top:.2rem;right:.3rem}.palette-tile-chevron{color:var(--muted);transition:transform .16s;position:absolute;bottom:.25rem;right:.3rem}.builder .palette-tile.is-family[aria-expanded=true] .palette-tile-chevron{transform:rotate(180deg)}.builder .palette-tile.is-member{background:var(--surface-2);border-top-style:dotted}.palette-tile-parent{color:var(--muted);opacity:.8;font-size:.64rem}.builder .palette-tile.is-selected{border-color:var(--accent)}.palette-tile-selected{font-variant-numeric:tabular-nums;color:#fff;background:var(--accent);border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .28rem;font-size:.7rem;font-weight:700;line-height:1;display:flex;position:absolute;top:.2rem;left:.3rem}.builder .palette-tile.is-just-added{animation:.9s ease-out palette-tile-flash}@keyframes palette-tile-flash{0%{background:var(--accent);border-color:var(--accent);transform:scale(1.05)}to{background:var(--surface);border-color:var(--accent);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.builder .palette-tile.is-just-added{background:var(--accent-soft);animation:none}}@media (width<=519.98px){.palette-grid{grid-template-columns:repeat(auto-fill,minmax(5.2rem,1fr))}}.palette-tipbar{top:calc(var(--header-h) + var(--space-2));z-index:5;height:4.7rem;margin:0 0 var(--space-3);border:1px solid var(--border);border-left:3px solid var(--rule);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-2);flex-direction:column;gap:.15rem;padding:.45rem .7rem;font-size:.85rem;line-height:1.4;display:flex;position:sticky;overflow:hidden}.palette-tipbar.has-tip{border-left-color:var(--accent);background:var(--accent-soft)}.palette-tipbar strong{font-size:.88rem}.palette-tip-text{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.palette-tipbar .muted{font-size:.85rem}@media (width<=639.98px){.palette-tipbar{height:5.9rem}.palette-tip-text{-webkit-line-clamp:3;line-clamp:3}}.system{flex-direction:column;min-height:14rem;display:flex}.system.drag-over{outline:2px dashed var(--accent);outline-offset:-4px}.drop-hint{border:1px dashed var(--rule);border-radius:var(--radius);text-align:center;color:var(--muted);padding:2rem 1rem}.system>.drop-hint:last-child{flex:auto;justify-content:center;align-items:center;display:flex}.drop-more{border:1px dashed var(--rule);border-radius:var(--radius);min-height:5rem;color:var(--muted);text-align:center;flex:auto;justify-content:center;align-items:center;margin:0;padding:1rem;font-size:.9rem;display:flex}.drop-more.over{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.drop-hint.is-target{border-color:var(--accent);color:var(--accent-strong);border-width:2px;font-weight:600}.drop-hint.over{background:var(--accent-soft)}.builder.is-dragging .palette-grid{opacity:.55}.builder.is-dragging .system{border-color:var(--accent);box-shadow:var(--shadow-md)}.builder .what-toggle{min-width:24px;min-height:24px;color:var(--muted);background:0 0;border-color:#0000;padding:.2rem}.builder .what-toggle:hover,.builder .what-toggle[aria-expanded=true]{color:var(--accent-strong);border-color:#0000}.module-what{color:var(--muted);border-left:2px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius) var(--radius) 0;margin:.45rem 0 0;padding:.4rem .6rem;font-size:.85rem}.module-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);border-left-width:3px;margin-bottom:.7rem;padding:.65rem .85rem}.cat-border-source_active{border-left-color:var(--cat-source_active)}.cat-border-source_passive{border-left-color:var(--cat-source_passive)}.cat-border-treatment{border-left-color:var(--cat-treatment)}.cat-border-energy{border-left-color:var(--cat-energy)}.cat-border-storage{border-left-color:var(--cat-storage)}.cat-border-addon{border-left-color:var(--cat-addon)}.cat-border-use{border-left-color:var(--cat-use)}.module-card header{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.module-card header strong{flex:1;min-width:8rem}.qty{align-items:center;gap:.3rem;display:inline-flex}.module-card .remove{background:0 0;border-color:#0000}.fields{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.4rem .9rem;margin-top:.5rem;display:grid}.fields label{color:var(--muted);flex-direction:column;gap:.15rem;font-size:.82rem;display:flex}.fields label input{width:100%}.fields label.missing input{border-color:var(--middle);background:color-mix(in srgb, var(--middle) 8%, var(--bg))}.fields label.assumed input,.fields label.auto input{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg))}.fields p{grid-column:1/-1;margin:0}.fields .field{flex-direction:column;min-width:0;display:flex;position:relative}.fields .field>label{padding-right:1.6rem}.fields .field.is-open{grid-column:1/-1}.builder .fields .field-info{width:1.6rem;height:1.6rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:-.2rem;right:0}.builder .fields .field-info:hover,.builder .fields .field-info[aria-expanded=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.fields .field-info-text{color:var(--text);margin:.3rem 0 .2rem;font-size:.82rem;line-height:1.45}.cost-compare{margin-top:var(--space-3,1rem);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent) 6%, var(--bg));padding:.8rem 1rem}.cost-compare h3{margin:0 0 .4rem;font-size:1rem}.cost-compare dl{grid-template-columns:1fr auto;gap:.25rem 1rem;margin:0;font-size:.92rem;display:grid}.cost-compare dt{color:var(--muted)}.cost-compare dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.cost-compare details{margin-top:.5rem;font-size:.85rem}.cost-compare details ul{margin:.3rem 0 0;padding-left:1.1rem}.cost-compare .muted{margin:.4rem 0 0;font-size:.85rem}.guess-card{margin-top:var(--space-3,1rem);border-radius:var(--radius-lg);border:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);padding:.9rem 1rem}.guess-card p{margin:0 0 .5rem}.guess-card .guess-row{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.guess-card input[type=range]{flex:12rem}.guess-card .guess-value{font-variant-numeric:tabular-nums;min-width:5rem;font-weight:700}.guess-card .guess-actions{flex-wrap:wrap;gap:.6rem;margin-top:.6rem;display:flex}.guess-card .guess-actions .button{justify-content:center;min-width:8rem}.assumed-badge{color:var(--accent);font-style:normal}.results .note{color:var(--muted);gap:.4rem;font-size:.88rem;display:flex}.warnings{flex-direction:column;gap:.4rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.warnings li{align-items:flex-start;gap:.4rem;font-size:.9rem;display:flex}.warnings li svg{color:var(--middle);flex-shrink:0;margin-top:.15rem}.warnings li.strong{color:var(--bad);font-weight:700}.warnings li.strong svg{color:var(--bad)}.more-metrics-toggle{cursor:pointer;font:inherit;color:var(--accent-strong);background:0 0;border:none;align-items:center;gap:.4rem;margin:.7rem 0 0;padding:.4rem 0;font-size:.88rem;font-weight:600;display:flex}.more-metrics-toggle:hover{color:var(--accent)}.more-metrics-toggle svg{transition:transform .16s}.more-metrics-toggle svg.is-open{transform:rotate(180deg)}.borders-note{margin:var(--space-3) 0 0;max-width:78ch}.map-suggestion{margin:var(--space-4) 0;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-3) var(--space-4);background:var(--surface-2)}.map-suggestion h3{margin:0 0 var(--space-1);font-size:1rem}.map-suggestion p{margin:var(--space-2) 0 0}.map-suggestion .values{margin-top:var(--space-2)}.suggest-modules{margin:var(--space-2) 0 0;flex-wrap:wrap;gap:.35rem;padding:0;list-style:none;display:flex}.suggest-modules li{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);padding:.15rem .55rem;font-size:.85rem}.scenario-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1rem;margin:1rem 0;display:grid}.scenario-card h2,.scenario-card h3{margin:.25rem 0;font-size:1.2rem}.scenario-card p.muted{text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:.72rem}.scenario-card p.place{text-transform:none;letter-spacing:0;font-size:.9rem}.scenario-task{border-left:3px solid var(--accent)}.scenario-cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.5rem 2.5rem;display:grid}.checklist{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.checklist li{align-items:flex-start;gap:.45rem;display:flex}.checklist svg{flex-shrink:0;margin-top:.1rem}.check-pass svg{color:var(--good)}.check-partial svg{color:var(--middle)}.check-fail svg{color:var(--bad)}.check-open svg{color:var(--muted)}.sr-state{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.solved{color:var(--good-text);font-weight:700}.solved.limited{color:var(--middle-text)}.assumption-list{margin:0 0 .5rem;padding-left:1.1rem;font-size:.9rem}.scenario-task details summary{cursor:pointer;font-weight:600}.scenario-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:0;display:flex}.orgs-hero .lead{max-width:52ch;font-size:1.1rem}.offer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;display:grid}.offer-grid h3{margin:0 0 .4rem}.offer-grid p{margin:0}.steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem;padding-left:1.2rem;display:grid}.steps li{flex-direction:column;gap:.25rem;display:flex}.honesty{border-left:3px solid var(--accent);margin:1.5rem 0}.tool-links li{margin:.25rem 0}.contact{margin:1.5rem 0}.contact-form{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.75rem 1.25rem;display:grid}.contact-form label{flex-direction:column;gap:.25rem;font-size:.92rem;display:flex}.contact-form .wide,.contact-form fieldset{grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:.4rem .5rem}.contact-form fieldset{border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:.4rem 1.25rem;display:flex}.contact-form label.check{flex-direction:row;align-items:flex-start;gap:.5rem}.contact-form label.check input{margin-top:.25rem}.contact-form button.button{cursor:pointer;font:inherit;font-weight:600}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.legal h2{font-size:1.2rem}.legal p,.legal li{max-width:70ch}.legal .missing-note{border-left:3px solid var(--bad);background:color-mix(in srgb, var(--bad) 8%, transparent);padding:.5rem .8rem}.legal dl div{border-bottom:1px solid var(--border);grid-template-columns:minmax(8rem,12rem) 1fr;gap:.5rem 1rem;padding:.25rem 0;display:grid}.legal dt{color:var(--muted)}.legal dd{margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auto-row{flex-wrap:wrap;align-items:center;gap:.5rem 1.2rem;margin-top:.6rem;display:flex}.auto-row label{align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.auto-row label.check input{margin:0}.view-switch{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.view-switch button{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);cursor:pointer;padding:.25rem .7rem;font-size:.9rem}.view-switch button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.monthly-climate{border-top:1px solid var(--border);margin-top:1.2rem;padding-top:.7rem}.monthly-climate h3{margin-top:0}.climate-chart{max-width:760px}.climate-chart svg{width:100%;height:auto;display:block;overflow:visible}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis,.chart-month,.chart-unit{fill:var(--muted);font-size:11px}.chart-axis-left{text-anchor:end}.chart-axis-right{text-anchor:start}.chart-month{text-anchor:middle}.chart-unit-left{text-anchor:start}.chart-unit-right{text-anchor:end}.chart-rain{fill:color-mix(in srgb, var(--accent) 45%, transparent)}.chart-dew{fill:none;stroke:var(--good);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.chart-dew-point{fill:var(--good);stroke:var(--surface);stroke-width:1.5px}.hero{border-radius:var(--radius-lg);min-height:16rem;box-shadow:var(--shadow-md);margin:0 0 1.6rem;display:flex;position:relative;overflow:hidden}.hero-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-shade{background:linear-gradient(97deg,#14222ef0 0%,#14222ecc 36%,#14222e6b 68%,#14222e2e 100%),linear-gradient(#14222e00 40%,#14222e99);position:absolute;inset:0}.hero-text{color:#f2f7fa;align-self:flex-end;max-width:46rem;padding:clamp(2.4rem,6vw,3.4rem) clamp(1.1rem,3vw,2rem) 2rem;position:relative}.hero-text .kicker{letter-spacing:.12em;text-transform:uppercase;color:#8ecbe8;margin:0;font-size:.78rem;font-weight:700}.hero-text h1{color:#fff;margin:.2rem 0 .5rem}.hero-text p{max-width:48ch}.hero-text .lead{color:#ffffffeb;margin:0}.hero-text a.button{color:#1d2c39;background:#fff;border-color:#fff;margin-top:1rem}.photo-credit,.story-credit{color:#ffffffb8;margin:0;font-size:.7rem}.photo-credit{position:absolute;bottom:.35rem;right:.7rem}.story-credit{margin-top:1rem}.photo-credit a,.story-credit a{color:inherit;text-decoration:none}.photo-credit a:hover,.story-credit a:hover{text-decoration:underline}.card-photo{margin:-.85rem -1.1rem .7rem}.card-photo img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;height:auto;display:block}.card-photo figcaption{color:var(--muted);padding:.4rem 1.1rem 0;font-size:.72rem}.card-photo figcaption a{color:inherit;text-decoration:none}.card-photo figcaption a:before{content:" · "}.card-photo figcaption a:hover{text-decoration:underline}:root[data-scheme=dark] .card-photo img{filter:brightness(.88)}.topics{margin-top:2.2rem}.topic-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;display:grid}.topic-card h3{margin:.3rem 0;font-size:1.05rem}.topic-card p{margin:0;font-size:.93rem}.photo-credits{padding-left:1.1rem;font-size:.88rem}.photo-credits li{margin:.2rem 0}@media (width<=639.98px){.hero{min-height:17rem}.hero-shade{background:linear-gradient(#14222e4d 0%,#14222ed1 52%,#14222ef2 100%)}.hero-text{padding-top:4rem}}.assessment{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border);container-type:inline-size}.assessment h3{margin:0 0 var(--space-3)}.assessment h4{margin:var(--space-4) 0 var(--space-2)}.verdict{margin:0 0 var(--space-4);padding:var(--space-2) var(--space-3);border-left:3px solid var(--border);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-2);font-weight:600}.verdict-strong{border-left-color:var(--good)}.verdict-partial{border-left-color:var(--middle)}.verdict-weak{border-left-color:var(--bad)}.verdict-unknown{border-left-color:var(--muted);color:var(--muted);font-weight:500}.meter-row{align-items:center;gap:var(--space-1) var(--space-3);margin:var(--space-3) 0;grid-template-columns:1fr auto;font-size:.92rem;display:grid}.meter-row .meter{order:3;grid-column:1/-1}@container (width>=30rem){.meter-row{margin:var(--space-2) 0;grid-template-columns:minmax(7rem,11rem) 1fr auto}.meter-row .meter{order:0;grid-column:auto}}.meter-label{color:var(--muted)}.meter-value{text-align:right;min-width:4.5rem;color:var(--muted);font-variant-numeric:tabular-nums}.meter-total .meter-label,.meter-total .meter-value{color:var(--fg);font-size:1rem;font-weight:700}.meter-confidence{border-top:1px dashed var(--border);padding-top:var(--space-2)}.meter{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--fg) 9%, transparent);height:.55rem;position:relative;overflow:hidden}.meter-big{height:.95rem}.meter-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .9s cubic-bezier(.2,.7,.2,1)}.meter-good .meter-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--good) 65%, var(--accent)), var(--good))}.meter-middle .meter-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--middle) 55%, var(--accent)), var(--middle))}.meter-bad .meter-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--bad) 55%, var(--middle)), var(--bad))}.meter-unknown .meter-fill{background:var(--muted)}.assessment details{margin-top:var(--space-3)}.assessment summary{cursor:pointer;color:var(--accent-strong);padding:var(--space-1) 0;font-weight:600}.assessment .criteria{margin:var(--space-3) 0 var(--space-4)}@media (prefers-reduced-motion:reduce){.meter-fill{transition:none}}.builder input,.builder select,.map-toolbar select,.contact-form input,.contact-form select,.contact-form textarea{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);padding:.42rem .6rem;transition:border-color .14s,box-shadow .14s,background-color .14s}.builder input:hover,.builder select:hover,.map-toolbar select:hover,.contact-form input:hover,.contact-form textarea:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.builder input:focus-visible,.builder select:focus-visible,.map-toolbar select:focus-visible,.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{border-color:var(--accent);box-shadow:var(--ring);background:var(--surface);outline:none}.builder button{border-radius:var(--radius-md);background:var(--surface-2);padding:.35rem .7rem;transition:border-color .14s,background-color .14s}.builder button:hover{background:var(--accent-soft);border-color:var(--accent)}.values dd{font-weight:600}.values div{padding:.35rem 0}.values div:last-child{border-bottom:0}.view-switch button{border-radius:var(--radius-pill);background:var(--surface-2);padding:.3rem .85rem;transition:background-color .14s,color .14s,border-color .14s}.view-switch button:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.view-switch button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.page-intro{margin-bottom:var(--space-5)}.page-intro p{color:var(--muted);font-size:1.05rem}.module-card{border-radius:var(--radius-md);background:var(--surface);transition:border-color .16s,box-shadow .16s}.module-card:hover{box-shadow:var(--shadow-sm)}.hero{border-radius:var(--radius-lg)}.card-photo img{border-radius:var(--radius-lg) var(--radius-lg) 0 0}body{overflow-x:clip}main>.atmo-hero:first-child{margin-top:calc(-1 * var(--space-5));margin-bottom:var(--space-6)}.atmo-hero{isolation:isolate;align-items:flex-end;width:100vw;min-height:clamp(22rem,58vh,42rem);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);display:flex;position:relative;overflow:hidden}.atmo-hero-img{object-fit:cover;object-position:center;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.atmo-hero-shade{z-index:-1;background:linear-gradient(#08121c1f 0%,#08121c80 55%,#08121cdb 100%);position:absolute;inset:0}.atmo-hero-inner{z-index:1;width:100%;max-width:var(--page-max);padding:clamp(2rem, 7vw, 5rem) var(--page-gutter) clamp(2rem, 5vw, 3.5rem);color:#fff;margin:0 auto;position:relative}.atmo-kicker{color:#d5f2ff;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;font-size:.8rem;font-weight:700}.atmo-hero h1{color:#fff;text-shadow:0 2px 24px #00000047;margin:0 0 1rem;font-size:clamp(2.4rem,6vw,5rem)}.atmo-lead{color:#ffffffeb;text-wrap:pretty;max-width:56ch;margin:0 0 1.4rem;font-size:clamp(1.1rem,1rem + .4vw,1.4rem)}.atmo-hero .hero-actions{margin-top:.4rem}.atmo-hero .button.secondary{color:#fff;backdrop-filter:blur(4px);background:#ffffff24;border-color:#fff9}.atmo-hero .button.secondary:hover{background:#ffffff3d;border-color:#fff}.atmo-credit{z-index:1;color:#ffffffb8;margin:0;font-size:.72rem;position:absolute;bottom:.6rem;right:.8rem}.atmo-credit a{color:inherit;text-decoration:none}.atmo-credit a:hover{color:#fff;text-decoration:underline}.atmo-grid{grid-template-columns:repeat(3,1fr);gap:1.1rem;display:grid}.atmo-grid-4{grid-template-columns:repeat(4,1fr)}.atmo-card{border-radius:var(--radius-lg);color:#fff;isolation:isolate;min-height:16rem;box-shadow:var(--shadow-sm);align-items:flex-end;text-decoration:none;transition:transform .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}a.atmo-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.atmo-card-img{object-fit:cover;z-index:-2;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}a.atmo-card:hover .atmo-card-img{transform:scale(1.05)}.atmo-card-shade{z-index:-1;background:linear-gradient(#08121c0d 25%,#08121ccc 100%);position:absolute;inset:0}.atmo-card-body{z-index:1;padding:1.3rem 1.4rem 1.5rem;position:relative}.atmo-card-eyebrow{color:#d5f2ff;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem;font-size:.78rem;font-weight:700;display:inline-block}.atmo-card h3{color:#fff;margin:0 0 .35rem;font-size:1.25rem}.atmo-card p{color:#ffffffe6;max-width:40ch;margin:0;font-size:.92rem}.atmo-card-cta{color:#fff;margin-top:.7rem;font-size:.85rem;font-weight:600;display:inline-block}.atmo-card-credit{z-index:1;color:#fff9;font-size:.66rem;position:absolute;bottom:.45rem;right:.6rem}@media (width<=1023.98px){.atmo-grid,.atmo-grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=639.98px){.atmo-grid,.atmo-grid-4{grid-template-columns:1fr}.atmo-hero{min-height:70vh}}@media (prefers-reduced-motion:reduce){.atmo-card-img,a.atmo-card:hover .atmo-card-img{transition:none;transform:none}}.story-section{margin:var(--space-5) 0;padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.story-section:last-of-type{border-bottom:none}.story-section h2{margin-top:0}.orient{pointer-events:none;white-space:nowrap;color:#1b2733;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 6px #fff;font-weight:600;transition:opacity .18s}.orient-continent{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:.82rem}.orient-city{font-size:.72rem}.orient-city:before{content:"•";margin-right:.25rem}.orient-hidden{opacity:0}.steps-strip{gap:var(--space-2) var(--space-5);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);counter-reset:none;flex-wrap:wrap;font-size:.92rem;list-style:none;display:flex}.steps-strip li{align-items:center;gap:.5rem;display:flex}.steps-num{border-radius:var(--radius-pill);background:var(--accent);width:1.5rem;height:1.5rem;color:var(--accent-ink);flex:none;place-items:center;font-size:.8rem;font-weight:700;display:grid}.lead-row{align-items:flex-start;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.lead-row .steps-strip{flex:22rem;margin-bottom:0}.lead-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.lead-row-plain{margin:var(--space-3) 0}.help-panel{position:relative}.help-open,.tour-toggle{min-height:3rem;font:inherit;color:var(--accent-strong);background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:.5rem;padding:.55rem 1.25rem;font-size:1rem;font-weight:700;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:inline-flex}.help-open:hover,.tour-toggle:hover{background:var(--accent-soft);border-color:var(--accent-strong);transform:translateY(-1px)}.help-open:focus-visible,.tour-toggle:focus-visible{box-shadow:var(--ring);outline:none}.help-open[aria-expanded=true],.tour-toggle[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-strong)}.help-pop{z-index:40;width:min(26rem,100vw - 2rem);padding:var(--space-3) var(--space-4) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + .4rem);left:0;right:auto}.lead-actions .help-pop,.how-heading .help-pop{left:auto;right:0}.help-pop-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.help-pop-head strong{font-family:var(--serif);font-size:1.05rem}.help-close{color:var(--muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:1px solid #0000;padding:.25rem}.help-close:hover{color:var(--fg);border-color:var(--border)}.help-intro{margin:.2rem 0 var(--space-3);color:var(--muted);font-size:.88rem}.help-list{gap:var(--space-3);flex-direction:column;margin:0;padding-left:1.3rem;font-size:.9rem;display:flex}.help-list-summary{padding-left:0;list-style:none}.help-list li{flex-direction:column;gap:.15rem;display:flex}.help-list li::marker{color:var(--accent);font-weight:700}.help-list strong{font-size:.92rem}.help-list span{color:var(--muted);line-height:1.45}@media (width<=639.98px){.help-pop,.lead-actions .help-pop,.how-heading .help-pop{top:auto;bottom:var(--space-4);left:var(--space-4);right:var(--space-4);overscroll-behavior:contain;width:auto;max-height:70vh;position:fixed;overflow-y:auto}}.tour-tip{margin:0 0 var(--space-2);border:1px dashed var(--accent);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--fg);align-items:flex-start;gap:.5rem;padding:.45rem .7rem;font-size:.88rem;display:flex}.tour-num{border-radius:var(--radius-pill);background:var(--accent);width:1.4rem;height:1.4rem;color:var(--accent-ink);flex:none;place-items:center;font-size:.78rem;font-weight:700;display:grid}.tour-over-map{z-index:3;top:var(--space-2);left:var(--space-2);max-width:min(22rem, calc(100% - 2 * var(--space-2)));background:var(--surface);box-shadow:var(--shadow-md);pointer-events:none;margin:0;position:absolute}.how-section{padding:var(--space-6) 0 var(--space-4)}.how-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.how-heading h2{margin:0;font-size:clamp(1.6rem,2.6vw,2.2rem)}.how-heading .eyebrow{margin-bottom:.3rem}.how-steps{gap:var(--space-5);text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.how-steps:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-soft));height:2px;position:absolute;top:1.1rem;left:1.1rem;right:1.1rem}.how-steps li{flex-direction:column;gap:.4rem;display:flex;position:relative}.how-num{z-index:1;border-radius:var(--radius-pill);background:var(--bg);border:2px solid var(--accent);width:2.2rem;height:2.2rem;color:var(--accent-strong);place-items:center;margin-bottom:.4rem;font-weight:700;display:grid;position:relative}.how-steps strong{font-family:var(--serif);font-size:1.2rem}.how-steps p{color:var(--muted);max-width:34ch;margin:0}@media (width<=639.98px){.how-steps{gap:var(--space-4);grid-template-columns:1fr;padding-left:3rem}.how-steps:before{background:linear-gradient(180deg, var(--accent), var(--accent-soft));width:2px;height:auto;inset:.4rem auto .4rem 1.1rem}.how-num{margin:0;position:absolute;top:0;left:-3rem}}.place-search{position:relative}.place-search>label{color:var(--muted);margin-bottom:.2rem;font-size:.85rem;display:block}.place-search-row{align-items:center;gap:.5rem;display:flex}.place-search-icon{color:var(--muted);flex:none}.builder .place-search-row input{flex:1;min-width:0;padding:.45rem .6rem;font-size:.95rem}.place-map-link{white-space:nowrap;font-size:.9rem}.place-hits{z-index:20;border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--surface);max-height:16rem;box-shadow:var(--shadow-md);margin:.2rem 0 0;padding:.25rem;list-style:none;position:absolute;left:0;right:0;overflow-y:auto}.builder .place-hits button{text-align:left;border-radius:var(--radius);background:0 0;border:none;align-items:baseline;gap:.5rem;width:100%;padding:.35rem .5rem;display:flex}.builder .place-hits button:hover{background:var(--accent-soft);border-color:#0000}.place-hits .muted{font-size:.8rem}.exact-location{margin-top:var(--space-3)}.exact-location summary{cursor:pointer;color:var(--accent-strong);font-size:.88rem}.exact-location .location-row{margin-top:var(--space-2)}.palette-tile-count{align-self:center;position:static!important}.map-frame.compare{background:var(--rule);grid-template-columns:1fr 1fr;gap:2px;display:grid}.map-half{height:100%;min-height:0;position:relative}.map-half .map{position:absolute;inset:0}.map-half-label{z-index:5;border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 88%, transparent);border:1px solid var(--border);color:var(--fg);pointer-events:none;padding:.15rem .5rem;font-size:.78rem;font-weight:600;position:absolute;top:.5rem;left:.5rem}.compare-toggle{align-items:center;gap:.4rem;display:inline-flex}@media (width<=639.98px){.map-frame.compare{grid-template-rows:1fr 1fr;grid-template-columns:1fr}}.atmo-hero--center{text-align:center;justify-content:center;align-items:center;min-height:clamp(30rem,82vh,48rem)}.atmo-hero--center .atmo-hero-shade{background:radial-gradient(75% 70%,#08121cb3 0%,#08121c9e 45%,#08121cdb 100%)}.atmo-hero--center .atmo-hero-inner{flex-direction:column;align-items:center;max-width:52rem;display:flex}.atmo-hero--center .atmo-lead{max-width:44ch;margin-left:auto;margin-right:auto}.atmo-hero--center .hero-actions{justify-content:center;align-items:center;gap:1.2rem;margin-top:.8rem}.hero-trust{letter-spacing:.01em;color:#ffffffd1;margin:1rem 0 0;font-size:.86rem}.atmo-hero--center .hero-trust{text-align:center}.atmo-hero--center .button{padding:.85rem 1.7rem;font-size:1.1rem}.atmo-hero--center .button.secondary{backdrop-filter:none;text-underline-offset:.25em;background:0 0;border-color:#0000;padding-left:.4rem;padding-right:.4rem;text-decoration:underline}.atmo-hero--center .button.secondary:after{content:" →"}.atmo-hero--center h1{text-wrap:balance;max-width:30ch;margin-inline:auto;font-size:clamp(2.1rem,4.4vw,3.5rem)}.how-section .how-heading,.destination-section{text-align:center}.how-section .how-heading{justify-content:center;align-items:center}.nav-toggle{display:none}@media (width<=1023.98px){.site-header{gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);flex-wrap:wrap}.site-header .brand{order:1}.site-header .lang{order:2;margin-left:auto}.site-header .nav-toggle{order:3}.site-header .site-nav{padding-top:var(--space-1);flex-flow:column;flex-basis:100%;order:4;gap:.15rem}.site-header .site-nav a{border-radius:var(--radius-md);padding:.6rem .8rem;font-size:1.05rem}html.js .nav-toggle{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:2.6rem;color:var(--fg);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:0 .8rem;font-size:.95rem;display:inline-flex}html.js .nav-toggle:hover,html.js .nav-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent-strong)}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{background:currentColor;border-radius:2px;width:1.1rem;height:2px;display:block}.nav-toggle-bars{position:relative}.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:0}.nav-toggle-bars:before{top:-.36rem}.nav-toggle-bars:after{top:.36rem}html.js .site-header:not([data-open]) .site-nav{display:none}}@media (width<=519.98px){.nav-toggle-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html.js .nav-toggle{padding:0 .85rem}}.destination-section .atmo-grid-4>:nth-child(-n+2){min-height:17rem}.destination-section .atmo-grid-4>:nth-child(n+3){min-height:11rem}@media (width>=1024px){.destination-section .atmo-grid-4>*{grid-column:span 2}}.system-jump{display:none}@media (width<=639.98px){.atmo-hero:not(.atmo-hero--center){min-height:clamp(11rem,26vh,14rem)}.atmo-hero:not(.atmo-hero--center) .atmo-hero-inner{padding-top:1.1rem;padding-bottom:1.4rem}.atmo-hero:not(.atmo-hero--center) h1{margin-bottom:.4rem;font-size:clamp(1.8rem,8vw,2.3rem)}.atmo-hero:not(.atmo-hero--center) .atmo-lead{margin-bottom:.6rem;font-size:1rem}.atmo-hero:not(.atmo-hero--center) .atmo-kicker{margin-bottom:.4rem;font-size:.72rem}main>.atmo-hero:first-child{margin-bottom:var(--space-4)}.demo-profile-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.6rem;margin-left:-.9rem;margin-right:-.9rem;padding:0 .9rem .6rem;scroll-padding:0 .9rem;display:flex;overflow-x:auto}.demo-profile{scroll-snap-align:start;flex:0 0 72%;min-height:7.5rem}.site-footer{gap:.1rem 1rem}.site-footer a{padding:.65rem .25rem;display:inline-block}.atmo-credit{font-size:.75rem}.atmo-credit a{padding:.4rem .2rem;display:inline-block}.atmo-card-credit{font-size:.72rem}.demo-profile-badge{font-size:.75rem}.orient-city{font-size:.78rem}.place-map-link{padding:.6rem 0;display:inline-block}.maplibregl-ctrl.maplibregl-ctrl-group button{width:40px;height:40px}}@media (width<=1023.98px){.system-jump{z-index:30;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-lg);white-space:nowrap;margin-bottom:env(safe-area-inset-bottom);align-items:center;gap:.55rem;padding:.7rem 1.1rem .7rem .75rem;font-weight:600;text-decoration:none;display:inline-flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.system-jump-count{border-radius:var(--radius-pill);background:var(--accent-ink);min-width:1.6rem;height:1.6rem;color:var(--accent);place-items:center;padding:0 .3rem;font-size:.85rem;font-weight:700;display:grid}#dein-system{scroll-margin-top:calc(var(--header-h) + .75rem)}}#how{scroll-margin-top:var(--header-h)}.palette-item{position:relative}.palette-tile-add{left:.3rem;right:auto}.palette-info{border-radius:var(--radius-pill);width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:.1rem;right:.1rem}.palette-info:hover,.palette-info[aria-pressed=true]{color:var(--accent-strong);background:var(--accent-soft)}.palette-info:focus-visible{box-shadow:var(--ring);outline:none}.palette-filter-info{margin:0 0 var(--space-2);color:var(--muted);align-items:flex-start;gap:.4rem;font-size:.9rem;display:flex}.palette-filter-info svg{flex:none;margin-top:.22rem}.palette-tip-link{white-space:nowrap;font-weight:600}.palette-heading .palette-more{min-height:3.2rem;color:var(--accent-ink);background:var(--accent);border:2px solid var(--accent);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:.5rem;margin-top:.4rem;padding:.7rem 1.6rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:background-color .14s,border-color .14s,box-shadow .14s;display:inline-flex}.palette-heading .palette-more:hover{background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:var(--shadow-md)}.palette-heading .palette-more:focus-visible{box-shadow:var(--ring);outline:none}@media (width<=639.98px){.palette-heading .palette-more{width:100%}}.module-how{color:var(--muted);margin:.4rem 0 0;font-size:.92rem}.module-how strong{color:var(--fg)}@media (width>=640px){.system-jump{bottom:1.25rem;left:1.25rem;transform:none}}.glossary-nav{margin:0 0 var(--space-5);flex-wrap:wrap;gap:.5rem;display:flex}.glossary-nav a{min-height:2.75rem;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:.45rem;padding:.4rem .95rem;text-decoration:none;display:inline-flex}.glossary-nav a:hover{border-color:var(--accent);background:var(--accent-soft)}.glossary-count{color:var(--muted);font-size:.85rem}.glossary-group{margin:var(--space-6) 0;scroll-margin-top:calc(var(--header-h) + .75rem)}.glossary-group h2{align-items:center;gap:.6rem;margin:0 0 .3rem;display:flex}.glossary-group-info{margin:0 0 var(--space-3);max-width:62ch}.glossary-list{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));display:grid}.glossary-item{scroll-margin-top:calc(var(--header-h) + .75rem);border-top:4px solid var(--border)}.glossary-item:target{outline:3px solid var(--accent)}.glossary-item h3{margin:0 0 .4rem}.glossary-item h4{margin:.9rem 0 .25rem;font-size:1rem}.glossary-item p{margin:0}.glossary-what{color:var(--muted)}.glossary-item.cat-border-source_active{border-top-color:var(--cat-source_active)}.glossary-item.cat-border-source_passive{border-top-color:var(--cat-source_passive)}.glossary-item.cat-border-treatment{border-top-color:var(--cat-treatment)}.glossary-item.cat-border-energy{border-top-color:var(--cat-energy)}.glossary-item.cat-border-storage{border-top-color:var(--cat-storage)}.glossary-item.cat-border-addon{border-top-color:var(--cat-addon)}.glossary-item.cat-border-use{border-top-color:var(--cat-use)}.glossary-note{margin:var(--space-5) 0 var(--space-3)}.toolbar-toggle{display:none}.scenario-filter{margin:0 0 var(--space-4);flex-wrap:wrap;gap:.5rem;display:flex}.scenario-filter button{min-height:2.75rem;font:inherit;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;align-items:center;gap:.5rem;padding:.4rem 1rem;display:inline-flex}.scenario-filter button:hover{color:var(--fg);border-color:var(--accent)}.scenario-filter button[aria-pressed=true]{background:var(--accent-soft);color:var(--fg);border-color:var(--accent);font-weight:600}@media (width<=639.98px){.toolbar-toggle{width:100%;min-height:2.9rem;margin:0 0 var(--space-2);font:inherit;text-align:left;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .9rem;display:flex}.toolbar-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.map-toolbar.is-collapsed>:not(.legend),.map-toolbar.is-collapsed:not(:has(.legend)){display:none}.scenario-card .card-photo img{object-fit:cover;max-height:11rem}}:root{--iso-lit:#fff;--iso-shade:#0c1219;--iso-line:#121a2452;--iso-shadow:#1b2430;--iso-metal:#9ba7b2;--iso-glass:#bcd9ea;--iso-water:#3d9ad4;--iso-soil:#8b6b4a;--iso-plant:#5aa03c;--iso-wood:#a87a4e;--iso-concrete:#b7b4ac;--iso-dark:#4a5058;--iso-light:#e3e7eb;--iso-glow:#5ec9e4;--iso-ground:#cac8bf;--iso-solar:#1b3358;--flow-water:#2f8fd4;--flow-power:#e0932a;--flow-cold:#3bb4a6}@media (prefers-reduced-motion:reduce){.iso-rise,.iso-drip,.iso-pulse{animation:none}.iso-frame{opacity:0;animation:none}.iso-frame.iso-frame-first{opacity:1}}:root[data-scheme=dark]{--iso-lit:#e2edf6;--iso-shade:#000205;--iso-line:#00000073;--iso-shadow:#000;--iso-metal:#7d8994;--iso-glass:#6f98b1;--iso-water:#2f86bf;--iso-soil:#6d553c;--iso-plant:#4c8b34;--iso-wood:#8b6541;--iso-concrete:#8c8981;--iso-dark:#2c3139;--iso-light:#b6bfc7;--iso-glow:#4dbdd6;--iso-ground:#4b5057;--iso-solar:#152a4a;--flow-water:#56a9e0;--flow-power:#f0b45a;--flow-cold:#52c8ba}.sv-node.c-source_active{--c:var(--cat-source_active)}.sv-node.c-source_passive{--c:var(--cat-source_passive)}.sv-node.c-treatment{--c:var(--cat-treatment)}.sv-node.c-energy{--c:var(--cat-energy)}.sv-node.c-storage{--c:var(--cat-storage)}.sv-node.c-addon{--c:var(--cat-addon)}.sv-node.c-use{--c:var(--cat-use)}.sv-furn,.sv-ghost{--c:var(--iso-metal)}@keyframes iso-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.iso-spin{transform-box:fill-box;transform-origin:50%;animation:iso-spin var(--sp,5s) linear infinite}@keyframes iso-frame{0%{opacity:1}16.6667%{opacity:0}to{opacity:0}}.iso-frame{opacity:0;animation:iso-frame var(--sp,3s) var(--dl,0s) step-end infinite}.iso-frame.iso-frame-first{opacity:1}@keyframes iso-rise{0%{opacity:0;transform:translateY(0)}18%{opacity:.95}to{opacity:0;transform:translateY(-13px)}}@keyframes iso-drip{0%{opacity:0;transform:translateY(-2px)}22%{opacity:.95}to{opacity:0;transform:translateY(9px)}}@keyframes iso-pulse{0%,to{opacity:.45}50%{opacity:1}}.iso-rise{animation:iso-rise var(--sp,2.4s) var(--dl,0s) linear infinite}.iso-drip{animation:iso-drip var(--sp,2s) var(--dl,0s) linear infinite}.iso-pulse{animation:iso-pulse var(--sp,2.4s) var(--dl,0s) ease-in-out infinite}.structure-view.is-still .iso-spin,.structure-view.is-still .iso-rise,.structure-view.is-still .iso-drip,.structure-view.is-still .iso-pulse{animation:none}.structure-view.is-still .iso-frame{opacity:0;animation:none}.structure-view.is-still .iso-frame.iso-frame-first{opacity:1}.structure-view{gap:var(--space-2);flex-direction:column;margin:0;display:flex}.sv-stage{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:11rem;position:relative;overflow:hidden}.sv-svg{width:100%;height:100%;display:block}.sv-node{transition:opacity .12s linear}.sv-node.is-missing{opacity:.58}.sv-ghost{opacity:.7}.sv-link-g{--lw:2.6px;--lc:var(--flow-power)}.sv-link-water{--lw:3.4px;--lc:var(--flow-water)}.sv-link-power{--lw:2.6px;--lc:var(--flow-power);stroke-dasharray:7 5}.sv-link-cold{--lw:2.6px;--lc:var(--flow-cold)}.sv-link{fill:none;stroke-linecap:round;stroke-linejoin:round}.sv-link-casing{stroke:var(--iso-shade);stroke-opacity:.42;stroke-width:calc(var(--lw) + 1.9px)}.sv-link-core{stroke:var(--lc);stroke-width:var(--lw)}.sv-link-sheen{stroke:var(--iso-lit);stroke-opacity:.34;stroke-width:calc(var(--lw) * .26);transform:translateY(-.9px)}.sv-link-flow{stroke:var(--iso-lit);stroke-opacity:0;stroke-width:calc(var(--lw) * .46);stroke-dasharray:.1 14;stroke-linecap:round}@keyframes sv-flow{to{stroke-dashoffset:-14px}}.sv-svg.is-flowing .sv-link-flow{stroke-opacity:.9;animation:1.15s linear infinite sv-flow}.sv-svg.is-flowing .sv-link-power .sv-link-flow{animation-duration:.7s}.sv-svg.is-flowing .sv-link-cold .sv-link-flow{animation-duration:1.6s}.structure-view.is-still .sv-link-flow{stroke-opacity:0;animation:none}.sv-labels{pointer-events:none;position:absolute;inset:0}.sv-labels.is-off{display:none}.structure-view .sv-label{transform:translate(-50%, calc(-100% - var(--lift,0px)));pointer-events:auto;font:inherit;color:var(--fg);background:color-mix(in srgb, var(--surface) 88%, transparent);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;flex-direction:column;align-items:center;gap:.05rem;padding:.2rem .45rem;font-size:.72rem;line-height:1.25;display:flex;position:absolute}.sv-label:hover,.sv-label.is-picked{border-color:var(--accent);box-shadow:var(--shadow-sm)}.sv-label:focus-visible{box-shadow:var(--ring);outline:none}.sv-label-name{font-weight:600}.sv-label-value{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:.2rem;display:inline-flex}.sv-label-value svg{color:var(--middle)}.sv-label.is-missing .sv-label-value{color:var(--middle-text)}.sv-label-tap{cursor:default;border-style:dashed}.sv-label.is-synthetic{background:color-mix(in srgb, var(--surface) 70%, transparent);border-style:dashed}.sv-label.is-synthetic .sv-label-name{font-weight:500}.sv-empty{color:var(--muted);margin:0;font-size:.9rem;position:absolute;bottom:12%;left:50%;transform:translate(-50%)}.sv-bar{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;display:flex}.sv-btn{min-height:2.5rem;font:inherit;cursor:pointer;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.35rem;padding:.3rem .8rem;display:inline-flex}.sv-btn:hover{border-color:var(--accent)}.sv-btn-main{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.sv-btn-main:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.sv-slider{color:var(--muted);flex:12rem;align-items:center;gap:.45rem;font-size:.85rem;display:flex}.sv-slider input{min-width:6rem;accent-color:var(--accent);flex:1}.sv-check{color:var(--fg);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.sv-stage[hidden]{display:none}.sv-mode{gap:0;display:inline-flex}.sv-mode .sv-btn{border-radius:0}.sv-mode .sv-btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.sv-mode .sv-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0;margin-left:-1px}.sv-btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.sv-btn:disabled{opacity:.65;cursor:progress}.sv3{gap:var(--space-2);display:grid}.sv3-bar{flex-wrap:wrap;align-items:center;gap:.4rem .6rem;display:flex}.sv3-hint{color:var(--muted);flex:16rem;font-size:.8rem}.sv3-stage{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);touch-action:none;width:100%;height:clamp(18rem,52vh,34rem);position:relative;overflow:hidden}.sv3-stage:focus-visible{box-shadow:var(--ring);outline:none}.sv3-canvas-host,.sv3-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.sv3-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.sv3-labels .sv3-label{pointer-events:auto;white-space:nowrap;position:absolute;top:0;left:0}.sv3-notice{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted);align-items:center;gap:.4rem;margin:0;font-size:.9rem;display:flex}.sv3-list{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.sv3-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);min-height:2.25rem;color:var(--fg);cursor:pointer;align-items:baseline;gap:.4rem;padding:.3rem .65rem;font-size:.82rem;display:inline-flex}.sv3-chip:hover,.sv3-chip.is-picked{border-color:var(--accent)}.sv3-chip.is-picked{box-shadow:var(--shadow-sm)}.sv3-chip:focus-visible{box-shadow:var(--ring);outline:none}.sv3-chip.is-blocked .sv-label-value{color:var(--middle-text)}@media (prefers-reduced-motion:reduce){.sv3-stage{scroll-behavior:auto}}.sv3-ar{flex-wrap:wrap;align-items:center;gap:.4rem .8rem;display:flex}.ar-note,.ar-touch{max-width:62ch;margin:0}.ar-pixel{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.sv3-ar .sv-btn{position:relative}.ar-overlay{z-index:-1;visibility:hidden;pointer-events:none;padding:max(var(--space-3), env(safe-area-inset-top)) var(--space-3) max(var(--space-3), env(safe-area-inset-bottom));flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.ar-overlay.is-active,.ar-overlay:fullscreen{visibility:visible;z-index:2147483000}.ar-top,.ar-controls{pointer-events:auto;border-radius:var(--radius-lg);color:#f2f7fa;width:min(100%,34rem);padding:var(--space-3) var(--space-4);background:#0a1620d1;align-self:center}.ar-top p,.ar-controls p{margin:0}.ar-status{font-size:1.05rem;font-weight:600}.ar-sub{color:#c3d3de;margin-top:.2rem;font-size:.85rem}.ar-size{margin-bottom:var(--space-2);color:#c3d3de;font-size:.9rem}.ar-row{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.ar-btn{color:#f2f7fa;cursor:pointer;background:#17303f;border:2px solid #5f7f94;border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;display:inline-grid}.ar-btn:disabled{opacity:.4;cursor:default}.ar-btn:focus-visible{outline-offset:2px;outline:3px solid #ffd166}.ar-exit{border-color:#f0b0a0}.vr{gap:var(--space-5);margin-block:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.vr-start{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid}.vr-support{max-width:62ch;color:var(--fg);margin:0}.vr-pc{max-width:62ch;font-size:.9rem}.vr-pc summary{cursor:pointer;font-weight:600}.vr-pc ul{margin:.3rem 0;padding-left:1.1rem}.vr-actions{flex-wrap:wrap;gap:.5rem;display:flex}.vr-actions-main{align-items:center;gap:.75rem}.vr-go{gap:.6rem;min-height:3.5rem;padding-inline:1.75rem;font-size:1.2rem}.vr-go-2{min-height:3rem}.vr-steps3{gap:.35rem;max-width:62ch;margin:0;padding-left:1.3rem;display:grid}.vr-steps3 li::marker{color:var(--accent);font-weight:700}.vr-mode{border:0;gap:.35rem;margin:0;padding:0;display:grid}.vr-mode legend{padding:0}.vr-home .vr-home-chosen{margin:0 0 .35rem;font-weight:600}.hero-search .place-hits .place-hit{border-radius:var(--radius);width:100%;color:var(--fg);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;display:flex}.hero-search .place-hits .place-hit:hover,.hero-search .place-hits .place-hit:focus-visible{background:var(--accent-soft)}.vr-staff{border-top:1px solid var(--border);max-width:62ch;padding-top:var(--space-3);font-size:.92rem}.vr-staff>summary{cursor:pointer;font-weight:600}.vr-staff section{margin-top:var(--space-3);gap:.5rem;display:grid}.vr-staff ol{gap:.3rem;margin:0;padding-left:1.2rem;display:grid}.vr-staff code{overflow-wrap:anywhere}.vr-stats{border-collapse:collapse;font-size:.9rem}.vr-stats th,.vr-stats td{text-align:left;border-bottom:1px solid var(--border);padding:.25rem .75rem .25rem 0}.vr-stats td{font-variant-numeric:tabular-nums}.vr-tour{margin-bottom:var(--space-3);gap:.5rem;display:grid}@media (width<=639.98px){.vr-go{justify-content:center;width:100%}}.vr-status{min-height:1.3em;color:var(--muted);margin:0;font-size:.9rem}.vr-stage{aspect-ratio:16/10;border:1px solid var(--border);border-radius:var(--radius-md);touch-action:none;background:#0b1a26;width:100%;max-height:min(72vh,44rem);position:relative;overflow:hidden}.vr-stage[hidden],.vr-controls[hidden]{display:none}.vr-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.vr-controls{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.vr-controls .sv-mode{max-width:100%;display:flex}.vr-controls .sv-mode .sv-btn{flex:1 1 0;justify-content:center;min-width:0;padding-inline:.4rem}.vr-h{margin:0;font-size:1.15rem}.vr-h3{margin:0 0 .25rem;font-size:1rem}.vr-row{align-items:flex-end;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.vr-field{gap:.3rem;display:grid}.vr-label{color:var(--muted);font-size:.85rem}.vr-chips{flex-wrap:wrap;gap:.35rem;display:flex}.vr-chips .sv3-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.vr-chips .sv3-chip[aria-pressed=true] .sv-label-name{color:inherit}.vr-select{max-width:24rem;min-height:2.5rem;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:.3rem .6rem}.vr-seated,.vr-sound,.vr-glide{min-height:2.5rem}.vr-note{max-width:42rem;color:var(--muted);flex-basis:100%;margin:0;font-size:.85rem}.vr-note:empty{display:none}.vr-readout{padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius-md) var(--radius-md) 0}.vr-readout p{margin:.25rem 0 0}.vr-coord{font-weight:600}.vr-readout dl{grid-template-columns:max-content 1fr;gap:.15rem 1rem;margin:.4rem 0 0;display:grid}.vr-readout dt{color:var(--muted)}.vr-readout dd{margin:0;font-weight:600}.vr-links{flex-wrap:wrap;gap:.4rem 1.2rem;display:flex}.vr-take-link{overflow-wrap:anywhere}.vr-place,.vr-builder{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:grid}.vr-modules{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.vr-fieldset{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);gap:.15rem;margin:0;display:grid}.vr-fieldset legend{padding-inline:.3rem;font-size:.9rem;font-weight:600}.vr-fieldset .sv-check{min-height:2rem}.vr-info{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));display:grid}.vr-info h2{margin-top:0;font-size:1.15rem}.vr-info ul{gap:.4rem;max-width:60ch;margin:0;padding-left:1.2rem;display:grid}.sv-detail{border-left:3px solid var(--accent);padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:0 var(--radius-md) var(--radius-md) 0}.sv-detail p{margin:.3rem 0 0;font-size:.9rem}.sv-detail-warn{color:var(--middle-text);align-items:flex-start;gap:.4rem;display:flex}.sv-detail-warn svg{flex:none;margin-top:.1rem}.sv-caption{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.3rem 1rem;font-size:.82rem;display:flex}.sv-legend{flex-wrap:wrap;align-items:center;gap:.3rem .5rem;display:inline-flex}.sv-key{border-radius:var(--radius-pill);width:1.1rem;height:.22rem;display:inline-block}.sv-key-water{background:var(--flow-water)}.sv-key-power{background:var(--flow-power)}.sv-key-cold{background:var(--flow-cold)}.sv-note{align-items:center;gap:.3rem;display:inline-flex}.sv-alt{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.iso-spin{animation:none}.sv-node{transition:none}.sv-svg.is-flowing .sv-link-flow{animation:none}}@media (width<=639.98px){.structure-view .sv-label{white-space:normal;text-align:center;max-width:5.2rem;padding:.1rem .28rem;font-size:.56rem;line-height:1.15}.sv-label .sv-label-value{display:none}.sv-label.is-picked .sv-label-value{display:inline-flex}}.structure-drawer{margin-top:var(--space-4);scroll-margin-top:calc(var(--header-h) + .75rem)}.structure-toggle{width:100%;min-height:3.4rem;font:inherit;color:var(--accent-ink);background:var(--accent);border:2px solid var(--accent);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1.4rem;font-size:1.05rem;font-weight:700;display:flex}.structure-toggle:hover{background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:var(--shadow-md)}.structure-toggle:focus-visible{box-shadow:var(--ring);outline:none}.structure-toggle-chevron{transition:transform .16s}.structure-toggle[aria-expanded=true] .structure-toggle-chevron{transform:rotate(180deg)}.structure-drawer-hint{margin:var(--space-2) 0 0;text-align:center;font-size:.9rem}.structure-drawer>div{margin-top:var(--space-3)}@media (prefers-reduced-motion:reduce){.structure-toggle-chevron{transition:none}}.sv-picker{margin:0 0 var(--space-4);flex-wrap:wrap;gap:.5rem;display:flex}.sv-picker a{min-height:2.75rem;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;padding:.4rem 1rem;text-decoration:none;display:inline-flex}.sv-picker a:hover{border-color:var(--accent);background:var(--accent-soft)}.sv-picker a[aria-current=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.sv-gallery{gap:var(--space-3);margin:var(--space-3) 0 var(--space-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));display:grid}.sv-tile{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);border-left-width:3px;flex-direction:column;gap:.3rem;padding:.6rem;display:flex}.sv-tile h3{margin:0;font-size:.95rem}.sv-tile .sv-stage{min-height:7rem}.sv-tile p{color:var(--muted);margin:0;font-size:.8rem}@media (pointer:coarse){main li>a,main p>a[rel~=noopener]{padding:.3rem 0;display:inline-block}}.faq-section{max-width:760px;margin:var(--space-6,3rem) auto 0;padding:0 1rem}.faq-section h2{margin:.2rem 0 var(--space-3,1rem)}.faq-list{border-top:1px solid var(--border);flex-direction:column;display:flex}.faq-item{border-bottom:1px solid var(--border)}.faq-item summary{cursor:pointer;padding:.9rem 0;font-size:1.02rem;font-weight:600}.faq-item summary:hover{color:var(--accent-strong)}.faq-item p{color:var(--muted);max-width:65ch;margin:0 0 .9rem;line-height:1.55}.final-cta{text-align:center;margin:var(--space-6,3rem) auto;padding:0 1rem}.page-header{max-width:60rem;margin:0 0 var(--space-5);padding:var(--space-2) 0 var(--space-4) 1.1rem;border-left:3px solid var(--accent)}.page-header h1{margin:0 0 .5rem}.page-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.78rem;font-weight:700}.page-lead{max-width:60ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:clamp(1.02rem,.98rem + .25vw,1.18rem);line-height:1.5}.page-header-actions{margin-top:var(--space-4)}.page-header-actions p{margin:0}@media (width<=639.98px){.page-header{margin-bottom:var(--space-4);padding-left:.8rem}}.system>.empty-system:last-child{flex:auto}.empty-system{justify-content:center;gap:var(--space-4);padding:var(--space-5) var(--space-4);border:1px dashed var(--rule);border-radius:var(--radius);flex-direction:column;display:flex}.empty-system-lead{font-family:var(--serif);color:var(--fg);margin:0;font-size:1.15rem}.empty-system-steps{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.empty-system-steps li{grid-template-columns:2.2rem 1fr;align-items:start;gap:.15rem .8rem;display:grid}.empty-system-steps li>strong{grid-column:2;font-size:.98rem}.empty-system-steps li>span:last-child{color:var(--muted);grid-column:2;max-width:52ch;font-size:.92rem;line-height:1.45}.empty-system-icon{border-radius:var(--radius-pill);background:var(--accent-soft);width:2.2rem;height:2.2rem;color:var(--accent-strong);grid-row:span 2;place-items:center;display:grid}.empty-system>.button{align-self:flex-start}.empty-system-drop{color:var(--muted);margin:0;font-size:.85rem}.map-stage{gap:var(--space-4);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.map-main{flex-direction:column;gap:.5rem;min-width:0;display:flex}.map-side{flex-direction:column;gap:.75rem;min-width:0;display:flex}@media (width>=1024px){.map-stage{grid-template-columns:minmax(0,2.15fr) minmax(19rem,1fr)}.map-stage .map-frame{height:min(78vh,760px)}.map-side{top:calc(var(--header-h,0px) + .75rem);max-height:calc(100vh - var(--header-h,0px) - 1.5rem);position:sticky;overflow-y:auto}}.map-state{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:2;margin:0;padding:.55rem .9rem;font-size:.9rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.site-info-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .2rem;font-size:.75rem;font-weight:700}.site-info h2{align-items:center;gap:.4rem;margin:0 0 .2rem;font-size:1.3rem;display:flex}.site-info h2 svg{color:var(--accent);flex-shrink:0}.site-info-where{color:var(--muted);margin:0 0 .6rem;font-size:.88rem}.site-info--empty{text-align:center;padding:var(--space-5) var(--space-4);box-shadow:none;border-style:dashed}.site-info--empty h2{justify-content:center;font-size:1.1rem}.site-info--empty p{max-width:32ch;color:var(--muted);margin:0 auto}.site-info-empty-icon{color:var(--accent);margin-bottom:.4rem}.how-cta{color:var(--accent-strong);margin-top:.3rem;font-weight:600}.how-steps--4{grid-template-columns:repeat(4,minmax(0,1fr))}.how-steps .how-num svg{display:block}.how-step-no{letter-spacing:.12em;color:var(--accent);font-size:.75rem;font-weight:700}@media (width>=640px) and (width<=1023.98px){.how-steps--4{grid-template-columns:repeat(2,minmax(0,1fr))}.how-steps--4:before{display:none}}@media (width<=639.98px){.how-steps--4{grid-template-columns:1fr}}.home-block{margin:var(--space-6) 0 0;padding-top:var(--space-5);border-top:1px solid var(--border)}.home-block h2{margin:.2rem 0 var(--space-3)}.home-block-text{max-width:44rem}.home-block-intro{max-width:60ch;color:var(--muted);margin:0 0 var(--space-4)}.home-note{color:var(--muted);margin:var(--space-3) 0 var(--space-4);font-size:.9rem}.check-list{margin:var(--space-3) 0 0;flex-direction:column;gap:.55rem;padding:0;list-style:none;display:flex}.check-list li{padding-left:1.7rem;line-height:1.45;position:relative}.check-list li:before{content:"✓";color:var(--accent);font-weight:700;position:absolute;top:0;left:0}.icon-list{margin:0 0 var(--space-4);gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.icon-list li{flex-direction:column;gap:.35rem;display:flex}.icon-list strong{font-family:var(--serif);font-size:1.1rem}.icon-list p{color:var(--muted);max-width:36ch;margin:0}.icon-list-icon{border-radius:var(--radius-md);background:var(--accent-soft);width:2.4rem;height:2.4rem;color:var(--accent-strong);place-items:center;margin-bottom:.3rem;display:grid}@media (width<=639.98px){.icon-list{gap:var(--space-4);grid-template-columns:1fr}}.story-badge{border-radius:var(--radius-pill);letter-spacing:.08em;vertical-align:.1em;border:1px solid #ffffff8c;margin-left:.6rem;padding:.1rem .5rem;font-size:.7rem;display:inline-block}.story-facts{flex-wrap:wrap;gap:.4rem 1.6rem;margin:0 0 1rem;display:flex}.story-facts div{flex-direction:column;display:flex}.story-facts dt{letter-spacing:.1em;text-transform:uppercase;color:#d5f2ff;font-size:.75rem}.story-facts dd{margin:0;font-weight:600}.home-data{max-width:760px;margin:var(--space-6) auto 0;padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.home-data h2{margin:.2rem 0 var(--space-3);font-size:1.3rem}.home-data ul{margin:0 0 var(--space-3);color:var(--muted);flex-direction:column;gap:.4rem;padding-left:1.1rem;display:flex}.home-data ul strong{color:var(--fg);font-weight:600}.home-data p{margin:0}.steps-strip li.is-done .steps-num{background:var(--accent);color:var(--accent-ink)}.steps-strip .steps-num svg{display:block}.monthly-chart{--o-rain:#3f8fcf;--o-fog:#6fb7c9;--o-dew:#5aa89e;--o-mof:#c28a3a;--o-awg:#7c5cd6;--o-tap:#8b98a5;--o-well:#8a6d4f;--o-solar:#e0a526;--o-wind:#6f8fb0;margin:0 0 var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.monthly-head{margin-bottom:var(--space-2);gap:.1rem;display:grid}.monthly-head strong{font-family:var(--serif);font-size:1rem}.monthly-head span{color:var(--muted);font-size:.8rem}.monthly-chart svg{width:100%;height:auto;display:block}.mc-grid{stroke:var(--border);stroke-width:.6px}.mc-short{fill:color-mix(in srgb, var(--bad) 10%, transparent)}.mc-area{stroke:var(--surface);stroke-width:.8px;opacity:.9}.mc-rain{fill:var(--o-rain);background:var(--o-rain)}.mc-fog{fill:var(--o-fog);background:var(--o-fog)}.mc-dew{fill:var(--o-dew);background:var(--o-dew)}.mc-mof{fill:var(--o-mof);background:var(--o-mof)}.mc-awg{fill:var(--o-awg);background:var(--o-awg)}.mc-tap{fill:var(--o-tap);background:var(--o-tap)}.mc-well{fill:var(--o-well);background:var(--o-well)}.mc-tank{fill:color-mix(in srgb, var(--o-rain) 55%, var(--fg));background:color-mix(in srgb, var(--o-rain) 55%, var(--fg))}.mc-area.mc-overflow{fill:color-mix(in srgb, var(--o-rain) 22%, transparent);stroke:var(--o-rain);stroke-dasharray:2 2;opacity:1}.mc-key.mc-overflow{background:color-mix(in srgb, var(--o-rain) 22%, transparent);border:1px dashed var(--o-rain)}.mc-origin{margin:var(--space-2) 0 0;font-size:.85rem}.mc-table-wrap{margin-top:var(--space-2);font-size:.85rem}.mc-table-wrap summary{cursor:pointer;color:var(--accent-strong);padding:.35rem 0;font-weight:600}.mc-table-scroll{max-width:100%;overflow-x:auto}.mc-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.8rem}.mc-table th,.mc-table td{text-align:right;border-bottom:1px solid var(--border);white-space:nowrap;padding:.25rem .4rem}.mc-table th[scope=row],.mc-table thead th:first-child{text-align:left}.mc-table thead th{color:var(--muted);font-weight:600}.mc-table tr.is-short td:last-child{color:var(--bad);font-weight:700}.mc-table tfoot th,.mc-table tfoot td{border-bottom:none;font-weight:700}.mc-demand{fill:none;stroke:var(--fg);stroke-width:1.6px;stroke-dasharray:5 3;stroke-linejoin:round}.mc-pick{stroke:var(--accent);stroke-width:1.2px}.mc-baseline{fill:none;stroke:var(--accent-strong);stroke-width:1.6px;stroke-dasharray:1 3;stroke-linecap:round;stroke-linejoin:round}.mc-key-baseline{border-top:2px dotted var(--accent-strong);border-radius:0;height:0}.whatif{margin:0 0 var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.whatif>summary{padding:var(--space-3) 2.4rem var(--space-3) var(--space-3);cursor:pointer;gap:.1rem;list-style:none;display:grid;position:relative}.whatif>summary:after{content:"";right:var(--space-3);border-right:2px solid var(--accent-strong);border-bottom:2px solid var(--accent-strong);width:.55rem;height:.55rem;transition:transform .15s;position:absolute;top:1.25rem;transform:rotate(45deg)}.whatif[open]>summary:after{top:1.45rem;transform:rotate(-135deg)}@media (prefers-reduced-motion:reduce){.whatif>summary:after{transition:none}}.whatif>summary::-webkit-details-marker{display:none}.whatif>summary strong{font-family:var(--serif);font-size:1rem}.whatif>summary span{color:var(--muted);font-size:.8rem}.whatif>:not(summary){margin-left:var(--space-3);margin-right:var(--space-3)}.whatif>:last-child{margin-bottom:var(--space-3)}.whatif-controls{gap:var(--space-3);margin-top:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:end;display:grid}.whatif-slider{gap:.3rem;font-size:.88rem;display:grid}.whatif-slider input[type=range]{width:100%;accent-color:var(--accent)}.whatif-slider select{min-height:2.5rem}.whatif-reset{justify-self:start}.whatif-results{margin-top:var(--space-3);gap:var(--space-2);display:grid}.whatif-results p{margin:0;font-size:.9rem}.whatif-results .monthly-chart{background:var(--surface)}.whatif-outage p.is-short strong{color:var(--fg)}.whatif-assumptions{margin-top:var(--space-3);font-size:.85rem}.whatif-assumptions summary{cursor:pointer;color:var(--accent-strong);padding:.35rem 0;font-weight:600}.whatif-assumptions ul{gap:.3rem;margin:.2rem 0 0;padding-left:1.2rem;display:grid}.mc-hit{fill:#0000;cursor:pointer}.mc-months{grid-template-columns:repeat(12,1fr);margin-top:.15rem;display:grid}.mc-months button{min-height:0;color:var(--muted);border-radius:var(--radius);cursor:pointer;background:0 0;border:0;padding:.2rem 0;font-size:.72rem}.mc-months button.is-short{color:var(--bad);font-weight:700}.mc-months button.is-picked{background:var(--accent-soft);color:var(--accent-strong)}.mc-legend{margin:var(--space-2) 0 0;flex-wrap:wrap;gap:.3rem .9rem;padding:0;font-size:.8rem;list-style:none;display:flex}.mc-legend li{align-items:center;gap:.35rem;display:inline-flex}.mc-key{border-radius:3px;width:.8rem;height:.8rem;display:inline-block}.mc-key-demand{border-top:2px dashed var(--fg);border-radius:0;height:0}.mc-detail{margin:var(--space-2) 0 0;font-size:.85rem}.mc-verdict{margin:var(--space-2) 0 0;color:var(--good-text);font-size:.88rem;font-weight:600}.mc-verdict.is-short{color:var(--fg);font-weight:500}.monthly-chart .field-note{margin-top:var(--space-1)}.mc-solar{fill:var(--o-solar);background:var(--o-solar)}.mc-wind{fill:var(--o-wind);background:var(--o-wind)}.mc-bar{stroke:none}.climate-rows{margin-top:.1rem}.climate-row{grid-template-columns:repeat(12,1fr);gap:2px;margin-top:3px;display:grid}.climate-row-label{color:var(--muted);grid-column:1/-1;margin-top:.2rem;font-size:.72rem}.climate-sun,.climate-fog{font-variant-numeric:tabular-nums;border-radius:3px;place-items:center;min-height:1.35rem;font-size:.68rem;display:grid}.climate-sun{background:color-mix(in srgb, #e0a526 calc(10% + var(--sun) * 40%), transparent);color:var(--fg)}.climate-fog{background:var(--surface-2);color:#4f9fb3;font-size:.6rem}.climate-fog.is-on{background:#6fb7c959}.climate-row-note{color:var(--muted);margin:.25rem 0 0;font-size:.75rem}@media (width<=639.98px){.climate-sun{font-size:.56rem}}.estimate-note{border-left:3px solid var(--middle);background:color-mix(in srgb, var(--middle) 12%, transparent);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--fg);margin:.8rem 0 0;padding:.55rem .8rem;font-size:.88rem;line-height:1.45}.home-hero{gap:var(--space-5);padding:clamp(1.5rem, 4vw, 3.5rem) 0 var(--space-5);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}@media (width>=1024px){.home-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,4vw,4rem)}}.home-hero h1{margin:0 0 var(--space-3);text-wrap:balance;font-size:clamp(2rem,1.4rem + 2.6vw,3.3rem);line-height:1.12}.home-hero-lead{color:var(--muted);max-width:52ch;margin:0 0 var(--space-4);font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.55}.home-hero .hero-actions{align-items:center;margin-top:0}.home-hero-trust{margin:var(--space-3) 0 0;color:var(--muted);max-width:52ch;font-size:.9rem}.button.button-lg{box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-sm);padding:.9rem 1.8rem;font-size:1.12rem}.button.button-lg:hover{box-shadow:0 0 0 6px var(--accent-soft), var(--shadow-md)}.home-preview{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;gap:.6rem;margin:0;display:flex}.home-preview-head{flex-direction:column;gap:.15rem;display:flex}.home-preview-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:700}.home-preview-head strong{font-family:var(--serif);font-size:1.15rem}.home-preview-art{border-radius:var(--radius-md);background:var(--bg);padding:.4rem}.home-preview-art svg{width:100%;height:auto;max-height:20rem;display:block}.home-preview-facts{grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:0;display:grid}.home-preview-facts .wide{grid-column:1/-1}.home-preview-facts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.home-preview-facts dd{margin:0;font-size:.93rem;font-weight:600}.example-grid{margin:var(--space-4) 0 0;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,17.5rem),1fr));padding:0;list-style:none;display:grid}.example-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;height:100%;display:flex;overflow:hidden}.example-photo{object-fit:cover;width:100%;height:8.5rem;display:block}.example-body{padding:var(--space-3) var(--space-4) var(--space-4);flex-direction:column;flex:1;gap:.6rem;display:flex}.example-place{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:.78rem;font-weight:700;display:flex}.example-badge{border:1px solid var(--border);border-radius:var(--radius-pill);letter-spacing:.06em;color:var(--fg);padding:.08rem .45rem;font-size:.68rem}.example-card h3{margin:0;font-size:1.1rem;line-height:1.3}.example-facts{flex-direction:column;gap:.45rem;margin:0;display:flex}.example-facts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.example-facts dd{align-items:center;gap:.4rem;margin:0;font-size:.93rem;display:flex}.example-res-icon{border-radius:var(--radius-pill);flex-shrink:0;place-items:center;width:1.6rem;height:1.6rem;display:inline-grid}.example-card--rain .example-res-icon{background:color-mix(in srgb, var(--good) 18%, transparent);color:var(--good)}.example-card--fog .example-res-icon{background:var(--accent-soft);color:var(--accent-strong)}.example-card--solar .example-res-icon{background:color-mix(in srgb, var(--cat-energy) 22%, transparent);color:var(--cat-energy)}.example-why summary{cursor:pointer;color:var(--accent-strong);font-size:.9rem;font-weight:600}.example-why p{color:var(--muted);margin:.4rem 0 0;font-size:.9rem;line-height:1.5}.example-card .story-link{align-self:flex-start;margin-top:auto}.example-card .story-credit{color:var(--muted);margin:0;font-size:.75rem}.example-card .story-credit a{color:inherit}.header-cta{display:none}@media (width<=1023.98px){.site-header .header-cta{border-radius:var(--radius-pill);background:var(--accent);min-height:2.6rem;color:var(--accent-ink);white-space:nowrap;order:3;align-items:center;padding:0 .9rem;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.site-header .nav-toggle{order:4}.site-header .site-nav{order:5}}@media (width>=1024px){.example-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.example-grid>li:first-child{grid-column:span 2}.example-grid>li:first-child .example-photo{height:17rem}.example-grid>li:first-child h3{font-size:1.45rem}}.example-number{flex-wrap:wrap;align-items:baseline;gap:.15rem .5rem;margin:.2rem 0 .1rem;display:flex}.example-number-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);flex-basis:100%;font-size:.72rem}.example-number-value{letter-spacing:-.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:1.9rem;font-weight:700;line-height:1}.example-grid>li:first-child .example-number-value{font-size:2.6rem}.example-number-unit{color:var(--muted);font-size:.9rem}.example-source{margin:var(--space-3) 0 0;color:var(--muted);max-width:70ch;font-size:.8rem}.home-preview-facts dd,.kpi-value{font-variant-numeric:tabular-nums}.lang-short{display:none}@media (width<=519.98px){.site-header .lang a .lang-full{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header .lang a .lang-short{display:inline}.site-header .header-cta{padding:0 .7rem;font-size:.88rem}.site-header{gap:var(--space-2)}}.geo-row{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin:.5rem 0;display:flex}.geo-button{align-items:center;gap:.45rem;display:inline-flex}.geo-note{font-size:.85rem}.map-suggest-art{border-radius:var(--radius-md);background:var(--bg);margin:.4rem 0 .6rem;padding:.3rem}.map-suggest-art svg{width:100%;height:auto;max-height:15rem;display:block}.theme-switch{border:1px solid var(--border);border-radius:var(--radius-pill);gap:2px;padding:2px;display:inline-flex}html:not(.js) .theme-switch{display:none}.theme-switch button{border-radius:var(--radius-pill);min-width:2rem;min-height:2rem;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.4rem;padding:0 .45rem;font-size:.85rem;display:inline-flex}.theme-switch button:hover{color:var(--fg);background:var(--surface-2)}.theme-switch button[aria-pressed=true]{color:var(--accent-strong);background:var(--accent-soft)}.theme-switch .theme-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1023.98px){.site-header .theme-switch{max-width:100%;margin:0 0 var(--space-2);flex-wrap:wrap;order:6}html.js .site-header:not([data-open]) .theme-switch{display:none}.site-header .theme-switch button{min-height:2.6rem;padding:0 .9rem}.site-header .theme-switch .theme-label{clip-path:none;width:auto;height:auto;position:static;overflow:visible}}.builder{gap:var(--space-5);flex-direction:column;display:flex}.builder .panel{padding:var(--space-5)}.builder .panel:hover{box-shadow:var(--shadow-sm);border-color:var(--border);transform:none}.builder-help-row{margin-bottom:calc(-1 * var(--space-3));justify-content:flex-end;display:flex}.builder .demo-profiles{border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.builder .panel h2{margin-bottom:var(--space-4);gap:.6rem;font-size:1.25rem}.step-num{border-radius:var(--radius-pill);background:var(--accent-soft);width:1.8rem;height:1.8rem;color:var(--accent-strong);flex:none;place-items:center;font-family:Segoe UI,system-ui,sans-serif;font-size:.9rem;font-weight:700;display:inline-grid}.step-num.is-done{background:var(--accent);color:var(--accent-ink)}.step-num svg{display:block}.place-search-row{flex-wrap:wrap}.place-search-row .geo-button{flex:none}.place-map{height:clamp(18rem,42vh,26rem);margin-top:var(--space-4);border-radius:var(--radius-md);background:var(--surface-2);overflow:hidden}.place-map-note{margin:var(--space-2) 0 0}.place-quick{margin-top:var(--space-3);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.place-quick-label{color:var(--muted);margin-right:.15rem;font-size:.85rem}.place-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);min-height:2.25rem;color:var(--fg);cursor:pointer;padding:.3rem .8rem;font-size:.9rem}.place-chip:hover{border-color:var(--accent)}.place-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);font-weight:600}.place-chip:focus-visible{box-shadow:var(--ring);outline:none}.place-map-open{margin:var(--space-3) 0 0}.place-map-open .button{align-items:center;gap:.4rem;display:inline-flex}.place-chosen{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.place-chosen-name{align-items:center;gap:.45rem;margin:0;font-size:1.05rem;display:flex}.place-chosen-name svg{color:var(--accent);flex:none}.builder-step .site-summary,.builder-step .exact-location,.builder-step>.link-button{margin-top:var(--space-3)}.demand-main{align-items:flex-start;gap:var(--space-4) var(--space-6);flex-wrap:wrap;display:flex}.control-demand{flex:22rem}.control>label:first-child{font-size:.9rem}.drinking-check{align-items:center;gap:.5rem;margin-top:1.6rem;font-size:.95rem;display:inline-flex}.drinking-check input{width:1.1rem;height:1.1rem;accent-color:var(--accent);margin:0}.field-note{color:var(--muted);max-width:60ch;margin:.3rem 0 0;font-size:.82rem;line-height:1.45}.more-inputs{margin-top:var(--space-5)}.more-inputs>summary{cursor:pointer;color:var(--accent-strong);align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;list-style:none;display:inline-flex}.more-inputs>summary::-webkit-details-marker{display:none}.more-inputs>summary:before{content:"+";border-radius:var(--radius-pill);background:var(--accent-soft);place-items:center;width:1.4rem;height:1.4rem;font-weight:700;display:inline-grid}.more-inputs[open]>summary:before{content:"−"}.more-inputs .setup-controls{gap:var(--space-4) var(--space-5);margin-top:var(--space-4)}.more-inputs .control .check{align-items:center;gap:.45rem;font-size:.9rem;display:inline-flex}.builder-step .suggest-row{margin-top:var(--space-5)}.builder-step .suggest-row+.field-note{margin-top:var(--space-2)}.builder-step .suggest-note{margin-top:var(--space-3)}@media (width>=1024px){.builder-layout{scroll-margin-top:calc(var(--header-h) + var(--space-4));grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.results-rail{min-height:0;max-height:calc(100vh - var(--header-h) - 2 * var(--space-4));overscroll-behavior:contain;scrollbar-gutter:stable;padding-bottom:1px;overflow-y:auto}.results-rail>.system{flex:none}}@media (width<=1023.98px){.builder-layout{scroll-margin-top:calc(var(--header-h) + var(--space-3))}}.palette-heading{justify-content:space-between}.palette-heading h2{margin-bottom:0}.palette-heading .palette-more{min-height:0;color:var(--accent-strong);box-shadow:none;text-underline-offset:.18em;background:0 0;border:0;margin:0;padding:0;font-size:.9rem;font-weight:600;text-decoration:underline}.palette-heading .palette-more:hover{box-shadow:none;color:var(--accent);background:0 0}@media (width<=639.98px){.palette-heading .palette-more{width:auto}}.palette-hint{margin:var(--space-2) 0 0;color:var(--muted);font-size:.92rem}.palette-filter{margin:var(--space-4) 0}.palette-filter-info{margin:calc(-1 * var(--space-2)) 0 var(--space-3)}.palette-block+.palette-block{margin-top:var(--space-5)}.palette-block-head{margin-bottom:var(--space-2)}.palette-grid{grid-auto-flow:dense;gap:.55rem}.palette-tile-name{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;max-width:100%}.palette-tip{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--accent-soft);grid-column:1/-1;font-size:.9rem;line-height:1.5}.palette-tip p{max-width:70ch;margin:.2rem 0 .4rem}.palette-tip-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.builder .palette-tip-close{border-radius:var(--radius-pill);color:var(--muted);background:0 0;border:0;padding:.25rem}.builder .palette-tip-close:hover{background:var(--surface);color:var(--fg)}.palette-info[aria-expanded=true]{color:var(--accent-strong);background:var(--accent-soft)}.system{min-height:0}.system-heading{margin-bottom:var(--space-3)}.builder .module-card{padding:var(--space-3) 0 var(--space-3) var(--space-3);box-shadow:none;background:0 0;border-style:solid;border-width:0 0 0 3px;border-radius:0;margin:0}.builder .module-card+.module-card{margin-top:var(--space-2)}.builder .module-card:hover{box-shadow:none}.empty-system{color:var(--muted);border:0;margin:0;padding:0;font-size:.95rem;display:block}.system>.drop-hint:last-child{min-height:7rem}.builder .kpi{background:0 0;border:0;padding:0}.kpi-grid{gap:var(--space-4)}.draft-actions{align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.draft-actions .button{align-items:center;gap:.45rem;display:inline-flex}.draft-actions .link-button{align-self:center}.draft-actions .field-note{flex-basis:100%;margin:0}.site-info .share-url{width:100%;font:inherit;margin-top:.4rem;padding:.4rem .6rem;font-size:.85rem}.draft-actions .share-url{font:inherit;flex-basis:100%;padding:.4rem .6rem;font-size:.85rem}.control-demand .demand-inputs input[type=number]{flex:none;width:6rem}.control-demand .demand-inputs input[type=range]{flex:auto}.weather-now{margin:var(--space-3) 0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.weather-now p{margin:0}.weather-now>*+*{margin-top:var(--space-2)}.weather-now-head{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.weather-now-head svg{color:var(--accent-strong)}.weather-now-time{color:var(--muted);font-size:.8rem}.weather-now .weather-now-refresh{border:1px solid var(--border);border-radius:var(--radius-pill);width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;place-items:center;margin-left:auto;padding:0;display:grid}.weather-now .weather-now-refresh:hover{color:var(--accent-strong)}.weather-now .weather-now-refresh:disabled{opacity:.5;cursor:default}.weather-now-kind{font-size:1.05rem;font-weight:600}.weather-now-grid{gap:var(--space-2);margin:var(--space-2) 0 0;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));display:grid}.weather-now-grid div{margin:0}.weather-now-grid dt{color:var(--muted);font-size:.75rem}.weather-now-grid dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.weather-now-grid dd.weather-now-mean{color:var(--muted);font-size:.75rem;font-weight:400}.weather-now-awg{font-size:.88rem}.weather-now-privacy{color:var(--muted);font-size:.75rem}.island-loading{min-height:100vh;padding:var(--space-4);border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);margin:0;font-size:.95rem}.home-hero-audience{margin:0 0 var(--space-4);max-width:52ch}.hero-search{max-width:32rem;margin:0 0 var(--space-3);position:relative}.hero-search>label{margin-bottom:.35rem;font-weight:600;display:block}.hero-search input{min-width:0;font:inherit;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--fg);flex:auto;padding:.75rem .9rem;font-size:1.05rem}.hero-search input:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.hero-search-geo,.site-info-share{flex-wrap:wrap;align-items:center;gap:.2rem .4rem;margin:.45rem 0 0;font-size:.88rem;display:flex}.hero-search-geo .link-button,.site-info-share .link-button{min-height:2.25rem;color:var(--accent-strong);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:0 .1rem;font-weight:600;display:inline-flex}.hero-search-geo .link-button:hover:not(:disabled),.site-info-share .link-button:hover{text-decoration:underline}.hero-search-geo .link-button:disabled{opacity:.65;cursor:progress}.hero-search .place-hits{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-lg);margin:.35rem 0 0;padding:.25rem;list-style:none}.hero-search .place-hits a{border-radius:var(--radius);color:var(--fg);justify-content:space-between;gap:.75rem;padding:.55rem .7rem;text-decoration:none;display:flex}.hero-search .place-hits a:hover,.hero-search .place-hits a:focus-visible{background:var(--accent-soft)}.hero-search-status{min-height:1.2em;margin:.3rem 0 0;font-size:.85rem}.home-hero .hero-actions{margin-bottom:0}.home-hero .hero-actions .button svg{vertical-align:-3px}.home-result{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.home-result li{border-radius:var(--radius-md);background:var(--accent-soft);padding:.65rem .8rem;font-size:1.05rem}.home-preview-blocks summary{cursor:pointer;color:var(--muted);font-size:.9rem}.home-preview-blocks[open] summary{margin-bottom:.5rem}.home-preview-blocks p{margin:.4rem 0 0;font-size:.85rem}.example-number-note{color:var(--muted);flex-basis:100%;font-size:.85rem}.about-photo{margin:0 0 var(--space-5);max-width:40rem}.about-photo-empty{aspect-ratio:16/9;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface)}.about-photo figcaption{margin-top:.3rem;font-size:.85rem}.next-steps{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-2)}.next-steps-title{margin:0 0 var(--space-2);font-size:.9rem;font-weight:600}.next-steps ul{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.next-steps .link-button{text-align:left}.finish-row{margin-top:var(--space-5)}.finish-row .button,.system-card-actions .button{align-items:center;gap:.45rem;display:inline-flex}.system-card{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.system-card h3{overflow-wrap:anywhere;margin:0}.system-card-place{margin:.2rem 0 0}.system-card-name{margin:var(--space-3) 0;flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.system-card-name input{font:inherit;max-width:24rem;padding:.4rem .6rem}.system-card-modules{margin:var(--space-3) 0;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.system-card-modules li{align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.system-card-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.home-hero--calm .home-hero-text{max-width:36rem}.home-hero--calm h1{margin-bottom:var(--space-4)}.home-hero-links{margin:var(--space-3) 0 0;font-size:.95rem}.home-hero-links span{color:var(--muted)}.home-hero-photo{margin:0}.home-hero-photo img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg);width:100%;height:auto;display:block}.home-hero-photo figcaption{color:var(--muted);margin-top:.4rem;font-size:.8rem}.home-intro-section{gap:var(--space-4);padding:var(--space-5) 0;display:grid}@media (width>=1024px){.home-intro-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,4vw,4rem)}}.home-intro-section .home-hero-lead{margin:0}.home-guess{margin:var(--space-4) 0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);max-width:44rem}.home-guess-question{margin:0 0 var(--space-3);font-size:1.15rem;line-height:1.35}.home-guess-slider{flex-direction:column;gap:.4rem;display:flex}.home-guess-value{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.home-guess-slider input{width:100%}.home-guess-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.home-guess-actions .button{flex:10rem;justify-content:center}.home-guess-answer{margin-top:0;font-weight:600}.sv-ring{fill:none;stroke:var(--flow-water);stroke-opacity:.16;stroke-width:10px;stroke-linejoin:round}.sv-node.is-blocked{opacity:.5;filter:grayscale(.85)}.sv-link-g.is-dead .sv-link-core,.sv-link-g.is-dead .sv-link-sheen{stroke:var(--muted);stroke-opacity:.4}.sv-link-g.is-dead .sv-link-casing{stroke-opacity:.16}.sv-svg .sv-link-g.is-dead .sv-link-flow{stroke-opacity:0;animation:none}.sv-label.is-blocked{border-style:dashed}.sv-label.is-blocked .sv-label-value{color:var(--middle-text)}.sv-key-dead{background:var(--muted);opacity:.45}.map-frame:has(.map-fallback){height:auto;min-height:26rem}.map-frame .map.map-fallback{gap:var(--space-3);padding:var(--space-5);background:var(--surface);flex-direction:column;display:flex;position:static}.map-fallback h2{margin:0;font-size:1.15rem}.map-fallback p{max-width:46ch;margin:0}.result-sheet{display:none}@media print{@page{size:A4;margin:16mm}html,body{color:#000!important;background:#fff!important}body>:not(.result-sheet){display:none!important}.result-sheet{color:#000;background:#fff;max-width:none;font:10.5pt/1.45 system-ui,sans-serif;display:block}.result-sheet h1{margin:.1em 0 .2em;font-size:20pt}.result-sheet h2{break-after:avoid;border-bottom:1px solid #999;margin:1.1em 0 .3em;padding-bottom:.15em;font-size:12pt}.result-sheet h3{margin:.8em 0 .2em;font-size:10.5pt}.result-sheet p{margin:.2em 0}.result-sheet .sheet-kicker{letter-spacing:.06em;text-transform:uppercase;color:#444;margin:0;font-size:9pt}.result-sheet .sheet-date{color:#444}.result-sheet dl{grid-template-columns:21em 1fr;gap:.15em 1em;margin:0;display:grid}.result-sheet dt{color:#333}.result-sheet dd{font-variant-numeric:tabular-nums;margin:0}.result-sheet ul{margin:.2em 0;padding-left:1.2em}.result-sheet li{break-inside:avoid}.result-sheet footer{color:#333;border-top:1px solid #999;margin-top:1.4em;padding-top:.5em;font-size:9pt}}.offline{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--rule);max-width:46rem}.offline[hidden]{display:none}.offline h2{margin:0 0 .3rem;font-size:1rem}.offline-status{margin:0 0 var(--space-2);color:var(--muted);font-size:.88rem}.offline-progress{width:100%;max-width:24rem;height:.6rem;margin:0 0 var(--space-2);accent-color:var(--accent)}.offline-actions{flex-wrap:wrap;gap:.5rem;display:flex}.offline-actions .button{min-height:2.5rem}.offline-actions [hidden]{display:none}.maplibregl-ctrl.maplibregl-ctrl-group button{width:36px;height:36px}.site-info,.map-main{scroll-margin-top:calc(var(--header-h,0px) + var(--space-3))}.vr-readout p{overflow-wrap:anywhere}body{background:var(--bg);background-image:none}h1,h2,h3,h4,.brand{font-family:var(--font-display);font-style:normal}h1{letter-spacing:-.015em}.site-header{background:var(--bg);backdrop-filter:none;border-bottom:var(--hairline);padding-block:var(--space-2);padding-inline:max(var(--page-gutter), calc((100% - var(--page-max)) / 2 + var(--page-gutter)))}@media (width<=639.98px){.site-header{padding-inline:var(--space-3)}}.site-header nav a{transition:color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);background:0 0;border-bottom:2px solid #0000;border-radius:0;margin-inline:.4rem;padding:.35rem .1rem}.site-header nav a:hover{color:var(--accent-strong);border-bottom-color:var(--rule);background:0 0}.site-header nav a[aria-current=page]{color:var(--fg);border-bottom-color:var(--accent);background:0 0}@media (pointer:coarse) and (height<=499.98px){.site-header{position:static}:root{--header-h:0px!important}}@media (width>=1024px){.site-header{column-gap:clamp(.75rem, 1.4vw, var(--space-5))}.site-header nav a{margin-inline:clamp(.2rem,.4vw,.4rem)}}.lang a{border-radius:var(--radius);padding:.2rem .35rem}.lang a[aria-current=true]{color:var(--fg);text-decoration:underline 2px;text-decoration-color:var(--accent);text-underline-offset:.3em;background:0 0}.theme-switch{border-color:var(--rule)}.theme-switch button[aria-pressed=true]{background:var(--accent-soft)}@media (width<=1023.98px){.site-header .site-nav a{border-bottom:var(--hairline);margin-inline:0;padding-block:.6rem}.site-header .site-nav a[aria-current=page]{border-bottom:2px solid var(--accent)}}.site-footer{gap:var(--space-4);padding:var(--space-6) var(--page-gutter);background:var(--bg);border-top:var(--hairline);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1024px){.site-footer{padding-inline:max(var(--page-gutter), calc((100% - var(--page-max)) / 2 + var(--page-gutter)));grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}}.colophon{gap:var(--space-2);display:grid}.colophon img{width:auto;height:1.6rem}.colophon .logo-dark,:root[data-scheme=dark] .colophon .logo-light{display:none}:root[data-scheme=dark] .colophon .logo-dark{display:block}.colophon p{max-width:52ch;margin:0}.colophon-links{gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}@media (width>=1024px){.colophon-links{justify-content:flex-end}}.colophon-links a{color:var(--muted);white-space:nowrap}.colophon-links a:hover{color:var(--accent-strong)}a.button,button.button{border-radius:var(--radius-pill);box-shadow:none;transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out)}a.button:hover,button.button:hover{box-shadow:none;transform:none}button.button:active,a.button:active{box-shadow:none;transform:translateY(1px)}a.button.secondary,button.button.secondary{border-color:var(--rule)}a.button.secondary:hover,button.button.secondary:hover{border-color:var(--accent)}.button.button-lg,.button.button-lg:hover{box-shadow:none}.panel,.site-info,.module-card,.map-frame,.destination-card,.home-preview,.home-guess,.example-card{box-shadow:none;border-color:var(--rule)}.panel:hover{box-shadow:none;border-color:var(--rule);transform:none}.destination-card:hover,a.atmo-card:hover{box-shadow:none;transform:none}.builder .palette-tile:hover{transform:none}.page-header{padding:var(--space-4) 0 var(--space-5);border-left:0;border-bottom:var(--hairline);margin-bottom:var(--space-6)}@media (width<=639.98px){.page-header{padding-left:0}}.how-num,.empty-system-icon,.example-res-icon{border-radius:50%}.home-workbench{padding-block:clamp(2rem, 5vw, 4.5rem) var(--space-6);align-items:start}@media (width>=1024px){.home-workbench{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,5vw,4.5rem)}}.home-workbench h1{overflow-wrap:anywhere;min-width:0;font-size:clamp(2.1rem,1.4rem + 2.8vw,3.6rem);line-height:1.08}.home-workbench .home-hero-lead{margin:0 0 var(--space-5);color:var(--fg)}.home-workbench .home-preview{padding:var(--space-5);gap:var(--space-3);border-radius:var(--radius-lg);background:var(--surface)}.home-workbench .home-preview-art{background:var(--bg);border:var(--hairline);border-radius:var(--radius-md)}.home-workbench .home-result{border-block:var(--hairline);grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.home-workbench .home-result li{padding:var(--space-3) var(--space-2);background:0 0;border-radius:0;font-size:1rem}.home-workbench .home-result li+li{border-left:var(--hairline)}.home-preview-list{margin:0;font-size:.85rem}@media (width<=519.98px){.home-workbench .home-result{grid-template-columns:minmax(0,1fr)}.home-workbench .home-result li+li{border-left:0;border-top:var(--hairline)}}.home-photo-band{margin:0 0 var(--space-7)}.home-photo-band img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:clamp(10rem,24vw,18rem);display:block}.home-photo-band figcaption{margin-top:var(--space-2);color:var(--muted);font-size:.8rem}.how-steps:before{background:var(--rule);height:1px}@media (width<=639.98px){.how-steps:before{background:var(--rule);width:1px}}.how-num{background:var(--bg);border-width:1px}.icon-list li{border-top:var(--hairline);padding-top:var(--space-4)}.icon-list-icon{background:0 0;justify-content:start;width:auto;height:auto}.final-cta{text-align:left;border-top:var(--hairline);padding:var(--space-6) 0 0;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-inline:0;display:flex}.final-cta h2{margin:0}.example-card{border-radius:var(--radius-lg)}.example-photo{border-radius:var(--radius-lg) var(--radius-lg) 0 0}@media (prefers-reduced-motion:reduce){.site-header nav a,a.button,button.button{transition-duration:1ms}}.how-section .how-heading{text-align:left;justify-content:space-between;align-items:flex-end}.faq-section{margin-inline:0;padding-inline:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a.button,button.button{border-radius:var(--radius-pill);border-width:1px;min-height:2.75rem}a.button{gap:0;padding-right:0}a.button:after{content:"→";border-left:1px solid color-mix(in oklab, currentColor 35%, transparent);border-radius:0 var(--radius-pill) var(--radius-pill) 0;width:2.75rem;transition:background-color var(--dur-short) var(--ease-out), text-indent var(--dur-mid) var(--ease-out);align-self:stretch;place-items:center;margin:-.5rem 0 -.5rem 1.1rem;display:grid}a.button:hover:after{background:color-mix(in srgb, currentColor 16%, transparent);text-indent:6px}a.button:active,button.button:active{transform:translateY(2px)}a.button.secondary,button.button.secondary{border-color:var(--rule);color:var(--fg)}a.button.secondary:hover,button.button.secondary:hover{background:var(--accent-soft);border-color:var(--accent)}.how-cta{border-bottom:1.5px solid var(--brand);transition:border-color var(--dur-short) var(--ease-out);padding-bottom:1px;text-decoration:none}.how-cta:hover{border-bottom-color:var(--fg)}input,select,textarea{border-radius:var(--radius)}.faq-item summary{justify-content:space-between;align-items:center;gap:var(--space-4);font-family:var(--font-display);font-size:1.15rem;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";border:1px solid var(--rule);width:1.9rem;height:1.9rem;font:600 1.05rem/1 var(--font-body);transition:background-color var(--dur-short) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.faq-item[open] summary:after{content:"–";background:var(--fg);color:var(--bg)}.motion [data-rise]{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(18px)}.motion [data-rise].is-in{opacity:1;transform:none}.rise-word{display:inline-block}.motion .rise-word{opacity:0;animation:droply-rise .7s var(--ease-out) forwards;animation-delay:calc(.1s + var(--i,0) * 70ms);transform:translateY(.4em)}@keyframes droply-rise{to{opacity:1;transform:none}}.motion main h2[data-rise]:after{content:"";background:var(--brand);transform-origin:0;width:3rem;height:3px;transition:transform .7s var(--ease-out) .25s;border-radius:3px;margin-top:.5rem;display:block;transform:scaleX(0)}.motion main h2[data-rise].is-in:after{transform:scaleX(1)}@media (width>=1024px){.home-hero--globe{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center}}.home-globe{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);margin:0;position:relative;overflow:hidden}.home-globe canvas{aspect-ratio:1/.86;cursor:grab;touch-action:pan-y;width:100%;display:block}.home-globe canvas:active{cursor:grabbing}.motion .home-globe{animation:droply-rise .9s var(--ease-out) .2s both}.home-globe-hint{right:var(--space-3);top:var(--space-3);padding:2px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);pointer-events:none;font-size:.75rem;position:absolute}.home-globe-failed{padding:var(--space-4);color:var(--muted)}.home-globe-readout{left:var(--space-4);top:var(--space-4);min-width:14rem;max-width:calc(100% - 2rem);padding:var(--space-3) var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);font-size:.88rem;position:absolute;transform:translateY(-6px)}.home-globe-readout.is-on{opacity:1;pointer-events:auto;transform:none}.home-globe-readout dl{gap:2px var(--space-4);grid-template-columns:auto auto;margin:0;display:grid}.home-globe-readout dt{color:var(--muted)}.home-globe-readout dd{text-align:right;font-variant-numeric:lining-nums tabular-nums;margin:0;font-weight:600}.home-globe-cell{margin:var(--space-2) 0 0;color:var(--muted);font-size:.72rem}.home-globe-links{gap:var(--space-2) var(--space-4);margin:var(--space-3) 0 0;flex-wrap:wrap;display:flex}.home-globe-links a{border-bottom:1.5px solid var(--brand);white-space:nowrap;font-weight:600;text-decoration:none}.home-globe-bar{border-top:1px solid var(--rule);display:flex}.home-globe-bar button{padding:var(--space-3) var(--space-2);border:0;border-right:1px solid var(--rule);background:var(--surface);color:var(--muted);font:600 .9rem var(--font-body);cursor:pointer;white-space:nowrap;flex:1}.home-globe-bar button:last-child{border-right:0}.home-globe-bar button:hover{color:var(--fg);background:var(--surface-2)}.home-globe-bar button[aria-pressed=true]{background:var(--fg);color:var(--bg)}.home-globe-legend{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--rule);color:var(--muted);font-size:.8rem;display:flex}.home-globe-scale{border-radius:var(--radius-pill);flex:1;height:.6rem}.home-globe figcaption{padding:0 var(--space-4) var(--space-3);color:var(--muted);font-size:.72rem}.home-globe-vr{padding:0 var(--space-4) var(--space-3);margin:0;font-size:.8rem}.home-globe-vr a{border-bottom:1.5px solid var(--brand);font-weight:600;text-decoration:none}@media (width<=639.98px){.home-globe-readout{max-width:none;box-shadow:none;border-width:0;border-top:1px solid var(--rule);border-radius:0;display:none;position:static;transform:none}.home-globe-readout.is-on{display:block}}.home-photo-band{border-radius:var(--radius-lg);overflow:hidden}.home-photo-band img{transform-origin:60%}.motion .home-photo-band img{animation:droply-drift 24s var(--ease-in-out) infinite alternate}@keyframes droply-drift{0%{transform:scale(1)}to{transform:scale(1.07)translate(-1%)}}.home-words{border-block:1px solid var(--rule);margin:0 0 var(--space-7);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.home-word{padding:var(--space-6) var(--space-5) var(--space-5);border:0;border-right:1px solid var(--rule);color:var(--fg);text-align:left;cursor:pointer;background:0 0;display:block;position:relative;overflow:hidden}.home-word:nth-child(3){border-right:0}.home-word-big{font:600 clamp(3rem, 1rem + 7vw, 7.5rem)/.95 var(--font-display);letter-spacing:-.03em;white-space:nowrap;display:block}.home-word-big span{transition:transform .38s var(--ease-out), color .38s var(--ease-out);transition-delay:calc(var(--c) * 30ms);display:inline-block}.home-word:hover .home-word-big span,.home-word:focus-visible .home-word-big span{color:var(--accent);transform:translateY(-.08em)}.home-word[aria-pressed=true] .home-word-big{color:var(--accent)}.home-word-text{max-width:32ch;margin-top:var(--space-5);color:var(--muted);font-size:.95rem;line-height:1.5;display:block}.home-word:after{content:"";background:var(--brand);transform-origin:0;height:4px;transition:transform var(--dur-mid) var(--ease-out);border-radius:4px;position:absolute;bottom:0;left:12%;right:12%;transform:scaleX(0)}.home-word:hover:after,.home-word:focus-visible:after,.home-word[aria-pressed=true]:after{transform:scaleX(1)}.home-words-hint{padding:var(--space-2) var(--space-5);border-top:1px solid var(--rule);color:var(--muted);grid-column:1/-1;margin:0;font-size:.8rem}@media (width<=639.98px){.home-words{grid-template-columns:minmax(0,1fr)}.home-word{border-right:0;border-bottom:1px solid var(--rule)}}.home-preview-section{margin:var(--space-7) 0}.home-preview-section .home-preview{border-radius:var(--radius-lg);border-color:var(--border);padding:var(--space-5);box-shadow:var(--shadow-sm)}@media (width>=1024px){.home-preview-section .home-preview{column-gap:var(--space-6);grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;display:grid}.home-preview-section .home-preview>:not(.home-preview-art){grid-column:1}.home-preview-section .home-preview-art{grid-area:1/2/span 5}}.home-preview-section .home-result{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.home-preview-section .home-result li{padding:var(--space-3) 0;border-bottom:1px solid var(--border);background:0 0;border-radius:0}.home-gallery .example-grid{gap:var(--space-4);scroll-snap-type:x mandatory;padding-bottom:var(--space-3);grid-template-columns:none;display:flex;overflow-x:auto}.home-gallery .example-grid>li{scroll-snap-align:start;flex:0 0 min(24rem,82vw)}.home-gallery .example-card{border-radius:var(--radius-lg);border-color:var(--border);box-shadow:var(--shadow-sm);transition:border-color var(--dur-short) var(--ease-out);overflow:hidden}.home-gallery .example-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.home-gallery .example-photo{height:8rem;transition:transform .7s var(--ease-out);border-radius:0}.home-gallery .example-card:hover .example-photo{transform:scale(1.04)}.home-gallery-bar{align-items:center;gap:var(--space-4);margin-top:var(--space-4);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600;display:flex}.home-gallery-count{white-space:nowrap}.home-gallery-progress{background:var(--border);border-radius:3px;flex:1;height:3px;overflow:hidden}.home-gallery-progress i{background:var(--fg);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.home-gallery.is-pinned{height:320vh}.home-gallery.is-pinned .home-gallery-sticky{top:calc(var(--header-h,0px) + var(--space-4));position:sticky}.home-gallery.is-pinned .example-grid{scroll-snap-type:none;will-change:transform;overflow:visible}.home-gallery:not(.is-pinned) .home-gallery-progress{display:none}.home-flow{margin:var(--space-8) 0 var(--space-7)}.home-flow-intro,.home-mods-intro{max-width:58ch;color:var(--muted);margin:var(--space-3) 0 0}.home-chain{margin-top:var(--space-6);color:var(--fg);position:relative}.home-chain-line,.home-chain-fill{height:4px;width:var(--w,100%);position:absolute;top:.5rem;left:0}.home-chain-line{background:var(--border);border-radius:4px}.home-chain-fill{background:var(--brand);transform:scaleX(var(--p,0));transform-origin:0;border-radius:4px}.home-chain-drop{width:1.3rem;height:1.8rem;color:var(--brand);transform:translateX(calc(var(--p,0) * var(--w,0px) - .65rem));position:absolute;top:-.5rem;left:0}.home-chain ol{grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.home-chain li{padding:2.4rem var(--space-3) 0 0;position:relative}.home-chain li:before{content:"";background:var(--bg);border:2px solid var(--brand);width:1.15rem;height:1.15rem;transition:background-color var(--dur-mid) var(--ease-out), transform var(--dur-mid) var(--ease-out);border-radius:50%;position:absolute;top:0;left:0}.home-chain li.is-reached:before{background:var(--brand);transform:scale(1.12)}.home-chain-icon{width:1.5rem;height:1.5rem;color:var(--fg)}.home-chain strong{margin-top:var(--space-2);font:600 1.1rem/1.2 var(--font-display);display:block}.home-chain li>span:last-child{color:var(--muted);font-size:.8rem;line-height:1.4;display:block}@media (width<=1023.98px){.home-chain ol{row-gap:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr))}.home-chain-line,.home-chain-fill,.home-chain-drop{display:none}}@media (width<=519.98px){.home-chain ol{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-mods{margin:var(--space-7) 0}.home-tiles{margin:var(--space-5) 0 0;gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.home-tile{min-height:11rem;padding:var(--space-5) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform var(--dur-mid) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out);position:relative;overflow:hidden}.home-tile:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.home-tile-cat{margin-bottom:var(--space-3);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700;display:block}.home-tile .module-icon{transition:transform var(--dur-mid) var(--ease-out);background:0 0}.home-tile:hover .module-icon{transform:translateY(-4px)}.home-tile h3{margin:var(--space-3) 0 0;font-size:1.2rem}.home-tile-more{right:var(--space-3);top:var(--space-3);border:1px solid var(--rule);background:var(--surface);width:1.8rem;height:1.8rem;color:var(--fg);font:600 .9rem/1 var(--font-body);cursor:pointer;z-index:1;border-radius:50%;position:absolute}.home-tile-more:hover{background:var(--accent-soft)}.home-tile-what{padding:var(--space-4);background:var(--fg);color:var(--bg);border-radius:var(--radius-md) var(--radius-md) 0 0;transition:transform var(--dur-mid) var(--ease-out);margin:0;font-size:.86rem;line-height:1.45;position:absolute;inset:auto 0 0;transform:translateY(101%)}.home-tile:hover .home-tile-what,.home-tile:focus-within .home-tile-what,.home-tile.is-open .home-tile-what{transform:none}.home-tile.cat-line-source_active,.home-tile.cat-line-source_passive{--cat-line:var(--cat-source_passive)}.home-tile:before{content:"";left:var(--space-4);right:var(--space-4);background:var(--cat-line,var(--brand));border-radius:0 0 4px 4px;height:4px;position:absolute;top:0}.home-tile.cat-line-treatment{--cat-line:var(--cat-treatment)}.home-tile.cat-line-storage{--cat-line:var(--cat-storage)}.home-tile.cat-line-energy{--cat-line:var(--cat-energy)}.home-tile.cat-line-use{--cat-line:var(--cat-use)}.home-mods-all{margin:var(--space-4) 0 0}@media (width<=1023.98px){.home-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=519.98px){.home-tiles{grid-template-columns:minmax(0,1fr)}}.final-cta{border-top:1px solid var(--border);padding-top:var(--space-7);align-items:end}.final-cta h2{max-width:14ch;font-size:clamp(2.2rem,1.4rem + 3.4vw,4.2rem);line-height:1.05}@media (prefers-reduced-motion:reduce){.home-word-big span,.home-tile-what,.home-gallery .example-photo,.home-chain li:before{transition-duration:1ms}}.home-waves{--mx:-999px;--my:-999px;z-index:-1;pointer-events:none;background:linear-gradient(120deg, var(--brand), var(--accent) 55%, var(--brand));-webkit-mask-image:var(--waves-img), radial-gradient(circle 320px at var(--mx) var(--my), #000 0%, #00000080 45%, transparent 100%);mask-image:var(--waves-img), radial-gradient(circle 320px at var(--mx) var(--my), #000 0%, #00000080 45%, transparent 100%);-webkit-mask-size:calc(100% + 90px) calc(100% + 90px),100% 100%;mask-size:calc(100% + 90px) calc(100% + 90px),100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:calc(var(--mx) * -.04) calc(var(--my) * -.04), 0 0;mask-position:calc(var(--mx) * -.04) calc(var(--my) * -.04), 0 0;-webkit-mask-composite:source-in;opacity:0;transition:opacity .5s var(--ease-out);position:fixed;inset:0;mask-composite:intersect}.home-waves.is-on{opacity:.7}:root[data-scheme=dark] .home-waves.is-on{opacity:.55}@media (pointer:coarse),(prefers-reduced-motion:reduce){.home-waves{display:none}}.home-gallery.is-pinned .home-story-heading{margin-bottom:var(--space-3)}.home-gallery .example-grid>li:first-child .example-photo{height:8rem}:root[data-tone=navy] .home-waves{background:linear-gradient(120deg, var(--brand), var(--accent-strong) 50%, var(--accent))}:root[data-tone=navy] .home-waves.is-on{opacity:.45}h1,h2,h3,h4{letter-spacing:-.02em;font-weight:650}.home-word-big{letter-spacing:-.035em;font-weight:700}.home-word-photo{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-md);width:100%;margin-bottom:var(--space-4);transition:transform var(--dur-mid) var(--ease-out);display:block}.home-word:hover .home-word-photo{transform:scale(1.02)}.home-word-credit{margin-top:var(--space-3);color:var(--muted);font-size:.72rem;display:block}.use-photo{margin:0 0 var(--space-3)}.use-photo img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-md);width:100%;display:block}.use-photo figcaption{margin-top:var(--space-1);color:var(--muted);font-size:.72rem}.use-photo figcaption a{color:inherit}.home-preview-head #home-preview-title{font-size:.9rem}.home-globe canvas{touch-action:none}@media (width<=639.98px),(pointer:coarse){.motion [data-rise]{transition:opacity .25s linear;transform:none}.motion .rise-word{opacity:1;animation:none;transform:none}.motion main h2[data-rise]:after{transition:none;transform:none}.motion .home-globe,.motion .home-photo-band img{animation:none}.home-word-big span,.home-word-photo,.home-tile,.home-gallery .example-photo{transition:none}.home-tile:hover{transform:none}}.home-globe-hint .hint-touch{display:none}@media (pointer:coarse){.home-globe-hint .hint-touch{display:inline}.home-globe-hint .hint-mouse{display:none}}.home-preview-section .home-preview{position:relative}.home-tank{border:2px solid var(--brand);border-radius:0 0 var(--radius-md) var(--radius-md);background:color-mix(in oklab, var(--brand) 8%, transparent);border-top-width:0;width:4.5rem;height:7.5rem;position:relative;overflow:hidden}.home-tank-water{background:linear-gradient(180deg, var(--accent), var(--brand));transform-origin:bottom;transform:scaleY(var(--fill,0));position:absolute;inset:0}.home-tank-water:before{content:"";background:var(--accent);border-radius:45%;height:12px;position:absolute;top:-6px;left:-50%;right:-50%}.home-tank-pct{text-align:center;color:var(--accent-ink);font-size:.9rem;font-weight:700;position:absolute;inset:auto 0 .4rem}.motion .home-preview-section[data-rise] .home-tank-water{transition:transform 1.6s var(--ease-out) .3s;transform:scaleY(0)}.motion .home-preview-section[data-rise].is-in .home-tank-water{transform:scaleY(var(--fill,0))}.home-hero--globe{position:relative}.home-fog{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.home-fog i{background:radial-gradient(closest-side, color-mix(in oklab, var(--fg) 9%, transparent), transparent);opacity:.8;border-radius:50%;width:70%;height:60%;position:absolute}.home-fog i:first-child{top:10%;left:-20%}.home-fog i:last-child{width:60%;top:45%;left:45%}.motion .home-fog i:first-child{animation:droply-fog-a 38s var(--ease-in-out) infinite alternate}.motion .home-fog i:last-child{animation:droply-fog-b 46s var(--ease-in-out) infinite alternate}@keyframes droply-fog-a{to{transform:translate(35%,8%)scale(1.15)}}@keyframes droply-fog-b{to{transform:translate(-40%,-12%)scale(.9)}}.water-ring{border:2px solid var(--brand);pointer-events:none;z-index:60;opacity:.9;width:12px;height:12px;animation:droply-ring .75s var(--ease-out) forwards;border-radius:50%;margin:-6px 0 0 -6px;position:fixed}@keyframes droply-ring{to{opacity:0;transform:scale(7)}}@media (hover:hover) and (pointer:fine){a.button,button.button{isolation:isolate;position:relative;overflow:hidden}a.button:before,button.button:before{content:"";z-index:-1;background:color-mix(in oklab, var(--brand) 38%, transparent);height:140%;transition:transform .45s var(--ease-out);border-radius:42% 58% 0 0/22% 26% 0 0;position:absolute;top:100%;left:-10%;right:-10%}a.button:hover:before,button.button:hover:before{transform:translateY(-78%)}}@media (width<=639.98px),(pointer:coarse){.home-fog{display:none}.motion .home-preview-section[data-rise] .home-tank-water{transform:scaleY(var(--fill,0));transition:none}}@media (prefers-reduced-motion:reduce){.home-fog i,.water-ring{animation:none!important}a.button:before,button.button:before{transition:none}}.home-globe-views{border-top:1px solid var(--rule);flex-wrap:wrap;display:flex}.home-globe-views button{padding:var(--space-2) var(--space-3);border:0;border-right:1px solid var(--rule);background:var(--surface);color:var(--muted);font:600 .82rem var(--font-body);cursor:pointer;white-space:nowrap;flex:auto}.home-globe-views button:last-child{border-right:0}.home-globe-views button:hover{color:var(--fg);background:var(--surface-2)}.home-globe-views button[aria-pressed=true]{background:var(--accent-soft);color:var(--fg)}.home-globe-tour small{color:var(--muted);font-weight:400}.home-globe-month{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) 0;font-size:.85rem;font-weight:600;display:flex}.home-globe-month input{accent-color:var(--brand);flex:1}.home-globe-note{padding:var(--space-2) var(--space-4) 0;color:var(--muted);margin:0;font-size:.8rem}.home-globe-extra{margin:var(--space-2) 0 0;font-size:.8rem}.home-globe-site{margin:0 0 var(--space-2);gap:2px;font-size:.82rem;display:grid}.home-globe-site span{color:var(--muted);font-size:.75rem}.home-tools{margin:var(--space-8) 0 var(--space-7)}.home-tools-intro{max-width:60ch;color:var(--muted);margin:var(--space-3) 0 0}.home-tools-grid{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-tool{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);min-width:0}.home-tool h3{margin:0 0 var(--space-4);font-size:1.3rem}@media (width<=1023.98px){.home-tools-grid{grid-template-columns:minmax(0,1fr)}}.place-picker{gap:var(--space-1);grid-template-columns:minmax(0,1fr);min-width:0;display:grid;position:relative}.place-picker label{color:var(--muted);font-size:.8rem;font-weight:600}.place-picker-row{align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg);display:flex}.place-picker-row input{min-width:0;min-height:2.5rem;color:var(--fg);font:inherit;background:0 0;border:0;flex:1}.place-picker-row input:focus-visible{outline:none}.place-picker-row:focus-within{outline:3px solid var(--accent);outline-offset:2px}.place-picker-row input::placeholder{color:var(--fg);opacity:.85}.place-picker-hits{z-index:5;padding:var(--space-1);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);margin:4px 0 0;list-style:none;position:absolute;top:100%;left:0;right:0}.place-picker-hits button{justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--fg);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.place-picker-hits button:hover,.place-picker-hits button:focus-visible{background:var(--accent-soft)}.duel-pickers{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;display:grid}.duel-vs{padding:0 var(--space-1) .7rem;color:var(--muted);align-self:end;font-size:.85rem;font-weight:700}.duel-table{width:100%;margin-top:var(--space-4);border-collapse:collapse;font-size:.9rem}.duel-table th,.duel-table td{padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.duel-table thead th{color:var(--muted);font-size:.8rem}.duel-table tbody th{font-weight:600}.duel-table tbody th small{color:var(--muted);font-size:.72rem;font-weight:400;display:block}.duel-table strong{font-variant-numeric:lining-nums tabular-nums}.duel-bar{transform-origin:0;height:6px;transform:scaleX(var(--w,0));transition:transform .6s var(--ease-out);border-radius:3px;margin-top:4px;display:block}.duel-bar--a{background:var(--brand)}.duel-bar--b{background:var(--middle)}.duel-note{margin:var(--space-3) 0 0;color:var(--muted);font-size:.78rem}.roof{gap:var(--space-4);display:grid}.roof-slider{gap:var(--space-2);font-size:.9rem;font-weight:600;display:grid}.roof-slider input{accent-color:var(--brand)}.roof-result{gap:var(--space-2) var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.roof-roof{border:1px dashed var(--rule);border-radius:var(--radius);grid-row:span 2;place-items:end start;width:5.5rem;height:5.5rem;display:grid}.roof-scale{color:var(--muted);grid-column:1;font-size:.7rem}.roof-roof span{width:calc(100% * var(--s,.1));aspect-ratio:1;border-radius:var(--radius);background:linear-gradient(135deg, var(--brand), var(--accent));transition:width .5s var(--ease-out);display:block}.roof-area{margin:0}.roof-area strong{font-variant-numeric:lining-nums tabular-nums;font-size:1.6rem}.roof-basis{grid-column:1/-1;margin:0;font-size:.78rem}.roof-result .button{grid-column:1/-1;justify-self:start}@media (width<=639.98px),(pointer:coarse){.duel-bar,.roof-roof span{transition:none}}@media (width<=519.98px){.duel-pickers{grid-template-columns:minmax(0,1fr)}.duel-vs{display:none}}.home-word{font:inherit}.home-globe-readout{width:max-content;min-width:0;max-width:min(13rem,46%);padding:var(--space-2) var(--space-3);font-size:.76rem;line-height:1.35}.home-globe-readout h3{margin:0 0 var(--space-1);font-size:.95rem}.home-globe-readout dl{gap:1px var(--space-3)}.home-globe-site{margin:0 0 var(--space-1);font-size:.72rem;font-weight:600}.home-globe-links{margin:var(--space-2) 0 0;flex-direction:column;gap:2px;font-size:.74rem;display:flex}.home-globe-views button,.home-globe-bar button{font-size:.78rem}.home-globe figcaption{font-size:.68rem}@media (width<=639.98px){.home-globe-readout{width:auto;max-width:none}.home-globe-links{gap:var(--space-4);flex-direction:row}}.home-globe-readout{padding-right:2rem}.home-globe-close{width:1.6rem;height:1.6rem;color:var(--muted);font:600 1.1rem/1 var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:50%;position:absolute;top:4px;right:4px}.home-globe-close:hover,.home-globe-close:focus-visible{background:var(--accent-soft);color:var(--fg)}@media (width>=1024px){.home-hero--globe{align-items:start}}.hero-search{max-width:36rem;margin:0 0 var(--space-2)}.hero-search>label{font-size:1rem}.hero-search .place-search-row{gap:var(--space-2);padding:.3rem .3rem .3rem var(--space-3);border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 16%, transparent);transition:box-shadow var(--dur-short) var(--ease-out);flex-wrap:nowrap}.hero-search .place-search-row:focus-within{box-shadow:var(--ring)}.hero-search input{box-shadow:none;background:0 0;border:0;padding:.6rem .25rem;font-size:1.1rem}.hero-search input:focus-visible{box-shadow:none}.hero-search .button{white-space:nowrap;flex:none}.home-hero-links{margin-top:var(--space-2)}.home-preview-section{scroll-margin-top:calc(var(--header-h,0px) + var(--space-4))}.home-hero--globe .home-hero-text{order:1}.home-hero--globe .home-eg{order:2}.home-hero--globe .home-globe{order:3}.home-eg{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);display:grid}.home-eg-head{gap:var(--space-2);align-content:start;display:grid}.home-eg-head p{gap:2px;margin:0;display:grid}.home-eg-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:700}.home-eg-title{font-weight:600}.home-eg-more{justify-self:start;font-size:.9rem}.home-eg-facts{border-block:var(--hairline);margin:0;padding:0;list-style:none}.home-eg-facts li{align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;grid-template-columns:minmax(7.2rem,9rem) minmax(0,1fr);display:grid}.home-eg-facts li+li{border-top:var(--hairline)}.home-eg-facts strong{font:600 clamp(1.1rem, 1rem + .5vw, 1.35rem)/1.2 var(--font-display);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}.home-eg-facts span{color:var(--muted);font-size:.82rem;line-height:1.35}.home-eg-note{max-width:none;color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}@media (width>=1024px){.home-hero--globe .home-hero-text,.home-hero--globe .home-eg,.home-hero--globe .home-globe{order:0}.home-eg{column-gap:var(--space-6);grid-column:1/-1;grid-template-columns:minmax(13rem,4fr) minmax(0,8fr);align-items:start}.home-eg-facts{border-block:0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.home-eg-facts li{padding:0 var(--space-4);flex-direction:column;gap:2px;display:flex}.home-eg-facts li+li{border-top:0;border-left:var(--hairline)}.home-eg-facts li:first-child{padding-left:0}.home-eg-facts strong{font-size:clamp(1.3rem,1rem + .9vw,1.8rem)}.home-eg-note{padding-top:var(--space-3);border-top:var(--hairline);grid-column:1/-1}}.site-nav .nav-hint{display:none}@media (width<=1023.98px){.site-header .site-nav a .nav-hint{color:var(--muted);margin-top:2px;font-size:.8rem;font-weight:400;display:block}}html.js .scenario-list[data-level=basic] .scenario-card:not([data-level=basic]),html.js .scenario-list[data-level=advanced] .scenario-card:not([data-level=advanced]),html.js .scenario-list[data-kind=water] .scenario-card:not([data-kind=water]),html.js .scenario-list[data-kind=energy] .scenario-card:not([data-kind=energy]),html:not(.js) .scenario-filters,html:not(.js) .scenario-more{display:none}.scenario-section{margin-top:var(--space-6)}.scenario-section>h2{margin:0 0 var(--space-2)}.scenario-section>.muted{max-width:70ch;margin:0 0 var(--space-4)}.scenario-filters{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.scenario-filter-row{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.scenario-filter-label{letter-spacing:.1em;text-transform:uppercase;min-width:8.5rem;color:var(--muted);flex:none;font-size:.75rem;font-weight:700}.scenario-filters .scenario-filter{margin:0}.scenario-status{margin:var(--space-1) 0 0;font-size:.9rem}.scenario-empty{margin:var(--space-4) 0}.scenario-more{margin:var(--space-5) 0 var(--space-6);justify-content:center;display:flex}.scenario-more[hidden]{display:none}@media (width<=519.98px){.scenario-filter-label{min-width:100%}}.module-needs{align-items:center;gap:var(--space-1) var(--space-3);margin:var(--space-2) 0;flex-wrap:wrap;display:flex}.module-needs-text{align-items:center;gap:.3rem;font-weight:600;display:inline-flex}.module-needs .link-button{align-items:center;gap:.25rem;display:inline-flex}.palette-tip-relations{margin:var(--space-2) 0;color:var(--muted);gap:.15rem;font-size:.85rem;display:grid}.palette-tip-relations p{margin:0}.glossary-item{container-type:inline-size}.glossary-rel{margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:var(--hairline);font-size:.92rem}.glossary-rel dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:700}.glossary-rel dt:not(:first-child){margin-top:var(--space-3)}.glossary-rel dd{overflow-wrap:anywhere;min-width:0;margin:.15rem 0 0}.glossary-rel dd+dd{margin-top:.2rem}@container (width>=30rem){.glossary-rel{column-gap:var(--space-4);grid-template-columns:8.5rem minmax(0,1fr);display:grid}.glossary-rel dt{grid-column:1;padding-top:.15rem}.glossary-rel dt:not(:first-child){margin-top:var(--space-2)}.glossary-rel dd{grid-column:2;margin:0}.glossary-rel dd:not(:first-of-type){margin-top:.2rem}.glossary-rel dt:not(:first-child)+dd{margin-top:var(--space-2)}}.device-badge{left:var(--space-2);z-index:90;border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm);font-variant-numeric:tabular-nums;pointer-events:none;padding:.3rem .65rem;font:.78rem/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;position:fixed;bottom:4.5rem}@media (pointer:coarse){.what-toggle,.remove,.weather-now-refresh,.qty button{position:relative}:is(.what-toggle,.field-info,.palette-info,.home-tile-more,.remove,.weather-now-refresh):after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.qty button:after{content:"";width:100%;height:max(100%,44px);position:absolute;top:50%;left:0;transform:translateY(-50%)}.builder .palette-filter button,.builder select,.builder input[type=number]{min-height:2.75rem}.link-button,.palette-heading .palette-more{align-items:center;min-height:2.75rem}.lang a{text-align:center;min-width:1.5rem}}.home-fold>summary{column-gap:var(--space-4);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;list-style:none;display:grid}.home-fold>summary::-webkit-details-marker{display:none}.home-fold>summary>*{grid-column:1}.home-fold>summary:after{content:"+";content:"+" / "";border:1px solid var(--rule);width:1.9rem;height:1.9rem;font:600 1.05rem/1 var(--font-body);transition:background-color var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out);border-radius:50%;grid-area:1/2/span 4;align-self:center;place-items:center;display:grid}.home-fold[open]>summary:after{content:"–";content:"–" / "";background:var(--fg);color:var(--bg)}.home-fold>summary:hover h2{color:var(--accent-strong)}.home-fold-summary h2{margin:0}.home-fold-intro{color:var(--muted);display:block}.home-fold-summary .home-fold-intro{max-width:62ch}.home-fold-summary .eyebrow{display:block}.home-fold-section[hidden],.home-fold[open] .home-fold-teaser,.home-fold:not([open])>.home-fold-body{display:none}.home-fold-body>.home-words{margin-top:var(--space-5)}.home-story .home-fold-summary h2{font-size:clamp(1.8rem,3vw,2.6rem)}@media (width>=1024px){.home-fold>summary:after{opacity:.55}.home-fold>summary:hover:after,.home-fold>summary:focus-visible:after{opacity:1}.home-fold[open]>summary:after{color:var(--fg);background:0 0}}@media (width<=1023.98px){.home-fold-section{border:0;border-bottom:var(--hairline);margin:0;padding:0}.home-photo-band+.home-fold-section{margin-top:var(--space-6);border-top:var(--hairline)}.home-fold>summary{min-height:3.5rem;padding-block:var(--space-4)}.home-fold-summary h2{font-size:1.2rem;line-height:1.25}.home-story .home-fold-summary h2{font-size:1.2rem}.home-fold-summary .home-fold-intro{margin-top:var(--space-1);font-size:.9rem}.home-fold-summary .eyebrow{margin-bottom:.15rem}.home-fold-body{padding:0 0 var(--space-5)}.home-fold-body>.home-words{border-top:0;margin-top:0;margin-bottom:0}.home-fold-body>.home-guess{margin-top:0}}.home-jump{display:none}@media (width<=1023.98px){:root{--jump-h:3.1rem}.home-jump{top:var(--header-h);z-index:15;margin:0 calc(-1 * var(--page-gutter));background:var(--bg);border-bottom:var(--hairline);display:block;position:sticky}.home-jump ul{gap:var(--space-2);padding:.3rem var(--page-gutter);overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;margin:0;list-style:none;display:flex;overflow-x:auto}.home-jump ul::-webkit-scrollbar{display:none}.home-jump a{min-height:2.5rem;padding:0 var(--space-3);border:1px solid var(--rule);border-radius:var(--radius-md);white-space:nowrap;color:var(--fg);scroll-snap-align:center;align-items:center;font-size:.92rem;text-decoration:none;display:inline-flex}.home-jump a:hover{border-color:var(--accent)}.home-jump a[aria-current=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong);font-weight:600}}@media (pointer:coarse) and (height<=499.98px){:root{--jump-h:0px}.home-jump{display:none}}.home-hero,.how-section,.home-preview-section,.home-fold,.faq-section{scroll-margin-top:calc(var(--header-h) + var(--jump-h,0px) + var(--space-3))}
