:root{--heading:'Outfit','Manrope',sans-serif;--body:'Manrope',sans-serif;--mint:#c8e7d7;--motion-ease:cubic-bezier(.16,1,.3,1)}
body,button,input,select,textarea{font-family:var(--body)}
h1,h2,h3,h4,.accordions summary,.gallery-foot>span,footer>span{font-family:var(--heading);font-style:normal;letter-spacing:-.045em;font-weight:500}
h1 em,h2 em,h3 em,h4 em,.gallery-foot>span,footer>span{font-style:normal;font-weight:450;color:var(--mint)}
h1{font-size:clamp(76px,8.7vw,138px);line-height:1.02;letter-spacing:-.065em;font-weight:500}
h2{font-size:clamp(46px,5.3vw,80px);line-height:1.06;font-weight:500}
.hero-copy{top:29%}.hero-bottom-copy{margin-top:35px}.hero-bottom-copy p{font-size:12px;font-weight:450;line-height:1.85}
.brand-logo,.footer-brand .brand-logo{border-radius:0;box-shadow:none;width:88px;height:60px;object-fit:contain;filter:brightness(1.35) saturate(.85)}
.brand{gap:8px}.brand>span{font-size:13px;letter-spacing:1.5px}.brand>span>span{font-size:8px;letter-spacing:5px}
.footer-brand .brand-logo{width:108px;height:76px}
.intro-grid h2{font-size:clamp(46px,5.3vw,80px)}.intro-right .lead{font-family:var(--heading);font-size:22px;line-height:1.5;letter-spacing:-.02em;font-weight:400}
.explorer-heading h2{font-size:clamp(48px,5.2vw,80px)}.explorer-caption h3{font-size:36px;line-height:1.1}.detail-text h2{font-size:clamp(57px,6.8vw,104px);line-height:1.04}
.services-intro h2{font-size:clamp(46px,4.8vw,74px)}.accordions summary{font-family:var(--heading);font-size:25px;letter-spacing:-.02em;font-weight:450}
.projects-title h2{font-size:clamp(46px,5.3vw,80px)}.contact h2{font-size:clamp(60px,6.6vw,102px);line-height:1.03}.project-dialog h2,.direction-dialog h2{font-family:var(--heading);font-size:50px}.gallery-foot>span{font-size:22px}footer>span{font-size:18px}
.journey-stage{animation:landscape-breathe 22s ease-in-out infinite alternate;transform-origin:58% 50%}
@keyframes landscape-breathe{from{transform:scale(1.018) translate3d(0,0,0)}to{transform:scale(1.035) translate3d(-4px,-3px,0)}}
.journey-veil:after{content:'';position:absolute;inset:-12%;pointer-events:none;background:radial-gradient(ellipse at 72% 20%,#d7e8bd0c,transparent 48%);animation:light-pass 18s ease-in-out infinite alternate}
@keyframes light-pass{from{transform:translate3d(-2%,0,0);opacity:.4}to{transform:translate3d(3%,1%,0);opacity:1}}
.hotspot>span{animation:marker-breath 4s ease-in-out infinite}.hotspot:nth-child(2)>span{animation-delay:1.3s}.hotspot:nth-child(3)>span{animation-delay:2.5s}
@keyframes marker-breath{0%,100%{box-shadow:0 0 0 5px #d7e9c712}50%{box-shadow:0 0 0 11px #d7e9c727}}
.motion-heading .word-clip{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.13em;margin-bottom:-.13em;line-height:inherit}
.motion-heading .word{display:inline-block;transform:translate3d(0,112%,0) rotate(2deg);opacity:.1;transition:transform .9s var(--motion-ease),opacity .65s ease-out;transition-delay:var(--word-delay,0ms);will-change:transform}
.motion-heading.is-inview .word{transform:translate3d(0,0,0) rotate(0deg);opacity:1}
.motion-item{transition:transform .75s var(--motion-ease),opacity .65s ease-out;transition-delay:var(--item-delay,0ms)}
.motion-ready .motion-item:not(.is-inview){opacity:0;transform:translate3d(0,24px,0)}
.motion-ready .motion-item.is-inview{opacity:1;transform:translate3d(0,0,0)}
.header-cta,.contact-button,.submit,.work-arrows button,.gallery-navigation button{transition:transform .35s var(--motion-ease),background .35s,border-color .35s}.header-cta:hover,.contact-button:hover,.submit:hover{transform:translateY(-3px)}.contact-button:hover,.submit:hover{background:#d2e9d7}.submit:hover{color:#14291b}
.accordions details{transition:background .35s,padding .5s var(--motion-ease)}.accordions details:hover{background:#c7e8d207}.accordions summary b{transition:transform .5s var(--motion-ease)}.project-card{transition:transform .6s var(--motion-ease)}.project-card:hover{transform:translateY(-7px)}
.motion-ready .project-card.is-inview:hover{transform:translate3d(0,-7px,0)}
.work-carousel{display:grid;grid-template-columns:1fr minmax(250px,350px) .85fr;gap:4%;align-items:center;padding:50px 0 70px;position:relative;margin:30px 0 45px;border-bottom:1px solid #d7e6cb30}
.work-carousel:focus-visible{outline:1px solid #c9e6cf80;outline-offset:12px}.work-intro .eyebrow{font-size:8px;letter-spacing:1.6px}.work-intro h3{font-size:clamp(35px,3.4vw,54px);line-height:1.07;margin-top:24px}.work-intro>p{font-size:11px;line-height:1.85;color:#d3e0c8;margin-top:25px}
.work-thumbs{display:flex;gap:12px;margin-top:30px}.work-thumbs button{position:relative;border:1px solid #d9e5cf40;padding:3px;background:#14251d50;width:73px;height:88px;overflow:hidden;opacity:.55;transition:opacity .35s,transform .5s var(--motion-ease),border-color .35s}.work-thumbs button[aria-pressed=true]{opacity:1;border-color:#d5ebca;transform:translateY(-4px)}.work-thumbs img{width:100%;height:100%;object-fit:cover}.work-thumbs button>span{position:absolute;bottom:8px;left:9px;font-size:9px;color:white;text-shadow:0 1px 5px #000}
.work-signature{display:flex;align-items:center;gap:12px;margin-top:30px}.work-signature img{width:60px;height:45px;object-fit:contain;filter:brightness(1.4)}.work-signature>span{font-size:8px;letter-spacing:1px;color:#edf0e0}.work-signature small{display:block;font-size:6px;letter-spacing:.7px;margin-top:7px;color:#c3d4b5}
.work-viewer{position:relative;width:100%;aspect-ratio:3/4;background:#10251c60;border:1px solid #d1dfc850;overflow:hidden;box-shadow:0 25px 80px #05190e4d;border-radius:3px;isolation:isolate;transform:perspective(1400px) rotateY(-3deg);transition:transform .8s var(--motion-ease)}
.work-viewer:hover{transform:perspective(1400px) rotateY(0deg)}.work-ambient{position:absolute;inset:-20%;background:var(--work-poster) center/cover;filter:blur(25px) brightness(.45);z-index:-1;transition:background-image .5s}.work-reel{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;pointer-events:none;transition:opacity .5s var(--motion-ease),transform .8s var(--motion-ease);transform:scale(1.025)}.work-reel.is-current{opacity:1;transform:scale(1)}
.work-viewer{touch-action:pan-y}.work-ambient{pointer-events:none}.work-thumbs button[aria-pressed=true]:after{content:'';position:absolute;bottom:0;left:0;height:2px;width:var(--clip-progress,0%);background:#d6efca;transition:width .15s linear}
.work-frame-top{position:absolute;top:0;left:0;right:0;padding:15px 15px 32px;display:flex;justify-content:space-between;gap:10px;background:linear-gradient(#06190ec9,transparent);color:white;font-size:7px;letter-spacing:1px;pointer-events:none}.work-frame-top>span:first-child{display:flex;gap:7px;align-items:center}.work-frame-top i{width:5px;height:5px;background:#d2e6b9;border-radius:50%;box-shadow:0 0 0 4px #d2e6b922}
.work-center-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border:1px solid #f1f4e6a0;border-radius:50%;background:#10251b55;backdrop-filter:blur(8px);color:#f4f5e8;font-size:18px;transition:opacity .3s,transform .5s var(--motion-ease)}.work-viewer.is-playing .work-center-play{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.85)}
.work-center-play[hidden]{display:none}
.work-controls{position:absolute;bottom:0;left:0;right:0;padding:28px 14px 15px;background:linear-gradient(transparent,#06190ef0);color:#edf2e3}.work-control-row{display:flex;align-items:center;gap:12px}.work-control-row button{border:0;background:transparent;color:inherit;padding:8px 3px;font-size:10px;min-width:26px}.work-control-row #work-play{font-size:14px}.work-control-row #work-fullscreen{font-size:23px;margin-left:auto}.work-control-row #work-time{font-size:8px;color:#d2dfc7;white-space:nowrap}.work-control-row #work-sound{font-size:8px;letter-spacing:.2px;min-width:80px;text-align:left}
#work-seek{appearance:none;-webkit-appearance:none;width:100%;height:2px;display:block;padding:0;margin:9px 0 0;border:0;background:linear-gradient(to right,#d5e9c8 var(--played,0%),#d5e9c83b var(--played,0%));cursor:pointer}#work-seek::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:7px;height:7px;border-radius:50%;background:#e0eecf}#work-seek::-moz-range-thumb{width:7px;height:7px;border:0;border-radius:50%;background:#e0eecf}
#work-seek{height:18px;margin:0;background-size:100% 2px;background-repeat:no-repeat;background-position:center}
.work-story{padding-left:8px}.work-counter{display:flex;align-items:baseline;gap:10px;margin-bottom:30px}.work-counter>span:first-child{font:450 62px/.9 var(--heading);letter-spacing:-5px;color:#d9e7cb}.work-counter>span:last-child{font-size:10px;letter-spacing:1px;color:#b7caaa}.work-story h4{font-size:clamp(24px,2.5vw,39px);line-height:1.13;font-weight:450;color:#edf0e2}.work-story p{font-size:11px;line-height:1.85;color:#d2dfc3;margin-top:20px;max-width:260px}.work-stage-label{font-size:7px;letter-spacing:1px;color:#bdd3ad;margin-top:25px;border-top:1px solid #cbdcba40;padding-top:18px}.work-arrows{display:flex;gap:12px;margin-top:25px}.work-arrows button{width:48px;height:48px;border:1px solid #d3e1c96b;background:#11281c40;color:#eef1e1;backdrop-filter:blur(8px);border-radius:50%;font-size:22px}.work-arrows button:hover{transform:translateY(-3px);background:#cde1be25}.work-story .work-footnote{font-size:8px;color:#c0d0b0;margin-top:25px;line-height:1.9}.work-story #work-status{font-size:9px;color:#e1e8d5}.work-source-note{font-size:9px;color:#c5d5b4;line-height:1.8;margin-top:22px}
.work-viewer:fullscreen{aspect-ratio:auto;transform:none;border:0;border-radius:0;width:100vw;height:100vh;background:#07190d}.work-viewer:fullscreen .work-reel{object-fit:contain}.work-viewer:fullscreen .work-controls{max-width:900px;margin:auto}.work-viewer:fullscreen .work-frame-top{padding:24px;font-size:10px}
.paused .journey-stage,.paused .journey-veil:after,.paused .hotspot>span{animation-play-state:paused}.paused .motion-heading .word{transform:none;opacity:1;transition:none}.paused .motion-item{opacity:1!important;transform:none!important;transition:none}
@media(min-width:1600px){.work-carousel{grid-template-columns:1fr minmax(330px,400px) 1fr;gap:5%}.work-intro h3{font-size:57px}}
@media(max-width:900px){.work-carousel{grid-template-columns:.9fr minmax(230px,310px);gap:35px}.work-intro h3{font-size:37px}.work-story{grid-column:1/-1;display:grid;grid-template-columns:75px 1fr auto;gap:20px;padding:0;align-items:start}.work-counter{margin:0}.work-story h4{font-size:27px}.work-story p{margin-top:12px;max-width:none}.work-story .work-stage-label{display:none}.work-arrows{margin:0}.work-story .work-footnote{grid-column:2;font-size:8px;margin-top:0}.work-story #work-status{grid-column:2}.work-counter>span:first-child{font-size:50px}.services-intro h2{font-size:45px}.accordions summary{font-size:23px}}
@media(max-width:600px){h1{font-size:clamp(54px,13.4vw,70px);line-height:1.03}.hero-copy{top:29%;width:88%}.hero-bottom-copy{gap:24px;margin-top:26px}.hero-bottom-copy p{font-size:11px;line-height:1.8}.brand-logo{width:64px;height:48px}.footer-brand .brand-logo{width:72px;height:54px}.brand{gap:3px}.brand>span{font-size:10px;letter-spacing:1px}.brand>span>span{font-size:7px;letter-spacing:4px}.intro-grid h2{font-size:47px}.intro-right .lead{font-size:19px}.explorer-heading h2{font-size:44px}.explorer-caption h3{font-size:31px}.detail-text h2{font-size:50px}.services-intro h2{font-size:43px;line-height:1.07}.accordions summary{font-size:21px}.projects-title h2{font-size:45px}.contact h2{font-size:54px}.project-dialog h2,.direction-dialog h2{font-size:43px}.work-carousel{display:flex;flex-direction:column;gap:30px;padding:28px 0 45px;margin-top:10px;align-items:stretch}.work-intro{display:grid;grid-template-columns:1fr auto;align-items:end;gap:0 18px}.work-intro .eyebrow{grid-column:1/-1;font-size:7px}.work-intro h3{font-size:34px;margin-top:17px}.work-intro>p{grid-column:1/-1;font-size:10px;margin-top:20px}.work-thumbs{grid-column:2;grid-row:2;margin-top:0;gap:8px}.work-thumbs button{width:47px;height:64px}.work-signature{display:none}.work-viewer{width:min(100%,380px);margin:auto;transform:none;aspect-ratio:3/4}.work-story{display:grid;grid-template-columns:56px 1fr auto;gap:16px;align-items:start}.work-counter{gap:5px}.work-counter>span:first-child{font-size:40px;letter-spacing:-3px}.work-counter>span:last-child{font-size:7px}.work-story h4{font-size:24px}.work-story p{font-size:10px;line-height:1.8;margin-top:12px}.work-arrows{flex-direction:column;gap:9px}.work-arrows button{width:35px;height:35px;font-size:18px}.work-story .work-footnote{font-size:7px;margin-top:0;grid-column:2/4}.work-story #work-status{grid-column:1/-1}.work-controls{padding:25px 12px 13px}.work-intro h3 br:last-of-type{display:none}.work-intro h3 em:before{content:' '}.work-source-note{font-size:8px}.project-image{height:240px}}
@media(prefers-reduced-motion:reduce){.journey-stage,.journey-veil:after,.hotspot>span{animation:none}.motion-heading .word{transform:none;opacity:1;transition:none}.motion-item{opacity:1!important;transform:none!important}.work-viewer{transform:none}.work-reel{transition:none;transform:none}}
