@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#09090c;--panel:#121217;--red:#d52332;--text:#f1f0ee;--muted:#aaa8ac;--line:#353038}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;border-bottom:1px solid #ffffff16;background:#09090ce8;position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:12px;font-family:'Barlow Condensed',sans-serif;font-size:21px;font-weight:900;letter-spacing:1px;line-height:.85}.brand small{display:block;font-size:11px;letter-spacing:3px;color:#c3bfc1;margin-top:7px}.brandmark{font-size:27px;border:2px solid #8e1b24;padding:9px 7px;letter-spacing:-3px}.brandmark span{color:var(--red);font-size:12px;margin:0 2px}nav{display:flex;align-items:center;gap:28px}nav a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}nav a:hover,.text-link:hover{color:#ff4d58}.nav-btn{background:var(--red);border:0;color:white;font-size:11px;font-weight:800;letter-spacing:1px;padding:15px 18px}.menu-toggle{display:none;background:transparent;border:0;color:white;font-size:25px}.hero{min-height:720px;position:relative;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 82% 42%,#4b141c 0%,#190d13 32%,#09090c 68%)}.hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 4px,#00000012 5px 6px);pointer-events:none}.hero-glow{position:absolute;right:-10%;bottom:-48%;width:80%;height:90%;background:#8e192c44;filter:blur(120px);transform:rotate(-20deg)}.moon{position:absolute;right:11%;top:16%;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle at 40% 38%,#bb6570,#6a222e 42%,#210f19 72%);box-shadow:0 0 100px #a62b3944,0 0 230px #9e1b2525;opacity:.75}.moon:after{content:"";position:absolute;inset:-15%;background:linear-gradient(135deg,transparent 20%,#09090c99 48%,transparent 80%);transform:rotate(35deg)}.hero-inner{position:relative;z-index:2;width:min(1200px,89%);margin:auto}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:800;color:#f04a55}.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:clamp(76px,10vw,155px);letter-spacing:-2px;line-height:.83;margin:25px 0}.hero h1 em{font-style:normal;color:#d8d5d6}.hero h1 strong{color:#d92334}.hero-copy{max-width:550px;line-height:1.9;color:#c9c1c3;font-size:15px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:17px 23px;border:1px solid #777079;background:transparent;color:white;font-size:11px;letter-spacing:1.4px;font-weight:800;text-align:center;min-height:50px}.button.primary{background:var(--red);border-color:var(--red)}.button:hover,.nav-btn:hover{filter:brightness(1.22)}.hero-foot{display:flex;justify-content:space-between;max-width:90%;margin-top:100px;font-size:10px;letter-spacing:2px;color:#aaa0a5}.ticker{overflow:hidden;background:#b31e2c;padding:16px;text-align:center;font-family:'Barlow Condensed';font-size:20px;font-weight:800;letter-spacing:5px;white-space:nowrap}.ticker b{padding:0 30px;color:#25080e}.section{padding:110px max(5.5%,calc((100vw - 1200px)/2));scroll-margin-top:80px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-head h2{font:900 clamp(48px,6vw,80px)/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1px;margin:16px 0 0}.section-head h2 span{color:var(--red)}.section-head>p{max-width:390px;color:var(--muted);font-size:14px;line-height:1.9}.film-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.film-card{background:#15151a;border:1px solid #29252b;min-width:0}.film-art{height:320px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.art-one{background:radial-gradient(ellipse at 50% 45%,#563942,#140c12 42%,#050506 85%)}.art-two{background:linear-gradient(145deg,#21171b,#621e2a 48%,#07080d)}.art-three{background:radial-gradient(circle at 50% 70%,#34252c,#120d19 55%,#08080b)}.art-symbol{font:900 110px 'Barlow Condensed';color:#d9c6c9;text-shadow:0 0 60px #d4233855}.art-one .art-symbol{font-size:170px;color:#bba6ad}.art-label{position:absolute;bottom:25px;font-size:10px;letter-spacing:3px;color:#b4a3a7}.film-info{padding:25px}.chip{font-size:10px;letter-spacing:1.2px;color:#ed6670;font-weight:800}.film-info h3,.casting-card h3,.contact-card h3,.portfolio-layout h3{font:800 35px 'Barlow Condensed';margin:12px 0}.film-info p,.casting-card p,.contact-card p,.portfolio-layout p{color:var(--muted);font-size:13px;line-height:1.9}.text-link{border:0;background:none;color:white;padding:10px 0;font-size:11px;font-weight:800;letter-spacing:1.4px}.fine-print,.muted{color:#89848a;font-size:12px}.dark-panel{background:#111116}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-box{padding:32px;background:#1a191f;border:1px solid #343039}.feature-icon{font-size:36px;color:#e53b4b}.feature-box h3,.submissions h3{font:800 28px 'Barlow Condensed';letter-spacing:.5px}.feature-box p{color:var(--muted);font-size:13px;line-height:1.8}.community-action{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.submissions{margin-top:55px;border-top:1px solid #393039;padding-top:20px}.submissions-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.approved-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.approved-item{padding:20px;background:#222027;border:1px solid #39333a}.approved-item h4{margin:0 0 8px}.approved-item p{font-size:12px;color:var(--muted)}.approved-item a{color:#ff707a;font-size:12px;overflow-wrap:anywhere}.casting-card{background:linear-gradient(100deg,#211519,#121217);border:1px solid #54252e;padding:38px;display:flex;justify-content:space-between;align-items:center;gap:30px}.casting-card>div{max-width:650px}.portfolio-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.portfolio-art{min-height:360px;background:radial-gradient(circle at 45% 50%,#54202d,#130f16 50%,#08080b);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lens{width:220px;height:220px;border:22px solid #18171d;box-shadow:0 0 0 4px #3e333b,0 0 0 13px #17131a,inset 0 0 45px #a22341;border-radius:50%;background:radial-gradient(circle at 60% 35%,#8d3b5a,#130f24 35%,#06070c 70%)}.portfolio-art>span{position:absolute;bottom:20px;letter-spacing:3px;font-size:10px}.skill-tags{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.skill-tags span{font-size:10px;border:1px solid #50434c;padding:10px;color:#ddd}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-card{padding:35px;border:1px solid #3d333a;background:#151318}footer{padding:65px 5.5% 25px;background:#050506}.footer-brand{font:900 46px 'Barlow Condensed'}.footer-brand span{color:var(--red)}footer>p{color:#aaa;letter-spacing:4px;font-size:11px}.footer-bottom{border-top:1px solid #28232a;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#888}.footer-admin{border:0;background:none;color:#777;font-size:10px;letter-spacing:1px}dialog{width:min(600px,calc(100vw - 30px));max-height:90vh;overflow:auto;background:#151419;color:white;border:1px solid #6b2934;padding:30px;box-shadow:0 30px 100px #000}dialog::backdrop{background:#000c;backdrop-filter:blur(6px)}.dialog-head{display:flex;justify-content:space-between;align-items:start}.dialog-head h2{font:800 38px 'Barlow Condensed';margin:8px 0 25px}.dialog-head button{border:0;background:transparent;color:white;font-size:22px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:11px;letter-spacing:1px;font-weight:700}.field input,.field textarea,.field select{background:#242128;border:1px solid #50434c;color:white;padding:13px;width:100%;border-radius:0}.field textarea{min-height:95px;resize:vertical}.form-note{font-size:12px;line-height:1.7;color:#bbb}.form-success{padding:20px;background:#1b2921;border:1px solid #42694c;color:#d4f4d8;line-height:1.7}.review-card{border:1px solid #51414a;padding:15px;margin:12px 0}.review-card p{color:#aaa;font-size:12px}.review-card button{margin:4px 8px 4px 0}.small-btn{padding:9px 12px;border:1px solid #777;color:white;background:#333;font-size:11px}.small-btn.approve{background:#215b3a}.small-btn.reject{background:#7a2430}#toast{position:fixed;bottom:20px;right:20px;z-index:100;background:#2b2027;color:white;padding:14px 20px;border-left:3px solid var(--red);display:none;max-width:360px;font-size:13px}
@media(max-width:900px){.film-grid{grid-template-columns:1fr 1fr}.film-card.feature{grid-column:span 2}.moon{right:-80px;opacity:.4}.section-head{align-items:start;flex-direction:column;gap:5px}.section-head>p{max-width:600px}.portfolio-layout{gap:25px}nav{gap:13px}}@media(max-width:650px){.topbar{height:70px;padding:0 5%}.brand{font-size:17px}.brandmark{font-size:20px;padding:7px}.menu-toggle{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#141217;padding:22px;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{padding:9px}.hero{min-height:660px}.hero h1{font-size:clamp(61px,15vw,96px)}.hero-copy{font-size:13px}.hero-foot{margin-top:75px}.moon{width:250px;height:250px;right:-100px;top:18%}.ticker{font-size:15px}.section{padding:75px 5%}.film-grid,.feature-grid,.contact-grid,.portfolio-layout,.approved-list{grid-template-columns:1fr}.film-card.feature{grid-column:auto}.film-art{height:270px}.casting-card{align-items:start;flex-direction:column;padding:25px}.submissions-heading{align-items:start;flex-direction:column}.footer-brand{font-size:34px}.footer-bottom{flex-direction:column}.button{width:100%}.actions,.community-action{flex-direction:column}.section-head h2{font-size:55px}}

/* Studio admin dashboard */
[hidden]{display:none!important}.admin-nav{background:#741923;border:1px solid #e94a58}.admin-action{background:#781c2a;border-color:#e44957}.admin-intro{border:1px solid #622632;background:#21151c;padding:18px;margin-bottom:22px}.admin-intro p{font-size:12px;color:#c9bfc3;line-height:1.6}.admin-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.admin-stats span{padding:12px;border:1px solid #49343d;font-size:11px;color:#c8bcc1}.admin-stats b{display:block;font-size:25px;color:white;margin-bottom:5px}.review-card{overflow-wrap:anywhere}.review-card a{color:#ff737e;font-size:12px}dialog:has(.admin-intro){width:min(950px,calc(100vw - 30px))}#dialog-body h3{margin-top:30px;border-bottom:1px solid #42323b;padding-bottom:12px}@media(max-width:650px){.admin-stats{grid-template-columns:1fr 1fr}}

/* Version 5 talent directory */
.directory-tools{display:flex;gap:1rem;flex-wrap:wrap;margin:1.2rem 0}.directory-tools label{flex:1;min-width:190px;font-weight:700;font-size:.85rem}.directory-tools input,.directory-tools select{display:block;width:100%;padding:.8rem;background:#17151a;border:1px solid #51404a;color:#fff;margin-top:.4rem;border-radius:3px}.privacy-choice{display:flex;align-items:flex-start;line-height:1.5;cursor:pointer}.approved-item .actions{margin-top:1rem}.contact-creator{cursor:pointer}@media(max-width:600px){.directory-tools{display:block}.directory-tools label{display:block;margin-bottom:1rem}}


/* Step 16: compact, keyboard-accessible navigation */
.topbar{gap:18px}
.topbar nav{gap:clamp(9px,1.1vw,20px);min-width:0}
.topbar nav>a,.topbar nav>.nav-btn,.nav-group>summary{white-space:nowrap}
.nav-group{position:relative;flex-shrink:0}
.nav-group>summary{list-style:none;cursor:pointer;color:var(--text);font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:10px 0}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary::after{content:" ▾";color:#e46a79}
.nav-group[open]>summary{color:#ffabb4}
.nav-submenu{position:absolute;top:calc(100% + 12px);left:0;min-width:235px;max-width:min(90vw,330px);max-height:min(70vh,520px);overflow:auto;padding:10px;background:#171218;border:1px solid #68404b;box-shadow:0 18px 35px #0009;display:flex;flex-direction:column;gap:2px;border-radius:7px;z-index:30}
.nav-submenu a{display:block;padding:11px 12px;font-size:12px;line-height:1.35;border-radius:4px}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#46232e;color:#fff}
.nav-group summary:focus-visible,.topbar a:focus-visible,.topbar button:focus-visible{outline:2px solid #ff7e90;outline-offset:4px}
@media(max-width:1150px){.topbar{padding-left:3%;padding-right:3%}.topbar nav{gap:10px}.topbar nav>a,.topbar nav>.nav-btn,.nav-group>summary{font-size:11px}}
@media(max-width:1000px){.menu-toggle{display:block}.topbar nav{display:none;position:absolute;top:100%;left:0;right:0;background:#141217;border-bottom:1px solid #63404a;padding:16px 5%;flex-direction:column;align-items:stretch;max-height:calc(100dvh - 70px);overflow:auto;gap:5px}.topbar nav.open{display:flex}.topbar nav>a,.topbar nav>.nav-btn,.nav-group>summary{padding:12px 8px;font-size:13px}.nav-group{width:100%}.nav-submenu{position:static;max-width:none;max-height:none;min-width:0;box-shadow:none;margin:4px 0 8px 8px;padding:4px 10px}.nav-submenu a{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Original production artwork: image overlays retain existing fallback artwork until assets are uploaded. */
.film-art .film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:2;display:block}.film-art .film-poster[hidden],.portfolio-art .studio-art[hidden]{display:none}.film-art:has(.film-poster:not([hidden])) .art-symbol,.film-art:has(.film-poster:not([hidden])) .art-label{visibility:hidden}.portfolio-art .studio-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}.portfolio-art:has(.studio-art:not([hidden])) .lens,.portfolio-art:has(.studio-art:not([hidden]))>span{visibility:hidden}

/* Show the complete original posters without cropping titles or artwork. */
.film-art:has(.film-poster:not([hidden])){background:#08080c;aspect-ratio:4/5;height:auto;min-height:0}
.film-art .film-poster{object-fit:contain;object-position:center;background:#08080c}
.portfolio-art .studio-art{object-fit:contain;background:#08080c}
@media(max-width:700px){.film-art:has(.film-poster:not([hidden])){height:auto;aspect-ratio:4/5}}

/* Poster gallery v2: enforce portrait dimensions for complete movie artwork. */
.film-grid .film-card .film-art:has(img.film-poster:not([hidden])){height:auto!important;min-height:0!important;aspect-ratio:3/4!important;display:block!important;position:relative!important;overflow:hidden!important;background:#08080c!important}
.film-grid .film-card .film-art img.film-poster:not([hidden]){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;display:block!important}
@media(max-width:700px){.film-grid .film-card .film-art:has(img.film-poster:not([hidden])){aspect-ratio:3/4!important}}

/* Equal-width production cards and equal-height poster frames. Keep all artwork visible. */
@media(min-width:701px){.film-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.film-grid .film-card.feature{grid-column:auto!important}}
.film-grid .film-card{display:flex;flex-direction:column;min-width:0}
.film-grid .film-card .film-art:has(img.film-poster:not([hidden])){width:100%;aspect-ratio:3/4!important;flex:none}
.film-grid .film-card .film-copy{flex:1}
