/* Separate cinematic hook and four business motion patterns. No scroll hijack. */
.motion-ready .hook-track{height:235svh;position:relative}.motion-ready .hook-stage{position:sticky;top:0;height:100svh;min-height:100svh;--hook-swap:0;--hook-open:0;overflow:hidden;margin-top:0}.hook-ending{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;justify-content:center;padding:100px 9%;pointer-events:none;opacity:var(--hook-swap,0);transform:translateY(calc((1 - var(--hook-swap,0))*65px));color:#fff;text-shadow:0 3px 30px #0008;max-width:1100px}.hook-ending>span,.hook-rail{font-size:10px;letter-spacing:2px}.hook-ending h2{font-size:clamp(44px,5.6vw,86px);font-weight:400;letter-spacing:-3px;line-height:1.3;margin:28px 0}.hook-ending p{font-size:15px;line-height:1.9}.hook-rail{position:absolute;z-index:12;bottom:32px;left:8%;right:8%;display:flex;gap:30px;color:#ffffff70}.hook-rail span{border-top:1px solid #ffffff30;padding-top:14px;transition:color .2s}.hook-rail span.active{color:#fff;border-color:#fff}.hook-stage .hero-copy,.hook-stage .new-hero-copy{opacity:calc(1 - var(--hook-swap,0));}.hook-stage .hero-scroll,.hook-stage .hero-bottom,.hook-stage .hero-caption,.hook-stage .edge{opacity:calc(1 - var(--hook-open,0));}.retained-2 .hook-stage{padding-top:120px}.retained-2 .hook-stage .hero-main{padding-top:5vh;min-height:calc(100svh - 230px)}.retained-2 .hook-stage .hero-art{height:100%;}.retained-2 .hook-stage .hero-art img{transform:scale(var(--hero-zoom,1)) translateX(calc(var(--hero-progress,0)*-3%));}.retained-2 .hook-stage .hero-art:after{background:linear-gradient(90deg,#061014e8,#06101455),linear-gradient(0deg,#06101499,transparent)}
.retained-3 .hook-stage .panel{height:100%;width:calc(33% + var(--hook-open,0)*25%);}.retained-3 .hook-stage .hero-image{height:100%;width:74%;filter:grayscale(calc(1 - var(--hook-open,0))) brightness(.55);}.retained-3 .hook-stage .hero-copy{top:20vh}.retained-3 .hook-stage .hero h1{font-size:6vw}.retained-3 .hook-stage .overlap{top:calc(76vh - var(--hook-open,0)*76vh);left:calc(6% - var(--hook-open,0)*6%);width:calc(37% + var(--hook-open,0)*63%);height:calc(28vh + var(--hook-open,0)*72vh);border-width:calc(12px*(1 - var(--hook-open,0)));filter:brightness(calc(.9 - var(--hook-open,0)*.4));transform:none;}.retained-3 .hook-ending{z-index:5}.retained-3 .hook-stage .count{top:130px}.retained-3 .hook-stage:after{z-index:4}
.ivory .hook-stage{display:block;padding:150px 6% 100px}.ivory .hook-stage .new-hero-copy{position:relative;width:53%;padding-top:15vh}.ivory .hook-stage .new-hero-picture{position:absolute;top:calc(15% - var(--hook-open,0)*15%);bottom:calc(10% - var(--hook-open,0)*10%);left:calc(56% - var(--hook-open,0)*56%);width:calc(38% + var(--hook-open,0)*62%);height:auto;clip-path:inset(0 round calc((1 - var(--hook-open,0))*2px));}.ivory .hook-stage .new-hero-picture:after{content:'';position:absolute;inset:0;background:#071d16;opacity:calc(var(--hook-open,0)*.6)}.ivory .hook-stage .photo-label{opacity:calc(1 - var(--hook-open,0))}.ivory .hook-rail{color:#345a4370}.ivory .hook-rail span{border-color:#345a4340}.ivory .hook-rail span.active{color:#345a43;border-color:#345a43}.ivory .hook-stage .hook-rail{mix-blend-mode:difference;color:#fff}.ivory .hook-stage .hook-rail span.active{color:#fff;border-color:#fff}
.forest{background:#050c09;color:#e4eee2;--motion-bg:#050c09;--motion-accent:#7cbd87}.forest .new-header{background:linear-gradient(#020905cc,transparent)}.forest .hook-stage{padding-top:160px;min-height:100svh}.forest .hook-stage .new-hero-picture{clip-path:inset(calc(var(--hook-open,0)*7%) calc(var(--hook-open,0)*5%) round 2px);}.forest .hook-stage .new-hero-picture img{transform:scale(var(--hero-zoom,1));filter:brightness(.6) saturate(.75)}.forest .hook-stage .new-hero-picture:after{background:linear-gradient(90deg,#031007ed,#03100733),linear-gradient(0deg,#020805,transparent 60%)}.forest .hero-word{color:#5ccb6e44;transform:translateX(calc(var(--hook-open,0)*-12%));}.forest .hook-ending{color:#b7f0ba}.forest .hook-rail span.active{color:#a2ecaa;border-color:#7cdb8b}.forest .new-about{background:#0b1c11;color:#dbe9d9}.forest .new-about p,.forest .new-about small,.forest .new-news small{color:#9fb79e}.forest .new-contact{background:#143b22;color:#e6f0dd}.forest .new-footer{background:#020604;color:#809b84}.forest .scene-stage{background:#050c09}.forest .scene-visual:after{background:linear-gradient(0deg,#030b06fa,#030b0640 90%),linear-gradient(90deg,#04140988,transparent)}.forest .scene-large{color:#63cc7626}.card-6{background:#050c09;color:#c4ecc7}.card-6 img{filter:brightness(.5) saturate(.8)}
.scene-note{position:absolute;left:8%;right:8%;top:40%;z-index:2;color:#fff;pointer-events:none;opacity:var(--swap,0);transform:translateY(calc((1 - var(--swap,0))*50px))}.scene-note span{font-size:11px;letter-spacing:2px}.scene-note h3{font-size:clamp(36px,4.8vw,72px);font-weight:400;line-height:1.35;letter-spacing:-2px;max-width:850px;margin:25px 0}.motion-ready .scene-copy{opacity:calc(1 - var(--swap,0))}.motion-ready [data-effect=wipe] .scene-visual{clip-path:inset(0 var(--frame,0%) 0 0);}.motion-ready [data-effect=pan] .scene-visual img{transform:scale(1.18) translateX(var(--pan,0px));}.motion-ready [data-effect=focus] .scene-visual img{filter:blur(var(--focus,0px));transform:scale(var(--zoom,1));}.retained-3 .scene-note{left:12%;right:12%}.ivory .scene-note{left:10%;right:10%}.forest .scene-note{top:45%;color:#b7f0ba}.forest .scene-note h3{font-size:clamp(38px,5vw,80px)}
@media(max-width:1000px){.ivory .hook-stage .new-hero-copy{width:55%;padding-top:10vh}.hook-ending h2{font-size:60px}.retained-3 .hook-stage .hero-copy{top:23vh}.scene-note h3{font-size:50px}}
@media(max-width:650px){.motion-ready .hook-track{height:190svh}.hook-ending{padding:110px 7% 100px;max-width:100%}.hook-ending h2{font-size:39px;letter-spacing:-1.8px}.hook-ending p{font-size:12px}.hook-rail{bottom:75px;left:7%;right:7%;gap:12px;font-size:8px;letter-spacing:0}.hook-rail span{padding-top:12px}.retained-2 .hook-stage{padding-top:105px}.retained-2 .hook-stage .hero-main{min-height:calc(100svh - 190px);padding-top:12vh}.retained-2 .hook-stage h1{font-size:39px}.retained-3 .hook-stage .hero-copy{top:20vh}.retained-3 .hook-stage .hero-image{width:80%;}.retained-3 .hook-stage .overlap{top:calc(70vh - var(--hook-open,0)*70vh);left:calc(4% - var(--hook-open,0)*4%);width:calc(75% + var(--hook-open,0)*25%);height:calc(25vh + var(--hook-open,0)*75vh);border-width:calc(8px*(1 - var(--hook-open,0)));}.retained-3 .hook-stage .count{top:110px}.ivory .hook-stage{padding:100px 6% 80px;}.ivory .hook-stage .new-hero-copy{width:100%;padding-top:0}.ivory .hook-stage .new-hero-copy h1{font-size:34px}.ivory .hook-stage .new-hero-picture{top:calc(44% - var(--hook-open,0)*44%);left:calc(6% - var(--hook-open,0)*6%);bottom:calc(13% - var(--hook-open,0)*13%);width:calc(88% + var(--hook-open,0)*12%);}.ivory .hook-stage .new-hero-copy{z-index:3}.ivory .hook-ending{z-index:4}.forest .hook-stage{padding:130px 7% 100px}.forest .hook-stage h1{font-size:40px}.scene-note{top:35%;left:7%;right:7%}.scene-note h3,.forest .scene-note h3{font-size:35px;letter-spacing:-1.5px}.retained-3 .scene-note{left:10%;right:10%}.forest .scene-note{top:40%}.motion-ready [data-effect=pan] .scene-visual img{transform:scale(1.2) translateX(calc(var(--pan,0px)*.4))}}
.motion-off .hook-track{height:auto!important}.motion-off .hook-stage{position:relative;height:auto;min-height:100svh;--hook-open:0!important;--hook-swap:0!important}.motion-off .hook-ending,.motion-off .hook-rail,.motion-off .scene-note{display:none}.motion-off .scene-copy{opacity:1!important}.motion-off .scene-visual{clip-path:none!important}.motion-off [data-effect] .scene-visual img{filter:none;transform:none}.motion-off .hook-stage .hero-copy,.motion-off .hook-stage .new-hero-copy{opacity:1}.motion-off .ivory .hook-stage .new-hero-picture{position:relative}.motion-off .retained-3 .hook-stage .overlap{top:76vh}
@media(prefers-reduced-motion:reduce){.hook-track{height:auto!important}.hook-stage{position:relative!important;--hook-open:0!important;--hook-swap:0!important}.hook-ending,.hook-rail,.scene-note{display:none}.scene-copy{opacity:1!important}.scene-visual{clip-path:none!important}.scene-visual img{filter:none!important}}
.motion-ready:not(.motion-off) .hook-stage h1{animation:hook-entry 1.1s cubic-bezier(.2,.7,.2,1) both}.motion-ready:not(.motion-off) .hook-stage .hero-copy>p,.motion-ready:not(.motion-off) .hook-stage .new-hero-copy>p{animation:hook-entry 1.1s .18s cubic-bezier(.2,.7,.2,1) both}@keyframes hook-entry{from{opacity:0;transform:translateY(45px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
.hook-stage .hero-copy,.hook-stage .new-hero-copy{opacity:var(--hook-copy,1)}.motion-ready .scene-copy{opacity:var(--copy-opacity,1)}.scene-copy:focus-within{opacity:1!important}.scene-stage:has(.scene-copy:focus-within) .scene-note{opacity:0!important}.motion-off .hook-stage .hero-copy,.motion-off .hook-stage .new-hero-copy{opacity:1!important}
