/* Rokhsareh Ghaemmaghami — site styles
   Direction A "Cinematic / Dark", split hero.  Build 2026-06-10 */

:root{
  --bg:#0d0c0b;
  --bg2:#1a1815;
  --line:#211f1c;
  --line2:#2a2825;
  --text:#ece8e2;
  --muted:#b7b1a7;
  --dim:#8d877d;
  --gold:#e0a64e;
  --blue:#6fb0c4;
  --maxw:1180px;
  --sans:"Helvetica Neue",Arial,system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
em{font-style:italic}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-999px}
.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:8px 12px;z-index:99}

/* ---------- nav ---------- */
.nav{display:flex;justify-content:space-between;align-items:center;padding:22px 0}
.nav .brand{font-size:15px;letter-spacing:.04em}
.nav .brand b{font-weight:600}
.nav .brand span{display:block;font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--dim);margin-top:4px}
.nav ul{display:flex;gap:30px;list-style:none;flex-wrap:wrap}
.nav ul a{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:4px 0;border-bottom:1px solid transparent}
.nav ul a:hover,.nav ul a[aria-current="page"]{color:#fff;border-bottom-color:var(--gold)}
/* dropdown */
.nav .has-sub{position:relative;padding-bottom:8px;margin-bottom:-8px}
.nav .has-sub>a::after{content:"";display:inline-block;margin-left:7px;border:4px solid transparent;border-top-color:currentColor;position:relative;top:2px;opacity:.75}
.nav .sub{position:absolute;top:100%;left:-14px;background:#15140f;border:1px solid var(--line2);border-radius:4px;min-width:230px;padding:8px 0;display:none;flex-direction:column;gap:0;z-index:60;box-shadow:0 18px 40px rgba(0,0,0,.5)}
.nav .has-sub:hover .sub,.nav .has-sub:focus-within .sub{display:flex}
.nav .sub li{display:block}
.nav .sub a{display:block;padding:10px 18px;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);border:0;white-space:nowrap}
.nav .sub a:hover,.nav .sub a:focus{color:#fff;background:#211f17;border:0}
.nav .sub .div{border-top:1px solid var(--line);margin:6px 0}
.nav .sub a small{display:block;text-transform:none;letter-spacing:0;color:var(--dim);font-size:10px;margin-top:2px}
@media(max-width:760px){
  .nav .sub{position:static;display:flex;box-shadow:none;border:0;background:transparent;min-width:0;padding:4px 0 4px 14px}
  .nav .has-sub>a::after{display:none}
  .nav .sub a{padding:7px 0}
}

/* ---------- split hero (home) ---------- */
.hero .grid{display:grid;grid-template-columns:1fr 1fr;min-height:74vh}
.hero .pane-img{display:flex;align-items:center;justify-content:center;background:var(--bg);padding:28px}
.hero .pane-img img{width:auto;height:auto;max-width:100%;max-height:80vh;object-fit:contain}
.hero .pane-txt{display:flex;flex-direction:column;justify-content:center;padding:0 6vw}
.hero .role{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.hero h1{font-size:clamp(32px,4.6vw,60px);line-height:1.02;font-weight:600;letter-spacing:-.01em}
.hero .meta{margin-top:18px;font-size:13px;color:var(--muted)}

/* ---------- sections ---------- */
.sec{padding:74px 0}
.shead{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line2);padding-bottom:14px;margin-bottom:36px}
.shead h2{font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:600;color:#cfc9bd}
.shead em{font-style:normal;font-size:12px;color:var(--dim)}

/* ---------- film grid ---------- */
.films{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.film{display:block;position:relative;border-radius:3px;overflow:hidden;background:var(--bg2)}
.film .img{aspect-ratio:16/10;overflow:hidden}
.film .img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.film:hover .img img{transform:scale(1.04)}
.film .body{position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(180deg,transparent,rgba(10,9,8,.92))}
.film h3{font-size:23px;font-weight:600}
.film .tags{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:7px}
.film.dev .tags{color:var(--blue)}

/* ---------- filmography ---------- */
.filmo{list-style:none}
.filmo li{display:flex;gap:20px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line)}
.filmo .yr{font-size:13px;color:var(--dim);min-width:48px;font-variant-numeric:tabular-nums}
.filmo .t{font-size:18px}
.filmo .t small{color:var(--dim);font-size:13px}
.filmo .tag{margin-left:auto;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}

/* ---------- about ---------- */
.about{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start}
.about img{width:100%;border-radius:3px}
.about p{font-size:16px;color:#cfc9bd;margin-bottom:16px;max-width:64ch}
.about p:last-child{margin-bottom:0}

/* ---------- contact ---------- */
.contact{text-align:center;padding:90px 0}
.contact .role{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
.contact a.mail{font-size:clamp(24px,4vw,40px);font-weight:600;color:#fff;border-bottom:2px solid var(--gold);padding-bottom:4px}
.contact .note{color:var(--dim);font-size:15px;margin-top:24px;max-width:46ch;margin-left:auto;margin-right:auto}

/* ---------- film detail ---------- */
.detail{max-width:900px;margin:0 auto;padding:72px 32px 40px}
.back{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.back:hover{color:var(--gold)}
.detail h1{font-size:clamp(32px,4vw,52px);font-weight:600;letter-spacing:-.01em;margin:30px 0 12px}
.detail .credits{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:44px}
.detail .credits .dev{color:var(--blue)}
.lead{width:100%;max-height:60vh;object-fit:cover;border-radius:3px;margin-bottom:48px}
.lead.poster{object-fit:contain;background:#141310;max-height:66vh}
.synopsis{font-size:19px;line-height:1.75;max-width:62ch;color:#ddd7cc}
.synopsis p{margin-bottom:20px}
.watch{display:inline-block;margin-top:18px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.watch:hover{border-bottom:1px solid var(--gold)}
.facts{display:flex;flex-wrap:wrap;gap:12px 30px;margin:10px 0 40px;font-size:13px;color:var(--muted)}
.facts span b{color:var(--text);font-weight:600}
.awards{margin-top:64px}

/* ---------- click-to-load trailer ---------- */
.embed{position:relative;width:100%;aspect-ratio:16/9;margin:56px 0 10px;background:#000;border:1px solid var(--line2);border-radius:4px;overflow:hidden}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.embed-play{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#000;display:block}
.embed-play img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;transition:opacity .3s}
.embed-play:hover img{opacity:.78}
.embed-play .pbtn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:rgba(224,166,78,.92);display:flex;align-items:center;justify-content:center;transition:transform .25s,background .25s}
.embed-play:hover .pbtn{transform:translate(-50%,-50%) scale(1.07);background:var(--gold)}
.embed-play .pbtn::after{content:"";margin-left:5px;border-style:solid;border-width:13px 0 13px 22px;border-color:transparent transparent transparent #0d0c0b}
.embed-play .lbl{position:absolute;left:0;right:0;bottom:18px;text-align:center;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.8)}

/* ---------- funders strip ---------- */
.funders{margin:60px 0 10px;background:#f4f1ea;border-radius:6px;padding:30px 34px;color:#3a352d}
.funders .lbl{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#7a7264;margin-bottom:20px}
.funders .logos{display:flex;flex-wrap:wrap;align-items:center;gap:34px}
.funders .logos img{height:54px;width:auto;display:block}

.awards{margin-top:64px}
.awards h2,.stills h2,.reviews h2{font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:#cfc9bd;border-bottom:1px solid var(--line2);padding-bottom:12px;margin-bottom:18px}
.awards ul{list-style:none}
.awards li{padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;display:flex;gap:12px}
.awards li::before{content:"\2014";color:var(--gold)}
.reviews{margin-top:40px;font-size:15px;color:var(--muted)}
.stills{margin-top:44px}
.stills .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stills img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:3px}

/* ---------- contact form ---------- */
.cform{max-width:560px;margin:34px auto 0;text-align:left}
.cform .row{margin-bottom:20px}
.cform label{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:8px}
.cform input,.cform textarea{width:100%;background:#15140f;border:1px solid var(--line2);border-radius:4px;color:var(--text);font:inherit;font-size:15px;padding:13px 15px}
.cform input:focus,.cform textarea:focus{outline:0;border-color:var(--gold)}
.cform textarea{min-height:150px;resize:vertical}
.cform button{font:inherit;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#0d0c0b;background:var(--gold);border:0;border-radius:999px;padding:14px 30px;cursor:pointer}
.cform button:hover{background:#f0bd6a}
.cform .hp{position:absolute;left:-9999px}
.contact .formnote{color:var(--dim);font-size:13px;margin-top:18px;max-width:46ch;margin-left:auto;margin-right:auto}

/* ---------- footer ---------- */
.site-foot{border-top:1px solid var(--line2);margin-top:90px;background:#0a0908}
.site-foot .inner{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;padding:60px 0 44px}
.site-foot .brand{font-size:16px;letter-spacing:.02em;color:var(--text)}
.site-foot .brand b{font-weight:600}
.site-foot .brand span{display:block;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--dim);margin-top:8px}
.site-foot h3{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);font-weight:600;margin-bottom:16px}
.site-foot ul{list-style:none}
.site-foot li{margin-bottom:11px}
.site-foot a{font-size:13.5px;color:var(--muted)}
.site-foot a:hover{color:var(--gold)}
.site-foot .mail{color:var(--text)}
.site-foot .bar{border-top:1px solid var(--line);padding:22px 0 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:11.5px;color:var(--dim);letter-spacing:.02em}
/* legacy simple footer (unused) */
footer{border-top:1px solid var(--line);margin-top:30px;padding:34px 0 50px;display:flex;justify-content:space-between;font-size:12px;color:var(--dim)}
footer a:hover{color:var(--gold)}

/* ---------- legal pages ---------- */
.legal{max-width:760px;margin:0 auto;padding:72px 32px 20px}
.legal h1{font-size:clamp(28px,3.4vw,40px);font-weight:600;margin-bottom:10px}
.legal .role{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:26px}
.legal h2{font-size:15px;font-weight:600;color:#fff;margin:36px 0 12px}
.legal p,.legal li{font-size:15px;color:#cfc9bd;line-height:1.7;margin-bottom:12px}
.legal ul{margin:0 0 12px 20px}
.legal a{color:var(--gold)}
.legal .ph{color:var(--blue);background:#16171c;border:1px dashed #34384a;padding:2px 7px;border-radius:3px;font-size:13px}

/* ---------- responsive ---------- */
@media(max-width:760px){
  .hero .grid{grid-template-columns:1fr}
  .hero .pane-img{padding:20px 20px 0}
  .hero .pane-img img{max-height:52vh}
  .hero .pane-txt{padding:34px 32px 8px}
  .films,.about,.stills .row{grid-template-columns:1fr;gap:24px}
  .about img{max-width:300px}
  .sec{padding:54px 0}
  .nav{flex-wrap:wrap;gap:12px}
  .site-foot .inner{grid-template-columns:1fr;gap:30px;padding:46px 0 34px}
  .detail{padding-top:48px}
  .funders .logos img{height:42px}
}
