:root{--forest:#162d28;--cream:#eff1df;--muted:#bdcbb9;--lime:#c3d7a0}
.icon{display:inline-block;width:20px;height:20px;flex-shrink:0;vertical-align:middle}
.hero .tiny-sun{width:23px;height:23px;color:#e7dba4}
.nav-cta .icon{width:15px;height:15px;margin-left:22px}
.button .icon,.text-link .icon{width:21px;height:21px}
.text-link .icon{transition:transform .2s}
.text-link:hover .icon{transform:translate(3px,-3px)}
.hero-bottom .icon{width:19px;height:19px;margin-left:20px}
.footer .footer-sun{width:35px;height:35px}
.footer>a:not(.brand) .icon{width:14px;height:14px;margin-left:5px}
.dialog-close{padding:8px;display:flex;align-items:center;justify-content:center}
.dialog-close .icon{width:22px;height:22px}
body{background:#162d28;color:var(--cream)}
.header{background:linear-gradient(#10241fc9,#10241f00);border:0}
.desktop-nav{gap:27px;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:1.6px}
.hero{min-height:790px;max-height:1050px}
.hero-art{background-image:url("assets/hero-clean.webp");background-position:center}
.hero-shade{background:linear-gradient(90deg,#10241f80,#10241f00 80%),linear-gradient(0deg,#162d28,#162d2800 25%)}
.hero-content{max-width:1120px;padding-top:200px}
h1,h2{font-family:var(--sans);font-weight:650;text-transform:uppercase;letter-spacing:3px;line-height:1.12}
h1{font-size:clamp(62px,6.9vw,110px);margin:26px 0}
h1 em,h2 em{font-style:normal;font-weight:inherit;color:var(--lime)}
.hero-description{font-size:17px;color:#e0e8d9}
.hero-bottom{bottom:36px}
.eyebrow{color:var(--lime);font-size:11px;letter-spacing:2.4px;font-weight:700}
.button{border-radius:0;clip-path:polygon(1% 5%,35% 1%,66% 3%,98% 0,100% 93%,69% 99%,30% 97%,0 100%);padding:21px 27px;letter-spacing:1.2px;font-size:10px;text-transform:uppercase}
.intro,.approach{position:relative;background-color:#1d352c;background-image:radial-gradient(ellipse at 50% 50%,#7891691f,transparent 66%),url("assets/forest-shapes.svg");background-size:auto,cover}
.intro{grid-template-columns:.9fr 1.4fr;gap:15px 8%;align-items:center;padding:105px 12% 130px}
.section-label{grid-column:2;color:var(--lime);max-width:none;text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:650}
.dot{background:var(--lime)}
.intro-copy{grid-column:2}
.intro h2{font-size:clamp(30px,3.2vw,48px);letter-spacing:2.3px;margin-bottom:28px}
.intro p{max-width:560px;font-size:15px;line-height:1.85;color:#d2ddc9}
.orbit{display:block;grid-column:1;grid-row:1 / 3;color:var(--lime)}
.orbit svg{width:230px;stroke:currentColor;stroke-width:2.5}
.orbit span{color:#c1d1b3;font-size:10px;letter-spacing:1.3px}
.frontiers{padding:0;background:#162d28}
.section-top{margin:0;border:0;padding:28px 7%;background:#162d28}
.section-top .eyebrow{margin:0}
.section-top span{color:#c1d1b3}
.frontier,.frontier.reverse{display:flex;position:relative;isolation:isolate;min-height:750px;padding:100px 9%;align-items:center;margin:0;overflow:hidden;scroll-margin-top:0}
.frontier.reverse{justify-content:flex-end}
.frontier-image{position:absolute;inset:0;aspect-ratio:auto;min-height:0;border-radius:0;z-index:-2;background:#1b362b;filter:none}
.scene-art{width:100%;height:100%;object-fit:cover;object-position:center}
.frontier-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#122c25e8,#122c25b3 32%,#122c2526 65%,transparent),linear-gradient(0deg,#162d28,transparent 16%,transparent 85%,#162d28)}
.reverse .frontier-image::after{background:linear-gradient(270deg,#122c25ed,#122c25c7 32%,#122c2526 65%,transparent),linear-gradient(0deg,#162d28,transparent 16%,transparent 85%,#162d28)}
.frontier-copy{width:45%;max-width:530px;position:relative}
.frontier-copy .eyebrow{color:var(--lime);margin-bottom:25px}
.frontier h2{font-size:clamp(32px,3.3vw,50px);letter-spacing:2px;line-height:1.18;margin-bottom:25px}
.frontier h2 em{color:var(--lime)}
.frontier-copy>p:not(.eyebrow){color:#d7e0d0;font-size:15px;line-height:1.85;max-width:440px}
.image-label{display:none}
.image-caption{right:7%;left:auto;bottom:50px;color:#d0dec5;font-size:10px;letter-spacing:.8px}
.reverse .image-caption{right:auto;left:7%}
.tags span{border-color:#d4e2c238;color:#d4e2c2;border-radius:2px;background:#162d2838;font-size:9px}
.text-link{color:var(--cream);border-color:#d4e2c255;text-transform:uppercase;letter-spacing:1.8px;font-size:10px;font-weight:650}
.approach{background-color:#1b3028;padding-top:110px;padding-bottom:110px}
.approach>.eyebrow,.approach em{color:var(--lime)}
.approach h2{font-size:clamp(34px,4vw,58px);letter-spacing:2.2px}
.principles>div{border-color:#c4d5b340}
.principles span{color:var(--lime)}
.principles h3{font-family:var(--sans);font-size:19px;letter-spacing:.3px;font-weight:550}
.principles p{color:#c1d1b9;font-size:14px}
.closing{min-height:560px;background-image:url("assets/hero-clean.webp");background-position:center 60%}
.closing-shade{background:linear-gradient(#1b3028,#132d2577 30%,#132d2577 70%,#122d26)}
.closing h2{font-size:clamp(50px,6vw,82px);letter-spacing:3px}
.footer{background:#122d26}
dialog{background:#233d30;color:var(--cream)}
dialog h2{font-size:32px;letter-spacing:1px}
dialog p{color:#d0ddc5}
.dialog-close{color:var(--cream)}
#dialog-topics>div{border-color:#d0ddc540}
.dialog-done{background:var(--lime);color:#142d27}
.skip{background:var(--lime);color:#142d27}
@media(max-width:1050px){
.intro{padding-left:8%;padding-right:8%;gap:15px 5%}
.frontier,.frontier.reverse{padding-left:7%;padding-right:7%}
.frontier-copy{width:49%}
}
@media(max-width:760px){
.hero{min-height:760px;height:100svh}
.hero-art{background-position:62% center}
.hero-shade{background:linear-gradient(90deg,#10241f99,#10241f33),linear-gradient(0deg,#162d28,transparent 35%)}
.hero-content{padding:185px 7% 140px}
h1{font-size:clamp(45px,11vw,70px);letter-spacing:2px}
.hero-description{font-size:15px}
.hero .eyebrow{font-size:8px;letter-spacing:1.7px}
.intro{display:block;padding:65px 8% 80px;text-align:center}
.section-label{justify-content:center;font-size:8px;margin-bottom:25px}
.intro h2{font-size:31px;letter-spacing:1.4px}
.intro p{font-size:14px;text-align:left}
.orbit{margin:40px auto 0}
.orbit svg{width:110px}
.section-top{padding:25px 7%}
.frontier,.frontier.reverse{min-height:930px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;padding:380px 8% 85px;gap:0}
.scene-art{position:absolute;top:0;height:480px;object-position:70% center}
.reverse .scene-art{object-position:25% center}
.frontier-image::after,.reverse .frontier-image::after{background:linear-gradient(0deg,#162d28 48%,#162d2800 76%,#162d2833 95%,#162d28)}
.frontier-copy{width:100%;max-width:none}
.frontier h2{font-size:32px;letter-spacing:1.5px;line-height:1.2}
.frontier-copy>p:not(.eyebrow){font-size:14px}
.frontier-copy .eyebrow{font-size:10px;margin-bottom:20px}
.image-caption{display:none}
.approach{padding:70px 8%}
.approach h2{font-size:30px;letter-spacing:1.3px}
.closing{min-height:480px}
.closing h2{font-size:48px}
}
