@charset "UTF-8";
:root{--ink:#111b30;--dark:#101a2b;--muted:#647185;--bg:#f7f7f3;--paper:#fff;--line:#e1e5e8;--accent:#de704c;--cream:#f0e6dc;--radius:18px;--shadow:0 20px 60px rgba(15,25,39,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;line-height:1.72}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}p{margin:0 0 1em}h1,h2,h3{font-weight:750;line-height:1.24;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5vw,5rem)}h2{font-size:clamp(1.8rem,3vw,2.9rem)}h3{font-size:1.23rem}.shell{width:min(1240px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;left:12px;top:-80px;padding:10px 20px;background:#fff;z-index:100}.skip:focus{top:10px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.masthead{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:36px}.brand{display:flex;align-items:center;gap:12px;font-size:1.55rem;line-height:1.1;font-weight:850;letter-spacing:-.04em;flex-shrink:0}.brand small{display:block;margin-top:7px;font-size:.58rem;letter-spacing:.11em;font-weight:600;color:var(--muted)}.brand-mark{height:44px;width:44px;display:grid;place-items:center;background:var(--dark);color:#fff;border-radius:12px;font-size:1.27rem;transform:rotate(-5deg)}.site-nav{display:flex;gap:clamp(12px,2.4vw,38px);align-items:center}.site-nav a{font-size:.93rem;font-weight:680;color:#5b6577;white-space:nowrap;padding:12px 0;position:relative}.site-nav a:hover,.site-nav a[aria-current]{color:var(--ink)}.site-nav a[aria-current]:after{content:"";height:3px;border-radius:3px;position:absolute;left:0;right:0;bottom:4px;background:var(--accent)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:670px;gap:7vw;padding-block:66px 80px}.overline,.eyebrow{font-size:.76rem;letter-spacing:.17em;color:#b6573a;font-weight:800;text-transform:uppercase}.hero h1{margin:18px 0 24px}.hero h1 em{font-style:normal;color:#c45f42}.lead{font-size:1.13rem;max-width:570px;color:#576475;line-height:1.9}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;padding:14px 23px;border-radius:11px;font-weight:750;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--dark);color:white;box-shadow:0 14px 30px #111a2a22}.button.secondary{background:var(--cream)}.button.light{background:#f6eee7;color:var(--dark)}.hero-note{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--muted);margin-top:24px}.note-dot{height:7px;width:7px;border-radius:50%;background:#b86243}.hero-art{position:relative;min-height:485px;background:linear-gradient(140deg,#ce896c,#293a4f);border-radius:150px 14px 130px 16px;overflow:hidden;box-shadow:var(--shadow)}.hero-art img{width:100%;height:100%;position:absolute;object-fit:cover}.art-caption{position:absolute;bottom:30px;left:30px;background:#faf5eae8;backdrop-filter:blur(12px);padding:14px 23px;display:grid;border-radius:7px;color:#101a2b}.art-caption span{letter-spacing:.18em;font-size:.65rem}.art-caption strong{font-size:1.15rem}.split-section{display:grid;grid-template-columns:.32fr .68fr;gap:5%;padding-block:80px 120px;border-top:1px solid var(--line)}.section-intro{position:sticky;top:30px;align-self:start}.section-intro h2{margin:17px 0 22px}.section-intro p{color:var(--muted)}.text-link{color:#ab4d31;font-weight:800;display:inline-flex;margin-top:8px;gap:7px}.text-link:hover{text-decoration:underline}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.film-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:25px 25px 30px;min-width:0;transition:border-color .2s,translate .2s}.film-card:hover{border-color:#c1b0a0;translate:0 -3px}.film-card .card-top{display:flex;align-items:center;justify-content:space-between}.film-card .eyebrow{letter-spacing:.06em}.film-card .year{font-size:.79rem;color:#8e97a3}.film-card h3{margin:18px 0 10px}.film-card .meta{font-size:.78rem;color:#8a6a5a;font-weight:750}.film-card p{font-size:.9rem;color:#566375;margin-bottom:0}.film-card .detail{border-top:1px solid #e5e5e2;margin-top:17px;padding-top:15px;color:#303c4c}.band{background:#17253a;color:white;overflow:hidden}.band-inner{display:grid;grid-template-columns:1fr .85fr;gap:8%;align-items:center;padding-block:70px}.band-inner h2{margin:22px 0}.band-inner p{color:#bbc6d2;max-width:510px}.band-inner img{height:350px;width:100%;object-fit:cover;border-radius:14px 120px 14px 90px;background:#37475d}.section-space{padding-block:90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:20px}.section-heading h2{margin:14px 0 0}.endcap{background:#e9e0d6;border-radius:30px;display:flex;justify-content:space-between;align-items:center;gap:50px;margin-bottom:100px;padding:52px 65px}.endcap h2{margin:14px 0}.endcap p{max-width:660px;color:#59616e}.endcap .button{flex-shrink:0}.site-footer{background:#101a2b;color:#fff;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.footer-grid p{max-width:480px;color:#afbdcc}.footer-grid .fine{font-size:.78rem;color:#8393a5}.footer-brand{font-size:1.45rem;font-weight:850}.footer-brand span{font-size:.68rem;color:#e09b7c;letter-spacing:.17em;margin-left:12px}.footer-grid nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.footer-grid nav a{padding:6px;color:#cbd6e2}.footer-grid nav a:hover{text-decoration:underline}.copyright{border-top:1px solid #354153;margin-top:65px;padding-block:18px;font-size:.78rem;color:#8191a4}.page-body{padding-bottom:110px}.crumbs{display:flex;gap:14px;align-items:center;font-size:.79rem;color:#798493;margin-top:25px}.crumbs a:hover{text-decoration:underline}.page-lede{max-width:850px;padding-block:70px 58px}.page-lede h1{font-size:clamp(2.2rem,4vw,4.35rem);margin:18px 0 25px}.page-lede p{font-size:1.1rem;color:#5d6a7a;line-height:1.95}.editor-note{display:grid;grid-template-columns:190px 1fr;gap:26px;border-left:4px solid var(--accent);background:#f0e8e0;border-radius:0 16px 16px 0;padding:26px 30px}.editor-note strong{font-size:1.1rem}.editor-note p{margin:0;color:#5a6170}.page-body .section-space{padding-block:70px}.page-body .section-space h2{margin:0 0 32px}.related{padding:40px 50px;background:#e9e1d7;border-radius:20px;margin-top:40px}.related h2{font-size:1.9rem;margin:0 0 15px}.related p{max-width:670px;color:#566170}.guide-layout{display:grid;grid-template-columns:1fr 320px;gap:70px;align-items:start}.prose section{border-top:1px solid var(--line);padding-block:32px}.prose h2{font-size:1.8rem;margin:0 0 24px}.prose p{font-size:1.02rem;color:#516073;line-height:2}.guide-aside{background:#fff;padding:20px;border-radius:20px;position:sticky;top:25px;box-shadow:var(--shadow)}.guide-aside img{height:200px;width:100%;object-fit:cover;border-radius:12px;background:#dfd3c4}.guide-aside h2{font-size:1.4rem}.guide-aside p{font-size:.93rem;color:var(--muted)}.guide-aside a{display:block;border-top:1px solid var(--line);padding:10px 0;font-weight:750}.guide-aside a:hover{color:#bd6041}.faq-list{max-width:900px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:13px;margin-bottom:13px;padding:0 24px}.faq-list summary{cursor:pointer;font-size:1.08rem;font-weight:750;padding:22px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:1.5rem;color:#b85c3d}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 0 24px;max-width:760px;color:#5a6778}.about-grid{display:grid;grid-template-columns:1fr 400px;gap:8%;align-items:start}.about-grid img{width:100%;height:540px;object-fit:cover;border-radius:150px 16px 100px 16px;background:#e7d8ca}.about-grid .prose h2{margin-top:38px;font-size:1.75rem}.about-grid .prose h2:first-child{margin-top:0}.about-links{display:flex;gap:23px;flex-wrap:wrap;margin-top:30px}.about-links a{color:#af5339;font-weight:750}.not-found{text-align:center;min-height:65vh;display:flex;align-items:center;justify-content:center;flex-direction:column}.not-found h1{margin:15px 0}.not-found p{color:var(--muted)}.not-found .text-link{margin-top:20px}:focus-visible{outline:3px solid #db704b;outline-offset:4px}
@media(max-width:1030px){.shell{width:min(100% - 40px,920px)}.masthead{min-height:82px}.hero{gap:35px;min-height:auto}.hero-art{min-height:430px}.card-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-layout{grid-template-columns:1fr 265px;gap:35px}.about-grid{grid-template-columns:1fr 300px}.section-space{padding-block:65px}}
@media(max-width:760px){.shell{width:calc(100% - 32px)}.masthead{min-height:76px;flex-wrap:wrap;gap:0}.brand{font-size:1.3rem}.brand-mark{width:39px;height:39px}.menu-toggle{display:inline-flex;gap:8px;border:1px solid var(--line);background:#fff;color:var(--ink);padding:7px 12px;border-radius:9px;font-size:.85rem}.site-nav{display:none;flex-basis:100%;width:100%;padding:12px 0 16px;gap:0;flex-wrap:wrap;border-top:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{width:50%;padding:12px}.site-nav a[aria-current]:after{left:12px;right:auto;width:36px;bottom:4px}.hero{grid-template-columns:1fr;gap:25px;padding-block:45px 60px}.hero h1{font-size:clamp(2.5rem,9vw,4rem)}.hero-art{min-height:320px;border-radius:90px 15px 65px 15px}.lead{font-size:1rem}.split-section{grid-template-columns:1fr;padding-block:55px;gap:30px}.section-intro{position:static}.card-grid.three,.card-grid{grid-template-columns:1fr 1fr}.film-card{padding:19px}.band-inner{grid-template-columns:1fr;gap:26px;padding-block:55px}.band-inner img{height:255px}.section-heading{align-items:start;flex-direction:column}.endcap{margin-bottom:60px;padding:30px;flex-direction:column;align-items:flex-start;gap:15px;border-radius:18px}.footer-grid{grid-template-columns:1fr;gap:25px}.copyright{margin-top:35px}.page-lede{padding-block:48px 35px}.page-lede p{font-size:1rem}.editor-note{grid-template-columns:1fr;gap:10px;padding:22px}.guide-layout{grid-template-columns:1fr}.guide-aside{position:static}.about-grid{grid-template-columns:1fr}.about-grid img{height:300px;max-width:450px}.related{padding:25px}.page-body{padding-bottom:65px}}
@media(max-width:520px){.card-grid.three,.card-grid{grid-template-columns:1fr}.hero-art{min-height:280px}.film-card{padding:23px}.hero-actions .button{flex:1;min-width:150px;padding:12px}.section-space{padding-block:55px}.page-lede h1{font-size:2.35rem}.footer-grid nav{grid-template-columns:1fr 1fr}.prose h2{font-size:1.45rem}.faq-list details{padding-inline:17px}.faq-list summary{font-size:.97rem}.brand small{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Readability, print behavior, and resilient layouts */
@media print {
  :root { --bg:#fff; --paper:#fff; --ink:#000; --muted:#333; --line:#aaa; }
  body { background:#fff;color:#000;font-size:11pt;line-height:1.6; }
  .site-header,.site-footer,.hero-art,.band,.hero-actions,.guide-aside,.endcap,.menu-toggle { display:none!important; }
  .shell { width:100%;max-width:none;margin:0; }
  .hero,.split-section,.guide-layout,.about-grid { display:block;padding:0; }
  .hero { min-height:0; }
  .page-lede { padding:16px 0; }
  h1 {font-size:25pt} h2 {font-size:17pt} h3 {font-size:13pt}
  p, .film-card p, .prose p {color:#222;font-size:10pt}
  .card-grid,.card-grid.three {grid-template-columns:1fr 1fr;gap:12px}
  .film-card {break-inside:avoid;border:1px solid #aaa;padding:12px;border-radius:0}
  .editor-note,.related {background:#fff;border:1px solid #aaa;break-inside:avoid}
  .prose section {break-inside:avoid}
  .faq-list details {break-inside:avoid}
  a {color:#000;text-decoration:underline}
}
@media (min-width:761px) and (max-width:860px) {
  .site-nav {gap:12px}
  .site-nav a {font-size:.82rem}
  .brand {font-size:1.3rem}
  .brand-mark {width:40px;height:40px}
  .masthead {gap:14px}
}
@media (hover:none) {
  .film-card:hover {translate:none}
  .button:hover {transform:none}
}
@media (prefers-contrast:more) {
  :root {--muted:#374151;--line:#737c8b;--accent:#a44323}
  .film-card,.faq-list details {border-width:2px}
  .text-link,.about-links a {text-decoration:underline}
}
/* Additional small-screen and long-title safeguards */
@media(max-width:360px){.shell{width:calc(100% - 26px)}.hero h1{font-size:2.23rem}.button{padding:11px 13px;font-size:.84rem}.brand{font-size:1.16rem}.brand-mark{width:34px;height:34px}.hero-art{min-height:225px}.film-card h3{overflow-wrap:anywhere}.section-intro h2,.band-inner h2{font-size:1.72rem}.site-nav a{font-size:.85rem}.hero-note{font-size:.74rem}.page-lede h1{font-size:2rem}}
@supports(text-wrap:balance){h1,h2,h3{text-wrap:balance}}
@supports(text-wrap:pretty){p{text-wrap:pretty}}
.film-card h3,.related h2,.page-lede h1{overflow-wrap:break-word}
.faq-list summary:hover{color:#aa4d31}
.faq-list details[open]{border-color:#d1b19e;box-shadow:0 6px 25px rgba(54,36,24,.035)}
.prose a:focus-visible,.guide-aside a:focus-visible{border-radius:3px}
img{font-style:italic;color:#697489}
