@font-face{font-family:"Hiragino Kaku Gothic Pro";src:url("public/assets/hiragino-kaku-gothic-pro-w3.woff") format("woff");font-weight:300;font-style:normal;font-display:swap}
:root{--ink:#080d18;--blue:#0c1c36;--ice:#c6dcef;--title:#B7E7FA;--paper:#e8eef1;--line:rgba(198,220,239,.25);--pad:clamp(24px,5vw,84px);--heading-primary:clamp(34px,3.1vw,52px);--heading-secondary:clamp(25px,2.2vw,38px);--heading-card:clamp(22px,2vw,34px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:"Hiragino Kaku Gothic Pro",sans-serif;font-size:16px;line-height:1.55}body.modal-open{overflow:hidden}a{color:inherit}button{font:inherit}img{display:block;max-width:100%}
@property --intro-sweep{syntax:"<angle>";inherits:false;initial-value:0deg}.intro-screen{position:fixed;z-index:100;inset:0;display:grid;place-items:center;overflow:hidden;color:var(--title);background-color:#050b16;background-image:radial-gradient(ellipse at 35% 30%,rgba(30,64,103,.28),transparent 48%),radial-gradient(ellipse at 75% 76%,rgba(9,26,51,.55),transparent 58%),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");background-blend-mode:screen,screen,soft-light;animation:intro-exit 1.1s cubic-bezier(.65,0,.35,1) 4.4s forwards}.intro-screen::before{content:"";position:absolute;z-index:0;inset:0;background:url("public/assets/hero.webp") center/cover no-repeat;opacity:0;transform:scale(1.035);animation:intro-hero 2.3s cubic-bezier(.22,1,.36,1) 2.65s forwards}.intro-screen::after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(115deg,rgba(0,5,15,.62),rgba(4,14,31,.2) 45%,rgba(2,7,15,.58)),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");background-blend-mode:normal,soft-light;pointer-events:none}.intro-ring{--intro-sweep:0deg;position:absolute;z-index:1;left:50%;top:50%;width:min(82vmin,790px);height:auto;opacity:0;transform:translate(-50%,-50%) scale(.92);filter:drop-shadow(0 0 20px rgba(183,231,250,.08));-webkit-mask-image:conic-gradient(from -90deg,#000 0 var(--intro-sweep),transparent var(--intro-sweep) 360deg);mask-image:conic-gradient(from -90deg,#000 0 var(--intro-sweep),transparent var(--intro-sweep) 360deg);animation:intro-ring 1.9s cubic-bezier(.4,0,.2,1) .45s forwards}.intro-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px}.intro-small-logo{display:block;width:clamp(46px,5vw,78px);height:auto;margin:0 0 clamp(18px,3vh,34px);opacity:0;transform:scale(.72) rotate(-8deg);animation:intro-emblem .9s cubic-bezier(.22,1,.36,1) .3s forwards}.intro-title{margin:0;overflow:hidden;white-space:nowrap;font-size:clamp(18px,3.1vw,49px);letter-spacing:.56em;text-indent:.56em;opacity:0;clip-path:inset(0 50% 0 50%);animation:intro-title 1.65s cubic-bezier(.22,1,.36,1) .58s forwards}.intro-by{margin:32px 0 0;font-size:clamp(9px,.85vw,13px);letter-spacing:.36em;text-indent:.36em;opacity:0;transform:translateY(10px);animation:intro-by 1s ease 2.15s forwards}.intro-skip{position:absolute;z-index:3;right:var(--pad);bottom:32px;padding:8px 0;border:0;border-bottom:1px solid rgba(183,231,250,.35);background:none;color:rgba(183,231,250,.65);text-transform:uppercase;font-size:9px;letter-spacing:.2em;cursor:pointer}.intro-skip:hover{color:var(--title)}.intro-screen.intro-complete{animation:intro-skip .55s ease forwards}@keyframes intro-emblem{to{opacity:1;transform:scale(1) rotate(0)}}@keyframes intro-ring{0%{--intro-sweep:0deg;opacity:0;transform:translate(-50%,-50%) scale(.92)}12%{opacity:.62}100%{--intro-sweep:360deg;opacity:.62;transform:translate(-50%,-50%) scale(1)}}@keyframes intro-title{0%{opacity:0;clip-path:inset(0 50% 0 50%);letter-spacing:.8em}100%{opacity:1;clip-path:inset(0 0 0 0);letter-spacing:.56em}}@keyframes intro-by{to{opacity:1;transform:none}}@keyframes intro-hero{0%{opacity:0;transform:scale(1.035);filter:saturate(.55) brightness(.58)}100%{opacity:.78;transform:scale(1);filter:saturate(.86) brightness(.78)}}@keyframes intro-exit{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes intro-skip{to{opacity:0;visibility:hidden}}
.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px var(--pad);transition:background .35s,padding .35s}.site-header.scrolled{padding-top:14px;padding-bottom:14px;background:rgba(8,13,24,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:center;gap:9px;font-weight:700;letter-spacing:.22em;text-decoration:none;font-size:13px}.wordmark img{width:22px;height:22px;object-fit:contain;flex:none}.site-header nav{display:flex;gap:30px}.site-header nav a{text-decoration:none;text-transform:uppercase;font-size:11px;letter-spacing:.16em;opacity:.78}.site-header nav a:hover{opacity:1}.menu-toggle{display:none;background:none;color:inherit;border:0;text-transform:uppercase;letter-spacing:.14em;font-size:11px}
.hero{height:100svh;min-height:680px;position:relative;display:grid;place-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center}.hero-shade{background:linear-gradient(180deg,rgba(3,8,19,.22),rgba(3,8,19,.03) 40%,rgba(3,8,19,.7))}.hero-copy{position:relative;text-align:center;transform:translateY(-4vh)}.laurel{width:78px;height:69px;object-fit:contain;margin:0 auto 6px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.25em;margin:0 0 24px}.official-title{width:min(76vw,860px);margin:0 auto}.official-director{width:min(24vw,250px);margin:13px auto 0}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.trailer-button{display:inline-block;margin-top:25px;border:1px solid rgba(255,255,255,.55);border-radius:100px;padding:13px 22px;color:white;background:rgba(5,10,22,.22);text-decoration:none;text-transform:uppercase;letter-spacing:.17em;font-size:11px;cursor:pointer;backdrop-filter:blur(4px)}.trailer-button:hover{background:var(--paper);color:var(--ink)}.play{font-size:9px;margin-right:8px}.hero-quote{position:absolute;left:var(--pad);bottom:36px;font-family:"Hiragino Kaku Gothic Pro",sans-serif;font-style:normal;font-size:clamp(11px,1vw,14px);letter-spacing:.01em}.scroll-cue{position:absolute;right:var(--pad);bottom:36px;font-size:10px;text-transform:uppercase;letter-spacing:.25em;text-decoration:none;writing-mode:vertical-rl}
.section{padding:clamp(90px,12vw,180px) var(--pad)}.section-label{text-transform:uppercase;font-size:10px;letter-spacing:.3em;color:var(--ice);margin-bottom:70px}.story{position:relative;color:var(--paper);background:linear-gradient(90deg,rgba(4,10,21,.96) 0%,rgba(4,10,21,.82) 52%,rgba(4,10,21,.62) 100%),url('public/assets/still-buddha.webp') center/cover fixed}.story::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,10,21,.15),rgba(4,10,21,.45));pointer-events:none}.story>*{position:relative;z-index:1}.story .section-label{color:var(--ice)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.story h2,.film h2,.press-copy h2{font:400 clamp(38px,5.5vw,82px)/1.02 Georgia,serif;margin:0}.prose{max-width:620px;text-shadow:0 1px 18px rgba(0,0,0,.28)}.prose p{margin:0 0 1.8em}.pullquote{font:italic clamp(25px,3vw,43px)/1.2 Georgia,serif;padding:45px 0;border-top:1px solid rgba(198,220,239,.5);border-bottom:1px solid rgba(198,220,239,.5)}
.film{background:#071225}.film-grid{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:10vw;align-items:start}.poster-wrap{position:sticky;top:120px}.poster-wrap img{width:100%}.film-copy h2{max-width:780px;font-size:clamp(25px,2.2vw,38px);font-style:italic;font-weight:300;line-height:1.25;letter-spacing:-.035em;margin-bottom:80px}.film-copy>p{max-width:700px}.kicker{text-transform:uppercase;letter-spacing:.25em;font-size:10px;color:var(--ice);margin:0 0 24px}.details{margin:70px 0 0;border-top:1px solid var(--line)}.details div{display:grid;grid-template-columns:140px 1fr;padding:16px 0;border-bottom:1px solid var(--line)}.details dt{color:#8292a8}.details dd{margin:0}
.statement{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:center;background:#d8d4c3;color:var(--ink)}.statement-image img{aspect-ratio:16/12;object-fit:cover}.statement .section-label{color:#4c5962;margin-bottom:40px}.statement blockquote{margin:0 0 40px;font:italic clamp(33px,4vw,62px)/1.08 Georgia,serif}.statement-copy>p{max-width:590px}.statement h3{margin:50px 0 4px;text-transform:uppercase;letter-spacing:.2em;font-size:13px}
.director{display:grid;grid-template-columns:minmax(320px,.82fr) 1.18fr;gap:9vw;align-items:center}.director-portrait img{width:100%;max-height:860px;object-fit:cover;object-position:center}.director-copy{max-width:720px}.director-copy .section-label{margin-bottom:38px}.director-name{display:inline-flex;align-items:flex-start;gap:16px;margin-bottom:45px;font:400 clamp(46px,6vw,92px)/.95 Georgia,serif;text-decoration:none}.director-name span{font:400 18px/1 Arial,sans-serif;margin-top:9px}.director-name:hover{font-style:italic}.director-copy p{margin:0 0 1.6em;color:#c7d0da}.credits-grid strong a,footer p a{text-decoration:none}.credits-grid strong a:hover,footer p a:hover{text-decoration:underline;text-underline-offset:4px}
.cast{background:#090d15}.cast-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cast-list article{position:relative;overflow:hidden;background:#101827}.cast-link{display:block;color:inherit;text-decoration:none}.cast-link:focus-visible{outline:2px solid var(--title);outline-offset:-2px}.cast-list article img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center;transition:transform .8s ease}.cast-list article:hover img{transform:scale(1.025)}.cast-meta{position:absolute;z-index:1;inset:auto 0 0;padding:70px 22px 20px;background:linear-gradient(transparent,rgba(3,7,14,.94));display:grid;grid-template-columns:30px 1fr;align-items:end}.cast-list span,.cast-list p{font-size:10px;color:#b2c0ce}.cast-list h3{font:400 clamp(22px,2.3vw,36px)/1 Georgia,serif;margin:0}.cast-list p{grid-column:2;text-transform:uppercase;letter-spacing:.18em;margin:8px 0 0}
.gallery{background:#101d31}.gallery-head{display:flex;justify-content:space-between}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-item{padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden}.gallery-item.wide{grid-column:1/-1}.gallery-item.double{grid-column:span 2}.gallery-item img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .7s}.gallery-item.wide img{aspect-ratio:21/9}.gallery-item.double img{aspect-ratio:32/10}.gallery-item:hover img{transform:scale(1.025)}
.festival{background:var(--paper);color:var(--ink)}.festival .section-label{color:#44576b}.festival-row{display:grid;grid-template-columns:120px 1fr 180px;align-items:center;padding:35px 0;border-top:1px solid #aab5be;border-bottom:1px solid #aab5be}.festival-row h2{font:400 clamp(27px,4vw,58px)/1 Georgia,serif;margin:0}.festival-row p,.festival-row span{text-transform:uppercase;letter-spacing:.18em;font-size:11px}.muted{color:#65727d;margin-top:25px}
.credits{background:#050912}.credits-grid{display:block;border-top:1px solid var(--line);max-width:1500px;margin:0 auto}.credits-grid div,.credits-grid div:nth-child(odd):not(.full),.credits-grid div:nth-child(even):not(.full){display:grid;grid-template-columns:minmax(190px,28%) minmax(0,1fr);align-items:start;gap:50px;padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}.credits-grid span{color:#8292a8;font-size:12px}.credits-grid strong{text-align:left;font-weight:400;overflow-wrap:anywhere}
.press-kit{display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw;align-items:center;background:#111d2e}.press-image img{max-height:750px;margin:auto}.press-copy .section-label{margin-bottom:30px}.press-copy p{max-width:520px}.download{display:flex;justify-content:space-between;margin-top:70px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;text-transform:uppercase;letter-spacing:.18em;font-size:11px}.download:hover{color:var(--ice)}
.contact{text-align:center;min-height:70vh;display:flex;flex-direction:column;justify-content:center;background:#ced9df;color:var(--ink)}.contact .section-label{color:#4e6170;margin-bottom:35px}.contact p{text-transform:uppercase;letter-spacing:.2em;font-size:10px}.contact-link{font:400 clamp(28px,6vw,86px)/1.2 Georgia,serif;text-decoration:none;border-bottom:1px solid #83939e;align-self:center}.contact-link:hover{font-style:italic}.instagram-link{display:inline-flex;align-items:center;gap:14px;align-self:center;margin-top:46px;text-align:left;text-decoration:none}.instagram-link svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.5}.instagram-link .instagram-dot{fill:currentColor;stroke:none}.instagram-link span{display:flex;flex-direction:column}.instagram-link strong{font-size:13px;font-weight:300;letter-spacing:.08em}.instagram-link small{margin-top:3px;text-transform:uppercase;font-size:8px;letter-spacing:.2em;color:#566976}.instagram-link:hover strong{text-decoration:underline;text-underline-offset:4px}footer{padding:35px var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8e9aaa}footer p{margin:0}
.video-modal,.lightbox{width:min(92vw,1200px);padding:0;border:0;background:#03060b;color:white;overflow:visible}.video-modal::backdrop,.lightbox::backdrop{background:rgba(0,0,0,.9);backdrop-filter:blur(8px)}.video-frame{aspect-ratio:16/9}.video-frame iframe{width:100%;height:100%;border:0}.modal-close{position:absolute;right:0;top:-46px;background:none;border:0;color:white;font-size:34px;cursor:pointer}.lightbox img{max-height:84vh;margin:auto}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
.film,.statement,.director,.cast,.gallery,.credits,.press-kit,footer{background-color:#070d18;background-image:radial-gradient(ellipse at 28% 18%,rgba(34,66,105,.24),transparent 46%),radial-gradient(ellipse at 82% 74%,rgba(12,29,54,.42),transparent 55%),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");background-blend-mode:screen,screen,soft-light}.film,.statement,.director,.cast,.gallery,.credits,.press-kit{position:relative;isolation:isolate}.film::after,.statement::after,.director::after,.cast::after,.gallery::after,.credits::after,.press-kit::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(105deg,rgba(0,0,0,.16),transparent 42%,rgba(3,9,18,.28))}
.hero-quote,.story h2,.film h2,.pullquote,.statement blockquote,.director-name,.cast-list h3,.festival-row h2,.press-copy h2,.contact-link{font-family:"Hiragino Kaku Gothic Pro",sans-serif}.story h2,.film h2,.statement blockquote,.director-name,.cast-list h3,.press-copy h2{color:var(--title)}.story h2,.statement blockquote,.director-name,.festival-row h2,.press-copy h2{font-size:var(--heading-primary);font-weight:300;line-height:1.08;letter-spacing:-.025em}.story h2{max-width:700px;text-wrap:balance}.film-copy h2{font-size:var(--heading-secondary);line-height:1.25}.cast-list h3{font-size:var(--heading-card)}.contact-link{font-size:var(--heading-primary)}.statement{color:var(--paper)}.statement .section-label{color:var(--ice)}.statement-copy>p{color:#c7d0da}
@media(max-width:800px){.site-header nav{display:none;position:absolute;left:0;top:100%;width:100%;padding:24px var(--pad);background:rgba(8,13,24,.96);flex-direction:column}.site-header nav.open{display:flex}.menu-toggle{display:block}.hero-image{object-position:39% center}.hero-copy{transform:translateY(-5vh)}.laurel{width:65px;height:58px}.eyebrow{font-size:9px;margin-bottom:23px}.official-title{width:94vw}.official-director{width:50vw;max-width:205px;margin-top:10px}.trailer-button{margin-top:24px}.hero-quote{right:var(--pad);bottom:65px;text-align:center}.scroll-cue{display:none}.story-grid,.film-grid,.statement,.press-kit{grid-template-columns:1fr}.section-label{margin-bottom:40px}.story h2{margin-bottom:55px}.poster-wrap{position:relative;top:auto;width:min(82%,420px);margin:auto}.film-copy h2{margin-top:60px;margin-bottom:60px}.statement-image{order:2}.cast-list article{grid-template-columns:45px 1fr}.cast-list p{grid-column:2}.gallery-grid{grid-template-columns:1fr}.gallery-item.wide,.gallery-item.double{grid-column:auto}.gallery-item img,.gallery-item.wide img,.gallery-item.double img{aspect-ratio:16/11}.festival-row{grid-template-columns:1fr;gap:15px}.credits-grid{grid-template-columns:1fr}.credits-grid div,.credits-grid .full{grid-column:1;padding-left:0!important;padding-right:0!important;border-left:0!important;flex-direction:column;gap:6px}.credits-grid strong{text-align:left}.press-image{width:min(75%,390px);margin:auto}.contact-link{font-size:clamp(22px,7vw,48px)}footer{flex-direction:column;gap:16px;text-align:center}}
@media(max-width:800px){.story{background-attachment:scroll;background-position:58% center}.cast-list{grid-template-columns:1fr}.cast-list article{display:block}.cast-list article img{aspect-ratio:16/10}.cast-list p{grid-column:2}.credits-grid div,.credits-grid .full,.credits-grid div:nth-child(odd):not(.full),.credits-grid div:nth-child(even):not(.full){display:grid;grid-template-columns:1fr;gap:5px;padding:17px 0!important;border-left:0!important}.credits-grid strong{text-align:left}}
@media(max-width:800px){.director{grid-template-columns:1fr}.director-portrait{width:min(88%,480px);margin:0 auto}.director-copy{max-width:none}.director-name{margin-bottom:32px}.site-header nav{max-height:calc(100vh - 60px);overflow:auto}}
@media(max-width:800px){.intro-ring{width:min(94vw,650px)}.intro-small-logo{margin-bottom:18px}.intro-title{white-space:normal;line-height:1.7;letter-spacing:.34em;text-indent:.34em}.intro-by{line-height:1.8;letter-spacing:.25em;text-indent:.25em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro-screen{display:none}.reveal{opacity:1;transform:none;transition:none}.gallery-item img{transition:none}}
