.page-head{position:relative;overflow:hidden;border-bottom:1px solid var(--line);padding:calc(var(--nav-h) + clamp(52px,8.5vh,104px)) 0 clamp(34px,5.6vh,66px)}.page-head__in{position:relative;z-index:1}.page-title{margin-top:clamp(14px,2vw,22px);font-size:clamp(2.9rem,1vw + 2.45rem,5.9rem);line-height:1.06;letter-spacing:-.03em;font-weight:600;color:var(--paper);max-width:18ch}.br-m{display:none}.page-lead{margin-top:clamp(16px,2vw,24px);max-width:58ch;color:var(--tx-2);font-size:clamp(15px,.28vw + 14px,17.5px);line-height:1.8}.page-head__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,34px)}.page-word{position:absolute;right:0;bottom:-.16em;font-family:var(--font-serif);font-weight:400;font-size:clamp(5rem,16vw,13.5rem);line-height:.8;letter-spacing:.02em;color:#f7e9c40d;pointer-events:none;user-select:none;z-index:0}@media(max-width:880px){.page-word{display:none}}@media(max-width:720px){.page-title{font-size:clamp(2rem,7.6vw,3rem);max-width:16ch}.br-m{display:inline}.page-head{padding-top:calc(var(--nav-h) + 44px)}}.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);margin-top:clamp(26px,3.6vw,44px)}.work-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-3);background:var(--glass);box-shadow:var(--lift-in);transition:var(--tr)}.work-poster{position:relative;display:block;overflow:hidden;aspect-ratio:16 / 9}.work-poster img{display:block;width:100%;height:100%;aspect-ratio:16 / 9;object-fit:cover;background:#0b0d10;transition:transform .24s var(--ease-soft)}.work-badge{position:absolute;top:12px;left:12px;z-index:2;padding:4px 8px;border:1px solid rgba(227,192,122,.4);border-radius:999px;background:#08080cb8;color:var(--gold);font-family:var(--font-mono);font-size:12px;line-height:1.4;letter-spacing:.06em}.work-play{position:absolute;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid rgba(227,192,122,.55);border-radius:999px;background:#08080cc7;color:var(--gold-bright);font-size:13px;line-height:1.3;cursor:pointer;transition:var(--tr)}.work-play:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.work-meta{display:flex;flex-direction:column;gap:6px;padding:14px 16px 18px}.work-meta h3{font-family:var(--font-serif);font-size:18px;font-weight:400;line-height:1.3;letter-spacing:.02em;color:var(--paper)}.work-kicker{margin:0;font-family:var(--font-mono);font-size:12px;line-height:1.4;letter-spacing:.12em;color:var(--gold)}.work-meta p{font-size:13px;line-height:1.6;color:var(--tx-2)}.work-note{font-size:12px;line-height:1.6;color:var(--tx-3)}.work-modal{width:min(92vw,720px);max-height:calc(100dvh - 32px);padding:0;overflow:auto;border:1px solid var(--line-gold);border-radius:var(--r-3);background:linear-gradient(165deg,#16161e,#0b0b0f 72%);color:var(--tx);box-shadow:0 40px 90px -50px #000000f2}.work-modal::backdrop{background:#040407d1}.work-modal__in{padding:clamp(18px,2.6vw,28px)}.work-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.work-modal__head h2{margin:0;font-family:var(--font-serif);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;line-height:1.3;color:var(--paper)}.work-modal__meta{margin:6px 0 0;font-family:var(--font-mono);font-size:12px;line-height:1.5;letter-spacing:.06em;color:var(--tx-3)}.work-modal__close{flex:none;width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#ffffff08;color:var(--tx);font-size:20px;line-height:1;cursor:pointer}.work-modal__close:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.work-modal__body video{display:block;width:100%;height:auto;border-radius:var(--r-2);background:#000}.work-modal__body p{font-size:14.5px;line-height:1.8;color:var(--tx-2);max-width:60ch}.work-modal__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.works-fallback{margin-top:18px;font-size:13px;line-height:1.7;color:var(--tx-2)}@media(max-width:820px){.works-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:620px){.works-grid{display:grid;grid-template-columns:minmax(0,1fr);overflow:visible;scroll-snap-type:none;padding-top:0;padding-bottom:0}.work-card{flex:none;scroll-snap-align:none}.work-meta h3{font-size:17px}.work-modal{width:94vw;max-height:calc(100dvh - 20px)}}@media(prefers-reduced-motion:reduce){.work-card,.work-poster img,.work-play{transition:none}.work-card:hover,.work-card:hover .work-poster img{transform:none}}.showreel{position:relative;aspect-ratio:16 / 9;margin-top:clamp(24px,3.2vw,40px);border-radius:var(--r-3);overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 40px 80px -50px #000;background:#0b0d10}.showreel img{display:block;width:100%;height:100%;object-fit:contain;background:#0b0d10;transition:transform .5s var(--ease-expo)}.showreel-badge{position:absolute;top:14px;left:14px;z-index:2;padding:4px 9px;border:1px solid rgba(227,192,122,.4);border-radius:999px;background:#08080cb8;color:var(--gold);font:12px/1.4 var(--font-mono);letter-spacing:.06em}.showreel .showreel-play{position:absolute;inset:auto auto 18px 18px;z-index:2;min-height:44px;padding:0 16px;background:#e3c07af0;color:#16120a;border-color:#f7e9c4cc;font-size:13px;font-weight:700}.showreel-note{margin-top:12px;font-size:12px;line-height:1.6;color:var(--tx-3)}@media(prefers-reduced-motion:reduce){.showreel img,.showreel:hover img{transition:none;transform:none}}.work-modal video{display:block;width:100%;height:auto;max-height:62vh;background:#000;border-radius:var(--r-2)}.showreel{isolation:isolate}.showreel:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(112deg,transparent 42%,rgba(247,233,196,.14) 50%,transparent 58%);transform:translate(-130%);opacity:0;transition:transform .7s var(--ease-expo),opacity .3s ease}.work-play{transition:transform .24s var(--ease-soft),background-color .2s ease,border-color .2s ease,box-shadow .24s var(--ease-soft)}.showreel .showreel-play{transition:transform .24s var(--ease-soft),background-color .2s ease,box-shadow .24s var(--ease-soft)}@keyframes cardIn{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}@keyframes reelIn{0%{opacity:0;scale:.985}to{opacity:1;scale:1}}@keyframes dlgIn{0%{opacity:0;translate:0 10px;scale:.985}to{opacity:1;translate:0 0;scale:1}}@keyframes dlgFade{0%{opacity:0}to{opacity:1}}.js .works-grid.in .work-card{animation:cardIn .5s var(--ease-expo) calc(var(--i,0) * 40ms) both}.js .showreel.in{animation:reelIn .55s var(--ease-expo) .05s both}.work-modal[open]{animation:dlgIn .22s var(--ease-expo) both}.work-modal::backdrop{animation:dlgFade .2s ease both}@media(hover:hover)and (pointer:fine){.work-card:hover{transform:translateY(-4px);border-color:#f7e9c442;box-shadow:inset 0 1px #f7e9c42e,0 40px 80px -50px #000000e6}.work-card:hover .work-poster img{transform:scale(1.03)}.work-play:hover{background:#e3c07a29;border-color:#f7e9c4cc}.showreel:hover img{transform:scale(1.03)}.showreel:hover:after{transform:translate(130%);opacity:1}.showreel:hover .showreel-play{transform:translateY(-2px);box-shadow:0 14px 30px -18px #000000d9}}@media(prefers-reduced-motion:reduce){.work-card,.work-poster img,.work-play,.showreel img,.showreel:after{transition:none}.work-card:hover,.work-card:hover .work-poster img,.showreel:hover img{transform:none}.js .works-grid.in .work-card,.js .showreel.in{animation:none;opacity:1;translate:none}.work-modal[open],.work-modal::backdrop{animation:none}.showreel:after{display:none}}@media(max-width:720px){.js .works-grid.in .work-card{animation-delay:calc(var(--i,0) * 30ms)}}.showreel-video{display:block;width:100%;height:100%;object-fit:contain;background:#000;border-radius:inherit}.showreel-video{cursor:pointer}.showreel-progress{position:absolute;left:0;right:0;bottom:0;z-index:3;height:3px;background:#f7e9c429;opacity:0;transition:opacity .2s ease;pointer-events:none}.showreel.is-playing .showreel-progress{opacity:1}.showreel-progress span{display:block;width:100%;height:100%;background:var(--gold-bright);transform:scaleX(0);transform-origin:left}.showreel.is-playing .showreel-play{opacity:0;pointer-events:none;transform:translateY(4px)}.showreel-play{transition:opacity .2s ease,transform .2s ease}.showreel-btn{position:absolute;left:50%;top:50%;z-index:4;display:grid;place-items:center;width:78px;height:78px;padding:0;border:1px solid rgba(227,192,122,.6);border-radius:50%;background:#08080c9e;color:var(--gold-bright);cursor:pointer;transform:translate(-50%,-50%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:opacity .2s ease,transform .2s ease,background .2s ease}.showreel-btn:hover{background:#08080ccc;transform:translate(-50%,-50%) scale(1.04)}.showreel-btn:focus-visible{outline:2px solid var(--gold-bright);outline-offset:4px}.showreel-ico{display:none;width:29px;height:29px}.showreel-ico--play{display:block;margin-left:4px}.showreel.is-ended .showreel-ico--play{display:none}.showreel.is-ended .showreel-ico--replay{display:block}.showreel.is-playing .showreel-btn{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.9)}@media(max-width:640px){.showreel-btn{width:62px;height:62px}.showreel-ico{width:23px;height:23px}}.work-play{min-height:44px}.works-grid--overseas{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.work-card--vertical .work-poster{aspect-ratio:9 / 16}.work-card--vertical .work-poster img{aspect-ratio:9 / 16;object-fit:cover}@media(max-width:767px){.works-grid--overseas{grid-template-columns:minmax(0,1fr);max-width:none}}
