/* 高階・電影深色：上下黑邊的寬銀幕封面、超大字、照片像電影劇照，往下捲時內容慢慢浮現。 */
.s-cinema { --bg: #0a0a0c; --bg2: #111116; --fg: #f1efe9; --muted: #9a978f; --line: #24242a; --accent: #e2b04a; --on-accent: #0a0a0c; --card: #141419;
  --radius: 0; --radius-btn: 0; --head-weight: 800; --h1: clamp(3rem, 11vw, 8rem); --h2: clamp(2rem, 6vw, 4rem); color-scheme: dark; }
.s-cinema .top { background: rgba(10, 10, 12, .8); border-bottom: 1px solid var(--line); }
.s-cinema .brand b { letter-spacing: .25em; }
.hero-cine { min-height: 100svh; display: grid; align-items: end; background: #000 var(--hero) center / cover no-repeat; position: relative; }
.hero-cine::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #000 0, rgba(0,0,0,.1) 14%, rgba(0,0,0,.2) 55%, #0a0a0c 100%); }
.hero-cine::after { content: ""; position: absolute; inset: auto 0 0; height: 9vh; background: #0a0a0c; }
.hero-cine .hero-txt { position: relative; z-index: 1; padding: 0 clamp(20px, 6vw, 80px) 14vh; }
.hero-cine h1 { line-height: .95; letter-spacing: -.02em; text-transform: uppercase; }
.hero-cine .hero-en { color: var(--accent); letter-spacing: .6em; }
.hero-cine .hero-lede { color: #d7d3ca; font-size: 1.15rem; }
.s-cinema .sec-h { font-size: var(--h2); text-transform: uppercase; letter-spacing: .02em; }
.s-cinema .sec-h span::after { content: "."; color: var(--accent); }
.s-cinema .grp-h { color: var(--accent); }
.s-cinema .menu { max-width: 820px; }
.s-cinema .menu li { font-size: 1.1rem; padding: 14px 0; border-bottom: 1px solid var(--line); }
.s-cinema .menu i { border: 0; }
.s-cinema .menu .price { color: var(--accent); font-weight: 700; }
/* 劇照：寬銀幕比例、一張一張排下來 */
.photos-cine .pics { grid-template-columns: 1fr; gap: clamp(20px, 4vw, 40px); }
@media (min-width: 900px) { .photos-cine .pics { grid-template-columns: 1fr 1fr; } .photos-cine .pic:nth-child(3n+1) { grid-column: span 2; } }
.photos-cine .pic { background: none; border-radius: 0; }
.photos-cine .pic img { aspect-ratio: 2.39 / 1; filter: contrast(1.08) saturate(.9); }
.photos-cine figcaption { font-size: .8rem; letter-spacing: .3em; text-transform: uppercase; color: var(--muted); }
.s-cinema .btn { letter-spacing: .2em; }
.s-cinema .notice { background: transparent; color: var(--accent); border-block: 1px solid var(--line); }
/* 往下捲時慢慢浮現：支援捲動動畫的瀏覽器才有，其他的直接顯示 */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .s-cinema .sec .wrap > *, .s-cinema .pic { animation: cinefade linear both; animation-timeline: view(); animation-range: entry 0% cover 30%; }
  }
}
@keyframes cinefade { from { opacity: 0; transform: translateY(60px) scale(.98); filter: blur(6px); } to { opacity: 1; transform: none; filter: none; } }
.s-cinema .foot { background: #000; }
