/* One continuous image, with the shade above both animated image layers. */
.studio-hero{isolation:isolate;box-shadow:0 24px 90px #0003}
.hero-background{z-index:0;overflow:hidden}
.hero-background:after{display:none}
.hero-image{z-index:0;inset:-2%;width:104%;height:104%;transition:opacity 1.25s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#030908e8 0%,#040a08b5 42%,#040a0860 100%),linear-gradient(0deg,#030806f5 0%,#040a0840 62%,#040a0838 100%)}
.hero-copy{z-index:2}.hero-control{z-index:3}.hero-description{color:#dae2dd}.hero-copy h1{text-shadow:0 4px 26px #0008}.hero-copy .eyebrow{color:#b9cfc2}
.hero-image.is-active{animation:cinema-pan 7.8s cubic-bezier(.2,.4,.6,1) both}
.hero-paused .hero-image{animation-play-state:paused}
.primary-button{position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,background .4s}
.primary-button:before{content:'';position:absolute;inset:-70% -100%;background:linear-gradient(110deg,transparent 35%,#fff8 49%,transparent 63%);transform:translateX(-100%);transition:transform .8s}
.primary-button:hover:before{transform:translateX(100%)}.primary-button:hover{transform:translateY(-3px);background:#dcf5e3;box-shadow:0 12px 40px #bce7cb25}
.primary-button span{transition:transform .4s}.primary-button:hover span{transform:translate(3px,-3px)}
.site-header{display:grid;grid-template-columns:1fr auto 1fr;padding-top:17px;padding-bottom:17px;transition:background .4s,border-color .4s,box-shadow .4s}
.site-header.is-scrolled{background:#0c1412f2;box-shadow:0 8px 40px #0002;border-color:#b5d3be14}
.main-nav{grid-column:2;position:relative;isolation:isolate;gap:4px;margin:0}
.nav-ink{position:absolute;top:4px;bottom:4px;left:0;border-radius:30px;background:#c3e7cd;z-index:-1;transition:transform .55s cubic-bezier(.16,1,.3,1),width .55s cubic-bezier(.16,1,.3,1)}
.main-nav .nav-item{transition:color .35s;background:transparent!important;z-index:1}.main-nav .nav-item.active{color:#10281a}
.header-caption{display:block;grid-column:3;justify-self:end;color:#9bad9f;font-size:10px;letter-spacing:.17em}
.project-card{position:relative}.project-card .poster{transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .65s,border-color .65s}
.project-card .poster:before{content:'';position:absolute;inset:0;z-index:2;opacity:0;background:radial-gradient(400px circle at var(--mx,50%) var(--my,30%),#e6fff51c,transparent 70%);transition:opacity .5s;pointer-events:none}
.project-card:hover .poster:before{opacity:1}.poster img{transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .5s}.project-card:hover .poster img{transform:scale(1.085)}
.poster-title{transition:transform .6s cubic-bezier(.16,1,.3,1),text-shadow .6s}.project-card:hover .poster-title{transform:translateY(-6px);text-shadow:0 5px 35px #000}
.card-arrow{transition:opacity .4s,transform .6s cubic-bezier(.16,1,.3,1);transform:translate(-8px,8px) rotate(-30deg)}.project-card:hover .card-arrow{transform:none}
.will-reveal{transform:translateY(36px) scale(.97);filter:blur(4px);transition:opacity .85s ease var(--delay),transform 1s cubic-bezier(.16,1,.3,1) var(--delay),filter .85s ease var(--delay)}
.will-reveal.visible{filter:blur(0);transform:none}.side-card{transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .7s}.side-card:hover{transform:translateY(-9px);box-shadow:0 20px 60px #0005}
.side-card-copy>span{transition:transform .4s}.side-card:hover .side-card-copy>span{transform:translateX(5px)}
.poster-unreleased .poster-status{bottom:auto;top:9%;left:9%;right:auto;display:inline-block;border:1px solid #b9d2c030;border-radius:30px;background:#15201988;color:#b6c5bb;padding:7px 11px;font-size:10px;letter-spacing:.06em}
.poster-unreleased .poster-title{bottom:38%;font-weight:800!important}.poster-unreleased:after{background:linear-gradient(180deg,transparent,#0005)}
.site-footer{justify-content:center;text-align:center;color:#7d9387;padding:30px 0 38px}
.modal-panel{animation:cinema-modal .7s cubic-bezier(.16,1,.3,1) both}
.work-tab-rail{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;margin:0 0 24px;position:relative}
.work-tab-rail.has-overflow{grid-template-columns:30px minmax(0,1fr) 30px}
.work-tabs{margin:0!important;padding:0!important;gap:4px;width:100%;min-width:0;max-width:100%;scroll-behavior:smooth;user-select:none;touch-action:pan-x pan-y;border-bottom:1px solid #c7e0cd14}
.work-tab{padding:13px 16px 15px;flex:none;position:relative;border-bottom:0;color:#8aa092;transition:background .35s,color .35s}
.work-tab:after{content:'';position:absolute;bottom:0;left:16px;right:16px;height:2px;background:#d3eddd;transform:scaleX(0);transform-origin:center;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.work-tab[aria-selected=true]:after{transform:scaleX(1)}.work-tab[aria-selected=true]{background:linear-gradient(0deg,#badcc90d,transparent);color:#e2f2e8}
.tab-scroll{width:30px;height:36px;display:grid;place-items:center;padding:0;background:#bdd7c60b;border:1px solid #bdd7c615;border-radius:8px;font-size:22px;color:#c9dfd1;transition:background .3s,opacity .3s,transform .3s}
.tab-scroll:hover:not(:disabled){background:#bdd7c621;transform:scale(1.08)}.tab-scroll:disabled{opacity:.24}
.is-dragging .work-tabs{cursor:grabbing;scroll-behavior:auto}.is-dragging .work-tab{cursor:grabbing}
.work-tab-rail.can-scroll-left .work-tabs{mask-image:linear-gradient(90deg,transparent,#000 20px)}
.work-tab-rail.can-scroll-right .work-tabs{mask-image:linear-gradient(90deg,#000 calc(100% - 20px),transparent)}
.work-tab-rail.can-scroll-left.can-scroll-right .work-tabs{mask-image:linear-gradient(90deg,transparent,#000 20px,#000 calc(100% - 20px),transparent)}
.work-view{min-height:0}.object-scenes{margin:0 0 28px}.object-scenes>h3{font-size:13px;color:#b2c9ba;font-weight:500;margin:0 0 15px}.object-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.object-photo-grid:has(>.drawing:only-child){grid-template-columns:1fr}
.object-photo-grid .drawing img{height:270px;max-height:none;object-fit:contain;background:#17221c}.object-photo-grid:has(>.drawing:only-child) .drawing img{height:auto;max-height:520px;object-fit:contain}
.object-photo-grid:has(>.drawing:nth-child(3))>.drawing:first-child{grid-column:1/-1}.object-photo-grid:has(>.drawing:nth-child(3))>.drawing:first-child img{height:auto;max-height:480px}
.object-scenes .drawing{border-radius:15px;overflow:hidden;background:#ffffff02}.object-scenes figcaption{padding:0 14px;font-size:11px;line-height:1.8;color:#b6cbbf}.object-scenes .image-credit{margin:6px 14px 12px}
.image-zoom img{transition:transform .8s cubic-bezier(.16,1,.3,1),filter .7s}.image-zoom:hover img{transform:scale(1.025);filter:brightness(1.035)}.image-zoom .zoom-hint{transform:translateY(5px);transition:opacity .3s,transform .3s}.image-zoom:hover .zoom-hint{transform:none}
.board-gallery{gap:28px}.board-gallery .image-zoom{background:#e8eee9}.board-gallery .drawing img{border-radius:0}.board-note,.scene-note,.candidate-badge{display:none!important}
.drawing-archive{border:0;background:none;margin-top:22px;border-top:1px solid #bed2c514;border-radius:0}.drawing-archive summary{padding:16px 0;font-size:11px}.drawing-gallery{padding:0}
.model-status{color:#64755f}.model-showcase{transition:box-shadow .5s}.model-showcase:hover{box-shadow:0 14px 55px #0002}.model-heading{padding-top:24px}.model-heading h3{margin-top:0}.model-heading .model-eyebrow{display:none}.model-heading p{font-size:11px}
.work-empty{border:0;background:transparent;min-height:0;padding:10px 0 22px;text-align:left;align-items:flex-start}.work-empty h3{font-size:19px;margin:0;color:#b6cbbf}
.scene-section:has(.scene-grid:empty){display:none}.close-modal{transition:transform .35s,background .35s}.close-modal:hover{transform:rotate(90deg);background:#526259}
@keyframes cinema-pan{from{transform:scale(1.005) translateX(-.4%)}to{transform:scale(1.09) translateX(.5%)}}
@keyframes cinema-modal{from{opacity:0;transform:translateY(40px) scale(.965);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(max-width:700px){
 .site-header{grid-template-columns:minmax(0,1fr) auto;padding:13px 18px;gap:12px;flex-wrap:nowrap;justify-content:initial}.main-nav{grid-column:1;width:auto;justify-self:start;max-width:100%;gap:1px;padding:3px}.nav-ink{top:3px;bottom:3px}.header-caption{grid-column:2;font-size:8px;letter-spacing:.12em}
 .hero-shade{background:linear-gradient(0deg,#020805fa 0%,#030a07d9 32%,#030a0770 67%,#030a0768 100%)}.hero-copy h1{font-size:34px}.hero-description{font-size:11px;color:#d6e0d9}
 .work-tab{font-size:12px;padding:12px 13px 15px}.work-tab-rail{margin-bottom:20px;gap:5px}.work-tab-rail.has-overflow{grid-template-columns:25px minmax(0,1fr) 25px}.tab-scroll{width:25px;height:34px;font-size:20px;border-radius:6px}
 .work-tab:after{left:13px;right:13px}.object-photo-grid{grid-template-columns:1fr;gap:18px}.object-photo-grid .drawing img{height:auto;max-height:380px;object-fit:contain}.object-scenes>h3{font-size:12px}
 .object-scenes figcaption{font-size:10px}.board-gallery{gap:22px}.board-gallery figcaption{font-size:11px}.image-zoom .zoom-hint{transform:none}
 .site-footer{justify-content:center;text-align:center;font-size:9px}.modal-panel{border-radius:20px}
}
@media(max-width:360px){.site-header{padding:12px;gap:7px}.nav-item{font-size:9px;padding:9px 8px}.header-caption{font-size:7px;letter-spacing:.08em}.main-nav{margin:0;width:auto}.hero-copy h1{font-size:29px}}

