
:root{--black:#090706;--deep:#150b0b;--gold:#c99b42;--gold2:#f0d083;--wine:#7a1523;--cream:#f6eddb;--gray:#958a7a;--card:#18100f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Serif SC","Songti SC","Microsoft YaHei",serif;background:var(--black);color:var(--cream);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:16px clamp(18px,4vw,60px);background:rgba(9,7,6,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(201,155,66,.24)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.08em}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,var(--wine),transparent 70%);color:var(--gold2)}.main-nav{display:flex;gap:22px;font-size:15px}.main-nav a{color:#ddcfb6}.main-nav a.active,.main-nav a:hover{color:var(--gold2)}.nav-toggle{display:none;background:none;border:1px solid var(--gold);color:var(--gold);border-radius:8px;padding:6px 10px}.hero,.page-hero,.section{padding:clamp(56px,8vw,110px) clamp(18px,6vw,86px)}.festival-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;min-height:76vh;align-items:center;background:radial-gradient(circle at 12% 16%,rgba(122,21,35,.55),transparent 32%),linear-gradient(135deg,#070606,#1c0f0b 48%,#070606)}.hero-copy h1,.page-hero h1{font-size:clamp(36px,6vw,72px);line-height:1.12;margin:10px 0 20px;letter-spacing:.03em}.lead,.page-hero p{font-size:clamp(17px,2vw,21px);color:#e4d5bd;max-width:860px}.eyebrow{color:var(--gold2);letter-spacing:.18em;font-size:14px;text-transform:uppercase}.hero-actions,.tag-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 24px;font-weight:700;border:1px solid transparent}.btn.gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#211204}.btn.outline{border-color:var(--gold);color:var(--gold2)}.section-head{max-width:850px;margin-bottom:34px}.section-head h2,.section h2{font-size:clamp(28px,4vw,44px);line-height:1.18;margin:6px 0 14px}.dark-block{background:linear-gradient(135deg,#120b0a,#220c12)}.muted{background:#120f0e}.cards{display:grid;gap:24px}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.card,.film-card,.scene-grid article,.video-card,.contact-card,.article-list article{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid rgba(201,155,66,.22);border-radius:22px;padding:22px;box-shadow:0 24px 60px rgba(0,0,0,.22)}.card img{height:130px;margin-bottom:16px}.card h3,.film-card h3,.scene-grid h3,.video-card h3{color:var(--gold2);margin:.4em 0}.film-card img{border-radius:16px;margin-bottom:16px}.video-feature{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.video-feature img{border-radius:28px;border:1px solid rgba(201,155,66,.32)}.tag-row span{border:1px solid rgba(201,155,66,.38);border-radius:999px;padding:7px 13px;color:#f3dfb6;background:rgba(201,155,66,.08)}.tag-row.large span{font-size:17px;padding:10px 18px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.time-item{position:relative;padding:24px;border-left:3px solid var(--gold);background:#15100f;border-radius:18px}.time-item span,.news-list span,.article-list span,.video-card span{color:var(--gold2);font-size:13px;letter-spacing:.12em}.scene-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.scene-grid:has(article:nth-child(3)){grid-template-columns:repeat(3,1fr)}.news-list{display:grid;gap:14px}.news-list a{display:flex;gap:24px;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(201,155,66,.22);padding:18px 0}.faq details{border:1px solid rgba(201,155,66,.22);border-radius:16px;margin:14px 0;padding:18px;background:#15100f}.faq summary{cursor:pointer;color:var(--gold2);font-weight:700}.cta{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(90deg,#210a10,#090706)}.site-footer{padding:42px clamp(18px,6vw,86px);background:#060504;border-top:1px solid rgba(201,155,66,.24);color:#d8c8ad}.footer-grid{display:grid;grid-template-columns:2fr 1.4fr 1.4fr;gap:26px}.page-hero{background:radial-gradient(circle at 20% 0%,rgba(122,21,35,.48),transparent 32%),#0b0908;border-bottom:1px solid rgba(201,155,66,.24)}.split{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.link-grid a{padding:18px;border:1px solid rgba(201,155,66,.26);border-radius:16px;background:#15100f;color:var(--gold2);text-align:center}.clean-list{padding-left:20px}.wide-text{font-size:20px;max-width:980px}.article-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.video-card{padding:0;overflow:hidden}.video-card div{padding:20px}.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:26px}.contact-form{display:grid;gap:16px;background:#15100f;border:1px solid rgba(201,155,66,.24);padding:24px;border-radius:22px}.contact-form label{display:grid;gap:8px;color:var(--gold2)}input,select,textarea{width:100%;border:1px solid rgba(201,155,66,.32);background:#0d0a09;color:var(--cream);border-radius:12px;padding:12px;font:inherit}::placeholder{color:#9c927f}@media (max-width:900px){.festival-hero,.video-feature,.split,.contact-layout{grid-template-columns:1fr}.three,.four,.timeline,.scene-grid,.scene-grid:has(article:nth-child(3)),.article-list,.video-grid,.footer-grid,.link-grid{grid-template-columns:1fr}.main-nav{position:absolute;left:18px;right:18px;top:72px;display:none;flex-direction:column;background:#0b0908;border:1px solid rgba(201,155,66,.26);border-radius:18px;padding:18px}.main-nav.open{display:flex}.nav-toggle{display:block}.cta{display:block}.cta .btn{margin-top:20px}.news-list a{display:block}.hero,.page-hero,.section{padding:48px 18px}}
