:root{--paper:#f9faf7;--paper-2:#eef0e9;--graphite:#172c25;--graphite-2:#11251e;--steel:#294238;--pine:#315f43;--pine-deep:#234d36;--signal:#d3f56b;--ink:#172c25;--muted:#5d695f;--muted-light:#b2c0b6;--maxw:1320px;--radius:7px}
body{background:var(--paper)}
.wrap{padding-left:48px;padding-right:48px}
h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:1.08}
.eyebrow{font-family:'IBM Plex Sans',sans-serif;font-size:.875rem;font-weight:500;letter-spacing:.08em}
header.nav{background:rgba(249,250,247,.96);border-bottom:1px solid #dce2d8;backdrop-filter:blur(14px)}
.nav-in{height:96px;gap:24px}.brand{color:var(--ink);gap:12px}.brand svg{background:var(--pine-deep);width:40px;height:40px;padding:5px;border-radius:8px}
.brand-name{font-size:1.15rem;letter-spacing:-.05em}.brand-name b{color:var(--pine)}.brand-sub{display:block;color:var(--muted);font-size:.75rem;letter-spacing:.12em}
nav.links{gap:24px}nav.links a{color:var(--ink);font-size:.875rem}nav.links a:hover{color:var(--pine)}
.lang{color:var(--ink);background:transparent;border:0;max-width:106px;font-family:inherit;font-size:.875rem;padding:10px 2px}
.btn{padding:15px 24px;border-radius:5px;font-family:inherit;font-size:1rem;font-weight:500;transition:background .2s,transform .2s}.btn-primary{background:var(--pine-deep);color:white}.btn-primary:hover{background:#356b49}.nav-cta{font-size:.875rem;padding:12px 18px}
.hero{background:var(--paper);color:var(--ink)}.hero::before{display:none}.hero-in{grid-template-columns:1.04fr 1fr;gap:42px;padding:66px 0 48px;align-items:stretch}
.hero-copy{padding:18px 0 0}.eyebrow.on-dark{color:var(--pine)}
.hero h1{font-size:clamp(2.8rem,4.65vw,4.5rem);max-width:12ch;line-height:1.06;margin-top:25px;font-weight:500}.hero h1 .hl{color:var(--pine)}
.hero .lead{font-size:1.05rem;color:var(--muted);line-height:1.7;max-width:45ch;margin-top:24px}.hero-cta{margin-top:30px;gap:12px}.btn-ghost{color:var(--ink);border-color:#c4cdc2}.btn-ghost:hover{color:var(--pine);border-color:var(--pine)}
.hero-strip{gap:22px;margin-top:40px;border-color:#d7dfd3;padding-top:22px}.hero-strip div{max-width:15ch}.hero-strip .k{font-family:inherit;font-weight:500;font-size:.9375rem;color:var(--ink)}.hero-strip .v{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:6px}
.product-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:565px;background:var(--signal);border-radius:10px;overflow:hidden;isolation:isolate}.product-stage:before{content:'';position:absolute;width:470px;height:470px;border:1px solid #799c4166;border-radius:50%;z-index:-1}.product-stage:after{content:'';position:absolute;width:350px;height:350px;border:1px solid #799c4166;border-radius:50%;z-index:-1}
.stage-caption{position:absolute;left:28px;top:26px;font-family:'IBM Plex Mono',monospace;font-size:.75rem;letter-spacing:.09em;color:#38522c}.stage-index{position:absolute;bottom:25px;left:28px;font-family:'IBM Plex Mono',monospace;font-size:.875rem;color:#38522c}
.cage-art{width:108%;max-width:590px;flex-shrink:0;transform:translate(-1%,-5%);filter:drop-shadow(0 26px 14px #37501630)}.loop-arrow{stroke:#315f43}.loop-head{fill:#315f43}.dash{animation:none}
section{padding:100px 0;scroll-margin-top:96px}.claim{background:var(--paper);padding:30px 0 70px}.claim-in{border-top:1px solid #d7dfd3;padding-top:44px;grid-template-columns:1fr 1fr;gap:80px}.claim h2{font-size:2rem;max-width:24ch}.pillar{padding:17px 0;border-color:#d7dfd3}.pillar:last-child{border-color:#d7dfd3}.pillar b{font-family:inherit;font-weight:500;font-size:1rem}.pillar .ps{font-size:.9375rem;color:var(--muted)}.pillar .pn{font-size:.875rem;min-width:24px}
.process{background:var(--pine-deep);color:var(--paper)}.process .eyebrow{color:var(--signal)}.sec-head{max-width:760px}.sec-head h2{font-size:clamp(2rem,3.6vw,3.3rem);max-width:25ch}.sec-head p{font-size:1.0625rem;line-height:1.7;max-width:60ch}.process .sec-head p,.step p{color:#c5d3c9}.steps{margin-top:64px}.step{padding:0 20px}.step .num{background:transparent;border:1px solid #73917e;color:var(--signal);font-size:.875rem;width:46px;height:46px}.step h3{font-family:inherit;letter-spacing:-.025em;font-size:1.125rem;font-weight:500;line-height:1.35}.step p{font-size:.9375rem;line-height:1.65}.step:not(:last-child):after{top:23px;background:#73917e}.loop-back{background:transparent;border-top:1px solid #73917e66;padding:26px 0 0;margin-top:40px;border-radius:0}.loop-back span{color:#c5d3c9}
.mat-grid{gap:0;border-top:1px solid #ced7c9;border-left:1px solid #ced7c9;margin-top:44px}.mat{background:transparent;border:0;border-right:1px solid #ced7c9;border-bottom:1px solid #ced7c9;border-radius:0;padding:30px 25px 34px;min-width:0}.mat:hover{transform:none;background:#eef3e7}.mat .code{font-size:.875rem;letter-spacing:0;padding:6px 10px;background:#e6eddc;color:#315f43;border-radius:4px}.mat h3{font-family:inherit;font-weight:500;letter-spacing:-.03em;font-size:1.25rem;line-height:1.3;margin-top:30px;overflow-wrap:anywhere}.mat p{font-size:.9375rem;line-height:1.7}.mat .bar{display:none}
.why{background:#eef0e9;color:var(--ink)}.why .eyebrow{color:var(--pine)}.why .sec-head h2{color:var(--ink)}.why .sec-head p{color:var(--muted)}.why-grid{grid-template-columns:repeat(3,1fr);background:none;border:0;gap:40px}.why-item{background:none;padding:25px 0;border-top:1px solid #c7d1c2}.why-item .wnum{color:var(--pine);font-size:.875rem}.why-item h3{color:var(--ink);font-family:inherit;font-weight:500;letter-spacing:-.03em;font-size:1.4rem;margin:24px 0 12px}.why-item p{color:var(--muted);font-size:1rem;line-height:1.7}
.neutral{padding:110px 0}.neutral h2{font-size:clamp(2.2rem,4.2vw,4rem);line-height:1.1;max-width:22ch;margin:24px auto}.neutral p{line-height:1.8}.reach{background:var(--graphite);padding:70px 0}.reach h2{font-size:2.75rem}.reach p{color:#c5d3c9;font-size:1rem;line-height:1.7}.reach-list{gap:12px;justify-content:flex-end}.reach-list span{font-size:1rem;border-radius:4px;padding:16px 18px}
.cta{background:var(--signal)}.cta-in{gap:90px}.cta .eyebrow{display:block;margin-bottom:24px}.cta h2{font-size:clamp(2.6rem,4.5vw,4rem);font-weight:500;line-height:1.06}.cta .csub{line-height:1.7}.cta .contact-lines a{font-family:inherit;font-size:1rem;overflow-wrap:anywhere}.cta .contact-lines{margin-top:36px}
form.req{background:var(--paper);padding:32px;border-radius:8px;gap:18px}form.req label{color:var(--muted);font-family:inherit;font-size:.875rem;letter-spacing:0;text-transform:none;margin-bottom:8px}form.req input,form.req select,form.req textarea{background:#fff;border:1px solid #ced7c9;color:var(--ink);font-size:1rem;border-radius:4px;padding:12px}form.req input:focus,form.req select:focus,form.req textarea:focus{outline-color:var(--pine)}form.req .note{font-size:.875rem;color:var(--muted);line-height:1.5}.ft{line-height:1.7}.ft h4{font-family:inherit;letter-spacing:0;font-size:.9375rem;color:#fff}.ft .imp .ph,.ft .ph,.ft-bottom{color:#b2c0b6}.ft-bottom{font-size:.875rem}.ft-bottom .mono{font-size:.75rem}.reveal{opacity:1;transform:none}
a:focus-visible,button:focus-visible{outline:3px solid #6f9748;outline-offset:4px}
@media(min-width:1500px){.hero-in{padding-top:80px;padding-bottom:60px}}
@media(max-width:1100px){.wrap{padding-left:30px;padding-right:30px}.nav-right{gap:16px}nav.links{gap:16px}.brand-name{font-size:1rem}.hero-in{gap:28px}.product-stage{min-height:540px}.hero h1{font-size:3.4rem}.hero-strip{gap:14px}.hero-strip div{max-width:12ch}.why-grid{gap:28px}.cta-in{gap:40px}}
@media(max-width:900px){.nav-in{height:80px}.hero-in{grid-template-columns:1fr 1fr;gap:25px;padding-top:40px}.hero h1{font-size:2.9rem}.hero-strip{display:none}.product-stage{min-height:450px}.hero .lead{font-size:1rem}.hero-cta .btn{padding:12px 16px}.claim-in{gap:36px}.claim h2{font-size:1.7rem}.steps{gap:32px}.step{flex:1 1 28%;padding:0}.why-grid{grid-template-columns:1fr 1fr}.reach-list{justify-content:flex-start}.cta-in{grid-template-columns:1fr;gap:40px}.cta h2{max-width:20ch}.reach-in{gap:32px}section{scroll-margin-top:80px}}
@media(max-width:620px){.wrap{padding-left:22px;padding-right:22px}.nav-in{height:76px;gap:10px}.brand svg{width:34px;height:34px}.brand-name{font-size:1rem}.brand-sub{font-size:.75rem;letter-spacing:.06em}.nav-right{gap:0}.lang{max-width:84px;font-size:.875rem}.hero-in{grid-template-columns:1fr;padding:28px 0 32px;gap:32px}.hero-copy{padding:0}.hero h1{font-size:clamp(2.8rem,10.8vw,4rem);max-width:15ch}.hero .lead{max-width:none}.hero-cta{gap:10px}.hero-cta .btn{padding:14px 18px}.product-stage{min-height:330px}.cage-art{width:95%;max-width:430px;transform:translateY(-7%);margin:0}.stage-caption{font-size:.75rem;left:20px;top:20px}.stage-index{left:20px;bottom:18px}.product-stage:before{width:310px;height:310px}.product-stage:after{width:235px;height:235px}.claim{padding:8px 0 48px}.claim-in{grid-template-columns:1fr;gap:26px;padding-top:30px}.claim h2{font-size:1.9rem;max-width:none}section{padding:64px 0}.sec-head h2{font-size:2.25rem}.steps{margin-top:38px;gap:28px}.step{flex-basis:100%;padding-left:64px;min-height:70px}.step:first-child{padding-left:64px}.step .num{position:absolute;left:0;top:0}.step h3{margin:0 0 8px}.mat-grid{grid-template-columns:1fr 1fr;margin-top:32px}.mat{padding:23px 17px}.mat h3{font-size:1.125rem;margin-top:24px}.mat p{font-size:.9375rem}.why-grid{grid-template-columns:1fr;gap:16px;margin-top:32px}.why-item{padding:20px 0}.why-item h3{margin-top:14px}.neutral{padding:68px 0}.neutral p{font-size:1rem}.reach{padding:52px 0}.reach h2{font-size:2.25rem}.reach-list span{padding:12px 14px}.cta-in{gap:30px}.cta h2{font-size:2.8rem}.cta .contact-lines{margin-top:24px}form.req{padding:22px}form.req .row{grid-template-columns:1fr}.ft-top{grid-template-columns:1fr;gap:30px}.ft-bottom{gap:20px}}
.material-picker{border:0;min-width:0;padding:0;margin:0}.material-picker legend{font-size:1rem;font-weight:500;margin-bottom:6px}.material-help{font-size:.875rem;color:var(--muted);margin:0 0 12px}.material-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}form.req label.material-option{display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid #ced7c9;border-radius:4px;padding:12px;margin:0;cursor:pointer;color:var(--ink);line-height:1.4;min-height:48px}form.req .material-option input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;padding:0;accent-color:var(--pine)}form.req .material-option:has(input:checked){background:#eef3e7;border-color:var(--pine)}form.req .email-notice{text-align:left;padding:12px;background:#eef3e7;border-radius:4px}@media(max-width:620px){.material-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
