:root{--green:#102e2a;--deep:#0c2421;--paper:#f3f1e8;--lime:#d4e7a0;--ink:#193a33;--muted:#5c6a60;--line:#bdc5b6;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:95px;scrollbar-gutter:stable}
body{margin:0;background:var(--green);color:var(--paper);font:400 15px/1.7 var(--sans)}
body:has(dialog[open]){overflow:hidden}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:400}
h1,h2{letter-spacing:-.055em;line-height:1.04}
h2{font-size:clamp(42px,4.9vw,78px)}
h2 em,.serif{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.035em;line-height:.95}
h3{letter-spacing:-.04em;line-height:1.2}
p+p{margin-top:18px}
button,input,textarea,select{font:inherit}
button{cursor:pointer;border:0;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:5px}
img{display:block;max-width:100%;height:auto}
strong{font-weight:600}
.wrap{width:min(1340px,calc(100% - 112px));margin:auto}
.section{padding:115px 0}
.paper{background:var(--paper);color:var(--ink)}
.eyebrow{font-size:10px;line-height:1.6;letter-spacing:.13em;text-transform:uppercase}
.section-intro{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:55px}
.section-note{font-size:11px;line-height:1.6}
.lead{font-size:20px;line-height:1.55;letter-spacing:-.02em}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip{position:fixed;top:15px;left:15px;transform:translateY(-180%);background:var(--lime);color:var(--green);padding:15px;z-index:200}
.skip:focus{transform:none}
.reading-line{height:2px;position:fixed;inset:0 0 auto;z-index:101;background:var(--lime);transform:scaleX(0);transform-origin:left}
.header{display:flex;align-items:center;justify-content:space-between;gap:25px;position:fixed;inset:0 0 auto;z-index:90;padding:27px 4.2%;transition:background .3s,padding .3s;min-height:90px}
.header.scrolled{background:#102e2af2;backdrop-filter:blur(18px);padding-block:15px;border-bottom:1px solid #f3f1e81a;min-height:74px}
.logo{width:176px;flex-shrink:0;display:block}
.logo img{width:100%;filter:brightness(0) invert(1)}
.desktop-nav{display:flex;gap:29px}
.desktop-nav a{font-size:10px;text-decoration:none;position:relative;padding:8px 0}
.desktop-nav a:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}
.header-right{display:flex;align-items:center;gap:12px}
.house-link{font-size:10px;padding:12px 18px;border:1px solid #f3f1e849;border-radius:40px;text-decoration:none;display:flex;gap:25px;align-items:center}
.icon-button{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid currentColor;border-radius:50%;background:none;color:inherit;text-decoration:none;font-size:22px;transition:background .3s,color .3s}
.icon-button:hover{background:var(--lime);color:var(--green)}
.menu-button{display:none;flex-direction:column;gap:5px}
.menu-button span{display:block;width:16px;height:1px;background:currentColor}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:49px;padding:14px 22px;border-radius:40px;text-decoration:none;font-size:11px;font-weight:500;transition:background .25s,transform .25s}
.button:hover{transform:translateY(-3px)}
.button.lime{background:var(--lime);color:var(--green)}
.button.green{background:var(--green);color:var(--paper)}
.text-button{display:inline-flex;align-items:center;gap:16px;background:none;padding:13px 0;border-bottom:1px solid currentColor;font-size:11px;line-height:1.4;text-decoration:none;min-height:44px}
.underlink{font-size:11px;text-underline-offset:5px}
.dark-link{color:var(--ink)}

