/* A native-scroll journey through one continuous, original 3D world. */
.home-page{background:#080e18}
.home-page .site-header{background:#080e18cf;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.pf-voyage{position:relative;background:#080e18;isolation:isolate}
.voyage-stage{position:relative;min-height:800px;overflow:clip;background:#080e18}
.voyage-visual,.voyage-shade,.voyage-poster,#voyage-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.voyage-visual{overflow:hidden;height:1000px;max-height:110svh}.voyage-enabled .voyage-visual{height:100%;max-height:none}
.voyage-poster{background:#080e18 url(/images/portfolio/voyage-poster.webp) center/cover no-repeat;background-size:cover;background-position:center}
#voyage-canvas{display:block;opacity:0;outline:0}
.voyage-rendered.voyage-enabled #voyage-canvas{opacity:1;transition:opacity .65s ease}
.voyage-shade{background:linear-gradient(90deg,#070c16ed 0%,#070c16b8 28%,#070c1650 46%,transparent 64%),linear-gradient(0deg,#080e18db,transparent 24%,transparent 84%,#080e1855);z-index:1}
.voyage-topline{position:relative;z-index:2;display:flex;justify-content:space-between;padding-top:116px;align-items:center;font:8px/1.6 var(--mono);letter-spacing:.13em;color:#7f96b7}
.voyage-topline>span{color:#9db7dc}
.voyage-copy{position:relative;z-index:2;padding-top:80px}
.voyage-chapter{max-width:670px}
.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:clamp(60px,6.1vw,100px);font-weight:500;letter-spacing:-.065em;line-height:1.035;margin:0 0 27px;color:#f2f6ff}
.voyage-chapter h1>span,.home-page .voyage-chapter h2>span{color:#b4d3ff}
.voyage-chapter .pf-eyebrow{font-size:8px;letter-spacing:.06em;margin-bottom:23px}
.voyage-chapter .pf-hero-description,.voyage-story>p:not(.pf-eyebrow){font-size:16px;line-height:1.8;color:#b3c2d9;max-width:430px}
.voyage-chapter .pf-actions{margin-top:30px;gap:24px}
.voyage-chapter .pf-location{margin-top:27px;color:#94aac8;font-size:10px}
.voyage-story{padding:55px 0;border-top:1px solid #8bb4ed26;margin-top:50px}
.voyage-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}
.voyage-tags>span{border:1px solid #8bb4ed30;border-radius:30px;padding:9px 13px;font-size:10px;color:#bdd3f1;background:#0d1c30a8}
.voyage-story .button{margin-top:29px}
.voyage-demo-note{display:block;margin-top:20px;font-size:9px;line-height:1.8;color:#92aacb}
.voyage-controls{position:relative;z-index:3;padding-top:38px;padding-bottom:27px}
.voyage-control-top{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-bottom:22px}
.voyage-control-top>div{display:flex;align-items:center;gap:28px}
.voyage-control-top a{font-size:11px;color:#c3d4ed;display:flex;gap:16px;align-items:center}
.voyage-scroll-cue{display:none;align-items:center;gap:13px;font:8px var(--mono);letter-spacing:.08em;color:#afc4e3}
.voyage-scroll-cue i{display:block;width:17px;height:25px;border:1px solid #7189ac;border-radius:15px;position:relative}
.voyage-scroll-cue i:after{content:"";position:absolute;left:7px;top:5px;width:1px;height:7px;background:#d0e6ff}
#motion-toggle{display:flex;gap:7px;align-items:center;cursor:pointer;background:transparent;color:#adc1df;border:1px solid #7194c036;border-radius:30px;font:10px var(--font);padding:8px 12px}
#motion-toggle>span:first-child{font-size:15px;line-height:1}
#motion-toggle:disabled{cursor:default}
.voyage-chapters{display:none}
.voyage-enabled .pf-voyage{height:480svh;min-height:3200px}
.voyage-enabled .voyage-stage{position:sticky;top:0;height:100svh;min-height:680px}
.voyage-enabled .voyage-copy{position:absolute;inset:0;padding-top:clamp(185px,24vh,260px);pointer-events:none}
.voyage-enabled .voyage-chapter{position:absolute;width:calc(100% - 80px);pointer-events:auto}
.voyage-enabled .voyage-chapter[aria-hidden=true]{pointer-events:none}
.voyage-enabled .voyage-story{padding:0;border:0;margin:0;opacity:0}
.voyage-enabled .voyage-controls{position:absolute;bottom:0;left:0;right:0;padding-top:18px}
.voyage-enabled .voyage-chapters{display:grid;grid-template-columns:repeat(4,1fr);position:relative;border-top:1px solid #88a8da38}
.voyage-enabled .voyage-chapters:before{content:"";position:absolute;left:0;top:-1px;width:100%;height:1px;background:#b6dfff;transform:scaleX(var(--voyage-progress,0));transform-origin:left;box-shadow:0 0 10px #81b3ff}
.voyage-chapters button{display:flex;align-items:center;gap:16px;padding:21px 22px 0 0;border:0;color:#7386a4;background:transparent;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:color .2s}
.voyage-chapters button>span:first-child{font:8px var(--mono)}
.voyage-chapters button>span:last-child{margin-left:auto;margin-right:30px;font-size:15px;opacity:0}
.voyage-chapters button[aria-current=step]{color:#d8e9ff}
.voyage-chapters button[aria-current=step]>span:last-child{opacity:1}
.voyage-chapters button:hover{color:#fff}
.voyage-enabled .voyage-scroll-cue{display:flex}
.voyage-enabled .voyage-scroll-cue i:after{animation:voyage-scroll 2.4s ease-in-out infinite}
@keyframes voyage-scroll{0%,100%{transform:translateY(0);opacity:.6}50%{transform:translateY(6px);opacity:1}}
.page-hidden .voyage-scroll-cue i:after{animation-play-state:paused}
.voyage-enabled .pf-service-strip{position:relative;z-index:2;background:#0b1422}
@media(min-width:1750px){.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:104px}.voyage-chapter{max-width:750px}.voyage-enabled .voyage-copy{padding-top:24vh}}
@media(max-height:800px) and (min-width:761px){.voyage-enabled .voyage-copy{padding-top:175px}.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:clamp(54px,5.5vw,77px)}.voyage-chapter .pf-location{margin-top:17px}.voyage-chapter .pf-actions{margin-top:20px}.voyage-chapter h1{margin-bottom:20px}.voyage-chapter .pf-eyebrow{margin-bottom:16px}.voyage-chapter .pf-hero-description{font-size:14px}.voyage-controls{padding-bottom:21px}.voyage-control-top{padding-bottom:15px}}
@media(max-width:1100px) and (min-width:761px){.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:65px}.voyage-chapter{max-width:560px}.voyage-chapter .pf-actions{flex-direction:row}.voyage-shade{background:linear-gradient(90deg,#070c16f0,#070c1690 45%,transparent 80%),linear-gradient(0deg,#080e18db,transparent 25%)}.voyage-chapter .pf-hero-description{font-size:14px;max-width:360px}}
@media(max-width:760px){
 .voyage-stage{min-height:820px}.voyage-topline{padding-top:100px;font-size:6px}
 .voyage-copy{padding-top:40px}.voyage-chapter{max-width:540px}.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:clamp(35px,8.5vw,64px);letter-spacing:-.055em}
 .voyage-chapter .pf-eyebrow{font-size:6px;letter-spacing:.025em;margin-bottom:19px}.voyage-chapter .pf-hero-description,.voyage-story>p:not(.pf-eyebrow){font-size:14px;max-width:370px;line-height:1.75}
 .voyage-chapter .pf-hero-description br{display:none}.voyage-chapter .pf-actions{flex-direction:row;gap:18px;margin-top:24px}.voyage-chapter .pf-actions .primary{font-size:11px;min-height:48px;padding:13px 17px;gap:15px}
 .voyage-chapter .pf-demo-link{font-size:11px}.voyage-chapter .pf-demo-link small{display:none}.voyage-chapter .pf-play{width:29px;height:29px;font-size:16px}
 .voyage-chapter .pf-location{font-size:8px;gap:7px;margin-top:21px}.voyage-chapter .pf-location>span:last-of-type{display:none}
 .voyage-shade{background:linear-gradient(180deg,#070c16ba 0%,#070c16a8 35%,transparent 63%,#080e18e8 93%)}
 .voyage-enabled .pf-voyage{height:390svh;min-height:2700px}.voyage-enabled .voyage-stage{height:100svh;min-height:620px}
 .voyage-enabled .voyage-copy{padding-top:150px}.voyage-enabled .voyage-chapter{width:calc(100% - 48px)}
 .voyage-enabled .voyage-controls{padding-bottom:23px}.voyage-chapters button{gap:9px;font-size:11px;padding-top:16px}.voyage-chapters button>span:last-child{display:none}
 .voyage-control-top{padding-bottom:20px}.voyage-control-top>div{gap:14px}.voyage-control-top a{font-size:8px;gap:6px}.voyage-scroll-cue{font-size:6px;gap:7px}.voyage-scroll-cue i{width:13px;height:21px}.voyage-scroll-cue i:after{left:5px;top:4px;height:6px}
 #motion-toggle{font-size:8px;padding:7px 9px;gap:4px}.voyage-tags>span{font-size:9px;padding:8px 10px}.voyage-demo-note{font-size:8px;max-width:270px}
 .voyage-story{margin-top:20px;padding:35px 0}.voyage-story>h2{font-size:44px}.voyage-poster{background-position:63% center}
}
@media(max-width:360px){.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:31px}.voyage-chapter .pf-eyebrow{font-size:5.2px}.voyage-chapter .pf-actions{gap:13px}.voyage-chapter .pf-demo-link{font-size:9px;gap:6px}.voyage-chapter .pf-location{font-size:7px}.voyage-control-top>div{gap:7px}.voyage-control-top a{font-size:7px}.voyage-scroll-cue{font-size:5px;gap:5px}.voyage-enabled .voyage-chapter{width:calc(100% - 40px)}}
.reduced-motion .voyage-poster,.og-capture .voyage-poster{opacity:.75}
.reduced-motion .voyage-scroll-cue i:after{animation:none}
.og-capture .pf-voyage{height:630px;min-height:630px}.og-capture .voyage-stage{height:630px;min-height:630px}.og-capture .voyage-story,.og-capture .voyage-controls{display:none!important}.og-capture .voyage-copy{padding-top:165px}.og-capture .voyage-topline{padding-top:48px}.og-capture .voyage-topline>span:first-child{font:22px var(--font);letter-spacing:-.02em;color:#e4eeff}.og-capture .voyage-topline>span:first-child:before{content:"Robert Green"}.og-capture .voyage-topline>span:first-child{font-size:0}.og-capture .voyage-topline>span:first-child:before{font-size:22px}.og-capture .voyage-topline>span:last-child{display:none}.og-capture .voyage-chapter h1{font-size:70px}.og-capture .voyage-chapter{max-width:600px}.og-capture .voyage-chapter .pf-hero-description{font-size:14px}.og-capture .voyage-shade{background:linear-gradient(90deg,#070c16ed,#070c1685 45%,transparent 75%)}
@media print{.pf-voyage,.voyage-stage{height:auto!important;min-height:0!important}.voyage-visual,.voyage-controls,.voyage-topline,.voyage-shade{display:none!important}.voyage-copy,.voyage-chapter{position:static!important;padding:20px 0!important;width:100%!important;opacity:1!important;transform:none!important}.voyage-chapter h1,.home-page .voyage-chapter h2{font-size:40px;color:#111}.voyage-chapter h1>span{color:#333!important}}

.og-capture #motion-toggle{display:none!important}

/* Chapter accents come from the shared portfolio palette, also read by Three.js. */
.voyage-chapter[data-voyage-chapter="0"],.voyage-chapters button[data-voyage-stop="0"]{--chapter-accent:var(--pf-blue)}
.voyage-chapter[data-voyage-chapter="1"],.voyage-chapters button[data-voyage-stop="1"]{--chapter-accent:var(--pf-teal)}
.voyage-chapter[data-voyage-chapter="2"],.voyage-chapters button[data-voyage-stop="2"]{--chapter-accent:var(--pf-violet)}
.voyage-chapter[data-voyage-chapter="3"],.voyage-chapters button[data-voyage-stop="3"]{--chapter-accent:var(--pf-amber)}
.voyage-chapter h1>span,.home-page .voyage-chapter h2>span,.voyage-chapter .pf-eyebrow{color:var(--chapter-accent)}
.voyage-chapters button[aria-current=step]{color:var(--chapter-accent)}
.voyage-chapters button>span:first-child{color:var(--chapter-accent)}
.voyage-tags>span{border-color:color-mix(in srgb,var(--chapter-accent) 28%,transparent);color:var(--chapter-accent);background:color-mix(in srgb,var(--chapter-accent) 7%,#0b1420)}
.voyage-enabled .voyage-chapters:before{background:linear-gradient(90deg,var(--pf-blue),var(--pf-teal),var(--pf-violet),var(--pf-amber));box-shadow:none}
