/* 长夜放映 — 暮色片头
   夕阳、云带、楼群全部用渐变与 SVG 画，不引用图片 */

:root{
  --night:#0a0807;
  --night-2:#120d0a;
  --bone:#f3ece0;
  --bone-dim:rgba(243,236,224,.6);
  --ember:#d9541f;
  --flame:#f5943f;
  --line:rgba(243,236,224,.13);
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
body{
  margin:0;
  background:var(--night);
  color:var(--bone);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
h1,h2,p{margin:0}
:focus-visible{outline:2px solid var(--flame);outline-offset:3px;border-radius:3px}

/* ── 顶部细导航 ─────────────────── */
.bar{
  position:fixed;
  inset:0 0 auto 0;
  z-index:40;
  display:flex;
  align-items:center;
  gap:28px;
  padding:22px clamp(20px,3.6vw,48px);
  font-size:13px;
  letter-spacing:.08em;
}
.bar::before{
  content:"";
  position:absolute;inset:0;
  z-index:-1;
  background:linear-gradient(to bottom,rgba(10,8,7,.72),transparent);
  pointer-events:none;
}
.logo{display:flex;align-items:center;gap:9px;letter-spacing:.14em}
.logo svg{width:17px;height:17px;color:var(--flame)}
.bar nav{margin-left:auto}
.bar ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.bar ul a{color:var(--bone-dim);transition:color .25s ease}
.bar ul a:hover,.bar ul a.on{color:var(--bone)}
.lang{color:rgba(243,236,224,.4);letter-spacing:.1em}
.lang i{font-style:normal;margin:0 4px;color:rgba(243,236,224,.24)}

/* ── 片头画面 ───────────────────── */
.poster{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:0 clamp(20px,3.6vw,48px) clamp(48px,7vh,88px);
}
.sky{
  position:absolute;inset:0;
  background:
    linear-gradient(to bottom,#070605 0%,#100b09 24%,#2c1410 44%,#6d2513 62%,#b8451c 76%,#e0701f 88%,#f0a13c 100%);
}
.sun{
  position:absolute;
  left:30%;top:44%;
  width:min(54vw,660px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,
    rgba(255,232,182,.92) 0%,
    rgba(253,176,92,.76) 20%,
    rgba(226,96,38,.5) 42%,
    rgba(150,44,22,.16) 64%,
    transparent 78%);
  filter:blur(24px);
}
.glow{
  position:absolute;inset:auto 0 0 0;
  height:46%;
  background:linear-gradient(to top,rgba(240,150,60,.4),rgba(200,70,28,.14) 42%,transparent 78%);
  mix-blend-mode:screen;
}

/* 三条云带 */
.clouds{position:absolute;inset:0;overflow:hidden}
.clouds span{
  position:absolute;
  border-radius:50%;
  filter:blur(34px);
}
.c1{
  left:-6%;top:52%;
  width:58%;height:15%;
  background:rgba(72,26,20,.75);
  transform:rotate(-2.4deg);
}
.c2{
  left:34%;top:60%;
  width:56%;height:11%;
  background:rgba(96,32,18,.62);
  transform:rotate(1.6deg);
}
.c3{
  left:12%;top:70%;
  width:70%;height:13%;
  background:rgba(58,20,14,.68);
  transform:rotate(-1.1deg);
}

.ridge{
  position:absolute;
  left:0;right:0;bottom:0;
  width:100%;
  height:76%;
  display:block;
  pointer-events:none;
}

/* 文字区暗场：楼沉进阴影里，前景文字浮出来 */
.poster::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:44%;
  background:linear-gradient(to top,rgba(10,8,7,.94) 0%,rgba(10,8,7,.72) 30%,rgba(10,8,7,.26) 62%,transparent 88%);
  pointer-events:none;
  z-index:2;
}

/* ── 片名区 ─────────────────────── */
.stage{
  position:relative;
  z-index:3;
  max-width:min(760px,94%);
}
.meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
  font-size:12px;
  letter-spacing:.16em;
  color:rgba(243,236,224,.66);
  margin-bottom:22px;
}
.meta i{
  display:block;
  width:3px;height:3px;
  border-radius:50%;
  background:var(--flame);
  margin:0 12px;
  opacity:.8;
}
.stage h1{
  font-size:clamp(2.6rem,6.4vw,5.3rem);
  line-height:1.05;
  font-weight:600;
  letter-spacing:-.03em;
  margin-bottom:.42em;
  text-shadow:0 2px 40px rgba(10,8,7,.6);
}
.lede{
  max-width:30em;
  color:rgba(243,236,224,.72);
  font-size:clamp(.94rem,1.4vw,1.04rem);
  line-height:1.85;
  margin-bottom:2em;
}
.acts{display:flex;flex-wrap:wrap;gap:12px}
.btn{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:13px 26px;
  border-radius:100px;
  font-size:14.5px;
  letter-spacing:.04em;
  background:var(--bone);
  color:#140d0a;
  font-weight:500;
  transition:transform .3s cubic-bezier(.2,.7,.3,1),background .25s ease;
}
.btn:hover{transform:translateY(-2px);background:#fff}
.btn.line{
  background:transparent;
  color:var(--bone);
  border:1px solid rgba(243,236,224,.36);
  font-weight:400;
}
.btn.line:hover{background:rgba(243,236,224,.1);border-color:rgba(243,236,224,.6)}
.arw{display:inline-flex;transition:transform .3s ease}
.btn:hover .arw{transform:translateX(3px)}
.arw svg{width:12px;height:12px}

/* ── 正在放 ─────────────────────── */
.now{
  background:var(--night);
  border-top:1px solid var(--line);
  padding:clamp(58px,9vh,104px) clamp(20px,3.6vw,48px);
}
.now-in{max-width:1180px;margin:0 auto}
.eyebrow{
  font-size:12px;
  letter-spacing:.28em;
  color:var(--flame);
  margin-bottom:40px;
}
.reel{
  list-style:none;
  margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(20px,3vw,40px);
}
.reel a{
  display:block;
  padding-top:20px;
  border-top:1px solid var(--line);
  transition:border-color .3s ease;
}
.reel a:hover{border-top-color:var(--flame)}
.reel b{
  display:block;
  font-size:12px;
  letter-spacing:.14em;
  color:rgba(243,236,224,.34);
  font-weight:400;
  margin-bottom:16px;
}
.reel h2{
  font-size:1.42rem;
  font-weight:500;
  letter-spacing:-.01em;
  margin-bottom:.5em;
  transition:color .25s ease;
}
.reel a:hover h2{color:var(--flame)}
.reel p{
  font-size:14px;
  line-height:1.85;
  color:rgba(243,236,224,.55);
  margin-bottom:1.1em;
}
.reel em{
  font-style:normal;
  font-size:12px;
  letter-spacing:.08em;
  color:rgba(243,236,224,.38);
}

/* ── 页脚 ───────────────────────── */
.foot{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:14px 30px;
  padding:32px clamp(20px,3.6vw,48px);
  border-top:1px solid var(--line);
}
.fbrand{font-size:13.5px;letter-spacing:.16em}
.fmeta{font-size:12px;color:rgba(243,236,224,.36);letter-spacing:.05em}
.fmeta:last-child{margin-left:auto}
.fmeta a:hover{color:var(--bone)}

/* ── 进场 ───────────────────────── */
.stage h1{animation:up .9s cubic-bezier(.16,.8,.3,1) both}
.meta{animation:up .9s cubic-bezier(.16,.8,.3,1) .06s both}
.poster .lede{animation:up .9s cubic-bezier(.16,.8,.3,1) .14s both}
.poster .acts{animation:up .9s cubic-bezier(.16,.8,.3,1) .22s both}
@keyframes up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}

/* ── 响应式 ─────────────────────── */
@media (max-width:900px){
  .bar ul{display:none}
  .lang{margin-left:auto}
  .reel{grid-template-columns:1fr;gap:30px}
  .sun{left:38%;width:78vw}
}
@media (max-width:560px){
  .stage h1{font-size:clamp(2.2rem,10vw,3rem)}
  .foot{flex-direction:column;gap:8px}
  .fmeta:last-child{margin-left:0}
}

/* ══ 子页（片单 / 厂牌） ══════════ */
.bar.solid::before{
  background:rgba(10,8,7,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.sheet{
  max-width:1040px;
  margin:0 auto;
  padding:clamp(120px,16vh,180px) clamp(20px,3.6vw,48px) clamp(64px,9vh,110px);
}
.sheet .eyebrow{margin-bottom:24px}
.ph{
  font-size:clamp(2.1rem,4.4vw,3.3rem);
  line-height:1.16;
  font-weight:600;
  letter-spacing:-.03em;
  margin-bottom:.55em;
}
.sheet .lede{max-width:46em;margin-bottom:clamp(46px,7vh,80px)}

/* 片单 */
.films{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.films li{
  display:grid;
  grid-template-columns:64px 1fr 250px;
  gap:clamp(16px,3vw,44px);
  padding:clamp(22px,3vh,34px) 8px;
  border-bottom:1px solid var(--line);
  transition:background .3s ease,padding-left .3s ease;
}
.films li:hover{background:rgba(245,148,63,.055);padding-left:18px}
.no{
  font-size:12px;
  letter-spacing:.14em;
  color:rgba(243,236,224,.3);
  padding-top:7px;
}
.fw h2{font-size:1.36rem;font-weight:500;margin-bottom:.5em;letter-spacing:-.01em}
.fw p{font-size:14px;line-height:1.85;color:rgba(243,236,224,.55);max-width:36em}
.fm{margin:0;display:flex;gap:clamp(18px,3vw,34px);justify-content:flex-end;width:100%}
.fm dt{
  font-size:11px;
  letter-spacing:.14em;
  color:rgba(243,236,224,.28);
  margin-bottom:5px;
}
.fm dd{margin:0;font-size:13px;color:rgba(243,236,224,.74);white-space:nowrap}

/* 厂牌三原则 */
.creed{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(22px,3.5vw,44px);
  margin-bottom:clamp(56px,9vh,100px);
}
.creed article{border-top:1px solid var(--line);padding-top:20px}
.creed b{
  display:block;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--flame);
  font-weight:400;
  margin-bottom:14px;
}
.creed h2{font-size:1.2rem;font-weight:500;margin-bottom:.5em}
.creed p{font-size:14px;line-height:1.85;color:rgba(243,236,224,.55)}

/* 钱 */
.money{margin-bottom:clamp(56px,9vh,100px)}
.sh{
  font-size:12px;
  letter-spacing:.26em;
  font-weight:400;
  color:var(--flame);
  margin-bottom:28px;
}
.money dl{margin:0;border-top:1px solid var(--line)}
.money dl > div{
  display:grid;
  grid-template-columns:140px 1fr;
  gap:24px;
  padding:22px 0;
  border-bottom:1px solid var(--line);
}
.money dt{font-size:14px;color:rgba(243,236,224,.9);font-weight:500}
.money dd{margin:0;font-size:14.5px;line-height:1.85;color:rgba(243,236,224,.56)}

/* 联系 */
.contact{border-top:1px solid var(--line);padding-top:clamp(38px,6vh,60px)}
.contact p{
  max-width:36em;
  font-size:15px;
  line-height:1.9;
  color:rgba(243,236,224,.64);
  margin-bottom:30px;
}

@media (max-width:820px){
  .creed{grid-template-columns:1fr;gap:28px}
  .films li{grid-template-columns:1fr;gap:12px}
  .no{padding-top:0}
  .fm{justify-content:flex-start}
  .money dl > div{grid-template-columns:1fr;gap:8px}
}
