/* The cast bridges Melli's cinematic introduction and the real film portfolio. */
.home-casting{padding:90px var(--studio-gutter);background:var(--paper);color:var(--ink);border-top:1px solid var(--line);scroll-margin-top:110px}
.home-casting-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:end;margin-bottom:38px}
.home-casting-heading .eyebrow,.models-welcome-caption .eyebrow{color:var(--red);margin:0 0 18px}
.home-casting-heading h2{font-size:clamp(42px,5vw,74px);font-weight:450;line-height:1.08;letter-spacing:-.05em;margin:0}
.home-casting-heading h2 em{font-family:'Instrument Serif',Georgia,serif;font-weight:400;color:var(--red)}
.home-casting-heading>div>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);max-width:460px;margin:0 0 22px}
.casting-library-link{display:inline-flex;align-items:center;min-height:48px;padding:10px 0;color:var(--red);border-bottom:1px solid var(--red);font-size:15px;line-height:1.5}
.casting-studio-shot{display:block;width:100%;margin:0;border-radius:4px;overflow:hidden;background:#e8e0d5}
.casting-studio-shot picture,.casting-studio-shot img{display:block;width:100%}
.casting-studio-shot img{height:auto;max-width:100%;object-fit:contain}
.casting-image-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.home-casting-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px;border-top:1px solid var(--line)}
.home-casting-paths>a{display:block;min-width:0;padding:28px 28px 8px 0;color:var(--ink)}
.home-casting-paths>a+a{padding-left:28px;border-left:1px solid var(--line)}
.casting-path-number{font-size:12px;letter-spacing:.06em;color:var(--red)}
.home-casting-paths h3{font-family:'Instrument Serif',Georgia,serif;font-size:32px;line-height:1.2;letter-spacing:-.025em;font-weight:400;margin:15px 0 12px}
.home-casting-paths p{max-width:335px;font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.home-casting-paths a:hover h3,.home-casting-paths a:focus-visible h3{color:var(--red)}
.home-casting a:focus-visible,.models-welcome a:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.models-page .models-main{padding-top:124px}
.models-welcome{margin-bottom:68px}
.models-welcome-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 0}
.models-welcome-caption .eyebrow{margin-bottom:8px;font-size:12px;letter-spacing:.13em}
.models-welcome-caption p:not(.eyebrow){margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.models-welcome-caption a{flex:none}
html[lang=ko] .home-casting-heading h2{font-size:clamp(34px,4.2vw,62px);line-height:1.25}
html[lang=ko] .home-casting-heading h2 em,html[lang=ko] .home-casting-paths h3{font-family:inherit;font-style:normal}
html[lang=ko] .home-casting-paths h3{font-size:24px;line-height:1.4}
@media(min-width:1800px){.home-casting{padding-inline:max(var(--studio-gutter),calc((100vw - 1600px)/2 + 80px))}}
@media(max-width:900px){.home-casting{padding:65px 5vw;scroll-margin-top:85px}.home-casting-heading{gap:30px;align-items:start}.home-casting-heading h2{font-size:48px}.home-casting-heading>div>p:not(.eyebrow){font-size:15px}.home-casting-paths>a{padding-right:20px}.home-casting-paths>a+a{padding-left:20px}.home-casting-paths h3{font-size:27px}.models-page .models-main{padding-top:98px}.models-welcome{margin-bottom:50px}}
@media(max-width:600px){.home-casting{padding:52px 22px}.home-casting-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.home-casting-heading h2{font-size:44px}.home-casting-heading .eyebrow{font-size:12px;margin-bottom:16px}.home-casting-heading>div>p:not(.eyebrow){margin-bottom:13px}.home-casting-paths{grid-template-columns:1fr;margin-top:25px}.home-casting-paths>a,.home-casting-paths>a+a{border-left:0;border-bottom:1px solid var(--line);padding:23px 0;display:grid;grid-template-columns:30px 1fr;gap:0 12px}.casting-path-number{padding-top:6px}.home-casting-paths h3{font-size:29px;margin:0 0 8px}.home-casting-paths p{grid-column:2;max-width:none}.models-page .models-main{padding-top:94px}.models-welcome{margin-bottom:38px}.models-welcome-caption{display:block;padding-top:18px}.models-welcome-caption .eyebrow{font-size:12px}.models-welcome-caption p:not(.eyebrow){font-size:15px}.models-welcome-caption a{margin-top:10px}.casting-image-note{font-size:12px}html[lang=ko] .home-casting-heading h2{font-size:35px}}
@media(max-width:1100px) and (max-height:600px) and (orientation:landscape){.home-casting{padding:42px max(28px,5vw)}.home-casting-heading{grid-template-columns:1fr 1fr;gap:35px;margin-bottom:25px}.home-casting-heading h2{font-size:37px}.home-casting-heading .eyebrow{font-size:12px;margin-bottom:12px}.home-casting-heading>div>p:not(.eyebrow){font-size:14px;margin-bottom:10px}.home-casting-paths{grid-template-columns:repeat(3,minmax(0,1fr))}.home-casting-paths>a,.home-casting-paths>a+a{display:block;border-bottom:0;padding:22px 20px 0 0}.home-casting-paths>a+a{padding-left:20px;border-left:1px solid var(--line)}.home-casting-paths h3{font-size:26px;margin:10px 0}.home-casting-paths p{font-size:14px}.models-page .models-main{padding-top:78px}.models-welcome{margin-bottom:35px}.models-welcome-caption{display:flex;align-items:center;padding-top:15px}.models-welcome-caption a{margin-top:0}.models-welcome-caption p:not(.eyebrow){font-size:14px}html[lang=ko] .home-casting-heading h2{font-size:31px}html[lang=ko] .home-casting-paths h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){.casting-studio-shot{scroll-behavior:auto}}

/* A short pinned dissolve introduces the first row; the rest stays in normal flow. */
.cast-profile-layer[hidden],.cast-rest-grid[hidden]{display:none}
.cast-roster-heading{display:flex;align-items:baseline;justify-content:space-between;gap:22px;margin-bottom:22px}
.cast-roster-heading h3{font-size:24px;font-weight:450;line-height:1.3;letter-spacing:-.03em;margin:0}
.cast-roster-heading p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}
.home-casting .model-card h4{font-size:20px;line-height:1.3;font-weight:500;letter-spacing:-.025em;margin:14px 0 5px}
.home-casting .model-card>p{font-size:13px;line-height:1.6}
.home-casting .model-open{font-size:13px}
.cast-profile-layer{margin-top:30px}
.home-casting .cast-rest-grid{margin-top:var(--cast-row-gap,34px)}
.cast-scroll-enabled .cast-scroll-track{height:calc(var(--cast-stage-height,540px) + var(--cast-scroll-distance,320px));position:relative}
.cast-scroll-enabled .cast-scroll-stage{position:sticky;top:var(--cast-pin-top,118px);height:var(--cast-stage-height,540px);isolation:isolate}
.cast-scroll-enabled .cast-group-layer{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:var(--cast-group-opacity,1);will-change:opacity}
.cast-scroll-enabled .cast-profile-layer{position:relative;margin-top:0;opacity:var(--cast-profile-opacity,0);transform:translateY(var(--cast-profile-shift,14px));will-change:opacity,transform}
.cast-scroll-enabled .cast-rest-grid{margin-top:calc(var(--cast-row-gap,34px) - var(--cast-stage-extra,0px));opacity:var(--cast-profile-opacity,0);transform:translateY(var(--cast-rest-shift,0px));will-change:opacity,transform}
.cast-group-layer[inert],.cast-profile-layer[inert]{pointer-events:none}
.cast-group-layer .casting-studio-shot{align-self:center}
@media(max-width:900px){.cast-roster-heading h3{font-size:23px}.cast-roster-heading p{font-size:13px}}
@media(max-width:600px){.cast-roster-heading{display:block;margin-bottom:18px}.cast-roster-heading h3{font-size:23px}.cast-roster-heading p{font-size:13px;margin-top:8px}.home-casting .model-card h4{font-size:17px;margin:12px 0 4px}.home-casting .model-card>p{font-size:12px}.home-casting .model-open{font-size:12px}.cast-rest-grid{margin-top:24px}}
@media(max-width:1100px) and (max-height:600px) and (orientation:landscape){.home-casting .model-photo{aspect-ratio:4/3}.cast-group-layer .casting-image-note{text-align:center}.cast-roster-heading{display:flex;margin-bottom:14px;gap:15px}.cast-roster-heading h3{font-size:20px}.cast-roster-heading p{font-size:12px;margin:0}.home-casting .model-card h4{font-size:17px;margin:9px 0 3px}.home-casting .model-card>p{font-size:12px}.home-casting .model-open{font-size:11px;min-height:36px;bottom:8px;left:8px;right:8px;padding:7px}.cast-rest-grid{margin-top:24px}}
@media(max-width:1100px) and (max-height:300px) and (orientation:landscape){.home-casting .model-photo{aspect-ratio:16/9}.cast-roster-heading p,.cast-first-grid .model-card>p{display:none}.cast-roster-heading h3{font-size:18px}.cast-roster-heading{margin-bottom:10px}.home-casting .model-open{min-height:30px;font-size:10px;padding:4px 7px}}
@media(prefers-reduced-motion:reduce){.cast-rest-grid{transition:none!important}}
