.film-hero{background:#050608;min-height:100vh;min-height:100svh;display:flex;align-items:center}.film-hero-backdrop{position:absolute;inset:0;overflow:hidden;z-index:0}.film-hero-backdrop-img{position:absolute;inset:-8%;width:116%;height:116%;-o-object-fit:cover;object-fit:cover;filter:blur(60px) saturate(115%);opacity:.32;transform:scale(1.08) translateZ(0)}.film-hero-backdrop-veil{position:absolute;inset:0;background:linear-gradient(180deg,#0506088c,#050608bf,#050608f2),radial-gradient(ellipse at 50% 50%,transparent 0%,rgba(5,6,8,.4) 80%)}.film-poster-frame{position:relative;width:100%;max-width:22rem;aspect-ratio:2 / 3;border-radius:.75rem;overflow:hidden;box-shadow:0 30px 60px -20px #000000b3,0 0 0 1px #ffffff0f}.film-poster-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.film-credit-line{font-size:.78rem;text-transform:uppercase;letter-spacing:.32em;font-weight:600;color:#ffffff8c}.filmography-scroll{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1.5rem;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;scroll-padding-left:1.5rem;scrollbar-width:thin}@media (min-width: 1024px){.filmography-scroll{margin-left:-3rem;margin-right:-3rem;padding-left:3rem;padding-right:3rem;scroll-padding-left:3rem}}.film-card{flex:0 0 280px;min-width:280px;scroll-snap-align:start}.film-card-poster{position:relative;width:100%;aspect-ratio:4 / 5;border-radius:.85rem;overflow:hidden;background:#0f1014;box-shadow:0 10px 30px -16px #00000080;transition:transform .45s cubic-bezier(.4,0,.2,1),box-shadow .45s ease}.film-card:hover .film-card-poster{transform:translateY(-4px);box-shadow:0 18px 40px -16px #000000a6}.film-card-poster-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.film-card-poster-placeholder{position:relative;width:100%;height:100%;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:1.4rem;color:#ffffffd9}.film-card-poster-noise{position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,transparent 0,transparent 2px,rgba(255,255,255,.018) 2px,rgba(255,255,255,.018) 3px);mix-blend-mode:overlay;pointer-events:none}.film-card-poster-meta{position:relative;z-index:1}.film-card-poster-year{font-family:SF Mono,JetBrains Mono,Menlo,Monaco,Consolas,monospace;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#f5a524;opacity:.85;margin-bottom:.4rem;font-variant-numeric:tabular-nums}.film-card-poster-title{font-size:1.35rem;font-weight:600;line-height:1.1;letter-spacing:-.015em;color:#ffffffeb}.role-tile{--tile-glow: #5B8DEF;position:relative;overflow:hidden;border-radius:1rem;border:1px solid color-mix(in srgb,var(--tile-glow) 28%,rgba(255,255,255,.12));background-size:cover;background-position:center;min-height:200px;width:100%;max-width:26rem;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -22px color-mix(in srgb,var(--tile-glow) 70%,transparent),0 0 24px -10px color-mix(in srgb,var(--tile-glow) 45%,transparent);transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease,border-color .4s ease}html.dark .role-tile{border-color:color-mix(in srgb,var(--tile-glow) 32%,rgba(255,255,255,.16))}.role-tile:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--tile-glow) 55%,rgba(255,255,255,.2));box-shadow:0 28px 56px -22px color-mix(in srgb,var(--tile-glow) 80%,transparent),0 0 42px -8px color-mix(in srgb,var(--tile-glow) 60%,transparent)}.role-tile-veil{position:absolute;inset:0;background:linear-gradient(180deg,#00000073,#000000b3)}.role-tile-front,.role-tile-veil{transition:opacity .3s ease}.role-tile-hover{position:absolute;inset:0;background:#fbfbfd;color:#1d1d1f;opacity:0;display:flex;align-items:center;justify-content:center;padding:1rem;transition:opacity .35s ease;z-index:40;pointer-events:none}html.dark .role-tile-hover{background:#050505;color:#f5f5f7}.role-tile-hover ul,.role-tile-hover li{color:inherit}@media (hover: hover) and (pointer: fine){.role-tile:hover .role-tile-front,.role-tile:focus-within .role-tile-front{opacity:0}.role-tile:hover .role-tile-veil,.role-tile:focus-within .role-tile-veil{opacity:0}.role-tile:hover .role-tile-hover,.role-tile:focus-within .role-tile-hover{opacity:1;pointer-events:auto}}@media (max-width: 1023px){.role-tile{align-items:flex-start;justify-content:flex-start;min-height:220px}.role-tile-front{justify-content:flex-start;padding-top:1.25rem;padding-bottom:1.25rem}}.film-detail-poster{position:relative;border-radius:1rem;overflow:hidden;box-shadow:0 30px 60px -28px #00000073,0 0 0 1px #5b8def14}html.dark .film-detail-poster{box-shadow:0 30px 60px -28px #000c,0 0 0 1px #ffffff0f}.people-card{position:relative;aspect-ratio:4 / 5;border-radius:.6rem;overflow:hidden;background:#0f1014;box-shadow:inset 0 0 0 1px #ffffff0f;transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease}.people-card:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px #ffffff1f,0 16px 34px -20px #0009}.people-card-img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.4,0,.2,1)}.people-card:hover .people-card-img{transform:scale(1.04)}.people-card-ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#1b1d24,#0f1014 65%);color:#ffffff57;font-size:1.4rem;font-weight:600;letter-spacing:.05em}.people-card-veil{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.55) 75%,rgba(0,0,0,.88) 100%);pointer-events:none}.people-card-meta{position:absolute;left:0;right:0;bottom:0;padding:.6rem .65rem;z-index:2}.people-card-name{font-size:.78rem;font-weight:600;color:#fff;line-height:1.22;letter-spacing:-.01em;margin-bottom:.15rem}.people-card-role{font-size:.58rem;text-transform:uppercase;letter-spacing:.14em;color:#ffffff8c;font-weight:600;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-link{display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center;transition:transform .3s ease}.quick-link:hover{transform:translateY(-3px)}.quick-link i{transition:color .3s ease,transform .3s ease}.quick-link:hover i{color:#f5a524}.quick-link-label{font-size:.8rem;color:#1d1d1f;opacity:.7;font-weight:500;letter-spacing:.01em}html.dark .quick-link-label{color:#f5f5f7;opacity:.7}
