/* Profiles use the same Inter Tight typography and header gutter as production pages. */
.vf-profile { padding:clamp(112px,10vw,160px) var(--vf-header-inset) 60px; color:#171717; }
.vf-profile :where(h1,h2,h3,p,nav,section,div) { min-width:0; }
.vf-profile :where(h1,h2,h3,p) { color:inherit; }
.vf-profile :where(h1,h2,h3) { font-weight:450; letter-spacing:-.045em; }
.vf-profile-intro { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(30px,6vw,100px); align-items:center; }
.vf-profile-portrait { max-width:460px; width:100%; aspect-ratio:4/5; background:#e4e4df; overflow:hidden; display:grid; place-items:center; }
.vf-profile-portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 25%; }
.vf-profile-initials { font-size:clamp(90px,12vw,180px); line-height:1; font-weight:400; letter-spacing:-.07em; color:#aaa99f; }
.vf-profile-kicker { margin:0 0 24px; font-size:12px; color:#686860!important; }
.vf-profile-heading { container-type:inline-size; }
.vf-profile h1 { font-size:clamp(32px,11.5cqw,86px); line-height:1.08; margin:0; text-wrap:balance; overflow-wrap:break-word; word-break:normal; overflow:visible; }
.vf-profile-role { font-size:clamp(18px,1.7vw,26px); line-height:1.35; margin:20px 0 0; max-width:28ch; color:#686860!important; overflow-wrap:anywhere; }
.vf-profile-brief { margin-top:30px; width:100%; max-width:none; }
.vf-profile-brief p { max-width:none; font-size:18px; line-height:1.55; text-wrap:wrap; }
.vf-profile-links { display:flex; flex-wrap:wrap; gap:14px 24px; margin-top:28px; }
.vf-profile :where(.vf-profile-links a,.vf-profile-jump,.vf-profile-back a,.vf-profile-award-project) { color:inherit; font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.vf-profile-jump { display:inline-flex; align-items:center; gap:12px; margin-top:42px; }
.vf-profile a > span[aria-hidden] { display:inline-block; transition:transform .2s ease; }
.vf-profile a:hover > span[aria-hidden] { transform:translate(2px,-2px); }
.vf-profile a:focus-visible,.vf-credit-person:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.vf-profile-filmography,.vf-profile-awards { margin-top:70px; }
.vf-profile-section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:20px; border-top:1px solid #c9c9c0; padding-top:24px; margin-bottom:28px; }
.vf-profile-section-heading h2 { margin:0; font-size:clamp(28px,3vw,44px); line-height:1.1; }
.vf-profile-section-heading > span { font-size:13px; color:#686860; flex-shrink:0; }
.vf-profile-projects { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:38px 26px; }
.vf-profile-projects .vf-cinema-card { width:100%; margin:0; }
.vf-profile-projects .vf-poster-credit-mobile { display:none; }
.vf-profile-project[hidden],.vf-profile-project-toggle[hidden] { display:none; }
.vf-profile-projects .vf-cinema-card-caption { align-items:flex-start; gap:12px; }
.vf-profile-projects .vf-cinema-card-caption :is(h2,h3) { flex:1; min-width:0; line-height:1.3; white-space:normal; overflow:visible; overflow-wrap:break-word; }
.vf-profile-projects .vf-cinema-card-caption > span { flex-shrink:0; }
.vf-profile-projects .has-editorial-cover .vf-poster-title { font-size:clamp(18px,10cqw,64px); line-height:1.15; }
.vf-profile-projects .has-editorial-cover .vf-poster-title > span { display:block; min-width:0; max-width:100%; -webkit-line-clamp:unset; white-space:normal; overflow:visible; overflow-wrap:normal; word-break:normal; }
.vf-profile-project-toggle { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:46px; padding:12px 20px; margin-top:26px; border:1px solid #a9a99e; border-radius:3px; color:inherit; background:transparent; font:inherit; font-size:13px; cursor:pointer; scroll-margin-block:110px; transition:background .2s ease,border-color .2s ease; }
.vf-profile-project-toggle:hover { background:#eeeee9; border-color:#171717; }
.vf-profile-project-toggle:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.vf-profile-project-toggle > span[aria-hidden] { transition:transform .2s ease; }
.vf-profile-project-toggle[aria-expanded="true"] > span[aria-hidden] { transform:rotate(180deg); }
.vf-profile-project-role { font-size:13px; line-height:1.5; color:#686860!important; margin:12px 0 0; overflow-wrap:anywhere; }
.vf-profile-awards ul { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 45px; }
.vf-profile-awards li { display:grid; grid-template-columns:110px minmax(0,1fr); gap:24px; padding:24px 0; border-bottom:1px solid #d4d4cc; align-items:center; }
.vf-profile-award-logo { --vf-laurel-display-height:64px; display:grid; place-items:center; width:110px; min-height:100px; background:#eeeee9; padding:10px; }
.vf-profile-award-logo .vf-laurel-graphic { --vf-award-fitted-height:min(64px,calc(90px / var(--vf-laurel-ratio,1))); width:calc(var(--vf-award-fitted-height) * var(--vf-laurel-ratio,1)); height:var(--vf-award-fitted-height); }
.vf-profile-award-logo img { filter:brightness(0); max-width:100%; }
.vf-profile-awards h3 { font-size:20px; line-height:1.2; margin:0 0 8px; }
.vf-profile-awards li p { font-size:13px; line-height:1.5; margin:0 0 10px; }
.vf-profile-award-meta,.vf-profile-awards-intro,.vf-profile-empty { color:#686860!important; }
.vf-profile-awards-intro { font-size:15px; line-height:1.5; }
.vf-profile-back { display:flex; flex-wrap:wrap; gap:24px; padding-top:24px; margin-top:65px; border-top:1px solid #c9c9c0; }
.vf-cinema-credits .vf-credit-person { color:inherit; text-decoration:underline; text-decoration-color:#b6b6ad; text-underline-offset:4px; transition:text-decoration-color .2s; }
.vf-cinema-credits .vf-credit-person:hover { text-decoration-color:currentColor; }
.vf-cinema-credits dd { overflow-wrap:anywhere; }
.vf-person > a { display:block; color:inherit; text-decoration:none; }
.vf-person > a:focus-visible { outline:2px solid currentColor; outline-offset:6px; }
@media(max-width:900px) { .vf-profile-awards ul { grid-template-columns:minmax(0,1fr); } .vf-profile-projects { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .vf-profile { padding-top:100px; } .vf-profile-intro { grid-template-columns:minmax(0,1fr); gap:26px; } .vf-profile-portrait { max-width:100%; aspect-ratio:4/4.5; } .vf-profile-kicker { margin-bottom:16px; } .vf-profile-role { margin-top:14px; } .vf-profile-jump { margin-top:24px; } .vf-profile-filmography,.vf-profile-awards { margin-top:45px; } .vf-profile-projects { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 12px; } .vf-profile-awards li { grid-template-columns:84px minmax(0,1fr); gap:18px; } .vf-profile-award-logo { width:84px; } .vf-profile-award-logo .vf-laurel-graphic { --vf-award-fitted-height:min(54px,calc(64px / var(--vf-laurel-ratio,1))); } .vf-profile-section-heading h2 { font-size:28px; } .vf-profile-section-heading > span { font-size:11px; } }
@media(max-width:600px) {
 .vf-profile-projects .vf-cinema-card-caption { flex-direction:column; gap:4px; padding-top:10px; padding-bottom:0; }
 .vf-profile-projects .vf-cinema-card-caption :is(h2,h3) { font-size:14px; }
 .vf-profile-projects .vf-poster-imprint { flex-wrap:wrap; gap:4px 6px; padding:12px 10px; font-size:7px; }
 .vf-profile-projects .vf-poster-title { padding:16px 10px 20px; }
 .vf-profile-projects .vf-cinema-poster.has-editorial-cover .vf-poster-bottom { gap:6px; padding:10px; font-size:8px; }
 .vf-profile-projects .vf-poster-bottom > span:first-child { flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
 .vf-profile-projects .vf-poster-bottom > span:last-child { flex:none; }
 .vf-profile-projects .vf-poster-credit-full { display:none; }
 .vf-profile-projects .vf-poster-credit-mobile { display:inline; }
 .vf-profile-project-role { margin-top:8px; font-size:11px; line-height:1.45; }
}
@media(prefers-reduced-motion:reduce) { .vf-profile a > span[aria-hidden],.vf-credit-person,.vf-profile-project-toggle,.vf-profile-project-toggle > span[aria-hidden] { transition:none; } }
