:root{--ink:#10323d;--navy:#082a36;--deep:#05222d;--mint:#9fe8d2;--paper:#f3f7f5;--line:#d7e2df;--muted:#506670;--white:#fff}*{box-sizing:border-box}body{margin:0;background:white;color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}a{text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button{cursor:pointer}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.skip{position:absolute;top:-80px;left:20px;padding:12px;background:white;z-index:5}.skip:focus{top:0}header{background:white;border-bottom:1px solid #e6ecea}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;white-space:nowrap}.mark{height:45px;width:45px;background:var(--navy);border-radius:10px;display:grid;place-items:center}.mark svg{width:31px;height:31px;fill:var(--mint)}.wordmark{letter-spacing:2px;font-size:14px;font-weight:800}.wordmark b{color:#167967}nav{display:flex;gap:25px;align-items:center}nav a{font-size:13px;font-weight:700;white-space:nowrap}.menu{display:none}.hero{background:var(--navy);color:white}.hero-grid{display:grid;grid-template-columns:0.95fr 1.15fr;gap:58px;align-items:center;padding-top:72px;padding-bottom:72px}.eyebrow{font-size:11px;letter-spacing:2.1px;font-weight:800;line-height:1.5;text-transform:uppercase;margin:0 0 23px}.hero .eyebrow,.lab-section .eyebrow,.closing .eyebrow{color:var(--mint)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,4.9vw,74px);letter-spacing:-3px;line-height:1.06;font-weight:500;margin-bottom:26px}h1 em{font-family:Georgia,serif;color:var(--mint);font-weight:400}h2{font-size:clamp(29px,2.9vw,43px);letter-spacing:-1.5px;line-height:1.16;font-weight:500;margin-bottom:22px}h3{font-size:23px;font-weight:500;letter-spacing:-.6px;line-height:1.25;margin-bottom:17px}.lead{font-size:20px;line-height:1.65;color:var(--muted)}.hero .lead{font-size:19px;color:#d0e1e4;max-width:480px;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 21px;background:var(--mint);color:var(--deep);border:1px solid var(--mint);font-size:13px;letter-spacing:.2px;font-weight:800;line-height:1.4;border-radius:3px;min-height:50px}.btn:hover{text-decoration:none;filter:brightness(.95)}.btn.outline{background:transparent;color:white;border-color:#6d8b93}.btn.dark{background:var(--navy);border-color:var(--navy);color:white}.btn.pale{background:transparent;border-color:#859c9f;color:var(--ink)}figure{margin:0}.hero img{width:100%;height:470px;object-fit:cover;border:1px solid #42636b;border-radius:2px}.principles{background:#def1e9}.principles>.wrap{display:grid;grid-template-columns:repeat(3,1fr);padding-top:27px;padding-bottom:27px}.principles .wrap>div{display:flex;gap:18px;align-items:center;border-right:1px solid #b9cec6;padding:0 27px}.principles .wrap>div:first-child{padding-left:0}.principles .wrap>div:last-child{border:0}.principles b{font-size:12px;letter-spacing:1px}.principles span{font-size:13px;color:#48665d}.section{padding-top:90px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:38px}.section-heading h2{max-width:650px;margin-bottom:0}.section-heading>p{max-width:320px;margin-bottom:3px;color:var(--muted);font-size:15px}.section-heading .eyebrow{margin-bottom:15px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{display:block;padding:30px 29px;border:1px solid var(--line);background:white;border-top:3px solid #267e70;transition:transform .15s}.card:hover{transform:translateY(-3px);text-decoration:none}.card p{font-size:15px;color:var(--muted);margin-bottom:24px}.card h3{font-size:26px;min-height:65px}.card .eyebrow{font-size:10px;color:#47766e;margin-bottom:26px}.textlink{display:inline-block;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:6px}.lab-section{background:var(--deep);color:white;padding:86px 0 90px}.lab-section .section-heading>p{color:#bfd4d6}.lab-preview{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;margin-top:45px}.live-example{background:#123d48;padding:36px;border:1px solid #34545d}.example-title{display:flex;gap:20px;align-items:end;justify-content:space-between;margin-bottom:20px}.example-title>span{max-width:130px;font-size:15px}.example-title b{font-size:55px;line-height:1.1;font-weight:400;color:var(--mint)}.example-title small{font-size:20px}.powerbar{height:22px;display:flex;gap:3px}.powerbar i:nth-child(1){background:#648b96}.powerbar i:nth-child(2){background:#c6d3d0}.powerbar i:nth-child(3){background:var(--mint)}.legend{display:flex;justify-content:space-between;font-size:10px;gap:12px;margin:14px 0 25px;color:#d0e0e1}.live-example>p{color:#c5d5d9;font-size:15px;max-width:380px}.tool-list{display:flex;flex-direction:column;justify-content:space-between}.tool-list a{display:flex;gap:28px;padding:8px 0 20px;border-bottom:1px solid #36545c}.tool-list a>span{font-size:12px;color:var(--mint);margin-top:5px}.tool-list h3{margin-bottom:8px}.tool-list p{color:#b8cdd1;font-size:15px;margin-bottom:0}.system{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.system .lead{font-size:18px}.system-stack>div{border-bottom:1px solid var(--line);padding:22px 0 19px 52px;position:relative}.system-stack span{position:absolute;left:0;color:#3b8b79;font-size:12px;top:26px}.system-stack h3{margin-bottom:6px}.system-stack p{font-size:14px;color:var(--muted);margin:0}.soft{background:var(--paper)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.resource-grid p{color:var(--muted);font-size:15px}.big-no{font-family:Georgia,serif;font-size:39px;color:#719b8f;display:block;margin-bottom:19px}.closing{background:#123b43;color:white;padding:65px 0}.closing .wrap{position:relative}.closing h2{font-size:43px;line-height:1.17}.closing .btn{position:absolute;right:0;top:70px}footer{background:var(--paper);padding:50px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:32px}.footer-top p{font-size:14px;color:var(--muted)}footer nav{flex-wrap:wrap;gap:26px;border-bottom:1px solid #cad7d2;padding-bottom:25px}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;padding:22px 0;gap:20px}.footer-bottom a{margin-left:18px}.fine{font-size:11px;color:var(--muted);line-height:1.7}.pagehead{padding:65px 0 45px}.pagehead h1{font-size:58px;line-height:1.12;max-width:960px;letter-spacing:-2px}.pagehead .eyebrow{color:#3d8474}.top-zero{padding-top:0}.article-layout{display:grid;grid-template-columns:2fr 1fr;gap:100px;margin:0 auto 60px}.article-body section{margin:42px 0}.article-body h2,.article h2{font-size:29px;letter-spacing:-.7px;margin-bottom:14px}.article-body p{color:var(--muted)}.sidebar{background:var(--paper);padding:30px;align-self:start}.sidebar h2{font-size:27px}.sidebar p{font-size:15px;color:var(--muted)}.sidebar .textlink{margin-top:25px}.sources{border-top:1px solid var(--line);padding:30px 0 45px;margin-top:30px}.sources h2{font-size:24px}.sources p{font-size:14px;margin-bottom:18px}.sources a{text-decoration:underline}.sources small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.notice{padding:22px;background:var(--paper);border-left:3px solid #438673;margin:30px 0 20px}.article{max-width:870px;margin-bottom:70px}.article h2{margin-top:35px}.tool{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start}.inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:21px 24px}label{display:block;font-size:13px;font-weight:700}input,select{display:block;width:100%;background:white;border:1px solid #9fb5b7;border-radius:3px;padding:12px;margin-top:8px;color:var(--ink);min-height:48px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #22a68a;outline-offset:3px}.tool .actions{margin-top:27px}.results{padding:30px;background:var(--paper);border-top:4px solid #2b8b75;min-height:360px}.result-main{font-size:42px;letter-spacing:-1px;font-weight:500;line-height:1.2;margin-bottom:8px}.result-sub{color:var(--muted);font-size:13px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.result-grid b{font-size:22px;font-weight:500;display:block}.result-grid small{display:block;font-size:12px;color:var(--muted)}.result-message{font-size:14px;padding:15px;background:#e0ede6;border-left:3px solid #4b8c76}.result-message.warn{background:#fbefda;border-color:#ae7838}.result-error{color:#a33126}.explain{max-width:850px;margin-top:50px}.explain h2{font-size:27px;letter-spacing:-.6px;margin-top:30px}.explain p{font-size:15px;color:var(--muted)}.search-label{max-width:500px;margin-bottom:30px}.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:25px}.guide-list article,.eco-list article{padding:30px;border:1px solid var(--line)}.guide-list h2,.eco-list h2{font-size:27px;letter-spacing:-.7px}.guide-list p,.eco-list p{font-size:15px;color:var(--muted)}.guide-list .eyebrow,.eco-list .eyebrow{color:#4a8676;font-size:10px}.eco-list{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}#ecosystem-filter{max-width:400px}.check{display:flex;align-items:start;gap:20px;border-bottom:1px solid var(--line);padding:20px 0;max-width:900px}.check input{width:21px;height:21px;min-height:0;flex-shrink:0;margin-top:5px;accent-color:#176e5c}.check b{display:block;margin-bottom:5px;font-size:16px}.check span{font-size:14px;font-weight:400;color:var(--muted)}#check-export{margin-top:28px}[hidden]{display:none!important}@media(min-width:1550px){.hero img{height:500px}.hero-grid{padding-top:85px;padding-bottom:85px}}@media(max-width:1150px){.wrap{width:calc(100% - 64px)}nav{gap:16px}nav a{font-size:12px}.wordmark{font-size:12px;letter-spacing:1px}.hero-grid{gap:35px}.hero img{height:440px}.hero h1{font-size:56px}.hero .lead{font-size:17px}.principles .wrap>div{display:block}.principles span{display:block;margin-top:5px}.lab-preview{gap:35px}.system{gap:50px}.article-layout{gap:45px}}@media(max-width:900px){.menu{display:block;border:1px solid #95aaa7;background:white;border-radius:3px;padding:9px 15px;font-size:13px}.header-inner{min-height:80px;flex-wrap:wrap;gap:0}.header-inner nav{display:none;width:100%;padding:20px 0;flex-wrap:wrap;gap:20px}.header-inner nav.open{display:flex}.hero-grid{grid-template-columns:1fr 1fr;gap:25px;padding:50px 0}.hero h1{font-size:45px;letter-spacing:-2px}.hero .lead{font-size:16px}.hero .eyebrow{font-size:9px}.hero img{height:430px}.btn{padding:13px 16px}.cards{gap:15px}.card{padding:22px 18px}.card h3{font-size:23px}.lab-preview,.system{gap:28px}.section-heading{gap:25px}.resource-grid{gap:28px}.section{padding-top:65px;padding-bottom:65px}.tool{gap:25px}.inputs{gap:16px}.results{padding:24px}.article-layout{grid-template-columns:1.7fr 1fr;gap:30px}}@media(max-width:650px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:76px}.mark{width:37px;height:37px;border-radius:8px}.brand{gap:9px}.wordmark{font-size:11px;letter-spacing:1px}.hero-grid{grid-template-columns:1fr;padding:42px 0 35px;gap:32px}.hero h1{font-size:51px;line-height:1.07;max-width:480px}.hero .eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:22px}.hero .lead{font-size:17px;max-width:440px;margin-bottom:25px}.hero img{height:auto;aspect-ratio:1.45;object-fit:cover}.hero .actions{gap:10px}.hero .btn{font-size:12px}.principles>.wrap{padding:23px 0;gap:16px;grid-template-columns:1fr}.principles .wrap>div{border:0;padding:0;display:flex;gap:15px}.principles b{width:90px;font-size:10px}.principles span{font-size:11px;margin:0}.section{padding-top:55px;padding-bottom:55px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;max-width:100%}.section-heading>.textlink{margin-top:25px}h2{font-size:34px}.cards,.resource-grid,.lab-preview,.system,.tool,.article-layout,.guide-list,.eco-list{grid-template-columns:1fr}.card{padding:28px}.card h3{min-height:0;font-size:27px}.card .eyebrow{margin-bottom:18px}.card p{max-width:450px}.lab-section{padding:55px 0}.lab-preview{gap:34px;margin-top:30px}.live-example{padding:25px}.example-title b{font-size:48px}.legend{font-size:9px;gap:8px}.tool-list a{padding:18px 0}.system-stack>div:first-child{padding-top:0}.system-stack>div:first-child span{top:5px}.resource-grid{gap:35px}.big-no{margin-bottom:12px}.closing{padding:50px 0}.closing h2{font-size:35px}.closing .btn{position:static;margin-top:12px}footer{padding-top:35px}.footer-top{display:block}.footer-top p{margin-top:22px}footer nav{gap:18px 25px}.footer-bottom{display:block}.footer-bottom>div{margin-top:15px}.footer-bottom a{margin:0 20px 0 0}.pagehead{padding-top:42px;padding-bottom:28px}.pagehead h1{font-size:43px;letter-spacing:-1.8px}.pagehead .eyebrow{margin-bottom:20px}.article-layout{gap:20px;margin-bottom:40px}.lead{font-size:18px}.article-body section{margin:30px 0}.sidebar{padding:25px}.article{margin-bottom:45px}.inputs{gap:20px 15px}.inputs label{font-size:11px}.inputs input,.inputs select{font-size:16px;padding:10px}.results{margin-top:10px}.result-main{font-size:38px}.explain{margin-top:35px}.guide-list article,.eco-list article{padding:25px}.section.top-zero{padding-top:0}.fine{font-size:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{header,footer,.menu,.btn{display:none}.wrap{width:100%}.tool{grid-template-columns:1fr}body{font-size:12pt}.hero{color:black;background:white}.hero h1 em{color:black}}
table{border-collapse:collapse;width:100%;font-size:12px;margin-bottom:25px}td,th{text-align:left;padding:8px 0;border-bottom:1px solid #c8d9d1}th{font-weight:700}.results h3{font-size:18px;margin-top:22px}button:disabled{cursor:not-allowed;opacity:.45}
