:root{
    --bg:#080706;
    --panel:#11100f;
    --panel-2:#1a1511;
    --gold:#d8b46d;
    --gold-soft:#f2dca3;
    --red:#7a1c1d;
    --text:#f7f0df;
    --muted:#b6a98f;
    --line:rgba(216,180,109,.22);
    --shadow:0 24px 80px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;
    background:
        radial-gradient(circle at 18% 0%,rgba(122,28,29,.34),transparent 34rem),
        radial-gradient(circle at 82% 8%,rgba(216,180,109,.18),transparent 28rem),
        linear-gradient(180deg,#070605,#100d0a 52%,#080706);
    color:var(--text);
    line-height:1.75;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{
    position:sticky;top:0;z-index:50;
    display:flex;align-items:center;justify-content:space-between;
    padding:16px clamp(18px,4vw,64px);
    background:rgba(8,7,6,.82);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.04em}
.brand-mark{
    width:52px;height:52px;border:1px solid var(--gold);
    display:grid;place-items:center;border-radius:17px;
    background:linear-gradient(135deg,#1c1611,#533010 56%,#0b0907);
    color:var(--gold-soft);box-shadow:0 0 28px rgba(216,180,109,.26);
    font-size:22px;
}
.brand-copy{color:var(--gold-soft)}
.site-nav{display:flex;align-items:center;gap:8px}
.site-nav a{padding:10px 14px;border-radius:999px;color:var(--muted);font-size:15px}
.site-nav a:hover,.site-nav a.active{color:#1b1207;background:linear-gradient(135deg,var(--gold),var(--gold-soft))}
.nav-toggle{display:none;background:transparent;color:var(--gold-soft);border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:22px}
main{overflow:hidden}
.hero{
    min-height:calc(100vh - 84px);
    display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:42px;
    padding:72px clamp(18px,5vw,84px) 58px;
    position:relative;
}
.hero::before{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(8,7,6,.92),rgba(8,7,6,.54),rgba(8,7,6,.94)),url('/assets/images/hero-cinema.svg') center/cover no-repeat;
    opacity:.92;z-index:-2;
}
.hero::after{content:"";position:absolute;inset:auto 8% 4% 8%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);z-index:-1}
.eyebrow{display:inline-flex;gap:10px;align-items:center;color:var(--gold-soft);border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:rgba(17,16,15,.62);font-size:14px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px var(--gold)}
h1{font-size:clamp(38px,7vw,86px);line-height:1.06;margin:22px 0 18px;letter-spacing:-.04em}
h2{font-size:clamp(28px,4.4vw,54px);line-height:1.14;margin:0 0 18px;letter-spacing:-.03em}
h3{margin:0 0 10px;font-size:22px;line-height:1.35}
p{color:var(--muted);margin:0 0 16px}
.hero-lead{font-size:clamp(17px,2vw,22px);max-width:720px;color:#e8dcc4}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;border-radius:999px;border:1px solid var(--line);font-weight:700;color:var(--text);transition:.25s ease;background:rgba(255,255,255,.03)}
.btn.primary{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:#1a0d05;border-color:transparent;box-shadow:0 18px 48px rgba(216,180,109,.22)}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(0,0,0,.28)}
.hero-panel{position:relative;border:1px solid var(--line);border-radius:34px;background:rgba(17,16,15,.72);padding:18px;box-shadow:var(--shadow);backdrop-filter:blur(8px)}
.hero-panel img{border-radius:24px;border:1px solid rgba(255,255,255,.08)}
.hero-stat{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.hero-stat div{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(0,0,0,.25)}
.hero-stat strong{display:block;color:var(--gold-soft);font-size:20px}
.hero-stat span{color:var(--muted);font-size:13px}
.section{padding:78px clamp(18px,5vw,84px);position:relative}
.section.alt{background:linear-gradient(180deg,rgba(216,180,109,.045),rgba(122,28,29,.07))}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px}
.section-head p{max-width:650px}
.grid{display:grid;gap:22px}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.four{grid-template-columns:repeat(4,1fr)}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card,.feature,.faq-item,.contact-card,.timeline-item,.calendar-item{
    background:linear-gradient(180deg,rgba(26,21,17,.86),rgba(10,9,8,.86));
    border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.26);
}
.card-body,.feature,.faq-item,.contact-card,.timeline-item,.calendar-item{padding:24px}
.poster{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0d0b09}
.poster img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.poster::after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;font-size:46px;color:#1a0d05;background:radial-gradient(circle,rgba(242,220,163,.86),rgba(216,180,109,.2) 24%,transparent 45%);opacity:0;transition:.25s ease;text-shadow:0 2px 16px rgba(255,255,255,.3)}
.card:hover .poster img{transform:scale(1.06);filter:saturate(1.12) brightness(1.1)}
.card:hover .poster::after{opacity:1}
.meta-row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.tag{font-size:13px;color:var(--gold-soft);border:1px solid var(--line);border-radius:999px;padding:5px 10px;background:rgba(216,180,109,.08)}
.rating{color:var(--gold-soft);font-weight:700}
.feature{position:relative;min-height:210px}
.feature::before{content:"";position:absolute;right:22px;top:22px;width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,rgba(216,180,109,.95),rgba(122,28,29,.55));opacity:.72}
.feature strong{font-size:30px;color:var(--gold-soft);display:block;margin-bottom:10px}
.split{display:grid;grid-template-columns:.92fr 1.08fr;gap:38px;align-items:center}
.visual-frame{border:1px solid var(--line);border-radius:34px;padding:16px;background:rgba(17,16,15,.68);box-shadow:var(--shadow)}
.visual-frame img{border-radius:24px}
.category-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.category-nav a{padding:11px 16px;border:1px solid var(--line);border-radius:999px;color:var(--gold-soft);background:rgba(216,180,109,.08)}
.topic-band{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.topic-band .card:first-child{grid-row:span 2}
.quote{font-size:18px;color:#eadfca;position:relative;padding-left:24px}
.quote::before{content:"“";position:absolute;left:0;top:-12px;color:var(--gold);font-size:48px;line-height:1}
.avatar-row{display:flex;align-items:center;gap:12px;margin-top:18px}
.avatar-row img{width:48px;height:48px;border-radius:50%;border:1px solid var(--line)}
.faq{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.sub-hero{padding:82px clamp(18px,5vw,84px) 42px;background:linear-gradient(120deg,rgba(122,28,29,.22),rgba(216,180,109,.08),rgba(8,7,6,.95));border-bottom:1px solid var(--line)}
.sub-hero p{max-width:850px;font-size:18px;color:#e7dcc6}
.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:14px;margin-bottom:18px}
.breadcrumb a{color:var(--gold-soft)}
.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}
.filter-bar button{border:1px solid var(--line);background:rgba(216,180,109,.08);color:var(--gold-soft);border-radius:999px;padding:10px 14px;cursor:pointer}
.filter-bar button.active{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:#1a0d05}
.timeline{display:grid;gap:16px}
.timeline-item{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:start}
.timeline-item time{color:var(--gold-soft);font-weight:700}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.calendar-item{min-height:170px}
.calendar-item strong{display:block;color:var(--gold-soft);margin-bottom:8px}
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.domain-box{font-size:22px;color:var(--gold-soft);word-break:break-all;border:1px solid var(--line);border-radius:20px;padding:18px;background:rgba(216,180,109,.08);margin-top:12px}
.form-like{display:grid;gap:12px}
.form-like div{border:1px solid var(--line);border-radius:16px;padding:14px;color:var(--muted);background:rgba(255,255,255,.03)}
.site-footer{padding:54px clamp(18px,5vw,84px) 30px;border-top:1px solid var(--line);background:#070605}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:24px;margin-bottom:32px}
.site-footer strong{display:block;color:var(--gold-soft);margin-bottom:12px;font-size:18px}
.site-footer a{display:block;color:var(--muted);margin:7px 0}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:#8f826a;border-top:1px solid rgba(216,180,109,.14);padding-top:20px;font-size:14px}
@media (max-width:1080px){
    .hero,.split,.contact-wrap{grid-template-columns:1fr}
    .grid.four{grid-template-columns:repeat(2,1fr)}
    .calendar{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
    .nav-toggle{display:block}
    .site-nav{position:absolute;left:18px;right:18px;top:82px;display:none;flex-direction:column;align-items:stretch;background:rgba(8,7,6,.96);border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow)}
    .site-nav.open{display:flex}
    .site-nav a{display:block;text-align:center}
    .section-head{display:block}
    .grid.three,.grid.four,.grid.two,.faq,.topic-band,.footer-grid{grid-template-columns:1fr}
    .topic-band .card:first-child{grid-row:auto}
    .hero{padding-top:48px}
    .hero-stat{grid-template-columns:1fr}
    .timeline-item{grid-template-columns:1fr}
}
@media (max-width:540px){
    .site-header{padding:12px 16px}
    .brand-mark{width:44px;height:44px;border-radius:14px}
    .section{padding:58px 16px}
    .sub-hero{padding:58px 16px 32px}
    .calendar{grid-template-columns:1fr}
    .card-body,.feature,.faq-item,.contact-card,.timeline-item,.calendar-item{padding:20px}
}
