/* Two-image portal: a real alpha opening through the tree reveals the future layer. */
.portal-scene{height:330svh;background:#f8f7ee;isolation:isolate;--portal-zoom:1;--portal-world-scale:1.01;--portal-tree-opacity:1;--portal-intro-opacity:1;--portal-guide-opacity:1;--portal-future-opacity:0;--portal-future-y:28px;--portal-shift-y:0px;--portal-progress:0}
.portal-stage{height:100vh;height:100svh;min-height:500px;position:sticky;top:0;overflow:hidden;isolation:isolate;background:#eeeadd;color:#fff8e8;contain:paint}
.portal-future{position:absolute;inset:0;z-index:-3;overflow:hidden}.portal-future>img{display:block;max-width:none;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(var(--portal-world-scale));will-change:transform}.portal-future-veil{position:absolute;inset:0;background:linear-gradient(180deg,#fffdf588,transparent 48%,#173a2410 80%,#fbf8e799);opacity:var(--portal-future-opacity)}
.portal-tree-frame{position:absolute;width:100%;height:100%;z-index:-1;transform-origin:50.42% 47.88%;transform:translateY(var(--portal-shift-y)) scale(var(--portal-zoom));opacity:var(--portal-tree-opacity);will-change:transform,opacity;pointer-events:none}.portal-tree-frame>img{width:100%;height:100%;max-width:none;object-fit:fill;display:block}.portal-tree-shade{position:absolute;inset:0;background:linear-gradient(180deg,#082b232c,transparent 24%),linear-gradient(270deg,#092c2c6e,transparent 38%);-webkit-mask-image:url('/assets/portal-tree-v1.webp');mask-image:url('/assets/portal-tree-v1.webp');mask-size:100% 100%;mask-repeat:no-repeat;pointer-events:none}
.portal-intro{position:absolute;right:6%;top:32%;width:27%;max-width:400px;z-index:2;opacity:var(--portal-intro-opacity);transform:translateY(calc((1 - var(--portal-intro-opacity))*-22px));will-change:opacity;pointer-events:auto}.portal-eyebrow{display:block;font-size:10px;line-height:2;color:#ede4b8;margin-bottom:20px}.portal-intro h1{font-size:clamp(33px,3.25vw,47px);line-height:1.65;letter-spacing:-1.4px;font-weight:500;color:#fff9e8;text-shadow:0 3px 24px #143a2c44}.portal-intro h1 em{font-style:normal;color:#e4d7a3}.portal-intro p{font-size:12px;color:#e5e7d1;line-height:2.1;margin-top:22px;text-shadow:0 2px 15px #143a2c55}.portal-coordinate{position:absolute;left:6%;top:43%;display:grid;gap:20px;opacity:var(--portal-intro-opacity);color:#e7e1bc;pointer-events:none}.portal-coordinate>span:first-child{font:12px Georgia}.portal-coordinate i{height:55px;width:1px;background:#d9dcb066}.portal-coordinate>span:last-child{font:8px/1.9 Arial;letter-spacing:2px}
.portal-skip{position:absolute;top:118px;left:6%;z-index:5;display:flex;align-items:center;gap:10px;font-size:9px;color:#f6eed5;opacity:var(--portal-intro-opacity);border-bottom:1px solid #e6e1c650;padding-bottom:7px}.portal-skip>.arrow{width:17px;height:17px}.portal-guide{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;white-space:nowrap;z-index:3;opacity:var(--portal-guide-opacity);background:#14392c36;border:1px solid #eee8cf26;backdrop-filter:blur(6px);border-radius:40px;padding:12px 20px;color:#f0edd8;font-size:10px;pointer-events:none}.portal-guide .ch-mouse{height:27px;width:16px}.portal-guide .ch-mouse:before{left:6px;top:5px}
.portal-progress{position:absolute;bottom:29px;left:40%;right:40%;height:1px;background:#e4e5c844;z-index:4;opacity:var(--portal-guide-opacity)}.portal-progress>span{height:100%;width:calc(var(--portal-progress)*100%);display:block;background:#f3e8b4;margin-right:0;box-shadow:0 0 8px #f6edb65c}
.portal-future-copy{position:absolute;top:19%;left:5%;right:5%;text-align:center;z-index:3;color:#163f2e;opacity:var(--portal-future-opacity);transform:translateY(var(--portal-future-y));pointer-events:none;will-change:opacity,transform}.portal-future-copy.is-active{pointer-events:auto}.portal-future-label{font-size:10px;color:#586d43;display:block;margin-bottom:15px}.portal-future-copy h2{font-size:clamp(40px,4.8vw,68px);line-height:1.5;letter-spacing:-1.7px;font-weight:500;text-shadow:0 2px 30px #fff8e380}.portal-future-copy h2 br{display:none}.portal-future-copy p{font-size:13px;color:#264a35;margin:20px auto 25px;max-width:650px;text-shadow:0 2px 15px #fff8e3}.portal-future-copy .ch-button{font-size:11px;min-height:45px;padding:12px 22px;gap:18px;background:linear-gradient(115deg,#386343,#174b36);color:#fffbe9}.portal-future-copy .arrow{width:22px;height:22px}.portal-scene-caption{position:absolute;bottom:22px;right:6%;left:6%;font-size:8px;z-index:3;display:flex;justify-content:space-between;pointer-events:none}.portal-caption-roots{opacity:var(--portal-intro-opacity);color:#ece7cc}.portal-caption-future{opacity:var(--portal-future-opacity);color:#536a42}.portal-journey-state{pointer-events:none}
.home-page.portal-visible .headerinner{background:none;backdrop-filter:none}.home-page.header-scrolled .siteheader{transition:background .5s,box-shadow .5s}.portal-scene+.ch-pathways{padding-top:95px}.portal-scene.is-static{height:100svh}.portal-scene.is-static .portal-stage{position:relative}
@media(max-width:1100px){.portal-intro{right:5%;width:28%;top:34%}.portal-intro h1{font-size:34px}.portal-intro p{font-size:11px}.portal-eyebrow{font-size:9px}.portal-coordinate{left:4%}.portal-skip{left:5%;top:110px}.portal-future-copy h2{font-size:54px}}
@media(max-width:800px){.portal-scene{height:305svh}.portal-stage{min-height:500px}.portal-intro{top:115px;right:6%;left:6%;width:auto;max-width:none;text-align:center}.portal-intro h1{font-size:36px;line-height:1.5;letter-spacing:-1px}.portal-intro h1 br{display:none}.portal-intro p{display:none}.portal-eyebrow{font-size:8px;margin-bottom:12px}.portal-coordinate{display:none}.portal-skip{top:auto;bottom:24px;left:6%;font-size:8px;gap:8px;padding-bottom:5px}.portal-guide{bottom:63px;font-size:9px;padding:11px 17px;gap:11px}.portal-scene-caption{bottom:28px;font-size:7px;left:auto;right:6%}.portal-progress{bottom:45px;left:35%;right:35%}.portal-future-copy{top:20%;left:6%;right:6%}.portal-future-copy h2{font-size:46px}.portal-future-copy h2 br{display:block}.portal-future-copy p{font-size:12px;max-width:500px;line-height:2.1}.portal-future-copy p br{display:none}.portal-future-label{font-size:9px}.portal-caption-roots{display:none}.portal-scene+.ch-pathways{padding-top:65px}}
@media(max-width:520px){.portal-scene{height:290svh}.portal-stage{height:100vh;height:100svh;min-height:540px}.portal-intro{top:104px;right:5%;left:5%}.portal-eyebrow{font-size:7px;line-height:1.8;margin-bottom:11px}.portal-intro h1{font-size:29px;line-height:1.6;letter-spacing:-1px}.portal-intro h1 br{display:block}.portal-intro h1 em{font-size:27px}.portal-guide{font-size:8px;padding:10px 15px;bottom:65px;gap:10px}.portal-guide .ch-mouse{height:23px;width:14px}.portal-guide .ch-mouse:before{left:5px}.portal-skip{bottom:24px;font-size:7px}.portal-skip>.arrow{width:15px;height:15px}.portal-progress{bottom:45px;left:35%;right:35%}.portal-future-copy{top:17%;right:7%;left:7%}.portal-future-copy h2{font-size:39px;line-height:1.6;letter-spacing:-1px}.portal-future-copy p{font-size:11px;line-height:2.2;margin:16px auto 22px}.portal-future-label{font-size:8px;line-height:2;margin-bottom:12px}.portal-future-copy .ch-button{font-size:10px;padding:12px 20px;min-height:45px}.portal-future-copy .arrow{width:19px;height:19px}.portal-scene-caption{bottom:25px;font-size:6px}.portal-scene+.ch-pathways{padding-top:50px}}
@media(max-height:700px) and (min-width:801px){.portal-stage{min-height:0}.portal-intro{top:31%}.portal-intro h1{font-size:35px}.portal-intro p{font-size:11px}.portal-future-copy{top:20%}.portal-future-copy h2{font-size:44px}.portal-future-copy p{font-size:11px;margin-block:14px 20px}.portal-guide{bottom:50px}.portal-skip{top:106px}}
@media(prefers-reduced-motion:reduce){.portal-scene{height:100svh!important}.portal-stage{position:relative}.portal-tree-frame{will-change:auto}.portal-future>img{will-change:auto;transform:none}.portal-intro,.portal-future-copy{will-change:auto;transform:none!important}.portal-guide .ch-mouse:before{animation:none}}
.portal-future{z-index:0}.portal-tree-frame{z-index:1}
.portal-future-copy p{font-weight:500;text-shadow:0 1px 12px #fff9e8,0 0 25px #fff9e8}
@media(max-width:800px){.portal-intro{top:106px}.portal-intro .portal-eyebrow,.portal-intro .portal-rootline,.portal-intro h1 br{display:none}.portal-intro h1,.portal-intro h1 em{font-size:29px;line-height:1.5}.portal-intro h1 em{text-shadow:0 2px 15px #12382b}}
@media(max-width:520px){.portal-intro{top:98px;right:6%;left:6%}.portal-intro h1,.portal-intro h1 em{font-size:25px;line-height:1.5}}

/* Green glass actions: retain Sindian green while letting the scene show through. */
:root{--green-glass:linear-gradient(135deg,rgba(107,151,116,.64),rgba(25,78,57,.78) 54%,rgba(15,62,46,.84));--green-glass-hover:linear-gradient(135deg,rgba(129,170,130,.72),rgba(35,91,65,.83) 54%,rgba(18,70,50,.88))}
.button:not(.gold):not(.outline):not(.clear),.ch-button,.portal-future-copy .ch-button,.home-page.header-scrolled .headerinner>.button{background:var(--green-glass);border:1px solid rgba(211,236,197,.48);color:#fffbed;-webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%);box-shadow:inset 0 1px 0 rgba(255,255,238,.5),inset 0 -1px 0 rgba(15,53,37,.16),0 6px 22px rgba(14,49,34,.14);transition:background .3s,box-shadow .3s,transform .3s,border-color .3s}
.button:not(.gold):not(.outline):not(.clear):hover,.ch-button:hover,.portal-future-copy .ch-button:hover,.home-page.header-scrolled .headerinner>.button:hover{background:var(--green-glass-hover);border-color:rgba(225,245,209,.72);box-shadow:inset 0 1px 0 rgba(255,255,238,.65),0 10px 28px rgba(14,49,34,.2)}
/* Keep the original clear entrance-header treatment until the portal opens. */
.home-page:not(.header-scrolled) .headerinner>.button{background:#ffffff10;border:1px solid #f5f1dc66;box-shadow:none;color:#fff9e9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
/* Readability and lighter rendering, review October 30. */
html{scroll-behavior:auto}body{background-attachment:scroll}.portal-scene{height:260svh}.portal-future>img{transform:none;will-change:auto}.portal-tree-frame{will-change:auto}.portal-progress>span{width:100%;transform-origin:right;transform:scaleX(0)}
.portal-skip{background:#255c3bb3;border:1px solid #dbeac66b;border-radius:30px;padding:10px 16px;font-size:10px;min-height:40px;box-shadow:inset 0 1px 0 #ffffff26;transition:background .18s}.portal-skip:hover{background:#255c3be6}.portal-guide{background:#255c3b6b;border-color:#e3edcf55;backdrop-filter:none}
.nav a,.home-page .nav a{background:#28734318;border:1px solid #74946635;border-radius:30px;min-height:40px;display:flex;align-items:center;justify-content:center}.home-page:not(.header-scrolled) .nav a{background:#255c3ba6;border-color:#dce9c64d;color:#fffbed}.home-page .nav a:hover,.nav a:hover{background:#3d76473d}.home-page:not(.header-scrolled) .nav a:hover{background:#255c3bdb}
.portal-future-copy p{width:fit-content;max-width:min(650px,100%);padding:14px 24px;border-radius:23px;background:linear-gradient(115deg,#214f36cf,#2e5d40c7);border:1px solid #e1eac24d;color:#fffcec;text-shadow:none;font-weight:400;box-shadow:inset 0 1px 0 #fff2}
.home-page:not(.header-scrolled) .headerinner>.button{background:#255c3ba6;border-color:#dce9c64d}
.button,.ch-button,.headerinner,.home-page.header-scrolled .siteheader{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.button:not(.gold):not(.outline):not(.clear),.ch-button{--green-glass:linear-gradient(135deg,#628568d9,#194e39e0 54%,#0f3e2eeb)}
.branch-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:28px;position:relative;z-index:2}.branch-controls button{width:52px;height:48px;border-radius:60% 40% 55% 45%;background:linear-gradient(135deg,#edf4e1,#c8dbb0);border:1px solid #b5cda3;box-shadow:inset 0 1px 0 #fff,0 4px 12px #174b3c12;display:grid;place-items:center;transition:transform .2s,background .2s}.branch-controls button:hover{background:#b5d096;transform:translateY(-2px)}.branch-controls svg{width:38px;fill:#6b934a;stroke:#285637;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.branch-controls span{font-size:10px;min-width:110px;text-align:center;color:#365b3f}.ch-brand-card{will-change:auto}.ch-card-footnote{margin-top:14px}.ch-pathway-copy{min-width:0}#pathway-panel{min-height:490px}.ch-panel-changing{animation:panelIn .2s ease-out}
:where(a,button):focus-visible{outline:3px solid #7f9e48;outline-offset:4px}.ch-statement:before{display:none}
@media(max-width:800px){.portal-scene{height:235svh}.portal-skip{padding:10px 14px;font-size:9px;bottom:20px}.home-page .nav a{color:var(--forest)!important;background:#28734318!important}.portal-future-copy p{padding:12px 17px;font-size:12px;background:#214f36cf}.branch-controls{margin-top:20px}.ch-card-stage{padding-bottom:5px}.ch-card-shadow{display:none}.branch-controls button{width:48px;height:44px}.ch-brand-card{transform:rotate(-5deg)}#pathway-panel{min-height:510px}.portal-stage{min-height:0}}
@media(prefers-reduced-motion:reduce){.ch-panel-changing{animation:none}}
.button.clear,.ch-quiet{background:#255c3b70;border:1px solid #d3e5bd60;border-radius:30px;padding:11px 17px}.button.clear:hover,.ch-quiet:hover{background:#255c3ba6}
