/* The homepage starts with two equal, direct routes. Sage is the shared accent. */
body[data-page=home]{--bg:#111411;--lime:#c9e78f}
body[data-page=home] .hero-sequence{height:auto;min-height:0}
body[data-page=home] .hero-sequence>.home-entry{position:relative;display:block;height:auto;min-height:0;max-height:none;padding-top:165px;padding-bottom:50px;overflow:visible}
body[data-page=home] .home-entry:before{background:none}
body[data-page=home] .page-atmosphere{opacity:.55}
.entry-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}
.home-entry .eyebrow{font-size:9px;margin-bottom:20px;color:#b7c7ac}
.home-entry h1{font-size:clamp(40px,4.6vw,76px);letter-spacing:-.065em;line-height:1.02;margin:0;transform:none;opacity:1;max-width:900px}
.home-entry h1 em{display:block;font-size:1em;letter-spacing:-.06em;color:#e2e9d8}
.entry-intro-copy{max-width:380px;color:#a6b29f;font-size:13px;line-height:1.9;margin:0 0 3px}
.entry-intro-copy>span{display:block;color:#e3eadc;margin-top:11px;font-size:14px}
.entry-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px;perspective:1800px}
.entry-path{--entry-direction:1;position:relative;display:flex;flex-direction:column;min-width:0;padding:30px 30px 20px;border:1px solid #b9d0a83b;border-radius:23px;background:#20281ff0;box-shadow:inset 0 1px #f0ffe910,0 22px 50px #0002;isolation:isolate;overflow:hidden;transform-origin:50% 85%;animation:entry-arrive 1.15s .18s var(--ease) both;transition:border-color .4s,background .4s,box-shadow .4s;backdrop-filter:blur(18px)}
.entry-path-web{--entry-direction:-1;animation-delay:.32s;background:#24291ff0}
.entry-path:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(500px circle at var(--entry-x,40%) var(--entry-y,30%),#d8eeb316,transparent 75%);opacity:.5;transition:opacity .5s;pointer-events:none}
.entry-path:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px #edffd71c;pointer-events:none}
.entry-path:hover,.entry-path:focus-visible{border-color:#c9e78f9e;background:#2a3325;box-shadow:inset 0 1px #efffde35,0 30px 65px #0003}
.entry-path:hover:before{opacity:1}
.entry-path-copy{position:relative;z-index:1}
.entry-path-copy>p{margin:0 0 15px;color:#b6c3a8;text-transform:uppercase;letter-spacing:1.2px;font-size:9px}
.entry-path h2{font-size:clamp(29px,3.1vw,49px);line-height:1.06;letter-spacing:-.055em;margin:0 0 25px;font-weight:450}
.entry-path h2 em{color:#d0e79e;white-space:nowrap;font-size:.92em;letter-spacing:-.05em}
.entry-scene{position:relative;min-width:0;overflow:hidden;aspect-ratio:16/9;border:1px solid #c4d5ad24;border-radius:12px;flex-shrink:0;transform:perspective(1000px) translate3d(calc(var(--hero-progress,0)*var(--entry-direction)*-12px),calc(var(--hero-progress,0)*-18px),0) rotateX(var(--entry-tilt-x,0deg)) rotateY(var(--entry-tilt-y,0deg));transition:transform .65s var(--ease),border-color .4s}
.entry-path:hover .entry-scene{border-color:#c4d5ad55}
.entry-signal{background:#121a16;color:#c9e78f;display:flex;flex-direction:column;justify-content:space-between}
.entry-scene-meta{display:flex;justify-content:space-between;gap:10px;padding:15px 17px;font-size:8px;color:#afc1a3;letter-spacing:.4px}
.entry-status{color:#d7e8c4}
.entry-signal svg{display:block;width:100%;height:auto;flex:1;min-height:0;overflow:visible}
.entry-raw{stroke:#a1b0a0;stroke-width:1.4;opacity:.35;stroke-dasharray:900;animation:entry-draw 2.1s .45s both}
.entry-estimate{stroke:#c9e78f;stroke-width:2.7;stroke-dasharray:900;animation:entry-draw 2.4s .6s both}
.entry-estimate-shadow{stroke-width:12;opacity:.06}
.entry-runner{stroke:#e7f7d0;stroke-width:4;stroke-linecap:round;stroke-dasharray:5 895;animation:entry-travel 8s 1.8s linear infinite}
.entry-point{fill:#d4edac}
.entry-point-ring{stroke:#c9e78f;stroke-opacity:.4;transform-box:fill-box;transform-origin:center;animation:entry-point 4.5s ease-in-out infinite}
.entry-signal-legend{display:flex;gap:20px;padding:8px 17px 14px;font-size:8px;color:#9baa96}
.entry-signal-legend>span:before{content:'';display:inline-block;width:14px;height:1px;background:#71866c;margin:0 6px 3px 0}
.entry-signal-legend>span:last-child:before{background:#c9e78f}
.entry-website{display:flex;flex-direction:column;background:#0b140c}
.entry-web-bar{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;border-bottom:1px solid #e5ffd01c;color:#99ae88;background:#23301c;font-size:7px;letter-spacing:1px}
.entry-web-bar>span:first-child{font-size:5px;opacity:.65}
.entry-website img{min-height:0;width:100%;height:100%;flex:1;object-fit:contain;object-position:center;animation:entry-picture 1.6s .35s var(--ease) both}
.entry-path-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-top:22px;color:#e2ebd7;font-size:13px;font-weight:500}
.entry-path-footer i{font-style:normal;display:grid;place-items:center;width:40px;height:40px;border:1px solid #c9e78f6b;border-radius:50%;color:#d4e9b0;font-size:22px;transition:transform .4s var(--ease),background .3s,color .3s}
.entry-path:hover .entry-path-footer i{transform:rotate(45deg);background:#c9e78f;color:#182011}
.entry-end{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-size:10px;color:#899982}
.entry-end>a{color:#a9b99e}.entry-end>a>span{display:inline-block;margin-left:13px;transition:translate .3s}.entry-end>a:hover>span{translate:0 4px}
.scene-parked .entry-point-ring,.scene-parked .entry-runner,body.page-not-visible .entry-point-ring,body.page-not-visible .entry-runner{animation-play-state:paused}
body[data-page=home] .facet,body[data-page=home] .facet-engineering{background:#1d281ff2;border-color:#afcfae3b}
body[data-page=home] .facet-engineering h3 em{color:#cde1b1}
body[data-page=home] .facet-engineering>p{color:#a3b19c}
@keyframes entry-arrive{from{opacity:0;transform:translate3d(calc(var(--entry-direction)*45px),35px,-90px) rotateY(calc(var(--entry-direction)*-7deg))}to{opacity:1;transform:translateZ(0)}}
@keyframes entry-draw{from{stroke-dashoffset:900}to{stroke-dashoffset:0}}
@keyframes entry-picture{from{opacity:.3;scale:1.035}to{opacity:1;scale:1}}
@keyframes entry-point{0%,100%{scale:1;opacity:.4}50%{scale:1.4;opacity:.8}}
@keyframes entry-travel{from{stroke-dashoffset:900}to{stroke-dashoffset:0}}
@media(min-width:1900px){body[data-page=home] .hero-sequence>.home-entry{padding-top:180px}.entry-path{padding:38px 38px 28px}.entry-path h2{font-size:54px}.entry-path-copy>p,.entry-end{font-size:12px}.entry-intro-copy{font-size:16px;max-width:450px}.entry-intro-copy>span{font-size:18px}.entry-path-footer{font-size:16px}.entry-scene-meta,.entry-signal-legend{font-size:11px}}
@media(max-width:1050px){.entry-intro{gap:25px}.home-entry h1{font-size:50px}.entry-intro-copy{font-size:12px}.entry-paths{gap:16px}.entry-path{padding:23px 23px 18px}.entry-path h2{font-size:34px}.entry-path h2 em{white-space:normal}.entry-scene-meta{font-size:7px}.entry-status{display:none}}
@media(max-width:760px){body[data-page=home] .hero-sequence>.home-entry{padding-top:125px;padding-bottom:25px}.entry-intro{display:block;margin-bottom:26px}.home-entry .eyebrow{font-size:7px;letter-spacing:1.1px;margin-bottom:18px}.home-entry h1{font-size:clamp(35px,8.4vw,58px);max-width:none;line-height:1.03}.home-entry h1 em{display:inline;font-size:1em!important}.entry-intro-copy{font-size:11px;margin-top:18px;line-height:1.8}.entry-intro-copy>span{font-size:13px;margin-top:12px}.entry-paths{gap:10px;perspective:none}.entry-path{padding:16px 13px 13px;border-radius:16px;backdrop-filter:none}.entry-path-copy>p{font-size:6px;line-height:1.6;letter-spacing:.5px;min-height:20px;margin-bottom:12px}.entry-path h2{font-size:clamp(20px,4.7vw,32px);min-height:86px;margin-bottom:17px;line-height:1.07}.entry-path h2 em{font-size:1em;white-space:normal}.entry-scene{aspect-ratio:1.25;border-radius:7px;transform:none}.entry-scene-meta{padding:10px 8px;font-size:5px;letter-spacing:0}.entry-signal svg{height:95px}.entry-signal-legend{font-size:5px;padding:6px 8px;gap:6px}.entry-signal-legend>span:before{width:7px;margin-right:3px}.entry-web-bar{font-size:4px;padding:7px;letter-spacing:.4px}.entry-web-bar>span:first-child{font-size:3px}.entry-path-footer{font-size:10px;gap:7px;line-height:1.5;padding-top:17px;align-items:flex-end;min-height:50px}.entry-path-footer i{width:25px;height:25px;font-size:17px;flex-shrink:0}.entry-end{font-size:8px;line-height:1.7;align-items:flex-start;margin-top:18px;gap:15px}.entry-end>a{max-width:135px;text-align:right}.entry-end>a>span{margin-left:3px}.entry-point-ring{animation-duration:6s}@keyframes entry-arrive{from{opacity:0;transform:translate3d(calc(var(--entry-direction)*16px),18px,0)}to{opacity:1;transform:none}}}
@media(max-width:370px){.entry-path{padding:14px 11px 12px}.entry-path h2{font-size:19px;min-height:83px}.entry-path-copy>p{font-size:5px}.entry-path-footer{font-size:9px}.entry-scene-meta{font-size:4px}.entry-signal-legend{font-size:4px}.entry-intro-copy{font-size:10px}}
@media(prefers-reduced-motion:reduce){.entry-path,.entry-raw,.entry-estimate,.entry-picture,.entry-point-ring,.entry-website img{animation:none!important;transform:none!important;translate:none!important;scale:1!important;opacity:1}.entry-runner{display:none}.entry-path,.entry-scene,.entry-path-footer i,.entry-end>a>span{transition:none!important}.entry-scene{transform:none!important}}

/* Open composition: only the work floats on glass, the two paths share the page. */
.entry-intro{margin-bottom:58px}
.home-entry h1{font-size:clamp(38px,3.8vw,64px)}
.entry-paths{gap:clamp(36px,6vw,110px)}
.entry-path,.entry-path-web{padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;overflow:visible}
.entry-path:before,.entry-path:after{display:none}
.entry-path:hover,.entry-path:focus-visible{background:none;box-shadow:none}
.entry-path-copy{border-top:1px solid #c5d6ae35;padding-top:20px}
.entry-path-copy>p{font-size:9px;color:#b0c0a4}
.entry-path h2{font-size:clamp(30px,3vw,48px);margin-bottom:35px;animation:entry-type-rise 1.1s .3s var(--ease) both}
.entry-path-web h2{animation-delay:.43s}
.entry-path h2 em{color:#cce39c}
.entry-scene{width:96%;margin-left:2%;aspect-ratio:16/10;box-shadow:0 28px 55px #0005,inset 0 1px #edf8dc1c;transform:perspective(1400px) translate3d(calc(var(--hero-progress,0)*var(--entry-direction)*-8px),calc(var(--hero-progress,0)*-16px),0) rotateX(calc(.7deg + var(--entry-tilt-x,0deg))) rotateY(calc(var(--entry-direction)*-1.4deg + var(--entry-tilt-y,0deg))) rotateZ(calc(var(--entry-direction)*-.15deg));animation:entry-float 9s ease-in-out infinite;transition:transform .65s var(--ease),border-color .35s}
.entry-path-web .entry-scene{animation-duration:11s;animation-direction:reverse;animation-delay:-3s}
.entry-path:hover .entry-scene{transform:perspective(1400px) rotateX(var(--entry-tilt-x,0deg)) rotateY(var(--entry-tilt-y,0deg));border-color:#c9e78f75;animation-play-state:paused}
.entry-path-footer{padding:27px 0 17px;margin-top:12px;border-bottom:1px solid #c5d6ae35;font-size:14px}
.entry-path-footer i{width:43px;height:43px}
.entry-rf{display:flex;flex-direction:column;background:#101a15}
.entry-rf .entry-scene-meta{padding:12px 15px;flex-shrink:0;border-bottom:1px solid #c3d2b01a;font-size:7px}
.entry-rf-field{position:relative;flex:1;min-height:0;overflow:hidden}
.entry-rf-field>img{width:100%;height:100%;object-fit:fill;opacity:.6;animation:none}
.entry-rf-field:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101a15,transparent 45%,#101a1500);pointer-events:none}
.entry-rf-field svg{position:absolute;inset:12% 0;width:100%;height:76%;z-index:2}
.entry-rf-wave{stroke:#dcebc5;stroke-width:.9;vector-effect:non-scaling-stroke;opacity:.8;stroke-dasharray:1;animation:entry-draw-real 3s .3s var(--ease) both}
.entry-rf-scan{position:absolute;inset:0 auto 0 0;width:30%;border-right:1px solid #e6f8c951;background:linear-gradient(90deg,transparent,#d8eeac0d);z-index:1;animation:entry-scan 10s linear infinite}
.entry-rf-readout{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:12px 15px 15px;color:#8fa484;font-size:7px;line-height:1.8;flex-shrink:0}
.entry-rf-readout strong{color:#e5efdc;font-weight:450;font-size:22px;letter-spacing:-.5px}
.entry-rf-readout>span:last-child{text-align:right}
.entry-rf-readout b{font-weight:450;color:#bed0a9}
.scene-parked .entry-scene,.scene-parked .entry-rf-scan,body.page-not-visible .entry-scene,body.page-not-visible .entry-rf-scan{animation-play-state:paused}
@keyframes entry-type-rise{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}
@keyframes entry-float{0%,100%{translate:0 0}50%{translate:0 -4px}}
@keyframes entry-scan{from{translate:-110% 0}to{translate:450% 0}}
@keyframes entry-draw-real{from{stroke-dashoffset:1;opacity:0}to{stroke-dashoffset:0;opacity:.8}}
@media(min-width:1900px){.entry-path h2{font-size:57px}.entry-path-copy>p{font-size:12px}.entry-rf .entry-scene-meta,.entry-rf-readout{font-size:10px}.entry-rf-readout strong{font-size:32px}.entry-path-footer{font-size:17px}}
@media(max-width:1050px){.entry-paths{gap:28px}.entry-path h2{font-size:32px}.entry-rf .entry-scene-meta{font-size:6px}.entry-rf-readout{font-size:6px;padding:10px}.entry-rf-readout strong{font-size:20px}}
@media(max-width:760px){.entry-intro{margin-bottom:29px}.home-entry h1{font-size:clamp(34px,8.2vw,58px)}.entry-paths{gap:18px}.entry-path{padding:0}.entry-path-copy{padding-top:15px}.entry-path-copy>p{font-size:6px;min-height:20px;margin-bottom:12px}.entry-path h2{font-size:clamp(20px,4.8vw,32px);min-height:86px;margin-bottom:20px}.entry-path h2 em{white-space:normal}.entry-scene{width:100%;margin-left:0;aspect-ratio:1.2;transform:perspective(800px) rotateY(calc(var(--entry-direction)*-.7deg));border-radius:8px;animation-duration:12s;box-shadow:0 15px 26px #0003}.entry-path:hover .entry-scene{transform:none}.entry-path-footer{font-size:10px;padding:18px 0 14px;min-height:64px;margin-top:6px;gap:8px}.entry-path-footer i{width:25px;height:25px;font-size:16px}.entry-rf .entry-scene-meta{padding:7px 6px;font-size:4px}.entry-rf .entry-scene-meta>span:last-child{display:none}.entry-rf-readout{padding:7px 6px;font-size:4px;gap:5px}.entry-rf-readout strong{font-size:14px}.entry-rf-readout>span:last-child{max-width:56px}.entry-rf-field svg{height:100%;inset:0}.entry-rf-wave{stroke-width:.55}.entry-end{margin-top:15px}@keyframes entry-float{0%,100%{translate:0 0}50%{translate:0 -2px}}}
@media(max-width:370px){.entry-paths{gap:15px}.entry-path h2{font-size:20px;min-height:87px}.entry-path-copy>p{font-size:5px}.entry-path-footer{font-size:9px}.entry-rf-readout>span:last-child b{display:none}}
@media(prefers-reduced-motion:reduce){.entry-scene,.entry-path h2,.entry-rf-wave{animation:none!important;transform:none!important;translate:none!important;opacity:1}.entry-rf-scan{display:none}}
.entry-name,.home-entry h1 .entry-surname{display:block;animation:entry-name-rise 1s var(--ease) both}
.home-entry h1 .entry-surname{animation-delay:.13s}
.entry-path-copy>p{transition:color .35s,translate .4s var(--ease)}
.entry-path:hover .entry-path-copy>p{color:#d6e8bd;translate:0 -2px}
@keyframes entry-name-rise{from{opacity:0;translate:0 22px;filter:blur(3px)}to{opacity:1;translate:0 0;filter:blur(0)}}
.performance-lite .entry-name,.performance-lite .entry-surname{filter:none!important;animation-duration:.35s}
@media(prefers-reduced-motion:reduce){.entry-name,.home-entry h1 .entry-surname{animation:none;filter:none;translate:none}.entry-path-copy>p{transition:none}}
@media(min-width:761px) and (max-height:900px){
  body[data-page=home] .hero-sequence>.home-entry{padding-top:130px;padding-bottom:28px}
  .entry-intro{align-items:center;margin-bottom:30px;gap:30px}
  .home-entry .eyebrow{margin-bottom:15px;font-size:8px}
  .home-entry h1{font-size:40px;max-width:none}
  .home-entry h1 .entry-name,.home-entry h1 .entry-surname{display:inline}
  .entry-intro-copy{font-size:11px;line-height:1.6}
  .entry-intro-copy>span{font-size:12px;margin-top:7px}
  .entry-path-copy{padding-top:16px}
  .entry-path-copy>p{font-size:8px;margin-bottom:12px}
  .entry-path h2{font-size:34px;margin-bottom:22px}
  .entry-scene{width:84%;margin-inline:auto}
  .entry-path-footer{padding-top:18px;padding-bottom:12px;font-size:12px}
  .entry-path-footer i{width:35px;height:35px;font-size:19px}
  .entry-end{margin-top:16px;font-size:9px}
}
