/* Our Vision — clarity, depth and investor independence. */
.vision-page{background:#080c0b;color:#eff5ed}.vision-page [hidden]{display:none!important}.vision-page #main{overflow-x:clip}.vision-page .site-header{background:transparent;color:#eff5ed}.vision-page .site-header::before{background:#080c0b}.vision-page .header-cta{color:#eff5ed;border-color:#eff5ed}.vision-page .header-cta::before{background:#eff5ed}.vision-page .header-cta:hover,.vision-page .header-cta:focus-visible{color:#080c0b}.vision-page .mobile-nav{background:#080c0b}.vision-page .desktop-nav a[aria-current=page]{color:var(--lime);text-decoration-color:var(--lime)}
.vision-label{font:400 10px/1.7 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#8eaa97}.vision-label em{font-style:normal;color:var(--lime)}.vision-label-row{display:flex;justify-content:space-between;gap:25px;align-items:center}.vision-label-row>span:last-child{color:#718c7b}.vision-outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:18px 23px;border:1px solid #eff5ed;background:transparent;position:relative;isolation:isolate;overflow:hidden;font:700 11px var(--sans);letter-spacing:.04em;min-width:210px;transition:color .3s}.vision-outline-link::before{content:'';position:absolute;z-index:-1;inset:0;background:#eff5ed;transform:translateX(101%);transition:transform .4s cubic-bezier(.2,.7,.2,1)}.vision-outline-link:hover::before,.vision-outline-link:focus-visible::before{transform:translateX(0)}.vision-outline-link:hover,.vision-outline-link:focus-visible{color:#080c0b}.vision-outline-link svg,.vision-inline-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.3}.vision-inline-link{display:inline-flex;align-items:center;gap:26px;padding-bottom:12px;border-bottom:1px solid currentColor;font:600 11px var(--sans);letter-spacing:.03em}.vision-inline-link:hover{color:var(--lime)}
.vision-opening{position:relative;isolation:isolate;min-height:100svh;min-height:100dvh;padding-top:clamp(155px,19vh,230px);padding-bottom:45px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 76% 49%,#1c32232e,transparent 48%)}.vision-opening-copy{position:relative;z-index:2;pointer-events:none}.vision-opening h1{font:300 clamp(76px,8.7vw,170px)/1.02 var(--sans);letter-spacing:-.067em;margin:0;max-width:1240px}.vision-opening h1 strong{font-weight:400;color:var(--lime)}.vision-opening-description{max-width:600px;margin:42px 0 0;font:400 clamp(16px,1.25vw,21px)/1.85 var(--sans);color:#b1c1b6}.vision-opening-description strong{font-weight:400;color:#edf3ec}.vision-opening-bottom{position:relative;z-index:2;margin-top:auto;padding-top:65px;display:flex;justify-content:space-between;align-items:end;gap:30px}.vision-opening-bottom .vision-label{max-width:260px;font-size:9px}.vision-opening-scroll{display:flex;align-items:center;gap:25px;font:600 10px var(--sans);letter-spacing:.06em}.vision-opening-scroll svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.2}.vision-opening-scroll:hover{color:var(--lime)}
.vision-architecture{position:absolute;width:64%;height:96%;right:-5%;top:7%;z-index:0;opacity:.95;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 92%,transparent)}.vision-architecture svg{width:100%;height:100%;overflow:visible}.architecture-line{fill:none;stroke:#a9f26c;stroke-width:.65;opacity:.24}.architecture-line.white{stroke:#d9e8dd;opacity:.22}.architecture-front{fill:none;stroke:#c8eec0;stroke-width:.9;opacity:.5}.architecture-plane{fill:#a9f26c;fill-opacity:.024;stroke:#c8eec0;stroke-opacity:.23;stroke-width:.8}.architecture-dot{fill:#b2f480}.architecture-word{fill:#88a08f;font:9px var(--mono);letter-spacing:2px}.architecture-glow{fill:url(#architecture-light);opacity:.45}
.vision-common{min-height:125svh;padding-top:115px;padding-bottom:110px;background:#080c0b;color:#eff5ed;--vision-paper-rule:rgba(145,167,150,.3)}.vision-common .vision-label{color:inherit;opacity:.7}.vision-common-title{font:300 clamp(48px,6.7vw,125px)/1.1 var(--sans);letter-spacing:-.06em;margin:65px 0 70px;max-width:1250px}.vision-common-title strong{font-weight:500}.vision-starting-points{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--vision-paper-rule);border-bottom:1px solid var(--vision-paper-rule)}.vision-starting-point{padding:42px 6vw 45px 0}.vision-starting-point+.vision-starting-point{border-left:1px solid var(--vision-paper-rule);padding-left:6vw;padding-right:0}.vision-starting-point>span{font:10px var(--mono);letter-spacing:.08em;opacity:.6}.vision-starting-point h3{color:var(--lime);font:400 clamp(30px,3vw,52px)/1.2 var(--sans);letter-spacing:-.045em;margin:35px 0 22px}.vision-starting-point p{font:400 16px/1.9 var(--sans);max-width:520px;opacity:.75;margin:0}.vision-starting-point small{display:block;font:9px/1.9 var(--mono);letter-spacing:.03em;margin-top:35px;opacity:.7}.vision-common-after{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding-top:45px;align-items:start}.vision-common-after h3{font:400 clamp(27px,3.4vw,55px)/1.2 var(--sans);letter-spacing:-.05em;margin:0}.vision-common-after p{font:400 17px/1.85 var(--sans);margin:0;max-width:560px;opacity:.75}
.vision-path{position:relative;height:390svh;min-height:2500px;background:#080c0b}.vision-path-sticky{height:100svh;position:sticky;top:0;display:flex;flex-direction:column;justify-content:center;padding-top:110px;padding-bottom:45px}.vision-path-top{border-bottom:1px solid #2b3c30;padding-bottom:22px}.vision-path-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:6vw;align-items:center;flex:1;min-height:0}.vision-path-copy{min-width:0}.vision-stage-count{font:400 11px var(--mono);color:#8ba193;letter-spacing:.08em}.vision-stage-count span{color:var(--lime)}.vision-stage h2{font:300 clamp(43px,4.7vw,88px)/1.1 var(--sans);letter-spacing:-.055em;margin:26px 0}.vision-stage p{font:400 clamp(15px,1.15vw,19px)/1.9 var(--sans);color:#a3b9aa;max-width:550px}.vision-stage p strong{font-weight:500;color:#e5eee4}.vision-stage-tools{font:9px/1.8 var(--mono);color:#8fb88f;letter-spacing:.04em;margin-top:30px}.vision-stage-art{min-width:0;position:relative;aspect-ratio:1.15;background:radial-gradient(ellipse at 50% 50%,#18312455,transparent 68%)}.vision-stage-art svg{width:100%;height:100%;display:block}.diagram-grid{stroke:#a9c6ae;stroke-width:.6;opacity:.1}.diagram-hairline{fill:none;stroke:#c7e4c5;stroke-width:.8;opacity:.35}.diagram-lime{fill:none;stroke:#a9f26c;stroke-width:1.2}.diagram-dim{fill:#a9f26c;fill-opacity:.035;stroke:#a9f26c;stroke-opacity:.38;stroke-width:.8}.diagram-text{fill:#9bb2a0;font:9px var(--mono);letter-spacing:1px}.diagram-title{fill:#e9f2e8;font:400 18px var(--sans);letter-spacing:-.5px}.diagram-point{fill:#a9f26c}.diagram-white{fill:#e4efe2}.diagram-large{fill:none;stroke:#a9f26c;stroke-width:1;opacity:.6}.vision-path-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.vision-path-nav button{position:relative;text-align:left;display:flex;align-items:center;gap:12px;padding:18px 0 0;border:0;border-top:1px solid #34463a;background:none;color:#859d8c;font:500 12px var(--sans)}.vision-path-nav button::before{content:'';position:absolute;top:-1px;left:0;height:1px;width:0;background:var(--lime);transition:width .4s}.vision-path-nav button[aria-pressed=true]{color:#eff5ed}.vision-path-nav button[aria-pressed=true]::before{width:100%}.vision-path-nav button>span{font:9px var(--mono);color:#75937d}.vision-path-nav button:hover{color:var(--lime)}.vision-path-nav button:focus-visible{outline:1px solid var(--lime);outline-offset:7px}.vision-stage[hidden],.vision-stage-art>svg[hidden]{display:none}.vision-page.vision-ready .vision-stage:not([hidden]){animation:vision-stage-enter .5s both}@keyframes vision-stage-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.vision-manifesto{padding-top:100px;padding-bottom:100px;background:#080c0b}.vision-manifesto-heading{font:300 clamp(51px,7.6vw,146px)/1.14 var(--sans);letter-spacing:-.06em;margin:35px 0 85px}.vision-manifesto-heading span{display:block;color:#eff5ed}.vision-manifesto-heading strong{font-weight:400;color:var(--lime)}.vision-manifesto-heading span:last-child{padding-left:12vw}.vision-beliefs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4vw}.vision-belief{border-top:1px solid #344538;padding-top:26px}.vision-belief>span{font:9px var(--mono);color:#789d7e}.vision-belief h3{font:400 clamp(24px,2.3vw,38px)/1.2 var(--sans);letter-spacing:-.04em;margin:25px 0 20px}.vision-belief p{color:#9eb3a4;font:400 15px/1.85 var(--sans);margin:0;max-width:360px}
.vision-independence{padding-top:105px;padding-bottom:110px;position:relative;border-top:0;display:grid;grid-template-columns:1.3fr 1fr;gap:8vw;align-items:end;background:#080c0b}.vision-independence h2{font:300 clamp(45px,4.8vw,92px)/1.12 var(--sans);letter-spacing:-.055em;margin:0}.vision-independence h2 strong{font-weight:400;color:var(--lime)}.vision-independence-copy p{font:400 17px/1.9 var(--sans);color:#adbfaf;max-width:470px;margin:0 0 35px}.vision-independence-links{display:flex;flex-wrap:wrap;gap:26px;align-items:center}.vision-independence-note{grid-column:1/-1;font:10px/1.8 var(--mono);color:#718b77;max-width:700px;margin:0}
@media(min-width:1800px){.vision-opening-description{max-width:540px}.vision-opening{padding-bottom:55px}.vision-path-sticky{padding-top:125px;padding-bottom:55px}}
@media(max-width:1050px){.vision-opening h1{font-size:clamp(70px,9.2vw,110px)}.vision-architecture{width:70%;right:-12%;opacity:.7}.vision-opening-description{max-width:400px}.vision-path-layout{gap:3vw}.vision-stage h2{font-size:clamp(38px,5vw,65px)}.vision-path-nav{gap:15px}.vision-path-nav button{font-size:11px}.vision-independence{gap:5vw}.vision-common-title{font-size:clamp(50px,7.2vw,95px)}}
@media(max-width:760px){.vision-opening{padding-top:135px;padding-bottom:30px;justify-content:start;min-height:100svh;min-height:100dvh}.vision-opening h1{font-size:clamp(61px,11vw,88px);position:relative;z-index:2}.vision-opening-description{font-size:16px;max-width:360px;margin-top:30px}.vision-architecture{position:relative;width:120%;height:300px;right:auto;top:auto;align-self:end;margin:-35px -15% -15px 0;opacity:.85}.vision-opening-bottom{padding-top:15px;align-items:end}.vision-opening-bottom .vision-label{max-width:150px;font-size:8px}.vision-opening-scroll{font-size:9px;gap:12px}.vision-common{padding-top:75px;padding-bottom:75px}.vision-common-title{font-size:clamp(43px,8vw,65px);margin:45px 0}.vision-starting-points{grid-template-columns:1fr}.vision-starting-point,.vision-starting-point+.vision-starting-point{padding:30px 0;border-left:0}.vision-starting-point+.vision-starting-point{border-top:1px solid var(--vision-paper-rule)}.vision-starting-point h3{font-size:32px;margin-top:22px}.vision-starting-point p{font-size:15px}.vision-common-after{grid-template-columns:1fr;gap:24px;padding-top:30px}.vision-common-after h3{font-size:35px}.vision-common-after p{font-size:16px}.vision-path{height:auto;min-height:0;padding-top:65px;padding-bottom:65px}.vision-path-sticky{position:relative;height:auto;padding-top:0;padding-bottom:0}.vision-path-layout{grid-template-columns:1fr;gap:8px}.vision-path-copy{padding-top:32px}.vision-stage h2{font-size:clamp(39px,8vw,60px);max-width:550px;margin:24px 0}.vision-stage p{font-size:15px;max-width:550px}.vision-stage-tools{font-size:8px;margin-top:22px}.vision-stage-art{aspect-ratio:1.3;max-width:580px;width:100%;justify-self:center}.vision-path-nav{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px;row-gap:22px}.vision-path-nav button{font-size:12px;padding-top:14px}.vision-path-top{font-size:8px}.vision-path-top>span:last-child{display:none}.vision-manifesto{padding-top:75px;padding-bottom:75px}.vision-manifesto-heading{font-size:clamp(44px,8.8vw,72px);margin-bottom:50px}.vision-manifesto-heading span:last-child{padding-left:0}.vision-beliefs{grid-template-columns:1fr;gap:30px}.vision-belief h3{font-size:30px;margin:18px 0}.vision-belief p{max-width:550px}.vision-independence{grid-template-columns:1fr;padding-top:65px;padding-bottom:75px;gap:35px}.vision-independence h2{font-size:clamp(43px,8vw,65px)}.vision-independence-copy p{font-size:16px}.vision-independence-note{font-size:9px}.vision-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){.vision-page.vision-ready .vision-stage:not([hidden]){animation:none}.vision-outline-link::before,.vision-path-nav button::before{transition:none}}

@media(min-width:761px) and (max-height:800px){.vision-stage h2{font-size:clamp(36px,3.8vw,62px);margin:20px 0}.vision-stage p{font-size:14px;line-height:1.75;margin:15px 0}.vision-stage-tools{margin-top:20px}.vision-stage-art{max-height:440px}.vision-path-layout{gap:4vw}}

@media(min-width:761px){.vision-opening-copy{margin-top:auto;margin-bottom:auto}}


/* A quiet, full-viewport field revealed only around the pointer. */
.vision-opening{background:#080c0b;align-items:center;text-align:center;padding-top:120px;padding-bottom:70px;min-height:100svh;min-height:100dvh}
.vision-opening-copy{width:100%;margin:auto 0;pointer-events:none}
.vision-opening h1{max-width:1300px;margin:0 auto;font-size:clamp(76px,8.7vw,166px)}
.vision-opening-description{max-width:680px;margin:38px auto 0;text-wrap:pretty}
.vision-hover-field{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;z-index:0}
@media(max-width:760px){.vision-opening{padding-top:125px;padding-bottom:75px;min-height:100svh;min-height:100dvh;justify-content:center}.vision-opening h1{font-size:clamp(57px,11.5vw,85px)}.vision-opening-description{max-width:390px;font-size:16px;margin-top:30px}.vision-keep-together{white-space:normal}}

.vision-stage-art{background:none;touch-action:pan-y}
#vision-journey-particles{width:100%;height:100%;display:block}
.vision-particle-labels{position:absolute;inset:0;pointer-events:none;transition:opacity .3s}
.vision-particle-labels span{position:absolute;font:9px/1.5 var(--mono);letter-spacing:.06em;color:#8eaa97;white-space:nowrap;transform:translate(-50%,-50%)}
.vision-particle-labels span:nth-child(1){left:50%;top:6%}.vision-particle-labels span:nth-child(2){left:86%;top:39%}.vision-particle-labels span:nth-child(3){left:72%;top:87%}.vision-particle-labels span:nth-child(4){left:25%;top:87%}.vision-particle-labels span:nth-child(5){left:13%;top:39%}
@media(max-width:760px){.vision-particle-labels span{font-size:7px}}

.vision-independence-links{align-items:stretch}.vision-independence-links .vision-outline-link{min-height:58px;box-sizing:border-box;flex:0 0 auto}

.vision-independence-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.vision-independence-links .vision-outline-link{min-width:0;gap:14px;padding:18px 16px;font-size:10px;white-space:nowrap}
@media(max-width:760px){.vision-independence-links{grid-template-columns:1fr;max-width:320px}}

/* Tablet: use the portrait height for the artwork rather than empty margins. */
@media(min-width:641px) and (max-width:1180px), (min-width:641px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  .vision-opening{padding-top:120px;padding-bottom:70px}
  .vision-opening h1{font-size:clamp(82px,min(11.5vw,12svh),144px);line-height:1.05;max-width:100%}
  .vision-opening-description{font-size:clamp(19px,2.2vw,25px);line-height:1.7;max-width:720px;margin-top:34px}
  .vision-common{min-height:0;padding-top:80px;padding-bottom:70px}
  .vision-common-title{font-size:clamp(52px,7vw,88px);margin:0 0 48px}
  .vision-starting-point,.vision-starting-point+.vision-starting-point{padding-top:32px;padding-bottom:32px}
  .vision-starting-point h3{font-size:clamp(32px,3.8vw,48px);margin-top:26px}
  .vision-starting-point p,.vision-common-after p{font-size:18px;line-height:1.8}
  .vision-common-after{padding-top:36px;gap:36px}
  .vision-path{height:320svh;min-height:0;padding-top:0;padding-bottom:0}
  .vision-path-sticky{padding-top:112px;padding-bottom:32px;gap:26px}
  .vision-path-layout{gap:36px}
  .vision-stage h2{font-size:clamp(42px,5.3vw,68px);margin:22px 0}
  .vision-stage p{font-size:clamp(17px,1.8vw,21px);line-height:1.75}
  .vision-stage-tools{font-size:10px;margin-top:24px}
  .vision-stage-art{max-height:none;width:100%}
  .vision-path-nav button{min-height:48px;font-size:14px;gap:10px;padding-top:14px}
  .vision-manifesto{padding-top:76px;padding-bottom:65px}
  .vision-manifesto-heading{font-size:clamp(56px,8vw,100px);margin:0 0 48px}
  .vision-manifesto-heading span:last-child{padding-left:0}
  .vision-beliefs{gap:28px}
  .vision-belief p{font-size:17px;line-height:1.8}
  .vision-independence{grid-template-columns:1fr;gap:36px;align-items:start;padding-top:70px;padding-bottom:80px}
  .vision-independence h2{font-size:clamp(52px,7vw,84px);max-width:1000px}
  .vision-independence-copy p{font-size:20px;line-height:1.75;max-width:800px;margin-bottom:30px}
  .vision-independence-links{width:100%;max-width:720px;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .vision-independence-links .vision-outline-link{min-width:0;min-height:62px;font-size:12px;padding:18px 22px;gap:18px;white-space:normal}
  .vision-outline-link svg{flex-shrink:0}
}
@media(min-width:641px) and (max-width:1180px) and (orientation:portrait), (min-width:641px) and (max-width:1366px) and (hover:none) and (pointer:coarse) and (orientation:portrait){
  .vision-path-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:22px;align-items:center}
  .vision-path-copy{padding-top:10px}
  .vision-stage p{max-width:760px}
  .vision-stage-art{justify-self:center;align-self:center;width:min(100%,700px);height:100%;max-height:min(38svh,560px);min-height:0;aspect-ratio:auto}
  .vision-path-nav{gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-beliefs{grid-template-columns:1fr;gap:32px}
  .vision-belief p{max-width:760px}
  .vision-common-after{grid-template-columns:1fr;gap:22px}
}
@media(min-width:641px) and (max-width:760px){
  .vision-path-sticky{position:sticky;top:0;height:100svh}
  .vision-stage h2{font-size:42px}
  .vision-path-nav{margin-top:0;row-gap:12px}
}

/* Phone journey uses the same pinned, scroll-driven stages as larger screens. */
@media(max-width:640px){
  .vision-path{height:380svh;min-height:0;padding:0}
  .vision-path-sticky{position:sticky;top:0;height:100svh;padding-top:90px;padding-bottom:20px;gap:18px}
  .vision-path-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);flex:1;min-height:0;gap:12px;align-items:center}
  .vision-path-copy{padding-top:0}
  .vision-stage-count{font-size:10px}
  .vision-stage h2{font-size:clamp(29px,8vw,39px);line-height:1.1;margin:18px 0}
  .vision-stage p{font-size:14px;line-height:1.65;margin:13px 0;max-width:none}
  .vision-stage-tools{font-size:8px;line-height:1.6;margin-top:16px}
  .vision-stage-art{height:100%;min-height:0;max-height:32svh;aspect-ratio:auto;width:100%;max-width:440px}
  .vision-path-nav{flex:none;margin-top:0;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-path-nav button{min-height:42px;padding-top:10px;font-size:11px}
}
@media(max-width:640px) and (max-height:700px){
  .vision-path-sticky{padding-top:84px;padding-bottom:14px;gap:12px}
  .vision-stage h2{font-size:28px;margin:12px 0}
  .vision-stage p{font-size:13px;line-height:1.5;margin:10px 0}
  .vision-stage-tools{margin-top:10px;font-size:7px}
  .vision-path-nav{gap:8px}
  .vision-path-nav button{min-height:36px;padding-top:7px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .vision-path{height:auto;min-height:0;padding-top:65px;padding-bottom:65px}
  .vision-path-sticky{position:relative;height:auto;padding-top:0}
  .vision-path-layout{grid-template-rows:auto auto}
  .vision-stage-art{height:auto;aspect-ratio:1.3;min-height:220px}
}
