:root{--bg:#fafafc;--surface:#fff;--surface-2:#f2f1f6;--ink:#2b2933;--muted:#777481;--line:#e6e3eb;--purple:#7468b5;--purple-dark:#54498f;--gold:#e9a34a;--deep:#24212e;--shadow:0 20px 60px rgba(36,33,46,.08);--radius:24px;--radius-sm:16px;--shell:min(1180px,calc(100% - 40px));--header:78px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:10px 14px;background:var(--deep);color:#fff;border-radius:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(230,227,235,.9);backdrop-filter:blur(14px)}.header-inner{height:var(--header);display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:11px;min-width:max-content}.brand img{width:44px;height:44px;object-fit:contain;border-radius:12px}.brand span{display:grid;line-height:1.2}.brand strong{font-size:1.04rem;color:var(--deep)}.brand small{font-size:.72rem;color:var(--muted);margin-top:4px}.site-nav{margin-left:auto;display:flex;align-items:center;gap:8px}.site-nav a{padding:10px 14px;border-radius:999px;color:#57535f;font-size:.95rem}.site-nav a:hover,.site-nav a:focus-visible{background:var(--surface-2);color:var(--deep)}.site-nav a[aria-current=page]{background:#ece9f7;color:var(--purple-dark);font-weight:700}.menu-button{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 13px;color:var(--deep)}.hero{padding:68px 0 38px;background:linear-gradient(180deg,#fff 0%,#fafafc 100%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:54px}.hero-copy h1,.page-hero h1{font-size:clamp(2.6rem,5vw,5.1rem);line-height:1.06;letter-spacing:-.055em;margin:12px 0 22px;color:var(--deep)}.hero-copy h1{max-width:820px}.eyebrow{margin:0 0 9px;color:var(--purple-dark);font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hero-lead,.page-hero p{font-size:1.08rem;color:#625e69;max-width:720px;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;border-radius:14px;font-weight:700;border:1px solid transparent;transition:.2s ease}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--purple);color:#fff;box-shadow:0 12px 26px rgba(116,104,181,.22)}.button--primary:hover{background:var(--purple-dark)}.button--ghost{background:#fff;border-color:var(--line)}.button--outline{border-color:#c9c4d4;background:#fff}.hero-notes{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.hero-notes span,.tag-row span{font-size:.84rem;padding:6px 10px;border-radius:999px;background:#f0eef7;color:#5a5373}.hero-visual{margin:0;position:relative;padding:14px;background:#fff;border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow)}.hero-visual img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:22px}.hero-visual figcaption{position:absolute;left:28px;right:28px;bottom:28px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);color:#4d4955;font-size:.88rem}.section{padding:82px 0}.section--tight{padding-top:56px}.section--muted{background:var(--surface-2)}.section--soft{background:#f7f5fb}.section--faq{padding-top:66px}.section-heading{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:32px}.section-heading h2,.split-feature h2,.two-column h2,.footer-bridge h2{margin:0;font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:1.14;letter-spacing:-.035em;color:var(--deep)}.section-heading>p{max-width:520px;margin:0;color:var(--muted)}.media-grid{display:grid;gap:22px}.media-grid--three{grid-template-columns:repeat(3,1fr)}.media-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-width:0;box-shadow:0 10px 26px rgba(36,33,46,.04)}.media-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#eceaf0}.media-card__body{padding:22px}.media-card h3{margin:4px 0 10px;font-size:1.3rem;line-height:1.3}.media-card p{margin:0;color:var(--muted)}.media-card .meta{font-size:.86rem;margin-top:14px;padding-top:14px;border-top:1px solid #eeeaf2}.text-link{display:inline-flex;margin-top:18px;color:var(--purple-dark);font-weight:800}.text-link::after{content:"→";margin-left:7px;transition:.2s}.text-link:hover::after{transform:translateX(3px)}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.split-feature--reverse .split-feature__visual{order:2}.split-feature__visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}.split-feature__copy p:not(.eyebrow){color:#615d68}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.insight{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line)}.insight h3{margin:0 0 9px;font-size:1.12rem}.insight p{margin:0;color:var(--muted);font-size:.95rem}.official-strip{display:flex;justify-content:space-between;align-items:center;gap:34px;padding:34px 36px;background:#fff;border:1px solid var(--line);border-radius:26px}.official-strip p:not(.eyebrow){margin-bottom:0;color:var(--muted)}.faq-list{display:grid;gap:12px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:4px 18px}.faq-list summary{cursor:pointer;font-weight:750;padding:16px 36px 16px 2px;position:relative;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:4px;top:13px;font-size:1.35rem;color:var(--purple)}.faq-list details[open] summary::after{content:"−"}.faq-list p{margin:-2px 0 18px;color:var(--muted);max-width:900px}.breadcrumb{width:var(--shell);margin:18px auto 0;font-size:.84rem;color:var(--muted)}.breadcrumb ol{display:flex;gap:8px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.breadcrumb li:not(:last-child)::after{content:"/";margin-left:8px;color:#b8b4be}.breadcrumb a:hover{color:var(--purple)}.page-hero{padding:48px 0 58px}.page-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}.page-hero h1{font-size:clamp(2.4rem,4.6vw,4.4rem)}.page-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.content-stack{display:grid;gap:28px}.feature-row{display:grid;grid-template-columns:340px 1fr;gap:34px;align-items:center;padding:22px;background:#fff;border:1px solid var(--line);border-radius:26px}.feature-row__visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px}.feature-row__copy h2{margin:0 0 10px;font-size:1.7rem}.feature-row__copy p{margin:0;color:var(--muted)}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.two-column{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:start}.two-column p{color:#625e69}.checklist,.official-card{padding:26px;border-radius:22px;background:#fff;border:1px solid var(--line)}.checklist h3,.official-card h3{margin-top:0}.checklist ul{margin:0;padding-left:1.2em;color:#5f5b66}.checklist li+li{margin-top:9px}.three-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.three-notes article{padding:28px;border-radius:24px;background:#fff;border:1px solid var(--line)}.three-notes span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#efedf7;color:var(--purple-dark);font-weight:800}.three-notes h2{font-size:1.45rem;margin:18px 0 8px}.three-notes p{margin:0;color:var(--muted)}.link-cluster{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.link-cluster a{padding:9px 12px;border-radius:12px;background:#fff;border:1px solid var(--line);font-weight:700}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.fact-grid article{padding:28px;background:#fff;border:1px solid var(--line);border-radius:22px}.fact-grid span{display:block;color:var(--muted);font-size:.82rem}.fact-grid strong{display:block;font-size:1.35rem;margin:7px 0 9px;color:var(--deep)}.fact-grid p{margin:0;color:var(--muted)}.official-card img{border-radius:16px;margin-bottom:18px;aspect-ratio:16/9;object-fit:cover}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.route-grid a{display:grid;gap:6px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line);transition:.2s}.route-grid a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(36,33,46,.06)}.route-grid span{color:var(--muted);font-size:.92rem}.footer-bridge{padding:52px 0 0}.footer-bridge__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px;border-radius:26px 26px 0 0;background:var(--deep);color:#fff}.footer-bridge .eyebrow{color:#c9c2f1}.footer-bridge h2{color:#fff;font-size:clamp(1.6rem,3vw,2.5rem)}.footer-bridge__links{display:flex;flex-wrap:wrap;gap:10px}.footer-bridge__links a{padding:10px 14px;border-radius:12px;background:#fff;color:var(--deep);font-weight:750}.site-footer{background:var(--deep);color:#e8e5ed;padding:38px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;padding-top:16px}.footer-grid p{color:#aaa4b1;max-width:550px}.footer-grid nav{display:grid;grid-template-columns:repeat(2,auto);gap:8px 18px}.footer-grid nav a{color:#d3cfda}.footer-grid nav a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;margin-top:28px;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem;color:#9d97a5}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid rgba(233,163,74,.55);outline-offset:3px}
@media (max-width:980px){:root{--shell:min(100% - 30px,1180px)}.hero-grid,.page-hero__grid,.split-feature,.two-column{grid-template-columns:1fr}.hero-visual{max-width:720px}.media-grid--three,.insight-grid,.three-notes,.fact-grid,.route-grid{grid-template-columns:repeat(2,1fr)}.feature-row{grid-template-columns:280px 1fr}.split-feature--reverse .split-feature__visual{order:0}.section-heading{align-items:start;flex-direction:column}.official-strip{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-grid nav{justify-content:start}}
@media (max-width:720px){:root{--header:70px;--shell:min(100% - 22px,1180px)}.site-header{backdrop-filter:none}.brand small{display:none}.menu-button{display:inline-flex}.site-nav{position:absolute;left:11px;right:11px;top:calc(100% + 8px);display:none;flex-direction:column;align-items:stretch;padding:10px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.site-nav[data-open=true]{display:flex}.site-nav a{border-radius:10px}.hero{padding-top:40px}.hero-grid{gap:30px}.hero-copy h1,.page-hero h1{letter-spacing:-.04em}.hero-visual{padding:9px;border-radius:22px}.hero-visual img{border-radius:16px}.hero-visual figcaption{position:static;background:transparent;padding:12px 5px 4px}.section{padding:58px 0}.media-grid--three,.insight-grid,.three-notes,.fact-grid,.route-grid{grid-template-columns:1fr}.feature-row{grid-template-columns:1fr;padding:14px}.feature-row__copy{padding:4px 4px 10px}.footer-bridge__inner{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column}.page-hero{padding-top:32px}.page-hero__grid{gap:28px}.official-strip{padding:26px}}
@media (max-width:460px){.header-inner{gap:12px}.brand img{width:38px;height:38px}.brand strong{font-size:.95rem}.hero-actions,.footer-bridge__links{flex-direction:column;align-items:stretch}.button{width:100%}.section-heading h2,.split-feature h2,.two-column h2{font-size:1.8rem}.feature-row__copy h2{font-size:1.45rem}.breadcrumb{margin-top:12px}.footer-grid nav{grid-template-columns:1fr}.hero-notes{gap:6px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.space-y-1>*+*{margin-top:1px}
.space-y-2>*+*{margin-top:2px}
.space-y-3>*+*{margin-top:3px}
.space-y-4>*+*{margin-top:4px}
.space-y-5>*+*{margin-top:5px}
.space-y-6>*+*{margin-top:6px}
.space-y-7>*+*{margin-top:7px}
.space-y-8>*+*{margin-top:8px}
.space-y-9>*+*{margin-top:9px}
.space-y-10>*+*{margin-top:10px}
.space-y-11>*+*{margin-top:11px}
.space-y-12>*+*{margin-top:12px}
.space-y-13>*+*{margin-top:13px}
.space-y-14>*+*{margin-top:14px}
.space-y-15>*+*{margin-top:15px}
.space-y-16>*+*{margin-top:16px}
.space-y-17>*+*{margin-top:17px}
.space-y-18>*+*{margin-top:18px}
.space-y-19>*+*{margin-top:19px}
.space-y-20>*+*{margin-top:20px}
.space-y-21>*+*{margin-top:21px}
.space-y-22>*+*{margin-top:22px}
.space-y-23>*+*{margin-top:23px}
.space-y-24>*+*{margin-top:24px}
.space-y-25>*+*{margin-top:25px}
.space-y-26>*+*{margin-top:26px}
.space-y-27>*+*{margin-top:27px}
.space-y-28>*+*{margin-top:28px}
.space-y-29>*+*{margin-top:29px}
.space-y-30>*+*{margin-top:30px}
.space-y-31>*+*{margin-top:31px}
.space-y-32>*+*{margin-top:32px}
.space-y-33>*+*{margin-top:32px}
.space-y-34>*+*{margin-top:32px}
.space-y-35>*+*{margin-top:32px}
.space-y-36>*+*{margin-top:32px}
.space-y-37>*+*{margin-top:32px}
.space-y-38>*+*{margin-top:32px}
.space-y-39>*+*{margin-top:32px}
.space-y-40>*+*{margin-top:32px}
.space-y-41>*+*{margin-top:32px}
.space-y-42>*+*{margin-top:32px}
.space-y-43>*+*{margin-top:32px}
.space-y-44>*+*{margin-top:32px}
.space-y-45>*+*{margin-top:32px}
.space-y-46>*+*{margin-top:32px}
.space-y-47>*+*{margin-top:32px}
.space-y-48>*+*{margin-top:32px}
.space-y-49>*+*{margin-top:32px}
.space-y-50>*+*{margin-top:32px}
.space-y-51>*+*{margin-top:32px}
.space-y-52>*+*{margin-top:32px}
.space-y-53>*+*{margin-top:32px}
.space-y-54>*+*{margin-top:32px}
.space-y-55>*+*{margin-top:32px}
.space-y-56>*+*{margin-top:32px}
.space-y-57>*+*{margin-top:32px}
.space-y-58>*+*{margin-top:32px}
.space-y-59>*+*{margin-top:32px}
.space-y-60>*+*{margin-top:32px}
.space-y-61>*+*{margin-top:32px}
.space-y-62>*+*{margin-top:32px}
.space-y-63>*+*{margin-top:32px}
.space-y-64>*+*{margin-top:32px}
.space-y-65>*+*{margin-top:32px}
.space-y-66>*+*{margin-top:32px}
.space-y-67>*+*{margin-top:32px}
.space-y-68>*+*{margin-top:32px}
.space-y-69>*+*{margin-top:32px}
.space-y-70>*+*{margin-top:32px}
.space-y-71>*+*{margin-top:32px}
.space-y-72>*+*{margin-top:32px}
.space-y-73>*+*{margin-top:32px}
.space-y-74>*+*{margin-top:32px}
.space-y-75>*+*{margin-top:32px}
.space-y-76>*+*{margin-top:32px}
.space-y-77>*+*{margin-top:32px}
.space-y-78>*+*{margin-top:32px}
.space-y-79>*+*{margin-top:32px}
.space-y-80>*+*{margin-top:32px}
.pad-1{padding:1px}
.pad-2{padding:2px}
.pad-3{padding:3px}
.pad-4{padding:4px}
.pad-5{padding:5px}
.pad-6{padding:6px}
.pad-7{padding:7px}
.pad-8{padding:8px}
.pad-9{padding:9px}
.pad-10{padding:10px}
.pad-11{padding:11px}
.pad-12{padding:12px}
.pad-13{padding:13px}
.pad-14{padding:14px}
.pad-15{padding:15px}
.pad-16{padding:16px}
.pad-17{padding:17px}
.pad-18{padding:18px}
.pad-19{padding:19px}
.pad-20{padding:20px}
.pad-21{padding:21px}
.pad-22{padding:22px}
.pad-23{padding:23px}
.pad-24{padding:24px}
.pad-25{padding:25px}
.pad-26{padding:26px}
.pad-27{padding:27px}
.pad-28{padding:28px}
.pad-29{padding:29px}
.pad-30{padding:30px}
.pad-31{padding:31px}
.pad-32{padding:32px}
.pad-33{padding:33px}
.pad-34{padding:34px}
.pad-35{padding:35px}
.pad-36{padding:36px}
.pad-37{padding:36px}
.pad-38{padding:36px}
.pad-39{padding:36px}
.pad-40{padding:36px}
.pad-41{padding:36px}
.pad-42{padding:36px}
.pad-43{padding:36px}
.pad-44{padding:36px}
.pad-45{padding:36px}
.pad-46{padding:36px}
.pad-47{padding:36px}
.pad-48{padding:36px}
.pad-49{padding:36px}
.pad-50{padding:36px}
.pad-51{padding:36px}
.pad-52{padding:36px}
.pad-53{padding:36px}
.pad-54{padding:36px}
.pad-55{padding:36px}
.pad-56{padding:36px}
.pad-57{padding:36px}
.pad-58{padding:36px}
.pad-59{padding:36px}
.pad-60{padding:36px}
@media (min-width:1100px){.desktop-gap-8{gap:8px}.desktop-gap-9{gap:9px}.desktop-gap-10{gap:10px}.desktop-gap-11{gap:11px}.desktop-gap-12{gap:12px}.desktop-gap-13{gap:13px}.desktop-gap-14{gap:14px}.desktop-gap-15{gap:15px}.desktop-gap-16{gap:16px}.desktop-gap-17{gap:17px}.desktop-gap-18{gap:18px}.desktop-gap-19{gap:19px}.desktop-gap-20{gap:20px}.desktop-gap-21{gap:21px}.desktop-gap-22{gap:22px}.desktop-gap-23{gap:23px}.desktop-gap-24{gap:24px}.desktop-gap-25{gap:25px}.desktop-gap-26{gap:26px}.desktop-gap-27{gap:27px}.desktop-gap-28{gap:28px}.desktop-gap-29{gap:29px}.desktop-gap-30{gap:30px}.desktop-gap-31{gap:31px}.desktop-gap-32{gap:32px}.desktop-gap-33{gap:33px}.desktop-gap-34{gap:34px}.desktop-gap-35{gap:35px}.desktop-gap-36{gap:36px}.desktop-gap-37{gap:37px}.desktop-gap-38{gap:38px}.desktop-gap-39{gap:39px}.desktop-gap-40{gap:40px}}
@media (max-width:719px){.mobile-pad-4{padding-inline:4px}.mobile-pad-5{padding-inline:5px}.mobile-pad-6{padding-inline:6px}.mobile-pad-7{padding-inline:7px}.mobile-pad-8{padding-inline:8px}.mobile-pad-9{padding-inline:9px}.mobile-pad-10{padding-inline:10px}.mobile-pad-11{padding-inline:11px}.mobile-pad-12{padding-inline:12px}.mobile-pad-13{padding-inline:13px}.mobile-pad-14{padding-inline:14px}.mobile-pad-15{padding-inline:15px}.mobile-pad-16{padding-inline:16px}.mobile-pad-17{padding-inline:17px}.mobile-pad-18{padding-inline:18px}.mobile-pad-19{padding-inline:19px}.mobile-pad-20{padding-inline:20px}.mobile-pad-21{padding-inline:21px}.mobile-pad-22{padding-inline:22px}.mobile-pad-23{padding-inline:23px}.mobile-pad-24{padding-inline:24px}}
/* Browsing index */
.browse-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.browse-index__item{position:relative;display:flex;flex-direction:column;min-height:250px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}
.browse-index__item::before{content:"";position:absolute;inset:0 auto auto 0;width:4px;height:100%;background:linear-gradient(180deg,var(--purple),rgba(116,104,181,.12))}
.browse-index__kind{margin:0 0 9px!important;color:var(--purple-dark)!important;font-size:.77rem!important;font-weight:800;letter-spacing:.08em}
.browse-index__item h3{margin:0 0 10px;font-size:1.13rem;line-height:1.35;color:var(--deep)}
.browse-index__item>p:not(.browse-index__kind){margin:0;color:var(--muted);font-size:.91rem;line-height:1.75}
.browse-index__item>span{display:inline-flex;align-self:flex-start;margin-top:auto;padding-top:18px;color:#5d5767;font-size:.8rem;font-weight:700}
.browse-index__item:hover{border-color:#d8d3e3;box-shadow:0 14px 36px rgba(36,33,46,.055)}
@media (max-width:980px){.browse-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.browse-index{grid-template-columns:1fr}.browse-index__item{min-height:auto}}

/* Detail refinements for long-form media browsing */
.content-stack>.feature-row:nth-child(even){background:#fcfbfd}
.feature-row[id]{scroll-margin-top:calc(var(--header) + 22px)}
.feature-row__copy .meta{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:.88rem}
.page-hero--cinema{background:linear-gradient(180deg,#faf9fd 0%,#f5f3fa 100%)}
.page-hero--official{background:linear-gradient(180deg,#fff 0%,#f7f6fa 100%)}
.page-hero--cinema img,.page-hero--official img{border:1px solid #ebe8ef}
.official-card{box-shadow:0 16px 44px rgba(36,33,46,.05)}
.official-card p{margin-bottom:0}
.three-notes article:nth-child(2){transform:translateY(12px)}
.three-notes article:nth-child(3){transform:translateY(24px)}
@media (max-width:980px){.three-notes article:nth-child(2),.three-notes article:nth-child(3){transform:none}}

/* Readability and print behavior */
::selection{background:#ded9f4;color:#2f2949}
@media print{
  .site-header,.menu-button,.footer-bridge,.site-footer,.hero-actions{display:none!important}
  body{background:#fff;color:#000;font-size:11pt}
  .shell{width:100%;max-width:none}
  .section,.hero,.page-hero{padding:24px 0}
  .media-grid--three,.insight-grid,.browse-index,.three-notes,.fact-grid,.route-grid{grid-template-columns:repeat(2,1fr)}
  .media-card,.insight,.browse-index__item,.feature-row,.fact-grid article{break-inside:avoid;box-shadow:none;border-color:#bbb}
  a{text-decoration:underline}
}

/* Content discovery library */
.library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.library-item{display:flex;flex-direction:column;min-height:260px;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.library-item__top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:16px}
.library-item__top span{font-size:.75rem;font-weight:800;color:var(--purple-dark);padding:5px 8px;background:#efedf7;border-radius:999px}
.library-item__top em{font-style:normal;font-size:.72rem;color:var(--muted);text-align:right}
.library-item h3{margin:0 0 10px;font-size:1.08rem;line-height:1.38;color:var(--deep)}
.library-item p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.72}
.library-item:hover{border-color:#d7d1e5;box-shadow:0 12px 28px rgba(36,33,46,.05)}
@media (max-width:1080px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:780px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-item{min-height:230px}}
@media (max-width:520px){.library-grid{grid-template-columns:1fr}.library-item{min-height:auto}}

/* Progressive enhancement: content is visible by default and only animates when JS + observer are available. */
.has-observer .media-card,.has-observer .browse-index__item,.has-observer .library-item{opacity:0;transform:translateY(12px);transition:opacity .42s ease,transform .42s ease,box-shadow .2s ease,border-color .2s ease}
.has-observer .media-card.is-visible,.has-observer .browse-index__item.is-visible,.has-observer .library-item.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.has-observer .media-card,.has-observer .browse-index__item,.has-observer .library-item{opacity:1;transform:none}}

/* Fine-grained layout rules for readable Chinese content and stable image behavior. */
.hero-copy,.page-hero__grid>div,.split-feature__copy,.feature-row__copy{min-width:0}
.hero-copy p,.page-hero p,.split-feature__copy p,.feature-row__copy p,.insight p,.library-item p,.browse-index__item p{overflow-wrap:anywhere}
.media-card img,.feature-row img,.split-feature img,.page-hero img,.official-card img{background:#efedf3}
.media-card,.feature-row,.insight,.browse-index__item,.library-item,.official-card,.fact-grid article{contain:layout paint}
.site-nav a,.button,.text-link,.link-cluster a,.route-grid a,.footer-bridge__links a{touch-action:manipulation}
.site-nav a,.button,.menu-button{min-height:44px}
.faq-list summary{min-height:52px}
.feature-row__visual,.split-feature__visual,.hero-visual,.official-card{isolation:isolate}
.feature-row__visual img,.split-feature__visual img,.page-hero img{object-position:center}
@supports (content-visibility:auto){.feature-row,.browse-index__item,.library-item{content-visibility:auto;contain-intrinsic-size:1px 300px}}
@supports not (backdrop-filter:blur(2px)){.site-header{background:#fff}.hero-visual figcaption{background:#fff}}

/* Small-screen spacing adjustments preserve hierarchy without horizontal overflow. */
@media (max-width:380px){
  :root{--shell:min(100% - 18px,1180px)}
  .brand{gap:8px}.brand img{width:34px;height:34px}.brand strong{font-size:.9rem}
  .menu-button{padding-inline:10px}
  .hero-copy h1,.page-hero h1{font-size:2.18rem}
  .hero-lead,.page-hero p{font-size:1rem}
  .section{padding:48px 0}
  .media-card__body,.insight,.browse-index__item,.library-item{padding:18px}
  .footer-bridge__inner{padding:26px 20px}
}
