/* A suspended work gallery. Geometric interfaces frame AVI's existing imagery. */
.projects-hero{height:min(960px,calc(100svh - 95px));min-height:760px;padding:0;display:block;background:#070a08;isolation:isolate;border-bottom:1px solid #2b352b}
.projects-hero::before{display:none}
.work-studio{position:absolute;inset:10% -8% 5% 22%;overflow:hidden}
.work-studio canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 1s;cursor:grab;touch-action:pan-y}
.work-studio.is-grabbing canvas{cursor:grabbing}.work-studio.is-ready canvas{opacity:1}
.studio-fallback{position:absolute;width:70%;height:65%;top:18%;left:15%;object-fit:cover;opacity:.7;transform:perspective(1000px) rotateY(-14deg);border:1px solid #60774d}
.is-ready .studio-fallback{visibility:hidden}
.studio-topline{position:absolute;left:4%;right:4%;top:38px;display:flex;justify-content:space-between;gap:20px;color:#8c998c;font-size:.75rem;letter-spacing:.13em;z-index:2;pointer-events:none}
.projects-hero>.studio-heading{position:relative;z-index:2;padding-top:125px;pointer-events:none;width:92%;max-width:none;margin:auto}
.studio-heading .eyebrow{font-size:.75rem;color:#bac6b6}
.projects-hero h1{font-size:clamp(4.5rem,8.1vw,9.7rem);line-height:.85;letter-spacing:-.075em;max-width:7ch;margin:24px 0 30px}
.projects-hero h1 span{color:#b7ee5b}
.projects-hero .studio-heading>p:not(.eyebrow){font-size:1rem;line-height:1.6;max-width:28ch;color:#a8b5a3}
.project-hero-actions{gap:20px;margin-top:28px}
.projects-hero .project-explore{font-size:.88rem;background:#edf1e9;color:#11180e;border:1px solid #edf1e9;padding:14px 20px}
.projects-hero .project-explore:hover,.projects-hero .project-explore:focus-visible{background:#b7ee5b;border-color:#b7ee5b}
.project-motion-toggle{font-size:.875rem;color:#b3beac}
.studio-bottom{position:absolute;bottom:34px;left:4%;right:4%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:35px;z-index:3}
.studio-work{display:flex;flex-direction:column;gap:10px}.studio-work-label{font-size:.75rem;letter-spacing:.12em;color:#8ea580}.studio-work-link{font-size:1.1rem;color:#e6ece1;text-decoration:underline;text-underline-offset:7px;text-decoration-color:#5a7450;transition:color .25s}
.studio-work-link:hover{color:#b7ee5b}
.studio-selector{display:flex;background:#182018aa;border:1px solid #3f4d39;border-radius:60px;padding:6px;backdrop-filter:blur(18px);box-shadow:0 15px 50px #0006}
.studio-select{display:flex;align-items:center;gap:8px;border:0;border-radius:40px;padding:16px 23px;color:#b9c5b3;background:transparent;font-size:.9rem;transition:color .25s,background .25s}
.studio-select small{font-size:.75rem;opacity:.55}.studio-select.active{background:#b7ee5b;color:#14200d}.studio-select:hover{background:#effadf;color:#14200d}.studio-select:focus-visible{outline:2px solid white;outline-offset:3px}
.studio-drag-hint{justify-self:end;font-size:.75rem!important;line-height:1.8!important;letter-spacing:.1em;color:#7c9074!important;text-align:right}
.spatial-navigator{background:#070a08;padding:110px 0 100px}.spatial-navigator::before{display:none}
.project-navigator-shell{width:92%;max-width:1600px}
.navigator-intro{margin-bottom:55px}.navigator-intro h2{font-size:clamp(2.8rem,5vw,6rem);font-weight:700;line-height:.95;letter-spacing:-.055em}.navigator-intro h2 span{color:#71826a}
.navigator-kicker{font-size:.75rem;color:#97aa8b}.navigator-intro>p{font-size:1rem;line-height:1.7}
.spatial-navigator .navigator-layout{position:relative;display:flex;flex-direction:column-reverse;border:0;min-height:0;box-shadow:none}
.spatial-navigator .navigator-stage{min-height:700px;padding:40px;box-shadow:0 25px 70px #0009;border:1px solid #32402d;border-radius:12px;overflow:hidden}
.spatial-navigator .navigator-image{filter:saturate(.85) brightness(.95);transform:translate(var(--image-x),var(--image-y)) scale(1.06)}
.spatial-navigator .navigator-image.is-active{transform:translate(var(--image-x),var(--image-y)) scale(1)}
.spatial-navigator .navigator-stage::after{background:linear-gradient(0deg,#070a08fa,transparent 70%),linear-gradient(90deg,#070a0899,transparent 60%)}
.spatial-navigator .navigator-copy{margin-top:160px;max-width:670px}.spatial-navigator .navigator-copy h3{font-size:clamp(3.4rem,6.5vw,7.6rem);line-height:.92;letter-spacing:-.06em;font-weight:700}
.spatial-navigator .navigator-copy .eyebrow{font-size:.75rem}.spatial-navigator .navigator-stage-ui{font-size:.75rem;font-weight:500}.spatial-navigator .navigator-copy .navigator-description{font-size:1rem;line-height:1.6;max-width:39ch}.spatial-navigator .navigator-copy .text-link{font-size:1rem}
.navigator-reticle{display:none}.navigator-progress{display:none}
.spatial-navigator .navigator-menu{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);background:transparent;margin-top:25px;gap:10px}
.spatial-navigator .navigator-option{display:grid;grid-template-columns:26px 1fr;padding:24px!important;min-height:115px;border:1px solid #35432d!important;border-radius:8px;background:#11190f;transition:background .3s,transform .3s}
.spatial-navigator .navigator-option span{font-size:.75rem}.spatial-navigator .navigator-option b{font-size:1.7rem;font-weight:500}.navigator-option small{font-size:.875rem;margin-top:9px}.spatial-navigator .navigator-option:hover{transform:translateY(-5px)}
.spatial-navigator .navigator-option.active{background:#b7ee5b;box-shadow:0 14px 40px #9cc84c1c}
.project-motion-paused .work-studio canvas{cursor:default}
@media(min-width:1800px){.projects-hero{height:1050px;min-height:950px}.projects-hero>.studio-heading{padding-top:180px}}
@media(max-width:1020px){.studio-bottom{grid-template-columns:1fr auto}.studio-drag-hint{display:none}.studio-select{padding:15px}.projects-hero h1{font-size:7.5vw}.work-studio{left:23%;right:-22%}.project-hero-actions{display:grid;justify-items:start}.navigator-intro{gap:25px}}
@media(max-width:760px){
 .projects-hero{height:auto;min-height:850px;padding:0 0 30px}.studio-topline{top:25px;font-size:.75rem}.studio-topline span:last-child{display:none}
 .projects-hero>.studio-heading{padding-top:70px}.projects-hero h1{font-size:clamp(3.4rem,13vw,5.2rem);line-height:.88;max-width:none;margin:20px 0}
 .projects-hero .studio-heading>p:not(.eyebrow){font-size:1rem;max-width:30ch}.project-hero-actions{display:flex;margin-top:20px;gap:18px}
 .work-studio{top:280px;bottom:130px;left:-40%;right:-40%}.studio-bottom{position:absolute;left:5%;right:5%;bottom:24px;display:flex;flex-direction:column-reverse;gap:20px;align-items:stretch}.studio-work{gap:8px}.studio-work-link{font-size:1rem}
 .studio-selector{padding:4px;justify-content:space-between}.studio-select{padding:12px 10px;font-size:.875rem;gap:5px}.studio-select small{font-size:.75rem}
 .spatial-navigator{padding:65px 0}.navigator-intro h2{font-size:clamp(2.1rem,8.3vw,3.4rem);line-height:1}.navigator-intro p{font-size:1rem}.navigator-kicker{font-size:.75rem}.navigator-kicker span:last-child{display:none}
 .spatial-navigator .navigator-stage{min-height:600px;padding:24px}.spatial-navigator .navigator-copy{margin-top:195px}.spatial-navigator .navigator-copy h3{font-size:clamp(2.7rem,11vw,4rem)}
 .spatial-navigator .navigator-menu{grid-template-columns:repeat(2,1fr);margin-top:15px;gap:8px}.spatial-navigator .navigator-option{padding:16px!important;min-height:100px;grid-template-columns:20px 1fr;gap:8px}.spatial-navigator .navigator-option b{font-size:1.35rem}.navigator-option small{font-size:.875rem;line-height:1.3}
 .project-navigator-shell{width:90%}
}
@media(prefers-reduced-motion:reduce){.work-studio canvas{transition:none;cursor:default}.studio-select,.studio-work-link{transition:none}.spatial-navigator .navigator-option:hover{transform:none}}
