:root{--text:#f2efe8;--muted:#b9b2a8;--line:rgba(255,255,255,.08);--gold:#b89458;--accent:#d9c2a0;--shadow:0 18px 50px rgba(0,0,0,.35);--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top left, rgba(184,148,88,.12), transparent 28%),radial-gradient(circle at 85% 20%, rgba(120,0,0,.10), transparent 24%),linear-gradient(180deg, #090909 0%, #060606 100%);color:var(--text);font-family:"Inter",system-ui,sans-serif;overflow-x:hidden}
img{max-width:100%;display:block}a{color:inherit}.grain{position:fixed;inset:0;pointer-events:none;opacity:.07;z-index:100;background-image:radial-gradient(circle at 20% 20%, rgba(255,255,255,.35) 0 1px, transparent 1px),radial-gradient(circle at 80% 30%, rgba(255,255,255,.2) 0 1px, transparent 1px),radial-gradient(circle at 30% 80%, rgba(255,255,255,.3) 0 1px, transparent 1px),radial-gradient(circle at 70% 70%, rgba(255,255,255,.18) 0 1px, transparent 1px);background-size:180px 180px;mix-blend-mode:soft-light}
.site-header{position:sticky;top:0;z-index:40;backdrop-filter:blur(16px);background:rgba(7,7,7,.55);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:18px 28px}
.brand{text-decoration:none;font-family:"Cormorant Garamond",serif;font-size:2rem;font-weight:700;letter-spacing:.04em}.main-nav{display:flex;gap:20px;font-size:.95rem}.main-nav a{text-decoration:none;color:var(--muted)}.main-nav a:hover{color:var(--text)}
.hero{width:min(var(--max), calc(100% - 40px));margin:0 auto;min-height:100svh;padding:64px 0 40px;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center}
.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--gold)}
.hero h1,.section-heading h2,.spotlight-panel h2,.contact-panel h2{font-family:"Cormorant Garamond",serif;font-weight:600;line-height:.95;letter-spacing:-.01em}
.hero h1{margin:0;font-size:clamp(3.2rem, 8vw, 6.4rem)}.hero-subtitle{margin:14px 0 16px;color:var(--accent);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.92rem}.hero-text{max-width:38rem;color:var(--muted);line-height:1.8;font-size:1.05rem}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 18px}.btn{text-decoration:none;padding:14px 20px;border-radius:999px;border:1px solid var(--line);transition:transform .25s ease, background .25s ease, border-color .25s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg, var(--gold), #83643a);color:#120d06;border:none;font-weight:700}.btn-secondary{background:rgba(255,255,255,.03);color:var(--text)}
.hero-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:.95rem}.hero-links a{text-decoration:none}.hero-links a:hover{color:var(--text)}
.portrait-frame{position:relative;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);background:#0f0f0f}.portrait-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.28));pointer-events:none}.hero-portrait img{width:100%;height:min(78svh,920px);object-fit:cover;object-position:center 18%;filter:grayscale(100%)}
.intro-strip{width:min(var(--max), calc(100% - 40px));margin:0 auto 10px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.intro-item{padding:20px 22px;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:20px}.label{display:block;color:var(--muted);font-size:.8rem;margin-bottom:8px;text-transform:uppercase;letter-spacing:.12em}.intro-item strong{font-size:1.02rem;font-weight:600}
.section{width:min(var(--max), calc(100% - 40px));margin:0 auto;padding:90px 0}.section-heading{max-width:760px;margin-bottom:34px}.section-heading h2{margin:0;font-size:clamp(2.4rem, 5vw, 4rem)}
.about-grid,.playground-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.about-card,.play-card,.spotlight-panel,.contact-panel{background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}.about-card p,.play-card p,.spotlight-panel p,.contact-panel p,.modal-description{color:var(--muted);line-height:1.8}
.film-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.film-card{background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);transform:translateY(0);transition:transform .35s ease, border-color .35s ease, box-shadow .35s ease}.film-card:hover{transform:translateY(-8px);border-color:rgba(184,148,88,.55);box-shadow:0 22px 55px rgba(0,0,0,.42)}
.film-poster{position:relative;overflow:hidden}.film-poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.22) 100%)}.film-poster img{width:100%;aspect-ratio:2/3;object-fit:cover;transition:transform .5s ease}.film-card:hover .film-poster img{transform:scale(1.04)}
.film-meta{padding:18px 18px 20px}.film-role{margin:0 0 10px;color:var(--gold);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.film-meta h3{margin:0 0 8px;font-family:"Cormorant Garamond",serif;font-size:2rem;line-height:.95}.film-tone{margin:0 0 12px;color:var(--muted)}.text-link{background:none;border:none;padding:0;color:var(--text);cursor:pointer;font:inherit;text-decoration:underline;text-underline-offset:4px}
.spotlight-panel{padding:38px}.spotlight-panel h2{margin:0 0 14px;font-size:clamp(2.2rem, 4vw, 3.7rem)}.playground-grid{grid-template-columns:repeat(3,1fr)}.play-card h3{margin:0 0 12px;font-family:"Cormorant Garamond",serif;font-size:2rem}
.contact-links{margin-top:22px;display:flex;gap:14px;flex-wrap:wrap}.contact-links a{text-decoration:none;padding:12px 16px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}.contact-links a:hover{color:var(--text);border-color:rgba(184,148,88,.5)}
.site-footer{width:min(var(--max), calc(100% - 40px));margin:0 auto;padding:20px 0 40px;color:var(--muted);border-top:1px solid var(--line);text-align:center}
.modal{position:fixed;inset:0;display:none;z-index:80}.modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(8px)}.modal-dialog{position:relative;width:min(980px, calc(100% - 24px));margin:5vh auto;background:linear-gradient(180deg, #141414, #0d0d0d);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.55)}
.modal-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px}.modal-image-wrap img{width:100%;border-radius:18px;aspect-ratio:2/3;object-fit:cover}.modal-copy h3{font-family:"Cormorant Garamond",serif;font-size:3rem;margin:0 0 10px}.modal-role{color:var(--gold);margin:0 0 8px;text-transform:uppercase;letter-spacing:.13em;font-size:.8rem}.modal-tone{color:var(--accent);margin:0 0 18px}.modal-close{position:absolute;top:12px;right:14px;width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);font-size:1.5rem;cursor:pointer}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media (max-width:1100px){.film-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding-top:40px}.hero-portrait{order:-1}.hero-portrait img{height:70svh}.intro-strip{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.site-header{padding:14px 18px;flex-direction:column;gap:10px}.main-nav{flex-wrap:wrap;justify-content:center;gap:14px;font-size:.88rem}.section,.hero,.intro-strip,.site-footer{width:min(var(--max), calc(100% - 24px))}.intro-strip,.about-grid,.film-grid,.playground-grid,.modal-grid{grid-template-columns:1fr}.hero-copy{padding-top:10px}.portrait-frame{border-radius:22px}.hero-portrait img{height:60svh;object-position:center 12%}.section{padding:72px 0}.modal-dialog{margin:2vh auto;padding:16px}.modal-copy h3{font-size:2.3rem}}
