:root {
  --paper:#FFFAEE; --warm:#FFF2CF; --surface:#fff; --soft:#F8F4E9;
  --ink:#24282B; --body:#41484C; --muted:#626C70; --theatre:#15191C;
  --mango:#FFCD38; --mango-pale:#FFE07A; --gold:#93620A; --orange:#EF9A43;
  --sage:#7B9873; --mint:#85BBB1; --lilac:#998BB7;
  --line:rgba(77,67,41,.13); --shadow:0 14px 34px rgba(39,38,26,.09);
  --round:15px; --wrap:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{width:100%; min-width:0; max-width:100%;scroll-behavior:smooth;overflow-x:clip}
body{width:100%;min-width:0;max-width:100%;margin:0;background:var(--paper);color:var(--body);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.73;overflow-x:clip;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto}
img{display:block}
button,input{font:inherit}
a{color:inherit;text-decoration:none}
a:hover{color:#74500b}
button{cursor:pointer}
:focus-visible{outline:3px solid #a87804;outline-offset:3px}
::selection{background:var(--mango-pale);color:var(--ink)}
.wrap{width:min(var(--wrap),calc(100% - 48px));margin-inline:auto;min-width:0}
section,article,div,aside,nav{min-width:0}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{color:var(--ink);line-height:1.3;letter-spacing:-.025em}
h1{font-size:clamp(27px,3.25vw,36px)}
h2{font-size:clamp(22px,2.4vw,26px)}
h3{font-size:clamp(17px,2vw,21px)}
p{line-height:1.76}
small,.small{font-size:13px}
.muted{color:var(--muted)}
.only-mobile{display:none}
.skip-link{position:absolute;top:-100px;left:8px;background:var(--mango);color:var(--ink);padding:8px 14px;z-index:200}
.skip-link:focus{top:8px}
/* Header background is full viewport; only its contents are constrained. */
.site-header{position:relative;z-index:20;width:100%;background:#fff;box-shadow:0 1px 0 var(--line)}
.header-bar{width:100%;background:#fff;border-bottom:1px solid rgba(77,67,41,.09)}
.header-inner{height:70px;display:flex;align-items:center;gap:24px}
.brand{display:inline-flex;flex-shrink:0;align-items:center;gap:10px;white-space:nowrap;color:var(--ink);min-height:44px}
.brand-image{display:block;height:auto;max-height:36px;width:auto;max-width:150px;object-fit:contain}
.brand-text{color:var(--ink);font-weight:900;letter-spacing:-.05em;font-size:28px;line-height:1}
.brand-text>span{color:#ae7600}
.brand-en{font-size:13px;letter-spacing:.18em;font-weight:700;color:#8B7756;max-width:74px;line-height:1.4;white-space:normal}
.header-links{display:flex;gap:clamp(8px,1.4vw,22px);align-items:center;justify-content:center;flex:1}
.header-links a{display:inline-flex;min-height:44px;align-items:center;font-size:14px;font-weight:650;white-space:nowrap;position:relative}
.header-links a.is-current,.genre-scroll a.is-current{color:#876009}
.header-links a.is-current:after{content:"";position:absolute;bottom:3px;left:18%;right:18%;height:3px;border-radius:3px;background:var(--mango)}
.header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}
.icon-control{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:var(--ink);border-radius:12px;flex-shrink:0}
.icon-control:hover{background:var(--warm);border-color:var(--line)}
.search-glyph{width:18px;height:18px;border:2px solid var(--ink);border-radius:50%;position:relative;display:block;transform:scale(.78)}
.search-glyph:after{content:"";height:2px;width:10px;background:var(--ink);position:absolute;right:-8px;bottom:-4px;transform:rotate(45deg);border-radius:4px}
.small-app-link{background:var(--mango);font-size:13px;font-weight:700;color:var(--ink);padding:9px 12px;white-space:nowrap;border-radius:10px;min-height:42px}
.small-app-link:hover{background:#f5bc26;color:#252525}
.hamburger{display:grid;gap:5px;width:22px}
.hamburger i{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px}
.genre-bar{background:#FFF6DF;width:100%}
.genre-scroll{display:flex;align-items:center;gap:33px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ccb785 transparent;white-space:nowrap;min-height:43px;-webkit-overflow-scrolling:touch}
.genre-scroll a{display:flex;align-items:center;flex:0 0 auto;min-height:43px;font-size:13px;font-weight:600;position:relative}
.genre-scroll a.is-current:after{content:"";position:absolute;bottom:0;left:2px;right:2px;height:3px;background:var(--mango)}
/* Side navigation */
.drawer-backdrop{position:fixed;inset:0;background:rgba(20,25,27,.52);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s,visibility .22s;z-index:70}
.drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,86vw);height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);z-index:71;padding:24px 25px 35px;box-shadow:-18px 0 45px rgba(0,0,0,.16);transform:translateX(104%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .22s ease,opacity .22s ease,visibility .22s}
.drawer-open .drawer,.drawer-open .drawer-backdrop{visibility:visible;pointer-events:auto;opacity:1}
.drawer-open .drawer{transform:translateX(0)}
.drawer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.drawer-eyebrow,.overline{display:block;color:#906315;font-size:13px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}
.drawer-close{font-size:28px;line-height:1;color:var(--ink);background:#fff;border-color:var(--line)}
.drawer h2{font-size:24px;margin-bottom:10px}
.drawer>p{font-size:14px;color:var(--muted);margin-bottom:24px}
.drawer-group{border-top:1px solid var(--line);padding:18px 0}
.drawer-group h3{font-size:14px;margin:0 0 12px}
.drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.drawer-grid a{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:9px;min-height:43px;padding:8px 10px;font-size:13px;font-weight:600}
.drawer-grid a span{color:#8d7d5a}
/* Media: no files are generated and absent files produce pure CSS texture. */
.media-shell{position:relative;isolation:isolate;overflow:hidden;width:100%;border-radius:13px;background:linear-gradient(143deg,#FFEDB8 0%,#F8ECCB 45%,#E7F0E6 100%);aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.media-shell img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;object-position:center;position:relative;z-index:2}
.media-poster{aspect-ratio:3/4;background:linear-gradient(155deg,#FFE9AF,#E4EBE0 60%,#E8E1F0)}
.media-phone{aspect-ratio:9/16;background:linear-gradient(150deg,#FFE7A2,#FFEBD2 40%,#E4DFF0)}
.media-square{aspect-ratio:1}
.media-landscape{aspect-ratio:16/9}
.media-widescreen{aspect-ratio:21/10}
.media-portrait{aspect-ratio:4/5}
.media-hero{aspect-ratio:15/9}
.media-hero img{object-fit:contain}
.media-art{position:absolute;inset:0;display:block;overflow:hidden;pointer-events:none}
.media-art:before{content:"";width:55%;aspect-ratio:1;position:absolute;right:-11%;top:-22%;border-radius:50%;background:rgba(255,255,255,.3);box-shadow:0 0 0 18px rgba(255,255,255,.1),0 0 0 46px rgba(255,255,255,.08)}
.media-art:after{content:"";width:53%;height:160%;position:absolute;left:-6%;top:6%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.42));transform:rotate(22deg);border-radius:30%}
.media-orbit{width:58%;aspect-ratio:1;position:absolute;border-radius:50%;border:1px solid rgba(116,112,80,.18);top:20%;left:22%}
.media-spark{position:absolute;width:15%;height:15%;top:23%;left:20%;border-radius:25%;transform:rotate(25deg);background:rgba(255,205,56,.31)}
.media-fallback{position:relative;z-index:1;text-align:center;color:#4a4d43;font-size:13px;font-weight:800;letter-spacing:.22em;max-width:75%;overflow-wrap:anywhere}
.media-poster .media-fallback{font-size:14px;letter-spacing:.13em}
/* Typographic furniture */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 20px;border-radius:11px;border:1px solid transparent;font-weight:750;font-size:14px;transition:transform .16s,background-color .16s}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--mango);color:#202428}
.btn-primary:hover{color:#202428;background:#f5bb22}
.btn-outline{background:#fff;color:#2B2F32;border-color:#d4ab48}
.btn-outline:hover{background:#fff6df;color:#2B2F32}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{color:#fff;background:#444}
.text-link{font-size:14px;font-weight:800;color:#815700;display:inline-flex;align-items:center;gap:5px}
.text-link:hover{text-decoration:underline}
.overline{margin-bottom:10px}
.eyebrow{font-size:13px;font-weight:700;color:var(--muted)}
.section-heading{margin-bottom:23px;display:flex;justify-content:space-between;gap:20px;align-items:end}
.section-heading h2{margin:0 0 8px}
.section-heading p{font-size:14px;color:var(--muted);max-width:650px;margin:0}
.section{padding:28px 0 30px;margin-block:20px 25px}
.section + .section{margin-top:12px}
.section-band{background:var(--warm);padding:54px 0;margin-block:48px}
.section-band-white{background:#fff;padding:52px 0;margin-block:45px}
.section-dark{background:var(--theatre);color:#f5f5ef;padding:50px 0;margin-block:45px}
.section-dark h2,.section-dark h3,.section-dark p{color:#f5f5ef}
.section-dark .overline{color:var(--mango-pale)}
.section-dark .eyebrow{color:#e8dabf}
.section-dark .text-link{color:var(--mango-pale)}
.section-dark .chip{background:#353b39;border-color:#59615f;color:#f8f5ee}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.tag,.chip,.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:3px 10px;font-size:13px;font-weight:750;line-height:1.6;border-radius:100px;background:#fff4d5;color:#775514;border:1px solid #eedda8}
.chip-row{display:flex;flex-wrap:wrap;gap:7px}
.status-pill{background:#EEF3EB;color:#3d5c39;border-color:#d3e2ce}
.inline-note{border-left:3px solid #d59d27;padding:12px 15px;background:#fff5d9;font-size:14px;color:#534c38;border-radius:0 9px 9px 0}
.notice-card{background:var(--soft);border:1px solid var(--line);border-radius:var(--round);padding:18px 20px;font-size:14px}
.notice-card strong{color:var(--ink)}
/* Homepage */
.hero{display:grid;grid-template-columns:.94fr 1.06fr;gap:clamp(25px,5vw,68px);align-items:center;padding-block:50px 40px}
.hero h1{margin:0 0 16px;max-width:500px;font-size:clamp(29px,3.15vw,38px)}
.hero-copy>p{font-size:16px;max-width:530px;margin:0;color:var(--body)}
.hero-visual{border-radius:20px;padding:8px;background:linear-gradient(130deg,#FFE6A1,#FFF7E4 52%,#EEF1E7);box-shadow:var(--shadow)}
.hero-visual .media-shell{border-radius:15px}
.hero-sidelabel{margin-top:15px;font-size:13px;letter-spacing:.16em;font-weight:750;color:#92702c}
.first-look{display:grid;grid-template-columns:1.05fr 1.2fr;gap:22px}
.first-look-feature{background:#fff;padding:20px;display:grid;grid-template-columns:.85fr 1.15fr;gap:20px;border:1px solid var(--line);border-radius:var(--round);box-shadow:var(--shadow);align-items:center}
.first-look-feature .work-card{border:0;box-shadow:none}
.first-look-feature .work-info{padding:4px}
.first-look-feature .work-media-link .media-shell{aspect-ratio:3/4}
.mini-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mini-work-grid .work-card{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:start}
.mini-work-grid .work-media-link .media-shell{border-radius:9px;aspect-ratio:3/4}
.mini-work-grid .work-info{padding:10px 10px 10px 8px}
.mini-work-grid h3{font-size:16px}
.mini-work-grid p{font-size:13px;line-height:1.55}
.mini-work-grid .eyebrow{font-size:13px}
.mini-work-grid .text-link{font-size:13px}
.work-card{min-width:0;background:#fff;overflow:hidden;border:1px solid var(--line);border-radius:var(--round);transition:box-shadow .18s}
.work-card:hover{box-shadow:var(--shadow)}
.work-media-link{display:block;padding:9px 9px 0}
.work-info{padding:15px 17px 18px}
.work-info h3{font-size:19px;margin:7px 0 9px}
.work-info p{font-size:14px;color:var(--muted);line-height:1.67;margin:0 0 13px}
.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.work-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.category-tile{position:relative;overflow:hidden;background:#fff;border-radius:14px;padding:21px 22px;border:1px solid var(--line);min-height:144px;display:flex;flex-direction:column;justify-content:space-between}
.category-tile:before{content:"";width:5px;position:absolute;top:0;left:0;bottom:0;background:var(--sage)}
.category-tile:nth-child(2):before,.category-tile:nth-child(5):before{background:var(--lilac)}
.category-tile:nth-child(3):before,.category-tile:nth-child(6):before{background:var(--orange)}
.category-tile h3{font-size:18px;margin:0 0 6px}
.category-tile p{font-size:13px;color:var(--muted);margin:0}
.category-tile span{color:#896112;font-size:13px;font-weight:800;margin-top:12px}
.category-tile:hover{border-color:#d9af4d;background:#fffdfa}
.story-horizontal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.story-horizontal .work-card .media-shell{aspect-ratio:16/9}
.story-horizontal .work-info{padding:18px}
.feature-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center}
.feature-layout .media-shell{border-radius:20px}
.feature-copy h2{font-size:27px;margin-bottom:17px}
.feature-copy p{color:var(--muted);font-size:15px}
.story-line{list-style:none;margin:19px 0;padding:0}
.story-line li{padding:12px 0 12px 23px;border-bottom:1px solid var(--line);position:relative;font-size:14px}
.story-line li:before{content:"";position:absolute;left:4px;top:23px;width:8px;height:8px;border-radius:50%;background:var(--mango)}
.double-feature{display:grid;grid-template-columns:1fr 1fr;gap:23px}
.feature-essay{border-radius:18px;background:#fff;border:1px solid var(--line);padding:20px;overflow:hidden}
.feature-essay:nth-child(2){background:#f5f0e7}
.feature-essay .media-shell{aspect-ratio:16/9;margin-bottom:19px}
.feature-essay h3{margin:0 0 10px}
.feature-essay p{font-size:14px;color:var(--muted)}
.stagger{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.stagger>*:nth-child(2){margin-top:43px}
.stagger .big-quote{background:#e7ece2;border-radius:15px;padding:32px}
.big-quote{font-size:21px;line-height:1.65;font-weight:750;color:var(--ink)}
.mini-note{font-size:13px;color:var(--muted);font-weight:500}
.update-list{border-top:1px solid var(--line);max-width:1000px}
.update-item{display:grid;grid-template-columns:45px 1fr auto;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:16px 5px}
.update-number{font-weight:800;color:#b98b20;font-size:23px}
.update-item h3{font-size:16px;margin:0 0 4px}
.update-item p{font-size:13px;color:var(--muted);margin:0}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#719569;margin-right:8px;vertical-align:middle}
.status-count{color:var(--muted);font-size:13px;margin-left:7px}
.status-display{font-size:13px;font-weight:700;color:#55664d;white-space:nowrap}
.archive-preview{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.archive-card{display:flex;align-items:center;gap:18px;border-radius:15px;padding:24px;background:#fff;border:1px solid var(--line)}
.archive-card strong{color:var(--ink);font-size:18px}
.archive-card p{font-size:14px;margin:5px 0 0}
.archive-index{padding:20px 25px;border-radius:15px;background:var(--soft)}
.archive-index ul{margin:0;padding-left:19px}
.archive-index li{margin:9px 0;font-size:14px}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.process-step{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px}
.process-step .step-num{font-size:32px;font-weight:850;color:#be901e;line-height:1.2}
.process-step h3{margin:12px 0 9px;font-size:18px}
.process-step p{font-size:14px;margin:0;color:var(--muted)}
.character-rows{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.character-item{border:1px solid var(--line);border-radius:12px;background:#fff;padding:21px}
.character-item strong{font-size:17px;color:var(--ink)}
.character-item p{font-size:14px;margin:9px 0 0;color:var(--muted)}
.editorial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.editorial-theme{padding:23px 18px;background:#fff;border:1px solid var(--line);border-radius:13px}
.editorial-theme .theme-num{font-size:13px;color:#93701f;letter-spacing:.1em;font-weight:800}
.editorial-theme h3{margin:13px 0;font-size:17px}
.editorial-theme p{font-size:13px;color:var(--muted);margin-bottom:14px}
.mobile-feature{display:grid;grid-template-columns:.55fr 1.45fr;gap:32px;align-items:center;max-width:960px;margin-inline:auto}
.mobile-feature .media-shell{max-height:310px}
.bottom-faq{display:grid;grid-template-columns:1fr 1fr;gap:12px 23px}
.bottom-faq details{background:#fff;border:1px solid var(--line);padding:17px;border-radius:11px}
.bottom-faq summary{color:var(--ink);font-weight:750;cursor:pointer}
.bottom-faq p{font-size:14px;color:var(--muted);margin:13px 0 0}
/* Inner pages */
.page-top{padding:40px 0 16px}
.page-lead{max-width:930px}
.page-lead h1{margin:10px 0 18px}
.page-intro{font-size:16px;color:var(--body);line-height:1.8;max-width:900px}
.page-overview{display:grid;grid-template-columns:1.16fr .84fr;gap:25px;align-items:center;margin:20px 0 35px}
.page-overview .media-shell{border-radius:17px}
.page-summary-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:28px}
.page-summary-card h2{margin:0 0 14px}
.page-summary-card p{font-size:15px;line-height:1.85;color:var(--muted)}
.inner-section{padding:22px 0 34px;margin-top:16px}
.inner-section h2{margin-bottom:17px}
.prose{max-width:920px}
.prose p{margin-bottom:18px;line-height:1.88}
.prose strong{color:var(--ink)}
.rich-split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.rich-split.with-media{grid-template-columns:1.15fr .85fr;align-items:center}
.rich-split.reverse{grid-template-columns:.86fr 1.14fr}
.rich-split.reverse>*:first-child{order:2}
.info-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.info-tile{padding:21px;background:#fff;border:1px solid var(--line);border-radius:13px}
.info-tile h3{margin:0 0 11px;font-size:17px}
.info-tile p{font-size:14px;color:var(--muted);margin:0}
.topic-strip{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}
.topic-strip a{border:1px solid var(--line);background:#fff;padding:9px 15px;border-radius:30px;font-size:13px;font-weight:650;min-height:43px;display:inline-flex;align-items:center}
.related-panel{background:#fff;border:1px solid var(--line);padding:24px;border-radius:15px;margin:30px 0 55px}
.related-panel h2{font-size:20px;margin-bottom:15px}
.related-links{display:flex;flex-wrap:wrap;gap:9px}
.related-links a{padding:9px 14px;background:var(--soft);font-weight:700;font-size:13px;min-height:41px;border-radius:9px}
.related-links a:hover{background:var(--warm)}
.editorial-timeline{counter-reset:stage;display:grid;grid-template-columns:1fr;gap:12px;max-width:1000px}
.timeline-entry{padding:23px 24px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--mango);border-radius:0 13px 13px 0;display:grid;grid-template-columns:100px 1fr;gap:20px}
.timeline-entry .timeline-id{font-weight:800;color:#9b6a13}
.timeline-entry h3{margin:0 0 9px;font-size:18px}
.timeline-entry p{margin:0;font-size:15px}
.mini-article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.mini-article{background:#fff;padding:24px;border-radius:15px;border:1px solid var(--line)}
.mini-article h3{margin:0 0 12px}
.mini-article p{margin:0;font-size:15px;color:var(--muted)}
.topic-quote{border-radius:16px;padding:29px;background:#E7EDE8;color:#2d4031;font-size:21px;font-weight:700;line-height:1.66}
.topic-quote.sand{background:#fff1d0;color:#694b1f}
.topic-quote.lilac{background:#eeebf4;color:#4d445e}
.highlight-panel{border-radius:16px;background:var(--warm);padding:28px}
.highlight-panel h3{margin-bottom:9px}
.highlight-panel p{font-size:15px;margin:0}
.principle-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.principle-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px}
.principle-card .num{font-size:27px;font-weight:850;color:#C19428}
.principle-card h3{margin:10px 0}
.principle-card p{font-size:14px;margin:0;color:var(--muted)}
/* Detail + episode */
.breadcrumb{font-size:13px;color:var(--muted);padding-top:30px;display:flex;flex-wrap:wrap;align-items:center;gap:9px}
.breadcrumb a{color:#765719}
.detail-hero{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:40px;align-items:center;padding:25px 0 40px}
.detail-hero .media-shell{aspect-ratio:3/4;border-radius:18px;max-height:530px}
.detail-hero h1{font-size:clamp(28px,4vw,42px);margin:9px 0 12px}
.detail-hook{font-size:20px;font-weight:650;color:var(--ink)}
.detail-info{margin:17px 0;font-size:14px;color:var(--muted)}
.detail-status{padding:12px 16px;border-radius:11px;background:#fff;border:1px solid var(--line);margin:20px 0;font-size:14px;color:#495c42}
.detail-story{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:35px}
.cast-list{margin:0;padding:0;list-style:none}
.cast-list li{border-bottom:1px solid var(--line);padding:11px 0;font-size:14px}
.episode-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.episode-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}
.episode-card h3{font-size:17px;margin:6px 0 12px}
.episode-card p{font-size:14px;color:var(--muted)}
.episode-card .episode-status{font-size:13px;color:#5c7255;font-weight:800}
.episode-card .episode-id{font-size:13px;letter-spacing:.11em;color:#997020;font-weight:800}
.episode-card a{display:inline-flex;font-weight:750;font-size:14px;color:#765719;min-height:36px;align-items:center}
.player-frame{background:var(--theatre);padding:20px;border-radius:18px;color:#f6f5ef;min-width:0}
.player-frame video{display:block;width:100%;max-width:100%;max-height:66vh;aspect-ratio:16/9;background:#080a0c;object-fit:contain;border-radius:10px}
.video-unavailable{background:radial-gradient(circle at 75% 30%,#38413e,#1d2326 60%,#141719);aspect-ratio:16/9;border:1px solid #41494a;border-radius:11px;padding:34px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:12px}
.video-unavailable strong{font-size:22px;color:#fff}
.video-unavailable p{max-width:500px;color:#dce0dc;font-size:14px;margin:0}
.episode-switcher{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;flex-wrap:wrap}
.episode-switcher a{display:inline-flex;align-items:center;padding:9px 14px;border:1px solid var(--line);border-radius:9px;min-height:43px;background:#fff;color:var(--ink);font-size:14px;font-weight:750}
.episode-switcher a:hover{background:var(--warm)}
/* Search, reference, FAQ */
.search-form{display:flex;gap:10px;max-width:800px;margin:22px 0}
.search-form input{flex:1;min-width:0;border:1px solid #cbbf9f;background:#fff;border-radius:11px;padding:12px 15px;font-size:16px;min-height:47px}
.search-form button{min-width:105px}
.result-summary{font-size:14px;color:var(--muted);margin:8px 0 22px}
.result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.result-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:21px}
.result-card h2{font-size:19px;margin:6px 0 9px}
.result-card p{font-size:14px;color:var(--muted)}
.faq-list{display:grid;gap:13px;max-width:1040px}
.faq-list details{padding:19px 21px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.faq-list summary{font-weight:750;color:var(--ink);font-size:16px;cursor:pointer}
.faq-list details p{font-size:15px;color:var(--body);margin:13px 0 0}
.faq-list details[open]{border-color:#dcb963}
.contact-template{background:#fff;border:1px solid var(--line);padding:20px 24px;border-radius:12px}
.contact-template p{font-size:14px;line-height:1.9}
/* Footer */
.site-footer{background:var(--theatre);color:#f3f1e9;padding:56px 0 24px;margin-top:60px}
.site-footer h2,.site-footer p,.site-footer a{color:#f4f3ee}
.footer-top{display:grid;grid-template-columns:260px minmax(0,1fr);gap:55px}
.footer-brand .brand{margin-bottom:20px}
.brand-footer .brand-text{color:#fff}
.brand-footer .brand-en{color:#efe2b9}
.footer-brand p{font-size:14px;color:#dedfd8;margin:0 0 18px}
.footer-note{font-size:13px;color:#ffdb77;line-height:1.9}
.footer-navs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.footer-column h2{font-size:16px;color:#ffe181;border-bottom:1px solid #53523e;padding-bottom:12px;margin:2px 0 13px}
.footer-column a{display:block;font-size:13px;color:#e9e9e2;padding:5px 0;line-height:1.65}
.footer-column a:hover{color:#ffdc7c}
.footer-bottom{border-top:1px solid #464a49;margin-top:37px;padding-top:19px;display:grid;grid-template-columns:.75fr 1.25fr;gap:20px}
.footer-bottom p{font-size:13px;color:#c5ccc9;line-height:1.8;margin:0}
.mobile-dock{display:none}
/* Tablet */
@media (max-width:1180px){
  .header-links{gap:8px}
  .header-links a{font-size:13px}
  .brand-en{display:none}
  .first-look{grid-template-columns:1fr}
  .mini-work-grid .work-card{grid-template-columns:100px minmax(0,1fr)}
  .work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:940px){
  .header-links{display:none}
  .header-inner{justify-content:space-between}
  .hero{grid-template-columns:1fr 1fr;gap:22px}
  .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-top{grid-template-columns:1fr;gap:26px}
  .footer-brand{max-width:440px}
}
@media (max-width:680px){
  :root{--round:13px}
  .wrap{width:calc(100% - 32px)}
  .header-bar,.genre-bar,.site-header{width:100%;max-width:none;margin:0;background-clip:padding-box}
  .header-inner{height:62px;gap:8px}
  .brand{gap:4px;flex-shrink:1;min-width:0}
  .brand-text{font-size:24px}
  .brand-image{max-width:112px;max-height:30px}
  .brand-en{display:none}
  .header-actions{gap:0}
  .small-app-link{display:none}
  .genre-scroll{min-height:43px;gap:22px}
  .genre-scroll a{font-size:13px}
  .only-mobile{display:block}
  h1{font-size:clamp(25px,7vw,29px)}
  h2{font-size:22px}
  .section{padding:14px 0 23px;margin-block:18px 14px}
  .section-band,.section-band-white,.section-dark{padding:32px 0;margin-block:28px}
  .hero{grid-template-columns:1fr;gap:20px;padding:29px 0 21px}
  .hero h1{font-size:29px}
  .hero-copy>p{font-size:15px}
  .hero-visual{padding:5px}
  .section-heading{margin-bottom:16px}
  .section-heading h2{font-size:22px}
  .first-look-feature{display:block;padding:10px}
  .first-look-feature .work-card{display:grid;grid-template-columns:125px 1fr;align-items:center}
  .first-look-feature .work-info{padding:10px 10px 10px 0}
  .first-look-feature .work-info h3{font-size:17px}
  .first-look-feature .work-info p{font-size:13px}
  .first-look-feature .work-media-link{padding:4px 12px 4px 4px}
  .mini-work-grid{grid-template-columns:1fr;gap:10px}
  .mini-work-grid .work-card{grid-template-columns:103px minmax(0,1fr)}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .category-tile{min-height:145px;padding:15px 13px}
  .category-tile h3{font-size:16px}
  .category-tile p,.category-tile span{font-size:13px}
  .story-horizontal,.work-grid,.work-grid.three,.double-feature,.stagger,.feature-layout,.archive-preview,.character-rows,.bottom-faq,.mini-article-grid,.info-tiles,.principle-list,.result-list,.rich-split,.rich-split.with-media,.rich-split.reverse,.page-overview,.detail-hero,.detail-story{grid-template-columns:1fr}
  .story-horizontal .work-card{display:grid;grid-template-columns:132px 1fr;align-items:center}
  .story-horizontal .work-media-link .media-shell{aspect-ratio:3/4}
  .story-horizontal .work-info h3{font-size:17px}
  .stagger>*:nth-child(2){margin-top:0}
  .feature-layout{gap:18px}
  .feature-layout .feature-copy{order:2}
  .work-grid{gap:13px}
  .work-grid .work-card{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:start}
  .work-grid .work-info{padding:13px 13px 13px 0}
  .work-grid .work-info h3{font-size:17px}
  .work-grid .work-info p{font-size:13px}
  .work-grid .work-media-link{padding:9px 12px 9px 9px}
  .process-grid{gap:11px}
  .process-step{padding:18px}
  .update-item{grid-template-columns:30px minmax(0,1fr);gap:9px}
  .update-item .status-display{grid-column:2;white-space:normal}
  .archive-card{padding:17px}
  .editorial-grid{gap:10px}
  .editorial-theme{padding:17px 14px}
  .mobile-feature{grid-template-columns:100px 1fr;gap:14px}
  .mobile-feature .media-shell{aspect-ratio:9/16}
  .page-top{padding-top:27px}
  .page-summary-card{padding:18px}
  .page-intro{font-size:15px}
  .inner-section{padding-bottom:21px}
  .rich-split.reverse>*:first-child{order:0}
  .detail-hero{gap:20px}
  .detail-hero .media-shell{max-height:345px;max-width:270px}
  .detail-hook{font-size:18px}
  .episode-list{grid-template-columns:1fr}
  .timeline-entry{grid-template-columns:1fr;gap:8px;padding:18px}
  .video-unavailable{padding:18px;min-height:245px}
  .video-unavailable strong{font-size:18px}
  .search-form{gap:7px}
  .search-form button{min-width:88px;padding-inline:11px}
  .footer-top{grid-template-columns:1fr}
  .footer-navs{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}
  .footer-bottom{grid-template-columns:1fr;gap:12px}
  .site-footer{padding-bottom:110px;margin-top:38px}
  .mobile-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;z-index:30;left:0;right:0;bottom:0;width:100%;padding:5px 10px calc(6px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--line);box-shadow:0 -5px 18px rgba(0,0,0,.06)}
  .mobile-dock a{min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#5B6262;font-size:13px;font-weight:750;border-radius:8px}
  .mobile-dock a.active{color:#8f6208;background:#fff6da}
  .dock-symbol{font-size:21px;line-height:1.25}
  main{padding-bottom:20px}
}
@media (max-width:360px){
  .wrap{width:calc(100% - 32px)}
  .brand-text{font-size:22px}
  .brand-image{max-width:96px}
  .hero h1{font-size:27px}
  .category-tile{min-height:156px;padding:14px 11px}
  .first-look-feature .work-card{grid-template-columns:101px 1fr}
  .story-horizontal .work-card,.work-grid .work-card{grid-template-columns:101px 1fr}
  .work-info h3{font-size:16px}
  .work-info p{font-size:13px}
  .mobile-feature{grid-template-columns:85px 1fr}
  .footer-navs{gap:18px 11px}
  .btn-row{gap:8px}
  .btn{font-size:13px;padding-inline:14px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
/* Focused technology contrast on the future page. */
.future-scene{background:#15191C;border-radius:18px;padding:32px 36px;color:#FAFAF5}
.future-scene h2{color:#FAFAF5}
.future-scene p{color:#D9E0DB;max-width:900px}
.future-scene .overline{color:#FFE07A}
.future-scene .chip{background:#343B38;color:#FAFAF5;border-color:#64716D}
@media (max-width:680px){.future-scene{padding:23px 20px}}
/* The unavailable-player notice must never derive a minimum width from its aspect ratio. */
.video-unavailable{width:100%;min-width:0;max-width:100%;overflow:hidden;overflow-wrap:anywhere}
@media (max-width:680px){
  .video-unavailable{aspect-ratio:auto;min-height:245px;padding:18px 12px}
}
