/* New work and a visual directory, within the existing Jost / Pretendard identity. */
.is-home header{position:relative;border-bottom:1px solid var(--line)}
.is-home main{max-width:1660px;padding:0 5vw;min-height:80vh}
.is-home footer{display:flex}
.portfolio-home{padding-top:30px}
.home-feature{margin:0 0 86px}
.home-feature-link{position:relative;display:block;min-height:490px;height:min(70vw,710px);max-height:76svh;overflow:hidden;background:#252d2a;color:#fff}
.home-feature-link>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;transition:transform 1.2s ease}
.home-feature-shade{position:absolute;inset:0;background:linear-gradient(180deg,#080e1026,transparent 27%,#080b0d30 52%,#070a0ce8)}
.home-feature-top{position:absolute;top:27px;left:32px;right:32px;display:flex;justify-content:space-between;gap:16px;font-size:10px;letter-spacing:1.8px;color:#f4f5f0}
.home-feature-content{position:absolute;left:40px;right:40px;bottom:34px}
.home-feature-content>p{font-size:14px;letter-spacing:.6px;margin:0 0 4px}
.home-feature-content h1{font-size:clamp(64px,11.8vw,180px);line-height:1.05;letter-spacing:-.04em;font-weight:350;margin:0 0 14px}
.home-feature-content>div{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:#e1e3dd}
.home-feature-cta{border:1px solid #e1e3dd80;padding:13px 20px;color:#fff;white-space:nowrap;transition:background .25s}
.home-feature-link:hover>img{transform:scale(1.025)}
.home-feature-link:hover .home-feature-cta{background:#ffffff18}
.home-directory-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}
.home-directory-heading h2{font-size:clamp(25px,3vw,40px);letter-spacing:-1px}
.home-directory-heading>p{font-size:13px;color:var(--muted);line-height:1.8;max-width:280px;margin:0}
.home-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 25px}
.home-menu-card{min-width:0;display:block;padding-bottom:23px;border-bottom:1px solid var(--line)}
@media (prefers-reduced-motion: no-preference){.reveal-pending{opacity:0}}
.home-menu-image{position:relative;aspect-ratio:16/10;overflow:hidden;background:#242721}
.home-menu-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.home-menu-about .home-menu-image{background:#d1d2c5}
.home-menu-about .home-menu-image img{object-fit:contain;padding:28px}
.home-menu-press .home-menu-image img{object-position:center 25%}
.home-menu-arrow{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #f4f5f059;background:#0e0f0db3;color:#f4f5ed;font-size:20px;transition:background .2s}
.home-menu-card:hover .home-menu-image img{transform:scale(1.035)}
.home-menu-card:hover .home-menu-arrow{background:#0e0f0d}
.home-menu-title{display:flex;align-items:center;justify-content:space-between;margin-top:19px;gap:15px}
.home-menu-title h3{font-size:26px;letter-spacing:-.5px}
.home-menu-title>span{font-size:11px;color:#82897d}
.home-menu-label{font-size:13px;margin:12px 0 8px;color:#e0e2d9}
.home-menu-description{font-size:13px;line-height:1.85;color:var(--muted);margin:0;max-width:38em;word-break:keep-all;overflow-wrap:anywhere}
.is-development .page-sidebar-description{font-size:11px;letter-spacing:.5px;line-height:1.9}
.insomnia-project{max-width:1080px}
.insomnia-project figure{margin:0}
.insomnia-cover img{display:block;width:100%;height:auto;aspect-ratio:1456/816;object-fit:cover;background:#202622}
.insomnia-cover figcaption{font-size:9px;letter-spacing:1.3px;color:var(--muted);margin-top:12px}
.insomnia-title{padding:39px 0 30px}
.insomnia-kicker{font-size:10px;letter-spacing:1.6px;line-height:1.6;color:#afb6a7;margin:0 0 18px}
.insomnia-title h2{font-size:clamp(48px,6.5vw,94px);font-weight:350;letter-spacing:-.04em;line-height:1.05}
.insomnia-title h2 span{font-size:15px;letter-spacing:2px;display:block;margin-top:16px;color:#c0c6bb;font-weight:350}
.insomnia-deck{font-size:clamp(17px,1.6vw,22px);font-weight:350;line-height:1.7;margin:26px 0 0;word-break:keep-all}
.insomnia-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;gap:20px;margin:0 0 53px}
.insomnia-facts dt{font-size:9px;letter-spacing:1px;color:var(--muted);margin-bottom:11px}
.insomnia-facts dd{font-size:12px;line-height:1.6;margin:0;word-break:keep-all}
.insomnia-facts i{display:inline-block;width:5px;height:5px;background:#b5bea2;border-radius:50%;vertical-align:middle;margin:0 3px 2px 0}
.insomnia-writing{display:grid;grid-template-columns:145px minmax(0,1fr);gap:28px;margin-bottom:43px}
.insomnia-writing h3{font-size:15px;font-weight:450;line-height:1.9}
.insomnia-writing p{font-size:14px;line-height:2.05;margin:0 0 17px;color:#bfc3b8;word-break:keep-all;overflow-wrap:anywhere}
.insomnia-writing p:last-child{margin-bottom:0}
.insomnia-season{margin:75px 0 0}
.insomnia-section-heading{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding-top:25px;gap:16px}
.insomnia-section-heading .insomnia-kicker{margin-bottom:10px}
.insomnia-section-heading h3{font-size:clamp(22px,2.5vw,32px);line-height:1.4;letter-spacing:-.5px;word-break:keep-all}
.insomnia-section-heading>span{font-size:11px;color:var(--muted);white-space:nowrap;margin-bottom:5px}
.insomnia-note{font-size:11px;line-height:1.9;color:var(--muted);margin:16px 0 25px;word-break:keep-all}
.insomnia-index{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;margin-bottom:55px}
.insomnia-index button{background:transparent;border:0;border-bottom:1px solid var(--line);padding:15px 0;text-align:left;display:flex;align-items:center;gap:13px;font-size:12px;line-height:1.6}
.insomnia-index button small{font-size:10px;color:#929b87}
.insomnia-index button>span{margin-left:auto;color:var(--muted)}
.insomnia-index button:hover{color:#cddab7}
.insomnia-episode{margin:0 0 74px;scroll-margin-top:30px}
.insomnia-episode:focus{outline:none}
.insomnia-episode figure{background:#19201b}
.insomnia-episode figure>img{width:100%;height:auto;display:block;max-height:650px;object-fit:contain}
.insomnia-episode figcaption{display:flex;justify-content:space-between;gap:12px;padding:13px 16px;font-size:9px;letter-spacing:1.2px;color:#b5bdb0}
.insomnia-episode-copy{display:grid;grid-template-columns:65px minmax(0,1fr);gap:20px;margin-top:27px}
.episode-number{font-size:34px;font-weight:300;color:#6f7b65;line-height:1.2}
.insomnia-episode h4{font-size:27px;line-height:1.4;font-weight:400;letter-spacing:-.7px;margin:0}
.episode-english{font-size:11px;color:#929b87;letter-spacing:1px;margin:8px 0 0}
.episode-logline{font-size:15px;line-height:1.9;word-break:keep-all;color:#e1e5d9;margin:22px 0 12px}
.episode-synopsis{font-size:14px;line-height:2.05;word-break:keep-all;overflow-wrap:anywhere;color:#acb5a3;margin:0;max-width:54em}
.insomnia-closing{padding:36px 0 0;border-top:1px solid var(--line);margin:0}
.insomnia-closing h3{font-size:clamp(23px,2.8vw,34px);line-height:1.5;letter-spacing:-.6px;word-break:keep-all}
.insomnia-closing>p:not(.insomnia-kicker){max-width:570px;font-size:13px;line-height:1.9;color:var(--muted);word-break:keep-all}
.insomnia-closing .action{font-size:12px}
.insomnia-top{display:block;border:0;background:none;color:var(--muted);padding:12px 0;margin-top:18px;font-size:11px}
@media(min-width:701px) and (max-width:1100px){body>header>nav{gap:14px}body>header{gap:18px}.home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insomnia-writing{grid-template-columns:1fr;gap:12px}.insomnia-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.insomnia-index{column-gap:16px}}
@media(max-width:700px){
 .is-home main{padding:0 6vw}.is-home nav.open{margin-top:0;padding:20px 0 0;box-shadow:none}.portfolio-home{padding-top:18px}
 .home-feature{margin-bottom:48px}.home-feature-link{min-height:500px;height:72svh;max-height:720px}.home-feature-link>img{object-position:39% center}
 .home-feature-top{left:19px;right:19px;top:20px;font-size:8px;letter-spacing:.8px;flex-wrap:wrap}
 .home-feature-content{left:20px;right:20px;bottom:24px}.home-feature-content h1{font-size:clamp(44px,12vw,84px);letter-spacing:-.04em;margin:10px 0 18px}.home-feature-content>p{font-size:11px;letter-spacing:0}
 .home-feature-content>div{align-items:start;flex-direction:column;font-size:10px;gap:20px}.home-feature-cta{font-size:11px;padding:12px 16px}
 .home-directory-heading{display:block;margin-bottom:24px}.home-directory-heading>p{margin-top:15px;font-size:12px}.home-directory-heading .insomnia-kicker{font-size:9px;margin-bottom:12px}
 .home-menu-grid{grid-template-columns:1fr;gap:30px}.home-menu-title h3{font-size:25px}.home-menu-description{font-size:13px}.home-menu-image{aspect-ratio:16/9}.home-menu-about .home-menu-image img{padding:26px}
 .is-development .page-sidebar-description{display:none}.insomnia-title{padding:28px 0}.insomnia-title h2{font-size:clamp(44px,12vw,78px)}.insomnia-title h2 span{font-size:12px;margin-top:13px}.insomnia-title .insomnia-kicker{font-size:9px}
 .insomnia-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px;padding:22px 0;margin-bottom:34px}.insomnia-facts dd{font-size:12px}
 .insomnia-writing{grid-template-columns:1fr;gap:13px;margin-bottom:33px}.insomnia-writing p{font-size:14px;line-height:1.95}.insomnia-writing h3{font-size:16px}
 .insomnia-season{margin-top:49px}.insomnia-index{grid-template-columns:1fr;gap:0;margin-bottom:35px}.insomnia-index button{padding:13px 0}.insomnia-note{font-size:11px}
 .insomnia-episode{margin-bottom:48px;scroll-margin-top:18px}.insomnia-episode-copy{grid-template-columns:34px minmax(0,1fr);gap:12px;margin-top:22px}.episode-number{font-size:25px}.insomnia-episode h4{font-size:22px;letter-spacing:-.5px}.episode-logline{font-size:14px;margin-top:19px}.episode-synopsis{font-size:13px;line-height:2}.insomnia-episode figcaption{font-size:8px;padding:11px 12px;letter-spacing:.5px}
 .insomnia-closing{padding-top:29px}.insomnia-section-heading>span{display:none}
}
@media(prefers-reduced-motion:reduce){.home-feature-link>img,.home-menu-image img{transition:none}}

/* Project catalogue, compact treatments and a separate still gallery. */
.portfolio-home{padding-top:58px}
.home-directory-heading h1{font-size:clamp(28px,3vw,42px);line-height:1.3;letter-spacing:-1px;margin:0}
.home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 28px}
.home-menu-text{padding:24px 0 28px;border-top:1px solid var(--line);align-self:start}
.home-menu-text .home-menu-title{margin-top:0}
.home-menu-text .home-menu-title>span{font-size:24px;color:var(--ink)}
.home-menu-press .home-menu-image img{object-position:center 25%}
.development-list{display:flex;flex-direction:column;gap:50px}
.development-project{display:block;border-bottom:1px solid var(--line);padding-bottom:30px}
.development-project-image{position:relative;overflow:hidden;background:#202622}
.development-project-image img{display:block;width:100%;height:auto;aspect-ratio:1456/816;object-fit:cover;transition:transform .5s}
.development-project-image>span{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:45px;height:45px;border:1px solid #eeeee880;background:#10151080;font-size:24px;color:#fff}
.development-summary:hover .development-project-image img{transform:scale(1.025)}
.development-project-caption{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:24px}
.development-project-caption .insomnia-kicker{margin-bottom:10px}
.development-project-caption h2{font-size:36px;letter-spacing:-.5px}
.development-project-caption small{font-size:12px;font-weight:400;letter-spacing:1px;margin-left:18px;color:var(--muted)}
.development-project-caption>p{font-size:11px;line-height:1.9;color:var(--muted);margin:0}
.insomnia-back{display:inline-block;font-size:12px;color:var(--muted);margin:0 0 24px}
.insomnia-back:hover{color:var(--ink)}
.insomnia-season{margin:44px 0 46px}
.insomnia-episodes{margin-top:24px;border-top:1px solid var(--line)}
.insomnia-story{border-bottom:1px solid var(--line)}
.insomnia-story summary{display:flex;align-items:center;gap:20px;list-style:none;padding:20px 0;font-size:16px;line-height:1.6;cursor:pointer}
.insomnia-story summary::-webkit-details-marker{display:none}
.insomnia-story summary::marker{content:''}
.insomnia-story summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.story-number{font-size:11px;color:#929b87;min-width:22px}
.story-chevron{font-size:20px;margin-left:auto;display:inline-block;transition:transform .2s;color:#b9c2af}
.insomnia-story[open] .story-chevron{transform:rotate(90deg)}
.insomnia-story-body{padding:0 38px 24px 42px}
.insomnia-story-body p{margin:0;font-size:14px;line-height:2;word-break:keep-all;overflow-wrap:anywhere;color:#bfc3b8;max-width:56em}
.insomnia-stills{margin:0 0 45px}
.insomnia-still-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.insomnia-still{position:relative;padding:0;border:0;background:#202622;aspect-ratio:16/10;overflow:hidden;width:100%}
.insomnia-still img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.insomnia-still:hover img{transform:scale(1.04)}
.still-expand{position:absolute;right:8px;bottom:7px;font-size:16px;color:#fff;text-shadow:0 1px 5px #000}
.insomnia-concept-film{margin-bottom:48px}
.insomnia-concept-film video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000;margin-top:24px}
.insomnia-lightbox-open{overflow:hidden}
:is(#insomnia-lightbox,.development-lightbox){width:min(96vw,1500px);max-width:none;height:min(92dvh,1000px);max-height:94dvh;padding:18px 22px;background:#0e0f0d;border:1px solid var(--line);overflow:hidden;color:var(--ink)}
:is(#insomnia-lightbox,.development-lightbox)::backdrop{background:#060906ef}
.insomnia-lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;height:42px;color:var(--muted)}
.insomnia-lightbox-bar button,.insomnia-lightbox-stage button{border:0;background:none;color:var(--ink);padding:10px}
.insomnia-lightbox-stage{display:grid;grid-template-columns:45px minmax(0,1fr) 45px;align-items:center;gap:12px;height:calc(100% - 42px)}
.insomnia-lightbox-stage img{width:100%;height:100%;min-height:0;object-fit:contain}
.insomnia-lightbox-stage button{font-size:30px}
@media(max-width:1100px){.development-project-caption{align-items:start;flex-direction:column;gap:13px}.insomnia-still-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .portfolio-home{padding-top:30px}.home-menu-grid{grid-template-columns:1fr;gap:28px}.home-menu-text{padding:22px 0}.home-menu-text+.home-menu-text{border-top:0;padding-top:0}
 .development-project-caption h2{font-size:30px}.development-project-image>span{right:14px;bottom:14px;width:36px;height:36px;font-size:20px}
 .insomnia-story summary{font-size:14px;gap:13px;padding:17px 0}.insomnia-story-body{padding:0 8px 21px 35px}.insomnia-story-body p{font-size:13px}
 .insomnia-still-grid{gap:9px}.insomnia-back{margin-bottom:20px}.insomnia-stills,.insomnia-season{margin-bottom:36px}
 :is(#insomnia-lightbox,.development-lightbox){width:100vw;height:100dvh;max-height:100dvh;padding:12px;border:0}.insomnia-lightbox-stage{grid-template-columns:28px minmax(0,1fr) 28px;gap:3px}.insomnia-lightbox-stage button{padding:4px}.insomnia-lightbox-bar{height:48px}.insomnia-lightbox-stage{height:calc(100% - 48px)}
}

.home-accessible-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Four portrait navigation cards; a two-by-two grid on phones. */
.home-menu-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
.home-menu-card:not(.home-menu-text){display:flex;flex-direction:column;border:1px solid #41483a;background:#141710;padding:12px 12px 24px;min-width:0;transition:border-color .2s,background .2s}
.home-menu-card:not(.home-menu-text):hover{border-color:#909d80;background:#1a1f15}
.home-menu-card .home-menu-image{aspect-ratio:1;width:100%;flex-shrink:0}
.home-menu-image img{object-fit:cover}
.home-menu-films .home-menu-image img{object-position:68% center}
.home-menu-development .home-menu-image img{object-position:42% center}
.home-menu-archive .home-menu-image img{object-position:center}
.home-menu-card:not(.home-menu-text) .home-menu-title{margin:23px 9px 0;align-items:flex-start;gap:0;min-height:2.35em;font-size:clamp(25px,2.55vw,40px)}
.home-menu-card:not(.home-menu-text) .home-menu-title h3{font-size:inherit;line-height:1.12;letter-spacing:-.65px;font-weight:450;overflow-wrap:normal}
.home-menu-card:not(.home-menu-text) .home-menu-title>span{display:none}
.home-menu-card:not(.home-menu-text) .home-menu-label{margin:20px 9px 10px;font-size:12px;line-height:1.75;word-break:keep-all}
.home-menu-card:not(.home-menu-text) .home-menu-description{margin:0 9px;font-size:12px;line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}
.home-menu-text{grid-column:span 2;margin-top:12px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-menu-text .home-menu-title h3{font-size:30px}
@media(max-width:900px){
 .home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .home-menu-card:not(.home-menu-text) .home-menu-title{font-size:clamp(25px,4.2vw,36px)}
 .home-menu-text{grid-column:span 1}
}
@media(max-width:600px){
 .is-home main{padding:0 5vw}.portfolio-home{padding-top:23px}.home-menu-grid{gap:12px;row-gap:16px}
 .home-menu-card:not(.home-menu-text){padding:7px 7px 18px}
 .home-menu-card:not(.home-menu-text) .home-menu-title{margin:17px 5px 0;font-size:clamp(23px,6.4vw,33px);min-height:2.35em}
 .home-menu-card.home-menu-development .home-menu-title{font-size:clamp(18px,5.4vw,28px);min-height:2.79em}
 .home-menu-card:not(.home-menu-text) .home-menu-label{margin:13px 5px 7px;font-size:11px;line-height:1.65}
 .home-menu-card:not(.home-menu-text) .home-menu-description{margin:0 5px;font-size:11px;line-height:1.8}
 .home-menu-arrow{width:26px;height:26px;right:7px;bottom:7px;font-size:16px}
 .home-menu-text,.home-menu-text+.home-menu-text{padding:19px 0;border-top:1px solid var(--line);margin-top:8px}
 .home-menu-text .home-menu-title h3{font-size:25px}.home-menu-text .home-menu-description{font-size:12px}
}

/* Project details unfold beneath their cover, without a second page. */
.development-summary{display:block;list-style:none;cursor:pointer}
.development-summary::-webkit-details-marker{display:none}
.development-summary::marker{content:''}
.development-summary:focus-visible{outline:2px solid currentColor;outline-offset:8px}
.development-disclosure>.development-summary .development-project-caption{flex-direction:row;align-items:center;justify-content:space-between}
.development-project-meta{font-size:11px;line-height:1.9;color:var(--muted);margin:12px 0 0}
.development-chevron{flex:0 0 46px;display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);font-size:26px;font-weight:400}
.development-chevron>span{transition:transform .2s}
.development-disclosure[open]>.development-summary .development-chevron>span{transform:rotate(90deg)}
.development-project-body{padding-top:35px}
.development-disclosure[open]>.development-summary .development-project-image img{transform:none}
@media(max-width:700px){.development-project-body{padding-top:27px}.development-chevron{flex-basis:38px;width:38px;height:38px;font-size:23px}}
@media(prefers-reduced-motion:reduce){.development-chevron>span{transition:none}}

/* Centered menu titles on square artwork, with compact detail controls. */
.home-menu-image{container-type:inline-size;isolation:isolate}
.home-menu-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0000000d,#0000004d 50%,#0000000d);pointer-events:none}
.home-image-title{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;text-align:center;margin:0;padding:0 5%;font-size:clamp(20px,18cqi,54px);font-weight:450;letter-spacing:-.04em;line-height:1.15;white-space:nowrap;color:#fff;text-shadow:0 2px 15px #0009}
.home-menu-development .home-image-title{font-size:12cqi;letter-spacing:-.035em}
.home-menu-films .home-menu-image img{object-position:68% center}
.home-menu-press .home-menu-image img{object-position:center 25%}
.home-menu-card .home-menu-details{display:flex;align-items:center;justify-content:center;align-self:center;flex:none;width:88px;aspect-ratio:16/9;min-height:0;padding:8px;margin:18px 0 0;font-size:11px;line-height:1.3;text-align:center;white-space:normal}
.home-menu-card:hover .home-menu-details,.home-menu-card:focus-visible .home-menu-details{background:#fff;color:#10110e;border-color:#fff}
.home-menu-card:not(.home-menu-text) .home-menu-label{margin-top:17px}
.development-project-caption>div{min-width:0}
.development-project-caption .development-details{flex:none;margin:0;min-width:112px;text-align:center;white-space:nowrap}
.development-summary:hover .development-details,.development-summary:focus-visible .development-details{background:#fff;color:#10110e;border-color:#fff}
@media(max-width:700px){
 .development-disclosure>.development-summary .development-project-caption{gap:16px}
 .development-project-caption h2{font-size:27px}
 .development-project-caption small{display:block;margin:7px 0 0;font-size:11px}
 .home-menu-card .home-menu-details{width:80px;aspect-ratio:16/9;margin-top:14px;font-size:10px}
}

/* One still for the standalone AFESI project; keep its full composition. */
.afesi-still-grid{display:grid;grid-template-columns:minmax(0,1fr);max-width:560px;margin-top:24px}
.afesi-still{aspect-ratio:3/2}
.afesi-lightbox-stage{grid-template-columns:minmax(0,1fr)}

/* Media needs no visible section labels or helper copy. */
.insomnia-stills>.insomnia-still-grid,.insomnia-stills>.afesi-still-grid,.insomnia-concept-film>video{margin-top:0}

/* A full-viewport film entrance above the existing directory. */
.is-home #content{max-width:none;padding:0;min-height:100svh}
.is-home .portfolio-home{padding-top:0}
.is-home>header{position:fixed;inset:0 0 auto;z-index:20;border:0;background:linear-gradient(180deg,#080b0db3,transparent);color:#fff;transition:background .25s}
.is-home.home-past-hero>header{background:#0e0f0df2;border-bottom:1px solid var(--line)}
.home-video-hero{position:relative;width:100%;height:100vh;height:100dvh;min-height:440px;margin:0;overflow:hidden;background:#161d1b;isolation:isolate}
.home-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:-2}
.home-video-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#080c1426,#080c142e 50%,#0e0f0d)}
.home-video-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 5vw;margin:0;color:#fff;text-shadow:0 2px 25px #0005;pointer-events:none}
.home-video-title>span{font-size:clamp(15.5px,1.75vw,24px);font-weight:400;letter-spacing:.35em;line-height:1.6;margin:0 0 14px;padding-left:.35em}
.home-video-title>strong{font-size:clamp(28px,4.8vw,80px);font-weight:400;letter-spacing:.015em;line-height:1.1}
.home-video-refresh,.home-video-scroll{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));display:grid;place-items:center;width:44px;height:44px;padding:0;color:#fff;background:#10151033;border:1px solid #ffffff70}
.home-video-refresh{right:5vw;border:0;border-radius:50%;background:transparent}.home-video-refresh svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.home-video-scroll{left:50%;margin-left:-22px;font-size:25px;border:0;background:none}
.home-video-refresh:hover{background:#ffffff14}.home-video-refresh:focus-visible,.home-video-scroll:focus-visible{outline:2px solid white;outline-offset:4px}
.is-home .home-directory{max-width:1660px;margin:0 auto;padding:70px 5vw 0;scroll-margin-top:96px}
@media(max-width:700px){
 .home-video-hero{min-height:360px}
 .home-video-title{padding:0 7vw}.home-video-title>span{font-size:14px;letter-spacing:.27em;margin-bottom:12px}
 .home-video-title>strong{font-size:clamp(27px,7.5vw,45px);max-width:10em;line-height:1.15}
 .is-home .home-directory{padding:35px 5vw 0;scroll-margin-top:80px}
 .is-home>header nav.open{padding:12px 16px;margin-top:14px;background:#0e0f0df5;border:1px solid #ffffff20}
}

/* Retain the same player offscreen while another page is open. */
#persistent-home:focus{outline:none}
#persistent-home.home-inactive{position:fixed;left:-10000px;top:0;width:100vw;height:100vh;overflow:hidden;pointer-events:none}

/* A wider, stationary hover target; only the arrow brightness changes. */
.home-video-scroll::before{content:"";position:absolute;inset:-18px}
@keyframes home-arrow-breathe{0%,100%{opacity:1}50%{opacity:.35}}
@media(hover:hover) and (pointer:fine){
 .home-video-scroll:hover{animation:home-arrow-breathe 2.4s ease-in-out infinite}
}
.home-video-scroll:focus-visible{animation:home-arrow-breathe 2.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){
 .home-video-scroll:hover,.home-video-scroll:focus-visible{animation:none;opacity:.65}
}
