:root{--ink:#0c171d;--panel:#14232a;--accent:#edc379;--text:#f0f1e9;--muted:#a7b8bd;--line:#a5bdc52a;font-family:var(--brand-font);color:var(--text);background:var(--ink);font-size:15px;line-height:1.6;color-scheme:dark}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button,input,select{font:inherit}button,.button{border:1px solid var(--line);background:#15262e;color:var(--text);padding:13px 20px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:3px;min-height:46px}button:hover,.button:hover{border-color:var(--accent);color:var(--accent)}button:disabled{opacity:.5;cursor:wait}.primary,button.primary{background:var(--accent);color:var(--ink);border-color:var(--accent);font-weight:600}.primary:hover{filter:brightness(1.08);color:var(--ink)}header{padding:23px 4vw;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-weight:650;font-size:var(--brand-mark-size);letter-spacing:var(--brand-mark-tracking);min-height:44px}.brand span{font-size:10px;letter-spacing:2px;color:var(--muted);margin-left:17px}nav{display:flex;gap:25px;font-size:var(--brand-nav-size)}main{max-width:1340px;margin:auto;padding:0 4vw}h1,h2,h3{font-weight:440;line-height:1.06}h1{font-size:clamp(40px,5.6vw,78px);letter-spacing:-3px;margin:20px 0 25px;max-width:720px}h2{font-size:clamp(30px,3vw,44px);letter-spacing:-1.5px;margin:15px 0 25px}h3{font-size:23px;letter-spacing:-.6px}p{color:var(--muted)}.lead{font-size:18px;max-width:600px;line-height:1.7}.eyebrow{font:11px var(--brand-font);letter-spacing:2px;color:var(--accent)}.tool-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:65px 0 50px}.map-frame{position:relative;height:600px;background:#17272e;overflow:hidden;border:1px solid var(--line)}.map-frame img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.65)}.map-reticle{position:absolute;inset:25%;border:1px solid #e6d1a266;border-radius:50%;box-shadow:0 0 0 60px #d1dbe30b}.map-reticle:before,.map-reticle:after{content:'';position:absolute;background:#e6d1a288;top:50%;left:35%;width:30%;height:1px}.map-reticle:after{transform:rotate(90deg)}.map-caption{position:absolute;top:25px;left:24px;right:24px;display:flex;justify-content:space-between;font:10px var(--brand-font);color:#e5e6d9;gap:20px}.film-play{position:absolute;left:24px;bottom:24px;background:#0c171deb;border-color:#c8b28480;backdrop-filter:blur(8px)}label{display:block;color:var(--text);font-size:14px;margin:15px 0 8px}input:not([type=radio]):not([type=checkbox]),select{background:#0d1a20;border:1px solid #819ba954;color:var(--text);padding:14px 15px;min-height:46px;border-radius:2px;width:100%}.search-row{display:flex}.search-row input{min-width:0}.search-row button{background:var(--accent);color:var(--ink);white-space:nowrap}.search-results{display:grid;gap:4px;max-height:290px;overflow:auto}.search-results button{justify-content:start;text-align:left;font-size:13px}.text-button{background:none;border:0;padding:10px 0;color:var(--accent);text-align:left;justify-content:start}#status{font-size:13px;min-height:22px;margin:14px 0}.section-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.section-top a{font-size:13px;color:var(--accent)}#analysis{padding:40px 0;border-top:1px solid var(--line)}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.fact{border-top:1px solid var(--line);padding:22px 0}.fact>span{display:block;font-size:13px}.fact strong{display:block;font-size:34px;font-weight:450;letter-spacing:-1px;margin:12px 0}.fact small{display:block;color:var(--muted);font-size:12px;line-height:1.6}.fact[data-state=unavailable] strong{color:var(--muted)}.caption{font-size:12px;line-height:1.65}.workspace-teaser{margin:40px 0;padding:50px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.monochrome-preview{background:#e5e5df;color:#262d31;padding:32px;border:1px solid #fff2;box-shadow:0 25px 60px #0003;filter:grayscale(1)}.monochrome-preview>span,.preview-top{font:10px var(--brand-font);letter-spacing:1.4px;color:#50585b}.monochrome-preview p,.monochrome-preview small{color:#535c60}.monochrome-preview .fact{border-color:#818b8f55}.monochrome-preview .fact strong{font-size:27px}.quiet-footer{border-top:1px solid var(--line);padding:35px 0;max-width:820px}.quiet-footer p{font-size:14px}footer{border-top:1px solid var(--line);padding:25px 4vw;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.badge{font:11px var(--brand-font);color:var(--accent)}.water-inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.water-bar{height:22px;display:flex;margin-top:25px;background:#ffffff0a;gap:2px}.water-bar span{min-width:0;transition:flex-grow .3s}.stored{background:#91cdd4}.infiltrated{background:#a0c798}.outflow{background:#537d97}.onboarding{max-width:1150px;padding-top:45px;min-height:calc(100vh - 160px)}.onboarding>h1{font-size:clamp(38px,5vw,64px)}.step-nav{display:flex;gap:0;list-style:none;padding:0;margin:35px 0 25px}.step-nav li{flex:1;border-top:2px solid var(--line);padding:14px 12px 0 0;color:var(--muted);font-size:13px}.step-nav li[aria-current=step]{border-color:var(--accent);color:var(--accent)}.step{display:grid;grid-template-columns:1.5fr 1fr;gap:55px;padding:15px 0 70px}.step form>label:first-child{margin-top:0}fieldset{border:0;padding:0;margin:28px 0}legend{font-size:16px;margin-bottom:5px}.option{border:1px solid var(--line);padding:13px 16px;display:flex;align-items:center;gap:12px;cursor:pointer}.option:has(input:checked){border-color:var(--accent);background:#e3c98a09}input[type=radio],input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}.side-note{padding:25px 30px;background:#15232b;height:max-content}.side-note ul,.monochrome-preview ul{padding-left:20px;font-size:14px;line-height:2}.side-note p{font-size:14px}.preview-top{display:flex;justify-content:space-between;gap:20px}.workspace-preview{grid-column:1/-1}.workspace-preview .facts{gap:30px}.workspace-preview h2{margin-top:30px}.contact-panel{grid-column:1/-1;max-width:650px}.contact-panel input[type=email]{max-width:480px}.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;margin:20px 0}details{font-size:13px;margin:20px 0}summary{cursor:pointer;color:var(--muted)}.contact-panel button{margin-right:20px}.intake-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}#upload-form{padding:25px;border:1px dashed #78909b66;margin:25px 0}input[type=file]{font-size:13px}.connector,.import-row{padding:15px 0;border-top:1px solid var(--line)}.connector strong,.import-row strong{display:block;font-size:14px}.connector span,.import-row span{font-size:12px;color:var(--accent)}.connector p,.import-row small{font-size:12px}.import-row small{display:block;color:var(--muted)}.import-rows{max-height:400px;overflow:auto;margin:20px 0}.completion{grid-column:1/-1;padding:25px 0 60px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}@media(max-width:800px){header{padding:18px 5vw}.brand span{display:none}nav{gap:15px;font-size:var(--brand-nav-size)}main{padding:0 5vw}.tool-hero{grid-template-columns:1fr;gap:25px;padding-top:32px}.map-frame{height:350px}.facts{grid-template-columns:1fr}.fact{padding:15px 0}.fact strong{margin:6px 0}.workspace-teaser,.step{grid-template-columns:1fr;gap:25px}.workspace-teaser{margin:10px 0;padding:30px 0}.onboarding{padding-top:25px}.water-inputs{grid-template-columns:1fr 1fr;gap:10px}.section-top{align-items:start;flex-direction:column;gap:0}.step-nav li{font-size:11px}.map-caption{font-size:9px}.monochrome-preview{padding:22px}.side-note{padding:20px}.onboarding .step{padding-bottom:40px}.fact strong{font-size:30px}.workspace-preview .facts{gap:10px}h1{letter-spacing:-1.8px}.lead{font-size:16px}.search-row button{padding:12px}.water-inputs label{font-size:12px}footer{gap:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.qualification-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.qualification-fields label:last-child{grid-column:1/-1}.contact-panel{max-width:760px}.enquiry-summary{display:grid;grid-template-columns:180px 1fr;max-width:800px;gap:12px 24px;border-top:1px solid var(--line);padding-top:25px}.enquiry-summary dt{color:var(--muted);font-size:13px}.enquiry-summary dd{margin:0;font-size:15px}.monochrome-preview .text-button{color:#2c4844}.button[aria-disabled=true]{pointer-events:none;opacity:.5}@media(max-width:600px){.qualification-fields{grid-template-columns:1fr}.enquiry-summary{grid-template-columns:1fr;gap:5px}.enquiry-summary dd{margin-bottom:15px}}

/* Schnellcheck only: shared paper/pine identity; other funnel pages retain their styles. */
body.tool-page{--ink:var(--brand-paper);--panel:var(--brand-surface);--accent:var(--brand-ink);--text:var(--brand-ink);--muted:var(--brand-muted);--line:var(--brand-line);background:var(--brand-paper);color:var(--brand-ink);font-family:var(--brand-font);color-scheme:light}
.tool-page .tool-skip{position:absolute;top:8px;left:16px;transform:translateY(-160%);padding:12px;background:var(--brand-accent);z-index:10}.tool-page .tool-skip:focus{transform:none}
.tool-page header{background:var(--brand-pine);color:var(--brand-on-green);padding:24px clamp(24px,5vw,72px)}
.tool-page header .geco-wordmark{color:var(--brand-on-green);font-weight:800;font-size:var(--brand-mark-size);letter-spacing:var(--brand-mark-tracking);min-height:44px}.tool-page header nav{align-items:center;gap:28px;font-weight:var(--brand-nav-weight)}.tool-page header nav a{min-height:44px;display:inline-flex;align-items:center}.tool-page header a:hover{color:var(--brand-accent)}.tool-page .tool-address{padding:10px 18px;background:var(--brand-accent);color:var(--brand-ink);border-radius:3px}.tool-page header .tool-address:hover{color:var(--brand-ink);background:#d7f49f}
.tool-page main{max-width:1440px;padding-inline:clamp(24px,5vw,72px)}.tool-page h1,.tool-page h2,.tool-page h3{font-weight:650;letter-spacing:-.045em;line-height:1.12}.tool-page h1{font-size:clamp(40px,4.9vw,68px);max-width:13ch}.tool-page .eyebrow{font:650 11px/1.5 var(--brand-font);letter-spacing:.13em}.tool-page .lead{font-size:17px;line-height:1.8}.tool-page .tool-hero{gap:clamp(30px,5vw,72px);padding-block:64px}.tool-page .tool-hero>div{min-width:0}.tool-page .map-frame{height:530px;background:var(--brand-mist);border-color:var(--brand-line)}.tool-page .map-frame img{filter:saturate(.65) brightness(.85)}.tool-page .map-caption{font:600 10px/1.6 var(--brand-font);background:var(--brand-paper);color:var(--brand-ink);padding:12px;top:16px;left:16px;right:16px}.tool-page .map-reticle{border-color:#f5f2e9a0}.tool-page .film-play{background:var(--brand-pine);border-color:var(--brand-pine);color:var(--brand-on-green);backdrop-filter:none;font-weight:650;left:16px;bottom:16px}
.tool-page :is(button,.button){border-radius:3px;background:var(--brand-surface);color:var(--brand-ink);min-height:48px}.tool-page :is(button,.button):hover{border-color:var(--brand-ink);color:var(--brand-ink)}.tool-page input:not([type=radio]):not([type=checkbox]){background:var(--brand-surface);color:var(--brand-ink);border-color:#123f3255}.tool-page input::placeholder{color:var(--brand-muted)}.tool-page .search-row{gap:6px;background:var(--brand-surface);border:1px solid #123f3255;padding:6px}.tool-page .search-row input{border:0}.tool-page .search-row button,.tool-page .primary{background:var(--brand-pine);border-color:var(--brand-pine);color:var(--brand-on-green);font-weight:650}.tool-page .search-row button:hover,.tool-page .primary:hover{background:var(--brand-green);color:var(--brand-on-green)}.tool-page .text-button{background:none;text-decoration:underline;text-underline-offset:5px}.tool-page .film-play{background:var(--brand-pine);color:var(--brand-on-green)}.tool-page .film-play:hover{background:var(--brand-green);color:var(--brand-on-green)}
.tool-page #analysis{padding-block:40px}.tool-page .facts{gap:28px}.tool-page .fact strong{font-weight:650;overflow-wrap:anywhere}.tool-page .fact>small:first-child{font-size:11px;font-weight:650;letter-spacing:.05em}.tool-page .tool-method{border-block:1px solid var(--brand-line);margin:20px 0;padding:0 4px}.tool-page .tool-method summary{color:var(--brand-ink);font-weight:650;padding:16px 0}.tool-page .tool-method p,.tool-page .tool-method li{max-width:85ch;font-size:13px;line-height:1.8;color:var(--brand-muted)}.tool-page .tool-method ul{padding-left:20px}.tool-page .workspace-teaser{margin-block:24px;gap:60px}.tool-page .monochrome-preview{background:var(--brand-mist);border-color:var(--brand-line);filter:none;box-shadow:none;color:var(--brand-ink)}.tool-page .monochrome-preview p,.tool-page .monochrome-preview>span{color:var(--brand-muted)}.tool-page .water-bar{background:var(--brand-mist)}.tool-page .stored{background:#3a7c71}.tool-page .infiltrated{background:#8cac65}.tool-page .outflow{background:#5d809b}.tool-page footer{padding-inline:clamp(24px,5vw,72px)}.tool-page :is(button,a,input,summary):focus-visible{outline:3px solid var(--brand-focus);outline-offset:4px}.tool-page header a:focus-visible{outline-color:var(--brand-accent)}
@media(max-width:800px){.tool-page header{padding:18px 24px;flex-wrap:wrap;gap:16px}.tool-page header .geco-wordmark{;font-size:var(--brand-mark-size);letter-spacing:var(--brand-mark-tracking);min-height:44px}.tool-page header nav{gap:20px;width:100%;font-size:var(--brand-nav-size)}.tool-page header nav .tool-address{margin-left:auto;padding:8px 12px}.tool-page .tool-hero{padding-block:36px;gap:28px}.tool-page h1{font-size:43px;max-width:13ch;margin-top:16px}.tool-page .lead{font-size:16px}.tool-page .map-frame{height:350px}.tool-page .map-caption{font-size:9px;gap:12px}.tool-page .facts{gap:10px}.tool-page .fact{padding-block:18px}.tool-page .workspace-teaser{gap:28px}.tool-page .water-inputs{gap:12px}.tool-page footer{flex-direction:column;gap:10px}.tool-page .section-top{gap:5px}.tool-page .search-row button{padding-inline:13px}.tool-page .search-row input{padding-inline:10px}}
