@charset "UTF-8";
:root{--ink:#111210;--paper:#f2f1ec;--muted:#a9aaa4;--rule:#ffffff30;--line:#1719152d;--space:clamp(22px,5vw,88px);--max:1500px;font-family:Arial,Helvetica,sans-serif;color:var(--paper);background:var(--ink);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.22em}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:5px}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.065em;line-height:1.02}h2{font-size:clamp(40px,5.5vw,84px)}h3{font-size:clamp(22px,2.3vw,33px);letter-spacing:-.045em;line-height:1.16}p+p{margin-top:1em}::selection{background:#c7c9be;color:#111}[hidden]{display:none!important}.wrap{width:min(100%,var(--max));margin:auto;padding-inline:var(--space)}.section{padding-block:clamp(70px,9vw,145px)}.light{background:var(--paper);color:var(--ink);--rule:var(--line)}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.19em;font-weight:600;text-transform:uppercase}.muted{color:var(--muted)}.light .muted,.legal .muted{color:#5b5e56}.small{font-size:13px;line-height:1.65}.large-copy{font-size:clamp(20px,2.25vw,32px);line-height:1.35;letter-spacing:-.025em}.section-label{display:flex;align-items:center;gap:15px;margin-bottom:44px}.section-label:before{content:"";width:24px;height:1px;background:currentColor}.section-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:10vw;align-items:end;margin-bottom:65px}.section-intro h2{max-width:850px}.section-intro>p{max-width:430px}.rule{border-top:1px solid var(--rule)}.skip{position:fixed;z-index:1000;left:15px;top:-100px;padding:12px;background:#fff;color:#111}.skip:focus{top:10px}
.masthead{height:88px;padding:0 var(--space);display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--rule);background:#111210f5;position:sticky;top:0;z-index:40;backdrop-filter:blur(12px)}.wordmark{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}.wordmark img{width:45px;height:45px;object-fit:contain;filter:invert(1)}.wordmark span{font-size:12px;letter-spacing:.06em;line-height:1.2;font-weight:700}.wordmark small{display:block;font-size:9px;font-weight:400;letter-spacing:.16em;margin-bottom:3px}.masthead nav{display:flex;align-items:center;gap:clamp(20px,3vw,48px)}.masthead nav a{font-size:11px;text-decoration:none;line-height:1.3}.masthead nav a:hover{text-decoration:underline}.masthead .nav-action{border:1px solid #8e9087;padding:12px 18px}.menu-toggle{display:none;background:transparent;color:inherit;border:1px solid #777;padding:9px 12px;font-size:10px;letter-spacing:.12em;min-height:44px}
.hero{padding-top:38px}.hero-top{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:30px}.status{display:inline-flex;align-items:center;gap:8px;border:1px solid #777b6c;padding:6px 11px;font-size:9px;letter-spacing:.09em;text-transform:uppercase}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.hero h1{font-size:clamp(64px,11.5vw,176px);letter-spacing:-.07em;line-height:.94;white-space:nowrap;margin-left:-.045em}.hero h1 span{font-size:.3em;display:block;letter-spacing:-.04em;margin:0 0 .3em .12em}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;padding-block:34px 40px}.hero-bottom p{max-width:410px;font-size:clamp(18px,2vw,26px);line-height:1.4;letter-spacing:-.025em}.text-link{font-size:12px;display:inline-flex;justify-content:space-between;align-items:center;gap:40px;border-bottom:1px solid currentColor;padding-block:12px;text-decoration:none}.text-link span{font-size:23px;line-height:1}.hero-visual{position:relative;margin-inline:var(--space)}.hero-visual .image-compare{aspect-ratio:1.96}.caption{display:flex;justify-content:space-between;gap:15px;padding:13px 0;color:#999d93;font-size:9px;letter-spacing:.08em;line-height:1.5}.light .caption{color:#62675b}.hero .caption{margin-inline:var(--space)}.visual-stamp{position:absolute;z-index:6;right:34px;top:-50px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100px;height:100px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:9px;line-height:1.5;text-align:center;letter-spacing:.04em;transform:rotate(10deg);box-shadow:0 3px 15px #0002;pointer-events:none}.visual-stamp b{font-size:28px;letter-spacing:-.07em}.intro{padding-block:100px 105px}.intro-grid{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.intro-grid h2{font-size:clamp(37px,5.2vw,78px);max-width:1000px}.intro-grid .aside{max-width:240px;margin-top:40px;font-size:13px}.intro-tail{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:50px}.intro-tail p{font-size:15px;color:#b9bcb2}.numbered{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--rule)}.role{padding:38px 30px 40px 0;text-decoration:none;display:flex;flex-direction:column;min-height:260px;gap:25px}.role+.role{border-left:1px solid var(--rule);padding-left:30px}.role .eyebrow{color:#5d6158}.role h3{font-size:30px}.role p{font-size:14px;max-width:310px}.role .arrow{margin-top:auto;font-size:30px}.role:hover .arrow{transform:translate(7px,-4px)}.arrow{transition:transform .2s}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,100px)}.material-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:start}.material-layout figure{margin:0;position:sticky;top:115px}.material-layout .image-compare{aspect-ratio:4/5;--image-focus:40% center}.material-layout figure>p{margin-top:25px;max-width:380px}.piles{border-top:1px solid var(--line)}.pile{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.pile summary{display:grid;grid-template-columns:45px 1fr 25px;gap:18px;align-items:center;min-height:100px}.pile summary .n{font-size:13px}.pile h3{font-size:clamp(24px,2.8vw,41px)}.pile .plus{font-size:25px;font-weight:300;transition:transform .2s}.pile[open] .plus{transform:rotate(45deg)}.pile .detail-copy{padding:0 40px 28px 63px;font-size:14px;color:#4e5448}.pile .detail-copy p+p{margin-top:12px}.warning-note{padding:23px 0 0;font-size:13px;color:#50584a}.tools-head{max-width:800px;margin-bottom:60px}.tools-head p{margin-top:25px;max-width:550px}.tool{border-top:1px solid var(--rule);padding-top:30px}.tool h3{margin-bottom:20px}.tool .eyebrow{margin-bottom:18px}.tool>p{font-size:14px;color:#babeb2;margin-bottom:24px;max-width:520px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}.field{display:block;font-size:12px;line-height:1.5;min-width:0}.field span{display:block;margin-bottom:8px}.full{grid-column:1/-1}.field input,.field select,.field textarea{display:block;width:100%;background:#1c1e19;color:var(--paper);border:1px solid #676c5d;border-radius:0;min-height:49px;padding:12px;font-size:15px;max-width:100%}.field textarea{resize:vertical;min-height:125px}.field input::placeholder,.field textarea::placeholder{color:#9ca28f}.field select{appearance:auto}.field select option{color:#111;background:#f2f1ec}.light .field input,.light .field select,.light .field textarea{background:transparent;border-color:#888f7e;color:#111}.field-help{font-size:12px;color:#b4baab;margin-block:12px 20px}.light .field-help{color:#565e4d}.checks{border:0;padding:0;margin:23px 0}.checks legend{font-size:12px;margin-bottom:12px}.check{display:flex;gap:10px;align-items:start;font-size:12px;margin:10px 0;cursor:pointer}.check input{width:17px;height:17px;accent-color:#fff;flex:none;margin:2px 0}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:50px;padding:12px 20px;border:1px solid currentColor;background:var(--paper);color:var(--ink);text-decoration:none;font-size:12px;line-height:1.4;border-radius:0}.btn:hover{background:#d7d9ce}.btn.secondary{background:transparent;color:inherit}.btn.secondary:hover{background:#ffffff12}.light .btn{background:#111;color:var(--paper);border-color:#111}.light .btn.secondary{background:transparent;color:#111}.light .btn.secondary:hover{background:#1111}.btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.result{border:1px solid var(--rule);margin-top:24px;padding:22px;min-height:90px;font-size:14px;background:#ffffff04}.result p{margin-block:0 12px}.result p:last-child{margin-bottom:0}.result ul{padding-left:20px}.result h4{font-size:18px;margin:15px 0 8px}.result .stat-card{padding:14px 0;border-bottom:1px solid var(--rule)}.result .stat-value{font-size:23px;letter-spacing:-.04em}.result .stat-label{font-size:11px}.result:empty{display:none}.cycle-banner{padding-inline:var(--space);padding-bottom:70px}.cycle-banner .image-compare{aspect-ratio:2.05;--image-focus:center 60%}.co2-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;margin-bottom:55px}.co2-heading p{align-self:end;max-width:420px}.co2-panel{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.co2-panel .result{margin:0;background:#e7e9e0;border-color:#979f8c}.co2-panel .result .calc-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.calc-result-card{border-block-end:1px solid var(--rule);padding:16px 0}.calc-result-number,.calc-result-value{font-size:27px;letter-spacing:-.045em;font-weight:500}.calc-result-label{font-size:11px;letter-spacing:.015em}.calc-result-card p{margin:0}.method{margin-top:38px;max-width:900px;font-size:12px;color:#56604d}.method summary{padding-block:10px;border-bottom:1px solid var(--line);font-size:13px;color:#111}.method p{margin-top:20px}.method ul{padding-left:17px}.municipal-heading{max-width:1050px;margin-bottom:55px}.municipal-heading h2{margin-bottom:30px}.municipal-heading .large-copy{max-width:700px;color:#b9beb0}.planning{display:grid;grid-template-columns:1fr 1fr;gap:60px}.plan-figure{position:relative;min-height:350px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule);overflow:hidden}.plan-figure:before,.plan-figure:after{content:"";position:absolute;inset:25px;border:1px solid #ffffff12;border-radius:50%;transform:scale(1.15,.9)}.plan-figure:after{inset:60px;border-color:#ffffff28}.plan-mark{width:180px;height:180px;filter:invert(1);opacity:.8}.plan-size{position:absolute;top:25px;left:25px;font-size:10px;letter-spacing:.12em}.plan-note{position:absolute;bottom:24px;left:25px;right:25px;font-size:11px;color:#b2b8a8;max-width:330px}.steps{border-top:1px solid var(--rule)}.step{display:grid;grid-template-columns:30px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--rule)}.step>span{font-size:11px;margin-top:5px;color:#b1b5a9}.step h3{font-size:23px;margin-bottom:9px}.step p{font-size:13px;color:#b1b5a9}.logbook{border-block:1px solid var(--rule);margin-top:70px}.logbook>summary{padding:30px 0;display:flex;align-items:center;justify-content:space-between;font-size:23px;letter-spacing:-.035em}.logbook>summary span{font-size:27px}.logbook[open]>summary span{transform:rotate(45deg)}.log-inner{padding-bottom:35px}.log-inner>.two-col{margin-top:25px}.log-inner .small{max-width:900px}.log-clear{padding:20px;border:1px solid #a8ac9d;margin-top:20px}.faq{max-width:1000px}.faq details{border-bottom:1px solid var(--line);padding-block:24px}.faq summary{font-size:20px;display:flex;justify-content:space-between;gap:24px}.faq summary:after{content:"+";flex:none}.faq details[open] summary:after{content:"−"}.faq details p{max-width:780px;margin-top:18px;color:#505747;font-size:15px}.contact{padding-block:100px}.contact h2{font-size:clamp(50px,7.5vw,114px);max-width:900px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;margin-top:65px}.contact-info .large-copy{margin-bottom:35px}.contact-info .small{margin-top:28px;max-width:370px;color:#a8ae9c}.contact-info>a{display:block;font-size:clamp(18px,2vw,29px);line-height:1.4;margin-bottom:14px;overflow-wrap:anywhere}.contact-card{border-top:1px solid var(--rule);padding-top:25px}.contact-card .contact-note{font-size:12px;color:#b8bdaf;margin-block:17px}.draft-panel{border:1px solid var(--rule);padding:20px;margin-top:22px}.draft-panel textarea{width:100%;min-height:200px;background:transparent;color:#fff;border:1px solid #777;padding:12px;font:13px/1.6 monospace}.contact-status{font-size:13px;margin-top:14px}.footer{border-top:1px solid var(--rule);padding-block:40px 25px}.footer-top{display:flex;justify-content:space-between;gap:40px}.footer .wordmark img{width:65px;height:65px}.footer .wordmark span{font-size:18px}.brand-family{font-size:11px;line-height:2;text-align:right}.brand-family span{display:block;color:#999f8e;font-size:9px;letter-spacing:.13em;margin-bottom:8px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);margin-top:35px;padding-top:22px;font-size:10px;color:#a7ae9a}.footer-bottom>div{display:flex;gap:22px}.footer-bottom button{font:inherit;background:transparent;color:inherit;padding:0;border:0;text-decoration:underline}.legal{background:var(--paper);color:#111;min-height:75vh;padding-block:75px 100px}.legal-copy{max-width:1000px}.legal h1{font-size:clamp(44px,6.5vw,90px);margin-block:25px 45px}.legal h2{font-size:25px;margin-block:36px 15px;letter-spacing:-.03em}.legal p,.legal li{font-size:15px;max-width:800px;overflow-wrap:anywhere}.subhero{padding-block:60px 65px}.subhero h1{font-size:clamp(55px,7.4vw,110px);max-width:1100px;margin:28px 0}.subhero .large-copy{max-width:750px;color:#c4c9bb}.subhero .btn-row{margin-top:40px}.breadcrumb{font-size:10px;letter-spacing:.08em;color:#bbc1b1}.feature-row{display:grid;grid-template-columns:1fr 1.6fr;gap:7vw;border-top:1px solid var(--line);padding:40px 0}.feature-row h3{font-size:30px}.feature-row p{max-width:620px}.consent-dialog{background:var(--paper);color:#111;border:1px solid #111;max-width:min(620px,calc(100% - 32px));padding:30px}.consent-dialog::backdrop{background:#000a}.consent-dialog h2{font-size:30px;margin-bottom:20px}.consent-dialog p{font-size:14px}.consent-dialog .check{margin:20px 0}.consent-dialog .btn{background:#111;color:#fff}.consent-dialog .btn.secondary{color:#111;background:transparent}.consent-dialog .check input{accent-color:#111}.consent-dialog .small{margin-top:15px}.consent-badge{font-size:10px;letter-spacing:.08em;margin-bottom:12px}
@media(min-width:1600px){.hero-visual,.hero .caption,.cycle-banner{max-width:calc(1500px - 2 * var(--space));margin-inline:auto}.cycle-banner{padding-inline:0}.hero h1{font-size:171px}}
@media(max-width:960px){.masthead{height:76px}.masthead nav{gap:20px}.hero h1{font-size:11.3vw}.section-intro{gap:6vw;grid-template-columns:1.2fr .8fr}.material-layout{gap:4vw}.pile summary{grid-template-columns:30px 1fr 18px;gap:10px}.pile .detail-copy{padding-left:40px}.planning,.two-col,.co2-panel{gap:35px}.contact-grid{gap:5vw}.fields{gap:16px}.intro-grid{grid-template-columns:.6fr 1.4fr}.co2-heading{gap:40px}.hero-visual .image-compare{aspect-ratio:1.6}.plan-mark{width:140px;height:140px}}
@media(max-width:720px){:root{--space:22px}.masthead{padding-inline:22px;gap:15px}.wordmark img{width:38px;height:38px}.wordmark span{font-size:11px}.menu-toggle{display:block}.js-enabled .masthead nav{display:none;position:absolute;left:0;right:0;top:75px;background:#111210;border-bottom:1px solid #555;padding:20px 22px 30px;flex-direction:column;align-items:stretch;gap:0}.js-enabled .masthead nav.is-open{display:flex}.masthead nav a{padding:16px 0;font-size:16px;border-bottom:1px solid #ffffff30}.masthead .nav-action{margin-top:15px;padding:15px;border-color:#777}.masthead nav{display:flex;flex-wrap:wrap;gap:12px}.masthead:not(:has(.menu-toggle)){height:auto}.hero{padding-top:25px}.hero-top{align-items:start;margin-bottom:34px}.hero-top .eyebrow{max-width:115px;font-size:8px}.status{font-size:8px;padding:5px 8px;white-space:nowrap}.hero h1{font-size:11.3vw}.hero h1 span{font-size:.46em;margin-bottom:.6em}.hero-bottom{gap:30px;padding-block:27px 32px}.hero-bottom p{font-size:18px;max-width:240px}.hero-bottom .text-link{gap:15px;font-size:10px;white-space:nowrap}.hero-visual{margin:0}.hero-visual .image-compare{aspect-ratio:1.12;--image-focus:49% center}.visual-stamp{width:80px;height:80px;top:-24px;right:22px;font-size:8px}.visual-stamp b{font-size:24px}.hero .caption{margin-inline:22px}.caption{font-size:8px}.caption span:last-child{text-align:right}.intro{padding-block:70px}.intro-grid,.section-intro,.co2-heading{display:block}.intro-grid .aside{max-width:none;margin:15px 0 35px}.intro-tail{gap:25px;margin-top:30px}.intro-tail p{font-size:14px}.section-intro{margin-bottom:40px}.section-intro h2{margin-bottom:25px}.section-label{margin-bottom:28px}.numbered{grid-template-columns:1fr}.role{padding:27px 0;min-height:0;display:grid;grid-template-columns:1fr 30px;gap:14px}.role+.role{border-left:0;border-top:1px solid var(--line);padding:27px 0}.role .eyebrow,.role h3,.role p{grid-column:1}.role .arrow{grid-column:2;grid-row:2}.role h3{font-size:29px}.role p{max-width:85%}.material-layout,.two-col,.co2-panel,.planning,.contact-grid{grid-template-columns:1fr;gap:40px}.material-layout figure{position:static}.material-layout .image-compare{aspect-ratio:1.3}.material-layout figure>p{max-width:none}.pile summary{min-height:84px}.pile h3{font-size:28px}.tools-head{margin-bottom:45px}.tools-head h2{font-size:43px}.tool+.tool{margin-top:10px}.cycle-banner{padding-inline:0;padding-bottom:50px}.cycle-banner .image-compare{aspect-ratio:1.25}.cycle-banner .caption{padding-inline:22px}.co2-heading h2{margin-bottom:25px}.co2-panel .result{min-height:140px}.planning .plan-figure{min-height:310px}.logbook{margin-top:50px}.logbook>summary{font-size:21px}.log-inner .two-col{gap:20px}.contact{padding-block:70px}.contact-grid{margin-top:40px}.contact h2{font-size:clamp(48px,10vw,75px)}.contact-info>a{font-size:22px}.footer-top{flex-direction:column}.brand-family{text-align:left}.footer-bottom{align-items:start;flex-direction:column}.footer-bottom>div{flex-wrap:wrap;gap:15px}.feature-row{display:block;padding-block:30px}.feature-row h3{margin-bottom:18px}.subhero{padding-block:40px 55px}.subhero h1{font-size:clamp(48px,10vw,78px)}.subhero .large-copy{font-size:23px}.method{margin-top:25px}.faq summary{font-size:18px}.no-js-nav{margin-top:25px}.hero .compare-toolbar>span{font-size:8px}}
@media(max-width:380px){.hero-bottom{display:block}.hero-bottom .text-link{margin-top:15px}.fields{grid-template-columns:1fr}.intro-tail{grid-template-columns:1fr;gap:18px}.hero-top{gap:8px}.status{font-size:7px}.hero-top .eyebrow{font-size:7px}.contact-info>a{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.masthead,.menu-toggle,.compare-range,.compare-toolbar,.compare-divider,.visual-stamp,.btn,.consent-dialog,.footer-bottom button{display:none!important}body,.light,.legal{background:white;color:black}main{padding:0}.section{padding-block:30px}.wrap{padding-inline:0}.hero h1{font-size:65px}.image-compare{max-height:260px}.material-layout figure{position:static}.field input,.field select{color:black;background:white}.muted,.tool>p,.intro-tail p,.contact-info .small,.step p,.caption{color:#444!important}details>*,details .detail-copy{display:block!important}.footer{color:black}.wordmark img,.plan-mark{filter:none}}

.result-item{padding:16px 0;border-bottom:1px solid var(--rule)}.result-item:last-child{border-bottom:0}.result-item strong{display:block;font-size:22px;line-height:1.25;letter-spacing:-.035em;font-weight:500;margin-bottom:7px}.result-item p{font-size:13px;line-height:1.55}.tool .result-item strong{font-size:18px}.method:not(.light .method){color:#adb59f}.method:not(.light .method) summary{color:inherit;border-color:var(--rule)}
@media(max-width:720px){html:not(.js-enabled) .masthead{height:auto;flex-wrap:wrap;padding-block:20px}html:not(.js-enabled) .menu-toggle{display:none}html:not(.js-enabled) .masthead nav{position:static;display:flex;flex-wrap:wrap;flex-direction:row}html:not(.js-enabled) .masthead nav a{font-size:12px;padding:9px 0}.compare-toolbar{padding-inline:12px;font-size:8px}.compare-toolbar>span{font-size:7px;max-width:140px}.compare-labels{inset:12px 12px auto}}