.hero{min-height:850px;height:100svh;max-height:1150px;position:relative;overflow:clip;isolation:isolate;display:flex;align-items:center;padding:135px 4.2% 130px;background:radial-gradient(ellipse at 85% 30%,#234b3b 0%,var(--green) 55%)}
.hero-copy{position:relative;z-index:2;width:59%;max-width:850px}
.hero .eyebrow{color:#e0e6cf;display:flex;align-items:center;gap:10px;margin-bottom:30px}
.small-star{color:var(--lime);font-size:18px}
.hero h1{font-size:clamp(62px,6.2vw,103px);line-height:1.01;max-width:850px;letter-spacing:-.065em}
.hero h1 .line{display:block}
.hero h1 .line:first-child{max-width:610px}
.hero h1 .serif{font-size:1.08em;line-height:.95;letter-spacing:-.035em}
.hero h1 .line:nth-child(2){margin-top:9px}
.accent{color:var(--lime)}
.hero-description{font-size:16px;line-height:1.65;max-width:455px;margin-top:30px;letter-spacing:-.01em}
.hero-route{font-size:12px;max-width:420px;color:#d0d8c6;line-height:1.65;margin-top:13px}
.hero-actions{display:flex;gap:25px;align-items:center;margin-top:27px}
.hero-art{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero-window{position:absolute;right:4.2%;top:120px;bottom:120px;width:40%;border-radius:48% 48% 4px 4px;overflow:clip;transform:translateY(calc(var(--hero-exit,0)*60px));background:#315846}
.hero-window img,.hero-window video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;transform:scale(calc(1.04 + var(--hero-exit,0)*.08))}
.hero-window video{opacity:0;transition:opacity .8s;object-fit:contain;object-position:center;transform-origin:58% 50%;transform:scale(var(--ambient-scale,1))}
.hero-window video.ready{opacity:1}
.hero-atmosphere{position:absolute;inset:-25px;background:url('media/living-change-poster-v42.webp') center/cover;filter:blur(22px);opacity:.45;transform:scale(1.1)}
@media(min-width:761px){
 .hero-window.wide-framing>img{opacity:0}
}
@media(max-width:760px){.hero-atmosphere{display:none}}
.window-shade{position:absolute;inset:0;background:linear-gradient(90deg,#102e2a45,transparent 40%),linear-gradient(0deg,#102e2a60,transparent 35%)}
.orbit{position:absolute;right:-9%;top:16%;width:64%;aspect-ratio:1;border:1px solid #d4e7a021;border-radius:50%;transform:rotate(-30deg) scaleY(.75)}
.orbit-two{right:-12%;top:20%;transform:rotate(30deg) scaleY(.83)}
.art-caption{position:absolute;right:6%;bottom:91px;font:italic 20px var(--serif);color:#e5e9d6}
.hero-foot{position:absolute;bottom:33px;left:4.2%;right:4.2%;display:flex;align-items:center;gap:32px;padding-top:21px;border-top:1px solid #f3f1e82b;z-index:3}
.hero-foot>span{font-family:var(--serif);font-size:23px;font-style:italic;margin-right:auto}
.film-button{display:flex;gap:11px;align-items:center;background:none;font-size:10px;padding:0;min-height:44px}
.play{width:37px;height:37px;border:1px solid #f3f1e869;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:21px}
.film-button small{font-size:9px;color:#d0d8c6}
.motion-toggle{font-size:9px;background:none;text-decoration:underline;text-underline-offset:4px;min-height:44px}
.hero-scroll{font-size:9px;text-transform:uppercase;text-decoration:none;letter-spacing:.1em;display:flex;gap:15px;align-items:center}
.hero-scroll span{font-size:23px}

.bee-layout{display:grid;grid-template-columns:.95fr 1fr;gap:9%}
.bee-wordmark{display:flex;gap:12px;align-items:center;font-size:26px;letter-spacing:-.04em;margin-bottom:25px}
.bee-copy h2{margin-bottom:30px}
.bee-copy>.lead{max-width:480px}
.bee-copy>p:not(.lead){font-size:13px;max-width:430px;margin-top:21px}
.product-status{display:flex;align-items:flex-start;gap:9px;font-size:10px;line-height:1.7;margin-top:27px;padding-top:20px;border-top:1px solid var(--line)}
.product-status>span{width:6px;height:6px;background:#5f7e39;border-radius:50%;margin-top:5px;flex-shrink:0}
.bee-copy>.text-button{margin-top:20px}
.bee-demo{position:relative}
.bee-photo img{width:100%;height:420px;object-fit:cover;border-radius:110px 5px 5px 5px}
.bee-photo figcaption{font-size:8px;line-height:1.5;margin-top:10px;text-align:right}
.choice-card{position:relative;margin:-100px 24px 0 -35px;background:#e3e9cf;border:1px solid #c9d2b6;padding:28px 30px;box-shadow:0 20px 45px #173b3010;border-radius:4px;z-index:1}
.demo-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}
.demo-symbol{font-size:25px}
.demo-heading .eyebrow{font-size:8px;letter-spacing:.1em}
.choice-tabs{display:flex;gap:7px;margin:20px 0 24px;flex-wrap:wrap}
.choice-tabs button{background:none;border:1px solid #9caa8a;padding:9px 12px;min-height:40px;border-radius:30px;font-size:10px;color:var(--ink);transition:background .3s,color .3s}
.choice-tabs button[aria-selected=true]{background:var(--green);border-color:var(--green);color:var(--paper)}
.choice-question{font:italic 33px/1.06 var(--serif);letter-spacing:-.015em;min-height:106px}
.choice-context{font-size:11px;line-height:1.7;min-height:38px;margin-top:16px}
.demo-note{font-size:8px;line-height:1.6;border-top:1px solid #a7b595;padding-top:15px;margin-top:20px}
.purpose{padding-top:10px;padding-bottom:115px}
.purpose-grid{display:grid;grid-template-columns:1fr 2.3fr;gap:65px;padding-top:60px;border-top:1px solid var(--line)}
.purpose h2{font-size:clamp(40px,4.1vw,68px);margin-bottom:35px}
.purpose .lead{max-width:700px;font-size:19px}
.purpose p:not(.lead){font-size:13px;max-width:630px}
.purpose .underlink{display:inline-block;margin-top:22px}

.approach .section-intro{color:#d0d8c6}
.approach h2{max-width:1000px}
.approach h2 em{color:var(--lime)}
.approach-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;margin-top:70px;align-items:center}
.approach-image{position:relative;aspect-ratio:1/1.08;overflow:clip;border-radius:5px 130px 5px 5px}
.approach-image img{width:100%;height:100%;object-fit:cover;transition:opacity .2s,transform .7s}
.approach-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0c2421ba);pointer-events:none}
.approach-image>span{position:absolute;bottom:23px;left:25px;font-size:9px;z-index:1;max-width:70%}
.approach-image>.image-index{left:auto;right:25px;letter-spacing:.08em}
.approach-row{border-top:1px solid #f3f1e838;padding:23px 0 28px}
.approach-row:last-child{border-bottom:1px solid #f3f1e838}
.approach-select{display:flex;align-items:center;gap:18px;width:100%;background:none;text-align:left;padding:0;min-height:45px}
.approach-select>span:first-child{font-size:10px;color:#c0cdb7}
.row-title{font-size:clamp(21px,2.1vw,34px);letter-spacing:-.04em;line-height:1.2;flex:1}
.row-arrow{font-size:23px;transition:transform .4s}
.approach-row p{font-size:12px;line-height:1.8;color:#d0d8c6;max-width:490px;margin:13px 0 0 36px}
.approach-row.selected .approach-select{color:var(--lime)}
.approach-row.selected .row-arrow{transform:rotate(45deg)}
.approach-foot{font-size:11px;color:#d0d8c6;text-align:right;margin-top:45px;border-top:1px solid #f3f1e824;padding-top:25px}

.culture-chapter{background:var(--paper);color:var(--green);height:185svh;position:relative}
.culture-stage{height:100svh;position:sticky;top:0;overflow:clip;isolation:isolate}
.culture-backdrop{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:11vh;font-size:clamp(90px,13vw,210px);letter-spacing:-.075em;line-height:.91;transform:translateY(var(--culture-type-y,0));opacity:var(--culture-type-opacity,1)}
.culture-backdrop span:last-child{font-family:var(--serif);font-style:italic}
.culture-portal{position:absolute;inset:0;clip-path:circle(var(--culture-radius,15%) at 50% 63%);background:var(--green);color:var(--paper)}
.culture-portal>img{width:100%;height:100%;object-fit:cover;transform:scale(var(--culture-scale,1.2))}
.culture-gradient{position:absolute;inset:0;background:linear-gradient(0deg,#0c2421c7,#0c242130);opacity:calc(.2 + var(--culture-copy,0)*.8)}
.culture-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 5vw;opacity:var(--culture-copy,0);transform:translateY(calc((1 - var(--culture-copy,0))*25px))}
.culture-message .eyebrow{margin-bottom:28px}
.culture-message h2{font-size:clamp(56px,6.7vw,112px);line-height:1.04}
.culture-message h2 em{color:var(--lime)}
.culture-message>p:last-child{max-width:410px;font-size:14px;line-height:1.7;margin-top:30px}
.culture-credit{position:absolute;bottom:30px;left:6%;right:6%;text-align:center;font-size:9px;opacity:var(--culture-copy,0)}
.culture-cue{position:absolute;bottom:5vh;left:25px;right:25px;text-align:center;font-size:10px;opacity:var(--culture-cue,1)}

.mechanism-heading{display:grid;grid-template-columns:1fr 1.6fr;gap:30px}
.mechanism-heading>.eyebrow{grid-column:1/-1;margin-bottom:20px}
.mechanism-heading>.lead{font-size:18px;max-width:440px;align-self:end;margin-left:auto}
.demand-path{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:75px 0 0;gap:0;border-top:1px solid var(--line)}
.demand-path li{padding:28px 28px 15px 0;position:relative}
.demand-path li+li{padding-left:25px;border-left:1px solid var(--line)}
.demand-path li>span{font-size:9px;display:block;margin-bottom:25px}
.demand-path h3{font-size:20px}
.demand-path p{font-size:11px;line-height:1.7;margin-top:12px;max-width:205px}
.billion-row{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;margin-top:100px;border-top:1px solid var(--line);padding-top:60px}
.billion-type{font-size:clamp(75px,9.7vw,156px);letter-spacing:-.075em;line-height:.96;margin-top:24px}
.billion-type em{font-family:var(--serif);font-style:italic;letter-spacing:-.045em;color:#6c8155}
.billion-copy{align-self:center;max-width:430px}
.billion-copy h3{font-size:29px;line-height:1.15;margin-bottom:24px}
.billion-copy>p{font-size:13px}
.billion-copy details{margin-top:25px;border-top:1px solid var(--line);padding-top:18px}
.billion-copy summary{font-size:11px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:30px}
.billion-copy details p{font-size:11px;line-height:1.8;margin-top:14px}
.billion-copy details a{font-size:10px;display:block;margin-top:12px;text-underline-offset:4px}

.experiences{padding-top:15px}
.experiences .section-intro{border-top:1px solid var(--line);padding-top:60px}
.gallery-controls{display:flex;gap:10px}
.gallery-controls button:disabled{opacity:.3;cursor:default}
.experience-intro{max-width:610px;margin-top:30px;font-size:14px}
.story-track{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:55px;padding:0 max(56px,calc((100vw - 1340px)/2)) 25px;scrollbar-width:thin;scrollbar-color:#76866b transparent}
.story-card{flex:0 0 min(82vw,1080px);scroll-snap-align:center}
.story-image{position:relative;background:none;display:block;width:100%;padding:0;overflow:clip;border-radius:4px}
.story-image img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 40%;transition:transform .7s}
.story-image:hover img{transform:scale(1.035)}
.image-open{position:absolute;right:25px;bottom:25px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--paper);border-radius:50%;color:var(--ink);font-size:25px;transition:background .3s}
.story-image:hover .image-open{background:var(--lime)}
.story-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:26px}
.story-copy .eyebrow{font-size:9px;margin-bottom:16px}
.story-copy h3{font-size:35px;line-height:1.05}
.story-copy h3 em{font-family:var(--serif);font-size:1.15em}
.story-copy>p{font-size:12px;max-width:390px;align-self:end}
.story-copy small{display:block;font-size:9px;color:var(--muted);margin-top:15px}
.house-strip{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line);padding-top:28px;margin-top:55px}
.house-strip p{font-size:12px;flex:1}
.house-strip .eyebrow{font-size:8px}

.people-heading{display:flex;justify-content:space-between;align-items:end;gap:60px}
.people-heading .eyebrow{margin-bottom:35px}
.people-heading>p{max-width:345px;font-size:12px;color:#d0d8c6;line-height:1.8}
.people h2 em{color:var(--lime)}
.leader-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:65px}
.leader-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:4px}
.leader-kind{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:#d0d8c6;margin-top:19px;min-height:24px}
.leader-grid h3{font-size:20px;line-height:1.1;letter-spacing:-.045em;margin-top:9px}
.leader-grid article>p:not(.leader-kind){font-size:10px;line-height:1.5;margin-top:10px;min-height:40px;max-width:190px;color:#d0d8c6}
.leader-grid a{display:inline-block;font-size:9px;text-underline-offset:5px;margin-top:15px;padding:5px 0}
.giving-heading{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;align-items:center}
.giving-number{font-size:clamp(125px,17vw,255px);letter-spacing:-.09em;line-height:1;margin-top:25px}
.giving-number span{font-family:var(--serif);font-size:.55em;font-style:italic;vertical-align:top;position:relative;top:.1em;margin-left:10px;letter-spacing:-.07em;color:#718354}
.giving-heading h2{margin-bottom:30px}
.giving-heading .lead{font-size:19px;max-width:460px}
.giving-heading p:last-child:not(.eyebrow){font-size:12px;margin-top:18px}
.cause-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:65px}
.cause-grid img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.cause-grid figcaption{font-size:8px;color:var(--muted);margin-top:10px}
.cause-grid .eyebrow{font-size:8px;margin-top:28px}
.cause-grid h3{font:400 38px/1.1 var(--serif);letter-spacing:-.025em;margin-top:10px}
.cause-grid article>p:last-child{font-size:12px;max-width:440px;margin-top:14px}

.participate{padding-bottom:60px;background:var(--deep)}
.participation-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;margin-top:40px}
.participate h2 em{color:var(--lime)}
.participate-intro{font-size:12px;max-width:365px;margin-top:35px;color:#d0d8c6;line-height:1.8}
.participation-rows details{border-top:1px solid #f3f1e840;padding-bottom:22px}
.participation-rows details:last-child{border-bottom:1px solid #f3f1e840}
.participation-rows summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:27px;letter-spacing:-.04em;padding:20px 0;min-height:80px}
.participation-rows summary::-webkit-details-marker{display:none}
.participation-rows summary>span{font-size:22px;transition:transform .3s}
.participation-rows details[open] summary>span{transform:rotate(45deg);color:var(--lime)}
.participation-rows details>div{font-size:12px;line-height:1.8;color:#d0d8c6;max-width:460px}
.participation-rows details .text-button{color:var(--paper);margin-top:17px}
.closing-line{border-top:1px solid #f3f1e830;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:110px;padding-top:40px}
.closing-line p{font:italic 47px/1.05 var(--serif);letter-spacing:-.03em}
.closing-arrow{font-size:60px;background:var(--lime);color:var(--green);width:95px;height:95px;border-radius:50%;transition:transform .3s}
.closing-arrow:hover{transform:rotate(45deg)}
footer{background:var(--deep);border-top:1px solid #f3f1e824;padding:45px 0 30px}
.footer-main{display:flex;align-items:center;gap:35px}
.footer-main>.logo{margin-right:auto;width:155px}
.footer-main>a:not(.logo):not(.icon-button){font-size:10px;text-decoration:none}
.footer-base{display:flex;align-items:center;gap:30px;font-size:9px;color:#c2cfb8;margin-top:40px}
.footer-base>span{margin-right:auto}
.footer-base button{font-size:9px;background:none;padding:8px 0;text-decoration:underline;text-underline-offset:4px;min-height:34px}
.floating-contact{position:fixed;right:25px;bottom:22px;z-index:65;background:var(--lime);color:var(--green);box-shadow:0 5px 25px #0c242130;padding:14px 20px;border-radius:40px;gap:22px;align-items:center;font-size:10px;min-height:46px}
.floating-contact:not([hidden]){display:flex}
[hidden]{display:none!important}

dialog{border:0;color:var(--ink);background:var(--paper);border-radius:7px;padding:35px;width:min(620px,calc(100% - 35px));max-height:calc(100svh - 35px);overflow:auto}
dialog::backdrop{background:#071c18c9;backdrop-filter:blur(9px)}
.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}
.dialog-head .eyebrow{margin:0}
dialog h2{font-size:51px}
dialog>p{font-size:13px;margin-top:20px}
dialog label{display:block;font-size:11px;margin-top:22px;margin-bottom:8px}
dialog select,dialog textarea{width:100%;border:1px solid #a7b5a0;background:#fafaf4;border-radius:4px;color:var(--ink);padding:12px;font-size:13px}
dialog textarea{resize:vertical;min-height:110px}
dialog .button{margin-top:25px}
.small-note{font-size:10px!important;line-height:1.7}
#film-dialog{width:min(1120px,calc(100% - 35px));background:var(--deep);color:var(--paper)}
#film-title{font-family:var(--serif);font-size:33px;letter-spacing:-.02em}
#story-film{width:100%;max-height:70svh;display:block;background:#000}
.film-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;margin-top:14px}
.film-bottom .text-button{border:0;min-height:44px;padding:10px}
#fullscreen-status{font-size:10px}
#menu-dialog{background:var(--green);color:var(--paper)}
#menu-dialog nav{display:flex;flex-direction:column;margin-top:20px}
#menu-dialog nav a{font-size:31px;line-height:1.15;letter-spacing:-.04em;text-decoration:none;border-top:1px solid #f3f1e830;padding:15px 0}
#story-dialog{width:min(900px,calc(100% - 35px))}
#story-image{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center top}
.story-dialog-copy{padding:30px 10px 10px}
.story-dialog-copy>p{font-size:14px;margin-top:20px;max-width:680px}
.motion-on [data-reveal]{opacity:var(--reveal-progress,0);transform:translateY(calc((1 - var(--reveal-progress,0))*24px));transition:none}
.motion-on .hero-copy{transform:translateY(calc(var(--hero-exit,0)*-24px))}
.no-motion{scroll-behavior:auto}
.no-motion .hero-window,.no-motion .hero-window img,.no-motion .hero-window video{transform:none}
.no-motion .culture-chapter{height:auto}
.no-motion .culture-stage{position:relative;height:85svh;min-height:550px}
.no-motion .culture-backdrop,.no-motion .culture-cue{display:none}
.no-motion .culture-portal{clip-path:none}
.no-motion .culture-message,.no-motion .culture-credit{opacity:1;transform:none}
.no-motion .culture-gradient{opacity:1}
.no-motion .culture-portal>img{transform:none}
.no-motion [data-reveal]{opacity:1;transform:none}

@media(max-width:1100px){.desktop-nav{gap:20px}
.logo{width:145px}
.hero h1{font-size:6.5vw}
.hero-description{max-width:380px;font-size:14px}
.hero-route{max-width:350px;font-size:11px}
.hero-actions{gap:16px}
.hero-actions .text-button{font-size:10px}
.hero-window{width:41%;right:3%}
.art-caption{font-size:17px}
.hero-foot{gap:22px}
.bee-layout{gap:7%}
.choice-card{margin-left:-15px;padding:25px}
.bee-photo img{height:370px}
.approach-layout{gap:6%}
.leader-grid{gap:16px}
.leader-grid h3{font-size:18px}
}
@media(max-width:900px){.desktop-nav{display:none}
.menu-button{display:flex}
.wrap{width:calc(100% - 64px)}
.header{padding-inline:32px}
.section{padding:85px 0}
.hero{min-height:780px}
.hero-copy{width:63%}
.hero h1{font-size:6.8vw}
.hero-description{font-size:14px;max-width:330px}
.hero-route{max-width:300px}
.hero-actions{flex-direction:column;align-items:start;gap:9px}
.hero-window{width:40%;right:2%;top:150px;bottom:150px;opacity:.8}
.art-caption{bottom:115px;right:4%;font-size:16px}
.hero-foot{left:32px;right:32px}
.hero-scroll{display:none}
.bee-layout{gap:6%}
.bee-copy .lead{font-size:17px}
.bee h2{font-size:48px}
.bee-photo img{height:320px}
.choice-card{margin:-60px 0 0 -22px;padding:23px}
.choice-question{font-size:28px}
.choice-tabs{gap:5px}
.choice-tabs button{font-size:9px;padding-inline:9px}
.purpose-grid{gap:35px;grid-template-columns:1fr 2fr}
.purpose h2{font-size:43px}
.purpose .lead{font-size:17px}
.approach-layout{grid-template-columns:1fr 1.1fr}
.row-title{font-size:22px}
.approach-select{gap:10px}
.approach-row p{margin-left:25px;font-size:11px}
.approach-image{aspect-ratio:3/4}
.approach-row{padding:18px 0}
.mechanism-heading{grid-template-columns:1fr}
.mechanism-heading>.lead{margin:0;max-width:570px}
.demand-path h3{font-size:17px}
.demand-path li{padding-right:18px}
.demand-path li+li{padding-left:18px}
.billion-copy h3{font-size:24px}
.story-track{padding-inline:32px}
.story-card{flex-basis:85vw}
.people-heading{display:block}
.people-heading>p{margin-top:30px;max-width:550px}
.leader-grid{grid-template-columns:repeat(3,1fr);gap:35px 24px}
.participation-layout{gap:7%}
.participation-rows summary{font-size:24px}
.participate h2{font-size:46px}
}

@media(max-width:760px){.wrap{width:calc(100% - 44px)}
.section{padding:70px 0}
.header{min-height:75px;padding:18px 22px;gap:15px}
.header.scrolled{padding-block:12px;min-height:68px}
.logo{width:133px}
.header-right{gap:10px}
.house-link{padding:10px 12px;font-size:9px;gap:11px;min-height:44px}
.icon-button{width:44px;height:44px}
.eyebrow{font-size:8px;letter-spacing:.11em}
.section-intro{gap:20px;margin-bottom:38px}
.section-note{font-size:9px}
h2{font-size:42px}
.lead{font-size:18px}

.hero{height:100svh;min-height:750px;max-height:none;padding:115px 22px 130px;display:block;background:var(--green)}
.hero-copy{width:100%;max-width:600px}
.hero .eyebrow{font-size:7px;gap:7px;margin-bottom:27px}
.small-star{font-size:14px}
.hero h1{font-size:clamp(49px,11.9vw,80px);line-height:.99;max-width:600px}
.hero h1 .line:first-child{max-width:420px}
.hero h1 .line:first-child .accent{display:block}
.hero h1 .serif{font-size:1.04em}
.hero h1 .line:nth-child(2){margin-top:12px}
.hero-description{font-size:13px;line-height:1.65;max-width:355px;margin-top:24px}
.hero-route{font-size:10px;line-height:1.65;max-width:320px;margin-top:12px}
.hero-actions{flex-direction:row;align-items:center;gap:17px;margin-top:24px}
.hero-actions .button{font-size:10px;padding:12px 17px;gap:20px;min-height:45px}
.hero-actions .text-button{font-size:9px;gap:9px}
.hero-window{top:0;right:0;bottom:0;width:100%;border-radius:0;opacity:1!important;transform:none!important;animation:none!important}
.hero-window img{object-position:55% center;transform:none!important;opacity:.25}
.hero-window:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102e2af0,#102e2a70),linear-gradient(0deg,#102e2a 3%,#102e2a12 80%)}
.orbit,.art-caption{display:none}
.hero-foot{left:22px;right:22px;bottom:25px;gap:17px;padding-top:18px}
.hero-foot>span{font-size:20px}
.film-button{font-size:9px;gap:8px}
.film-button small{display:none}
.play{width:34px;height:34px;font-size:20px}
.motion-toggle,.hero-scroll{display:none}

.bee-layout{grid-template-columns:1fr;gap:42px}
.bee h2{font-size:45px;margin-bottom:25px}
.bee-wordmark{font-size:24px;margin-bottom:25px}
.bee-wordmark img{width:35px;height:35px}
.bee-copy .lead{font-size:18px}
.bee-copy>p:not(.lead){font-size:12px}
.product-status{font-size:9px;margin-top:23px}
.bee-copy>.text-button{margin-top:12px}
.bee-photo img{height:auto;aspect-ratio:4/3;border-radius:80px 4px 4px 4px}
.choice-card{margin:-48px 12px 0;padding:23px}
.demo-heading .eyebrow{font-size:7px}
.choice-tabs{margin:18px 0 22px;gap:7px}
.choice-tabs button{font-size:9px;padding:10px 12px;min-height:40px}
.choice-question{font-size:30px;min-height:94px}
.choice-context{font-size:10px;min-height:0}
.demo-note{font-size:7px}
.purpose{padding-top:0}
.purpose-grid{grid-template-columns:1fr;gap:28px;padding-top:40px}
.purpose h2{font-size:38px;margin-bottom:25px}
.purpose .lead{font-size:17px}
.purpose p:not(.lead){font-size:12px}
.purpose .underlink{font-size:10px}
.approach .section-intro>span{display:none}
.approach h2{font-size:41px}
.approach-layout{grid-template-columns:1fr;margin-top:35px;gap:30px}
.approach-image{aspect-ratio:4/3;border-radius:4px 75px 4px 4px}
.approach-image>span{bottom:17px;left:18px;font-size:8px}
.approach-image>.image-index{right:18px}
.approach-row{padding:20px 0}
.approach-select{gap:15px}
.row-title{font-size:24px}
.approach-row p{font-size:11px;margin-left:29px;max-width:420px}
.approach-foot{font-size:10px;line-height:1.7;margin-top:30px;text-align:left}

.culture-chapter{height:155svh}
.culture-backdrop{font-size:19vw;padding-bottom:12vh}
.culture-message{padding:85px 25px}
.culture-message h2{font-size:clamp(38px,10.7vw,65px)}
.culture-message .eyebrow{margin-bottom:25px}
.culture-message>p:last-child{font-size:12px;max-width:27ch;margin-top:24px}
.culture-credit{font-size:8px;bottom:35px;left:22px;right:22px}
.culture-cue{font-size:9px;max-width:240px;line-height:1.6;margin:auto;bottom:5vh}
.mechanism-heading{gap:26px}
.mechanism-heading>.eyebrow{margin:0}
.mechanism-heading>.lead{font-size:16px}
.demand-path{grid-template-columns:1fr 1fr;margin-top:40px}
.demand-path li{padding:25px 16px 25px 0}
.demand-path li+li{padding-left:16px}
.demand-path li:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}
.demand-path li:nth-child(4){border-top:1px solid var(--line)}
.demand-path li>span{margin-bottom:18px}
.demand-path h3{font-size:18px}
.demand-path p{font-size:10px;max-width:145px}
.billion-row{grid-template-columns:1fr;gap:35px;margin-top:45px;padding-top:35px}
.billion-type{font-size:23vw;line-height:.94;margin-top:24px;letter-spacing:-.075em}
.billion-copy h3{font-size:26px;margin-bottom:20px}
.billion-copy>p{font-size:12px}

.experiences{padding-top:0}
.experiences .section-intro{padding-top:35px}
.gallery-controls{gap:8px}
.gallery-controls .icon-button{width:40px;height:40px}
.experiences h2{font-size:41px}
.experience-intro{font-size:12px;max-width:370px;margin-top:25px}
.story-track{padding-inline:22px;gap:20px;margin-top:35px;padding-bottom:20px}
.story-card{flex-basis:calc(100vw - 55px)}
.story-image img{aspect-ratio:4/3;object-position:48% center}
.image-open{right:16px;bottom:16px;width:42px;height:42px;font-size:22px}
.story-copy{grid-template-columns:1fr;gap:20px;margin-top:23px}
.story-copy .eyebrow{font-size:8px;margin-bottom:13px}
.story-copy h3{font-size:31px}
.story-copy>p{font-size:11px}
.story-copy small{font-size:8px}
.house-strip{display:block;margin-top:35px;padding-top:25px}
.house-strip p{font-size:12px;margin-top:16px}
.house-strip .underlink{display:inline-block;margin-top:15px;font-size:10px}
.people-heading .eyebrow{margin-bottom:28px}
.people h2{font-size:40px}
.people-heading>p{font-size:11px;margin-top:25px}
.leader-grid{grid-template-columns:1fr 1fr;gap:32px 19px;margin-top:35px}
.leader-kind{font-size:6px;letter-spacing:.06em;margin-top:15px;min-height:20px}
.leader-grid h3{font-size:20px;line-height:1.08;margin-top:8px}
.leader-grid article>p:not(.leader-kind){font-size:9px;min-height:37px;margin-top:9px}
.leader-grid a{font-size:9px;margin-top:8px;min-height:30px}
.giving-heading{grid-template-columns:1fr;gap:30px}
.giving-number{font-size:140px;margin-top:20px}
.giving h2{font-size:43px;margin-bottom:25px}
.giving-heading .lead{font-size:18px}
.giving-heading p:last-child:not(.eyebrow){font-size:11px}
.cause-grid{grid-template-columns:1fr;gap:40px;margin-top:35px}
.cause-grid .eyebrow{margin-top:22px}
.cause-grid h3{font-size:35px}
.cause-grid article>p:last-child{font-size:11px}
.cause-grid figcaption{font-size:7px}

.participate .section-intro>span{display:none}
.participation-layout{grid-template-columns:1fr;gap:35px;margin-top:0}
.participate h2{font-size:43px}
.participate-intro{font-size:11px;margin-top:25px;max-width:330px}
.participation-rows summary{font-size:26px;min-height:75px;padding:20px 0}
.participation-rows details>div{font-size:11px}
.closing-line{margin-top:65px;padding-top:30px;gap:20px}
.closing-line p{font-size:31px;max-width:210px}
.closing-arrow{font-size:40px;width:65px;height:65px;flex-shrink:0}
.participate{padding-bottom:40px}
footer{padding:35px 0 25px}
.footer-main{gap:20px;flex-wrap:wrap}
.footer-main>.logo{flex-basis:100%;width:140px;max-width:140px;margin-right:calc(100% - 140px);margin-bottom:7px}
.footer-main>a:not(.logo):not(.icon-button){font-size:9px}
.footer-main>.icon-button{margin-left:auto;width:40px;height:40px}
.footer-base{flex-wrap:wrap;gap:10px 25px;font-size:8px;margin-top:30px}
.footer-base>span{flex-basis:100%;margin-bottom:5px}
.footer-base button{font-size:8px}
.floating-contact{right:15px;bottom:15px;font-size:9px;padding:13px 17px;gap:20px;min-height:44px}
dialog{padding:24px;width:calc(100% - 24px);max-height:calc(100svh - 24px)}
dialog h2{font-size:44px}
.dialog-head .eyebrow{font-size:8px}
.dialog-head .icon-button{width:40px;height:40px}
dialog>p{font-size:12px}
#film-dialog{padding:16px;width:calc(100% - 20px)}
#film-title{font-size:25px}
.film-bottom{font-size:9px;gap:10px}
.film-bottom .text-button{font-size:10px}
#menu-dialog nav a{font-size:27px;padding:14px 0}
.story-dialog-copy{padding:25px 0 0}
.story-dialog-copy>p{font-size:12px}
#story-image{aspect-ratio:4/3}

}

@media(max-width:360px){.header{padding-inline:18px;gap:8px}
.header-right{gap:7px}
.logo{width:111px}
.house-link{font-size:8px;padding-inline:10px;gap:8px}
.hero{padding-inline:20px;min-height:730px;padding-top:112px}
.hero h1{font-size:43px}
.hero .eyebrow{font-size:6px}
.hero-description{font-size:12px;max-width:290px;margin-top:23px}
.hero-route{font-size:9px;max-width:270px}
.hero-actions{gap:14px;margin-top:21px}
.hero-actions .button{font-size:9px;padding-inline:15px;gap:14px}
.hero-actions .text-button{font-size:8px;gap:7px}
.hero-foot{left:20px;right:20px;gap:10px}
.hero-foot>span{font-size:18px}
.film-button{font-size:8px}
.play{width:30px;height:30px}
.choice-card{margin-inline:0;padding:21px}
.choice-tabs button{padding-inline:10px}
.choice-question{font-size:29px}
.row-title{font-size:22px}
.section-intro{gap:10px}
.section-note{font-size:8px}
.footer-main{gap:15px}
.footer-main>a:not(.logo):not(.icon-button){font-size:8px}
.footer-main>.icon-button{width:35px;height:35px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
.culture-chapter{height:auto}
.culture-stage{position:relative;height:85svh;min-height:550px}
.culture-backdrop,.culture-cue{display:none}
.culture-portal{clip-path:none}
.culture-message,.culture-credit{opacity:1;transform:none}
.culture-gradient{opacity:1}
.culture-portal>img,.hero-window,[data-reveal]{transform:none!important;opacity:1!important}
}

/* Static content remains complete before enhancement and on short screens. */
.culture-chapter{height:auto}
.culture-stage{position:relative;height:85svh;min-height:550px}
.culture-backdrop,.culture-cue{display:none}
.culture-portal{clip-path:none}
.culture-message,.culture-credit{opacity:1;transform:none}
.culture-gradient{opacity:1}
.motion-on .culture-chapter{height:210svh}
.motion-on .culture-stage{position:sticky;height:100svh;min-height:0}
.motion-on .culture-backdrop{display:flex}
.motion-on .culture-cue{display:block}
.motion-on .culture-portal{clip-path:circle(var(--culture-radius,0%) at var(--culture-x,112%) var(--culture-y,85%));opacity:var(--culture-image-opacity,0)}
.motion-on .culture-message{opacity:var(--culture-copy,0);transform:translateY(calc((1 - var(--culture-copy,0))*25px))}
.motion-on .culture-credit{opacity:var(--culture-copy,0)}
.motion-on .culture-gradient{opacity:calc(.2 + var(--culture-copy,0)*.8)}
.word-mask{display:inline-block;vertical-align:top;overflow:clip;padding-bottom:.14em;margin-bottom:-.14em}
.word-inner{display:inline-block}
.motion-on h2[data-reveal]{opacity:1;transform:none}
.motion-on h2[data-reveal] .word-inner{--word-progress:clamp(0,calc((var(--reveal-progress,0) - var(--word-delay,0)) / .8),1);transform:translateY(calc((1 - var(--word-progress))*110%)) rotate(calc((1 - var(--word-progress))*2deg));transition:none}
@media(max-width:760px){
 .motion-on .culture-chapter{height:185svh}
 .hero .eyebrow{font-size:9px;letter-spacing:.07em}
 .hero-route{font-size:12px}
 .hero-actions{gap:14px}
 .hero-actions .button{font-size:10px;padding-inline:12px;gap:12px}
 .hero-actions .text-button{font-size:10px;gap:8px}
 .product-status{font-size:10px}
 .leader-kind{font-size:8px}
}
@media(max-width:760px) and (max-height:740px){
 .hero{min-height:100svh;padding-top:96px;padding-bottom:100px}
 .hero .eyebrow{font-size:8px;margin-bottom:20px}
 .hero h1{font-size:40px}
 .hero h1 .line:nth-child(2){margin-top:9px}
 .hero-description{font-size:12px;line-height:1.55;margin-top:20px}
 .hero-route{font-size:11px;line-height:1.5;margin-top:10px}
 .hero-actions{margin-top:18px}
 .hero-foot{bottom:18px;padding-top:12px}
}
@media(max-width:360px) and (max-height:740px){.hero h1{font-size:38px}.hero .eyebrow{font-size:7px}.hero-route{font-size:10px}}

/* A single downward journey through both gatherings. Static fallback stacks them. */
.story-journey{position:relative;margin-top:45px}
.story-stage{position:relative}
.story-guidance{display:none}
.story-journey .story-track{display:grid;gap:60px;overflow:visible;scroll-snap-type:none;margin:0;padding:0;transform:none}
.story-journey .story-card{width:100%;min-width:0;scroll-snap-align:none}
.story-pinned .story-journey{height:calc(100svh - 76px + 125svh)}
.story-pinned .story-stage{position:sticky;top:76px;height:calc(100svh - 76px);display:flex;flex-direction:column;overflow:clip}
.story-pinned .story-guidance{display:flex;align-items:center;gap:20px;height:78px;flex:0 0 78px}
.journey-progress{width:43px;height:43px;position:relative;flex-shrink:0}
.journey-progress svg{width:100%;height:100%;fill:none;stroke-width:1.5;transform:rotate(-90deg)}
.progress-base{stroke:#bdc5b6}
.progress-value{stroke:var(--green);stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--story-progress,0))}
.journey-progress>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px}
.story-steps{display:flex;align-items:center;gap:12px;font-size:10px}
.story-steps>span{color:#9ca68f}
.story-steps button{background:none;font-size:11px;min-height:44px;padding:8px 0;color:var(--muted);border-bottom:1px solid transparent}
.story-steps button[aria-current]{color:var(--green);border-bottom-color:currentColor}
.story-scroll-hint{margin-left:auto;font-size:9px;display:flex;gap:18px;align-items:center}
.story-scroll-hint>span{font-size:20px}
.story-guidance .gallery-controls{margin-left:15px}
.story-guidance .icon-button{width:39px;height:39px;font-size:19px}
.story-viewport{overflow:visible}
.story-pinned .story-viewport{overflow:clip;flex:1;min-height:0;margin-bottom:30px}
.story-pinned .story-track{display:flex;height:100%;gap:65px;transform:translate3d(var(--story-x,0px),0,0);will-change:transform}
.story-pinned .story-card{flex:0 0 100%;height:100%;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:center;gap:5.5%}
.story-pinned .story-image{height:min(650px,calc(100svh - 205px));max-height:100%;border-radius:4px;align-self:center}
.story-pinned .story-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 35%}
.story-pinned .story-copy{display:block;margin:0}
.story-pinned .story-copy .eyebrow{font-size:9px;margin-bottom:25px}
.story-pinned .story-copy h3{font-size:clamp(30px,3.2vw,51px);line-height:1.04;letter-spacing:-.045em}
.story-pinned .story-copy>p{margin-top:35px;font-size:13px;line-height:1.8;max-width:350px}
.story-pinned .story-copy small{font-size:9px;margin-top:25px}
.story-pinned .house-strip{margin-top:40px}
@media(max-width:1000px) and (min-width:761px){.story-pinned .story-card{grid-template-columns:1.25fr 1fr;gap:5%}.story-pinned .story-copy h3{font-size:33px}.story-pinned .story-copy>p{font-size:12px}}
@media(max-width:760px){
 .experience-count{display:none}
 .story-journey{margin-top:30px}
 .story-journey .story-track{gap:45px}
 .story-pinned .story-journey{height:calc(100svh - 68px + 110svh)}
 .story-pinned .story-stage{top:68px;height:calc(100svh - 68px)}
 .story-pinned .story-guidance{height:65px;flex-basis:65px;gap:13px}
 .journey-progress{width:36px;height:36px}
 .journey-progress>span{font-size:8px}
 .story-steps{gap:10px}
 .story-steps button{font-size:10px}
 .story-scroll-hint{font-size:8px;gap:8px;max-width:85px;line-height:1.4}
 .story-scroll-hint>span{font-size:18px}
 .story-guidance .gallery-controls{display:none}
 .story-pinned .story-viewport{margin-bottom:22px}
 .story-pinned .story-track{gap:25px}
 .story-pinned .story-card{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:22px}
 .story-pinned .story-image{height:clamp(180px,42svh,410px);max-height:none;width:100%;align-self:stretch;flex-shrink:0}
 .story-pinned .story-image img{object-position:center 38%}
 .story-pinned .story-copy{flex-shrink:0}
 .story-pinned .story-copy .eyebrow{font-size:8px;margin-bottom:13px}
 .story-pinned .story-copy h3{font-size:32px;line-height:1.03}
 .story-pinned .story-copy>p{font-size:11px;line-height:1.7;margin-top:18px;max-width:none}
 .story-pinned .story-copy small{font-size:8px;margin-top:13px}
}
@media(max-width:760px) and (max-height:740px){.story-pinned .story-card{gap:16px}.story-pinned .story-image{height:34svh}.story-pinned .story-copy h3{font-size:29px}.story-pinned .story-copy>p{font-size:10px;margin-top:13px}.story-pinned .story-copy small{margin-top:10px}}
.story-pinned .story-image[data-story="300"] img{object-position:70% 35%}
@media(max-height:579px){.motion-on .culture-chapter{height:auto}.motion-on .culture-stage{position:relative;height:110svh;min-height:450px}.motion-on .culture-portal{clip-path:none;opacity:1}.motion-on .culture-message,.motion-on .culture-credit{opacity:1;transform:none}.motion-on .culture-gradient{opacity:1}.motion-on .culture-backdrop,.motion-on .culture-cue{display:none}}

/* Stable chrome and visible commercial explanation. */
.header,.header.scrolled{height:76px;min-height:76px;padding-block:15px;transition:background .25s}
.desktop-nav{gap:25px}
.business{padding-top:15px}
.business-heading{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;align-items:end;border-top:1px solid var(--line);padding-top:60px}
.business-heading h2{font-size:clamp(40px,4.1vw,66px);margin-top:30px}
.business-heading>div:last-child{font-size:13px;line-height:1.8;max-width:420px}
.business-identity{font-size:15px;line-height:1.65;letter-spacing:-.015em}
.market-line{display:grid;grid-template-columns:.7fr 1.35fr 1.4fr;gap:35px;align-items:start;padding:28px 0;border-block:1px solid var(--line);margin-top:55px}
.market-line p{font-size:18px;line-height:1.35;letter-spacing:-.03em;max-width:280px}
.market-line>span:last-child{font-size:12px;line-height:1.7;max-width:350px}
.revenue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:45px}
.revenue-grid article{padding:0 35px 0 0}
.revenue-grid article+article{border-left:1px solid var(--line);padding-left:35px}
.revenue-grid h3{font-size:28px;line-height:1.1;letter-spacing:-.045em;margin:25px 0 23px}
.revenue-grid p{font-size:12px;line-height:1.8;max-width:325px}
.commercial-status{font-size:9px;line-height:1.6;display:block;color:var(--muted);margin-top:25px}
.business-invitation{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:50px;padding-top:25px;border-top:1px solid var(--line)}
.business-invitation p{font-size:12px;max-width:450px}
@media(max-width:900px){.business-heading{grid-template-columns:1.4fr 1fr;gap:6%}.business-heading h2{font-size:42px}.business-heading>div:last-child{font-size:12px}.business-identity{font-size:14px}.market-line{gap:25px}.revenue-grid article{padding-right:22px}.revenue-grid article+article{padding-left:22px}.revenue-grid h3{font-size:25px}}
@media(max-width:760px){
 .header,.header.scrolled{height:68px;min-height:68px;padding-block:12px}
 .business{padding-top:0}
 .business-heading{grid-template-columns:1fr;gap:30px;padding-top:38px}
 .business-heading h2{font-size:39px;margin-top:25px}
 .business-heading>div:last-child{font-size:12px;max-width:400px}
 .business-identity{font-size:15px}
 .market-line{grid-template-columns:1fr;gap:18px;padding:25px 0;margin-top:35px}
 .market-line p{font-size:21px;max-width:310px}
 .market-line>span:last-child{font-size:12px}
 .revenue-grid{grid-template-columns:1fr;margin-top:30px;gap:30px}
 .revenue-grid article,.revenue-grid article+article{padding:0;border:0}
 .revenue-grid article+article{border-top:1px solid var(--line);padding-top:27px}
 .revenue-grid h3{font-size:29px;margin:18px 0}
 .revenue-grid p{font-size:12px;max-width:400px}
 .commercial-status{font-size:9px;margin-top:15px}
 .business-invitation{display:block;margin-top:35px;padding-top:22px}
 .business-invitation p{font-size:12px}
 .business-invitation .text-button{margin-top:18px}
}
@media(min-width:761px) and (max-height:820px){.hero{min-height:100svh;padding-top:105px;padding-bottom:105px}.hero h1{font-size:clamp(55px,5.5vw,86px)}.hero .eyebrow{margin-bottom:22px}.hero-description{font-size:14px;margin-top:24px}.hero-route{font-size:11px}.hero-actions{margin-top:20px}.hero-window{top:100px;bottom:110px}.hero-foot{bottom:24px}.art-caption{bottom:85px}}

/* Retain the visual identity; give commercial facts and people equal reading weight. */
.desktop-nav a{font-size:12px}
.business-heading>div:last-child,.revenue-grid p,.business-invitation p{font-size:14px;line-height:1.75}
.business-identity{font-size:16px;line-height:1.65}
.market-line>span:last-child{font-size:13px}
.commercial-status,.product-status,.demo-note{font-size:11px;line-height:1.65}
.leader-kind{font-size:10px;line-height:1.6;min-height:32px}
.leader-grid article>p:not(.leader-kind){font-size:12px;line-height:1.65;min-height:40px}
.leader-grid a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
dialog label{font-size:13px}
dialog select,dialog textarea{font-size:16px}
.small-note{font-size:12px!important}
@media(max-width:760px){
 .eyebrow{font-size:10px}
 .section-note{font-size:11px}
 .hero .eyebrow{font-size:9px;letter-spacing:.08em}
 .hero-description{font-size:14px;line-height:1.6}
 .hero-route{font-size:12px;line-height:1.6}
 .hero-actions{gap:12px}
 .hero-actions .button,.hero-actions .text-button{font-size:11px;white-space:nowrap;flex-shrink:0}
 .hero-actions .button{padding-inline:13px;gap:10px}
 .hero-actions .text-button{gap:7px}
 .house-link,.film-button{font-size:10px}
 .bee-copy>p:not(.lead),.choice-context,.purpose p:not(.lead),.approach-row p,.approach-foot,.demand-path p,.billion-copy>p,.experience-intro,.house-strip p,.people-heading>p,.giving-heading p:last-child:not(.eyebrow),.cause-grid article>p:last-child,.participate-intro,.participation-rows details>div{font-size:14px;line-height:1.75}
 .product-status,.commercial-status,.demo-note{font-size:11px}
 .demo-heading .eyebrow{font-size:10px}
 .choice-tabs button{font-size:12px;min-height:44px}
 .bee-photo figcaption,.cause-grid figcaption{font-size:10px;line-height:1.6}
 .business-heading>div:last-child,.market-line>span:last-child,.revenue-grid p,.business-invitation p{font-size:14px;line-height:1.75}
 .business-identity{font-size:16px}
 .business-invitation .text-button{font-size:12px}
 .leader-kind{font-size:10px;min-height:32px}
 .leader-grid article>p:not(.leader-kind){font-size:12px;min-height:40px}
 .leader-grid a{font-size:12px;min-height:44px}
 .story-pinned .story-copy .eyebrow{font-size:10px}
 .story-pinned .story-copy>p{font-size:14px;line-height:1.65}
 .story-pinned .story-copy small{font-size:11px;line-height:1.5}
 .house-strip .underlink,.footer-main>a:not(.logo):not(.icon-button){font-size:12px}
 .footer-base,.footer-base button{font-size:11px}
 .floating-contact{font-size:11px}
 dialog>p,.story-dialog-copy>p{font-size:14px;line-height:1.75}
}
@media(max-width:360px){.hero .eyebrow{font-size:8px}.hero-actions{gap:10px}.house-link{font-size:9px}.hero-description{margin-top:20px}.hero-route{margin-top:10px}}
@media(max-width:760px) and (max-height:620px){.story-pinned .story-image{height:28svh}}

/* The reason for the work comes before the product and commercial explanation. */
.bee-wordmark>div{display:flex;flex-direction:column;gap:3px}
.bee-wordmark small{font-size:11px;line-height:1.6;letter-spacing:0;color:var(--muted)}
.why{position:relative;overflow:clip;padding:105px 0 95px}
.why:before{content:'';position:absolute;width:550px;height:550px;right:-210px;top:10px;border:1px solid #193a3310;border-radius:50%;pointer-events:none}
.why>.wrap{position:relative}
.why-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;align-items:end}
.why-heading .eyebrow{margin-bottom:28px}
.why-heading h2{font-size:clamp(43px,5vw,78px);margin:0;max-width:760px}
.why-heading .lead{font-size:18px;line-height:1.65;max-width:370px;margin-bottom:5px}
.why-evidence{display:grid;grid-template-columns:1fr 1fr;margin-top:60px;border-top:1px solid var(--line);padding-top:35px}
.why-evidence article{padding-right:65px}
.why-evidence article+article{border-left:1px solid var(--line);padding-left:65px;padding-right:0}
.why-evidence .eyebrow{font-size:11px;line-height:1.6;letter-spacing:.1em}
.why p.why-value{display:flex;align-items:baseline;gap:18px;font-size:clamp(84px,8.5vw,128px);line-height:1;letter-spacing:-.075em;margin-top:25px;white-space:nowrap}
.why-value em{font:italic .42em/.9 var(--serif);letter-spacing:-.04em}
.why p.why-explanation{font-size:15px;line-height:1.7;max-width:410px;margin-top:22px}
.why-source{display:inline-block;font-size:11px;line-height:1.7;max-width:100%;margin-top:20px;text-underline-offset:5px}
.why-bridge{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-top:1px solid var(--line);padding-top:40px;margin-top:55px}
.why-bridge .eyebrow{margin-bottom:22px}
.why-bridge h3{font-size:clamp(30px,3.1vw,46px);line-height:1.1;letter-spacing:-.04em}
.why-bridge h3 em{font-family:var(--serif);font-size:1.13em;font-weight:400}
.why .why-bridge>div>p:not(.eyebrow){font-size:14px;line-height:1.75;max-width:490px}
.why-bridge .text-button{margin-top:18px;font-size:12px}
@media(max-width:1000px) and (min-width:761px){.why-heading{grid-template-columns:1.5fr 1fr;gap:6%}.why-heading h2{font-size:48px}.why-evidence article{padding-right:35px}.why-evidence article+article{padding-left:35px}.why p.why-value{font-size:87px}.why-bridge{gap:40px}}
@media(max-width:760px){
 .why{padding:65px 0 70px}
 .why:before{width:360px;height:360px;right:-200px;top:55px}
 .why-heading{grid-template-columns:1fr;gap:28px}
 .why-heading .eyebrow{margin-bottom:25px}
 .why-heading h2{font-size:41px;max-width:510px}
 .why-heading .lead{font-size:16px;max-width:430px;margin:0}
 .why-evidence{grid-template-columns:1fr;margin-top:38px;padding-top:28px;gap:30px}
 .why-evidence article,.why-evidence article+article{padding:0;border-left:0}
 .why-evidence article+article{border-top:1px solid var(--line);padding-top:28px}
 .why-evidence .eyebrow{font-size:10px}
 .why p.why-value{font-size:clamp(66px,20vw,84px);margin-top:20px;gap:14px}
 .why p.why-explanation{font-size:15px;line-height:1.7;margin-top:18px;max-width:430px}
 .why-source{font-size:12px;margin-top:16px;line-height:1.75}
 .why-bridge{grid-template-columns:1fr;gap:24px;margin-top:35px;padding-top:30px}
 .why-bridge .eyebrow{margin-bottom:20px}
 .why-bridge h3{font-size:32px}
 .why .why-bridge>div>p:not(.eyebrow){font-size:14px}
}

/* Core explanations remain visible without selections or secondary panels. */
.bee.section{padding:64px 0}
.bee .section-intro{margin-bottom:28px}
.bee-layout{gap:6%}
.bee-photo img{height:190px;border-radius:4px;object-position:center 48%}
.bee-photo figcaption{font-size:9px;margin-top:7px}
.choice-card{margin:16px 0 0;padding:23px 25px;box-shadow:none}
.demo-heading{align-items:baseline;gap:18px}
.demo-heading h3{font:italic 29px/1.05 var(--serif);letter-spacing:-.025em}
.demo-heading .eyebrow{font-size:8px;white-space:nowrap}
.example-question{margin-top:22px}
.example-question .eyebrow,.example-support .eyebrow{font-size:9px;letter-spacing:.09em;margin-bottom:8px}
.choice-question{font:italic 27px/1.13 var(--serif);min-height:0}
.example-support{border-top:1px solid #a7b595;margin-top:17px;padding-top:17px}
.example-support>p:last-child{font-size:13px;line-height:1.65;margin-top:0}
.example-decision{font-size:12px;line-height:1.65;margin-top:16px}
.demo-note{font-size:10px;line-height:1.6;margin-top:17px;padding-top:12px}
.approach.section{padding:70px 0}
.approach .section-intro{margin-bottom:26px}
.approach h2{font-size:clamp(40px,4.2vw,64px)}
.scale-intro{font-size:16px;line-height:1.7;max-width:670px;margin-top:23px;color:#d0d8c6}
.route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:start;margin-top:36px}
.route-grid article{border-top:1px solid #f3f1e849;padding-top:22px}
.route-grid .route-role{font-size:9px;line-height:1.6;letter-spacing:.08em;text-transform:uppercase;color:var(--lime);margin-bottom:18px}
.route-grid h3{font-size:clamp(25px,2.1vw,33px);line-height:1.12;min-height:74px;letter-spacing:-.04em}
.route-grid article>p:last-child{font-size:14px;line-height:1.75;color:#d0d8c6;margin-top:15px;max-width:370px}
.scale-footer{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #f3f1e82b;margin-top:32px;padding-top:22px}
.scale-footer p{font-size:12px;line-height:1.7;max-width:620px;color:#d0d8c6}
.scale-footer .text-button{font-size:12px;flex-shrink:0}
.mechanism.section{padding:70px 0}
.mechanism-heading h2{font-size:clamp(40px,4.2vw,64px)}
.mechanism-heading>.eyebrow{margin-bottom:0}
.demand-path{margin-top:38px}
.demand-path li{padding-top:22px;padding-bottom:8px}
.demand-path li>span{margin-bottom:15px}
.billion-row{margin-top:35px;padding-top:30px;grid-template-columns:1fr 1.35fr;gap:7%}
.billion-type{font-size:clamp(48px,5.3vw,76px);margin-top:15px}
.billion-copy h3{font-size:24px;margin-bottom:15px}
.billion-copy details{margin-top:16px;padding-top:12px}
@media(max-width:1000px) and (min-width:761px){.route-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}.route-grid h3{min-height:0}.route-grid h3 br{display:none}}
@media(min-width:1001px) and (max-height:820px){.approach.section,.mechanism.section{padding:48px 0}.approach h2,.mechanism-heading h2{font-size:48px}.route-grid{margin-top:26px}.route-grid h3{font-size:26px;min-height:60px}.route-grid article>p:last-child{font-size:13px;line-height:1.65}.scale-intro{margin-top:18px}.scale-footer{margin-top:25px;padding-top:15px}}
@media(min-width:1001px) and (max-height:820px){
 .bee.section{padding:36px 0}.bee .section-intro{margin-bottom:18px}
 .bee-photo img{height:120px}.choice-card{padding:18px 22px}
 .bee-copy h2{font-size:52px;margin-bottom:22px}.bee-wordmark{margin-bottom:18px}
 .bee-copy>.lead{font-size:17px;line-height:1.5}.bee-copy>p:not(.lead){margin-top:16px}
 .example-question{margin-top:16px}.choice-question{font-size:25px}
 .example-support{margin-top:14px;padding-top:14px}.example-decision{margin-top:13px}
 .demo-note{margin-top:13px;padding-top:10px}
 .mechanism-heading{gap:20px}.demand-path{margin-top:24px}
 .billion-row{margin-top:24px;padding-top:20px}.billion-type{font-size:60px}
 .billion-copy h3{font-size:22px;margin-bottom:10px}.billion-copy>p{font-size:12px;line-height:1.65}
}
@media(max-width:760px){
 .bee.section{padding:50px 0}
 .bee .section-intro{margin-bottom:25px}
 .bee .section-note{display:none}
 .bee-copy h2{font-size:36px;margin-bottom:20px}
 .bee-wordmark{margin-bottom:18px}
 .bee-copy>.lead{font-size:15px;line-height:1.65}
 .bee-copy>p:not(.lead){font-size:13px;line-height:1.65;margin-top:16px}
 .bee .product-status{margin-top:18px;padding-top:15px;font-size:10px}
 .bee-copy>.text-button{margin-top:13px}
 .bee-layout{gap:30px}
 .bee-photo img{height:auto;aspect-ratio:16/9;max-height:210px}
 .choice-card{margin:16px 0 0;padding:22px}
 .demo-heading{display:block}.demo-heading h3{font-size:29px}.demo-heading .eyebrow{display:block;font-size:9px;margin-top:10px}
 .choice-question{font-size:27px;min-height:0}
 .example-question{margin-top:20px}
 .example-support>p:last-child{font-size:13px}.example-decision{font-size:12px}
 .demo-note{font-size:10px}
 .approach.section,.mechanism.section{padding:50px 0}
 .approach h2,.mechanism-heading h2{font-size:40px}
 .approach .section-intro{margin-bottom:24px}.approach .section-intro>span{display:none}
 .scale-intro{font-size:15px;margin-top:22px}
 .route-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}
 .route-grid article{padding-top:20px}
 .route-grid .route-role{font-size:10px;margin-bottom:12px}
 .route-grid h3{font-size:28px;min-height:0}.route-grid h3 br{display:none}
 .route-grid article>p:last-child{font-size:14px;line-height:1.75;margin-top:12px;max-width:430px}
 .scale-footer{display:block;margin-top:28px;padding-top:20px}.scale-footer .text-button{margin-top:13px}
 .mechanism-heading>.eyebrow{margin-bottom:0}
 .billion-row{grid-template-columns:1fr;gap:25px;margin-top:30px;padding-top:28px}
 .billion-type{font-size:64px;max-width:100%;margin-top:20px}
 .billion-copy h3{font-size:27px;margin-bottom:18px}
}

/* A centred invitation to scroll, with an independent return control. */
.hero .hero-scroll{position:absolute;left:50%;bottom:22px;z-index:4;display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;transform:translateX(-50%);text-decoration:none;min-width:90px}
.hero-scroll .scroll-orb{display:grid;place-items:center;width:44px;height:44px;border:1px solid #f3f1e87a;border-radius:50%;background:#102e2ab3;color:var(--paper);font-size:25px;line-height:1;animation:scroll-invitation 2.5s ease-in-out infinite}
.hero-scroll .scroll-label{font-size:8px;letter-spacing:.09em;line-height:1.5;white-space:nowrap}
#page-fullscreen{gap:9px;font-size:10px;min-height:44px;white-space:nowrap}
#page-fullscreen-status{position:absolute;right:4.2%;bottom:98px;z-index:6;font-size:11px;line-height:1.6;padding:8px 12px;background:var(--deep);border:1px solid #d4e7a04d;border-radius:4px;max-width:270px}
#page-fullscreen-status:empty{display:none}
.return-top{position:fixed;left:10px;bottom:22px;z-index:70;display:grid;place-items:center;width:44px;height:44px;border:1px solid #d4e7a0a0;border-radius:50%;background:#102e2aed;color:var(--paper);text-decoration:none;box-shadow:0 3px 14px #0c24212b;backdrop-filter:blur(8px)}
.return-top span{font-size:25px;line-height:1}
.return-top:hover{background:var(--lime);color:var(--green)}
@keyframes scroll-invitation{0%,100%{transform:translateY(-3px)}50%{transform:translateY(3px)}}
.no-motion .scroll-orb{animation:none}
@media(prefers-reduced-motion:reduce){.hero-scroll .scroll-orb{animation:none}}
@media(max-width:760px){
 .hero-foot{justify-content:space-between;gap:0;padding-top:14px;bottom:18px;min-height:59px}
 .hero-foot>span{display:none}
 .hero-foot #film-open{margin-left:auto;gap:7px;font-size:9px}
 .hero-foot #film-open .play{width:30px;height:30px;font-size:18px}
 .hero-foot #film-open small{display:none}
 #page-fullscreen{font-size:9px;gap:7px}#page-fullscreen svg{width:18px;height:18px}
 .hero .hero-scroll{bottom:18px;min-width:48px}
 .hero-scroll .scroll-label{display:none}
 .return-top{left:15px;bottom:15px}
}
