:root{
  --brand:#A9503F;
  --brand-dark:#7E382E;
  --gold:#D9A15B;
  --ink:#241F1D;
  --text:#332E2B;
  --muted:#746B65;
  --paper:#F8F5F1;
  --paper-2:#EFE8E1;
  --accent:#E07A3F;
  --white:#FFFDFB;
  --line:#D9CEC5;
  --shadow:0 22px 60px rgba(53,40,34,.11);
  --shadow-soft:0 10px 34px rgba(53,40,34,.08);
  --radius:24px;
  --radius-sm:14px;
  --shell:min(1180px,calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--text);font-family:"Noto Sans SC","Microsoft YaHei",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.75;text-rendering:optimizeLegibility}
body.is-search-open{overflow:hidden}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgba(224,122,63,.42);outline-offset:3px}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
button{cursor:pointer}
figure,p,h1,h2,h3,h4,ul,ol{margin-top:0}
h1,h2,h3,h4{font-family:"Noto Serif SC","Songti SC","STSong",Georgia,serif;color:var(--ink);line-height:1.25;letter-spacing:-.015em}
h1{font-size:clamp(2.35rem,5vw,5rem);margin-bottom:22px}
h2{font-size:clamp(1.8rem,3vw,3rem);margin-bottom:18px}
h3{font-size:clamp(1.15rem,1.8vw,1.55rem);margin-bottom:10px}
p{margin-bottom:1.1em}
input[type="search"]{-webkit-appearance:none;appearance:none}
.section-shell{width:var(--shell);margin-left:auto;margin-right:auto}
.narrow-shell{width:min(820px,calc(100% - 48px));margin-left:auto;margin-right:auto}
.section-space{padding-top:88px;padding-bottom:88px}
.site-main{overflow:hidden}
.eyebrow{margin:0 0 12px;color:var(--brand);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.lead{font-size:clamp(1.05rem,1.8vw,1.25rem);color:#4D4540;line-height:1.85}
.tag{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:var(--paper-2);color:var(--brand-dark);font-size:.78rem;font-weight:700}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--brand-dark);font-weight:800;border-bottom:1px solid rgba(169,80,63,.35);padding-bottom:2px}
.text-link::after{content:"→";transition:transform .2s ease}
.text-link:hover::after{transform:translateX(4px)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:1px solid transparent;border-radius:999px;font-weight:800;line-height:1.2;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--brand);color:#fff;box-shadow:0 9px 22px rgba(169,80,63,.2)}
.button-secondary{background:var(--ink);color:#fff}
.button-ghost{border-color:#BCAEA4;background:transparent;color:var(--ink)}
.button-light{background:#fff;color:var(--ink)}
.action-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:9px 14px;border-radius:10px;background:var(--ink);color:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,245,241,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(126,108,96,.14)}
.header-inner{width:min(1240px,calc(100% - 32px));min-height:78px;margin:auto;display:flex;align-items:center;gap:22px}
.brand-mark{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.brand-mark img{width:48px;height:48px;object-fit:contain;border-radius:14px;background:#fff}
.brand-copy{display:grid;line-height:1.2}
.brand-copy strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.08rem;color:var(--ink)}
.brand-copy small{margin-top:5px;color:var(--muted);font-size:.72rem}
.primary-nav{margin-left:auto;display:flex;align-items:center;gap:3px}
.nav-link{padding:9px 11px;border-radius:999px;color:#514944;font-size:.91rem;font-weight:700;white-space:nowrap}
.nav-link:hover,.nav-link.is-active{background:var(--paper-2);color:var(--brand-dark)}
.header-search{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff;overflow:hidden}
.header-search input{width:145px;border:0;background:transparent;padding:8px 4px 8px 12px;outline:0;color:var(--text)}
.header-search button{border:0;background:var(--ink);color:#fff;padding:9px 13px}
.search-trigger{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;color:var(--ink);font-weight:700}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;color:var(--ink);font-weight:800}
.search-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:start center;padding:12vh 20px 30px}
.search-modal[hidden]{display:none!important}
.search-modal__backdrop{position:absolute;inset:0;background:rgba(36,31,29,.72);backdrop-filter:blur(5px)}
.search-dialog{position:relative;width:min(680px,100%);padding:28px;border-radius:28px;background:var(--paper);box-shadow:0 40px 110px rgba(0,0,0,.3)}
.search-dialog__top{display:flex;justify-content:space-between;gap:20px;align-items:start}
.search-dialog__top h2{font-size:1.8rem;margin:0}
.icon-button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;color:var(--ink)}
.search-form-large{margin-top:26px}
.search-form-large label,.search-guide-band label,.search-page-form label{display:block;font-weight:800;margin-bottom:7px}
.search-input-row{display:flex;gap:8px}
.search-input-row input,.search-page-form input,.search-guide-band input{min-width:0;flex:1;border:1px solid #CDBFB5;border-radius:14px;background:#fff;padding:12px 14px;color:var(--ink)}
.search-input-row button,.search-page-form button,.search-guide-band button{border:0;border-radius:14px;background:var(--brand);color:#fff;font-weight:800;padding:12px 17px}
.search-note{margin:15px 0 0;color:var(--muted);font-size:.9rem}
/* Homepage cover */
.cover-editorial{position:relative;padding-top:74px;padding-bottom:72px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:54px;align-items:center}
.cover-copy{max-width:650px;position:relative;z-index:2}
.cover-copy h1{font-size:clamp(2.65rem,5.25vw,5.65rem)}
.cover-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:28px 0 28px}
.cover-search{padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:var(--shadow-soft)}
.cover-search label{display:block;font-size:.82rem;font-weight:800;color:var(--muted);margin-bottom:6px}
.cover-search>div{display:flex;gap:8px}
.cover-search input{flex:1;min-width:0;border:0;background:transparent;padding:6px 4px;outline:0;color:var(--ink)}
.cover-search button{border:0;background:var(--ink);color:#fff;border-radius:12px;padding:8px 14px;font-weight:800}
.cover-visual{position:relative;margin:0;border-radius:34px 34px 90px 34px;overflow:hidden;background:var(--paper-2);box-shadow:var(--shadow)}
.cover-visual img{width:100%;aspect-ratio:1.25/1;object-fit:cover}
.cover-visual figcaption{position:absolute;left:20px;right:20px;bottom:20px;padding:16px 18px;border-radius:18px;background:rgba(36,31,29,.82);color:#fff;backdrop-filter:blur(7px);display:grid;gap:2px}
.cover-visual figcaption span{color:#F5C789;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.cover-visual figcaption strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.18rem}
.cover-side-notes{position:absolute;right:-14px;bottom:32px;width:270px;display:grid;gap:8px;transform:translateX(28%);z-index:3}
.cover-side-notes a{display:grid;grid-template-columns:34px 1fr;gap:0 9px;padding:13px 14px;border-radius:16px;background:#FFFDFC;box-shadow:var(--shadow-soft);border:1px solid rgba(169,80,63,.1)}
.cover-side-notes span{grid-row:1/3;color:var(--gold);font-size:.75rem;font-weight:900}
.cover-side-notes strong{font-size:.9rem;line-height:1.35;color:var(--ink)}
.cover-side-notes small{margin-top:3px;color:var(--muted);font-size:.72rem;line-height:1.3}
.brand-entry-band{padding:30px 0;background:var(--ink);color:#EDE7E2}
.brand-entry-band__inner{display:grid;grid-template-columns:280px 1fr;gap:50px;align-items:center}
.brand-entry-band h2{margin:0;color:#fff;font-size:1.65rem}
.brand-entry-band .eyebrow{color:#E4B77D}
.brand-entry-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.brand-entry-links a{padding:18px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);display:grid;gap:5px}
.brand-entry-links a:hover{background:rgba(255,255,255,.1)}
.brand-entry-links strong{color:#fff}
.brand-entry-links span{font-size:.83rem;color:#CFC4BC;line-height:1.5}
.section-heading{margin-bottom:30px}
.section-heading h2{margin-bottom:0}
.split-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.7fr);gap:60px;align-items:end}
.split-heading>p{margin:0;color:var(--muted)}
.compact-heading{max-width:780px}
.headline-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:26px}
.headline-main{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}
.headline-main img{width:100%;aspect-ratio:1.58/1;object-fit:cover}
.headline-main>div{padding:26px 28px 30px}
.headline-main h3{font-size:1.8rem;margin:10px 0}
.headline-main p{margin:0;color:var(--muted)}
.headline-list{display:grid;align-content:start;border-top:1px solid var(--line)}
.headline-list a{display:grid;gap:5px;padding:19px 4px;border-bottom:1px solid var(--line)}
.headline-list a:hover strong{color:var(--brand)}
.headline-list span{color:var(--brand);font-size:.75rem;font-weight:800}
.headline-list strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.08rem;line-height:1.45;color:var(--ink)}
.headline-list small{color:var(--muted);line-height:1.4}
.content-ribbon{padding:76px 0;background:var(--paper-2);overflow:hidden}
.ribbon-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,320px);gap:16px;overflow-x:auto;padding:3px 0 18px;scroll-snap-type:x proximity;scrollbar-width:thin}
.ribbon-card{scroll-snap-align:start;display:grid;grid-template-rows:auto auto auto 1fr;gap:6px;padding:12px 12px 18px;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(53,40,34,.06)}
.ribbon-card img{width:100%;aspect-ratio:1.47/1;object-fit:cover;border-radius:14px}
.ribbon-card span{margin-top:7px;color:var(--brand);font-size:.74rem;font-weight:900}
.ribbon-card strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.12rem;line-height:1.4;color:var(--ink)}
.ribbon-card small{color:var(--muted);line-height:1.55}
.device-wide{display:grid;grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);gap:62px;align-items:center}
.device-wide__visual{position:relative;padding:18px 0 18px 18px}
.device-wide__visual::before{content:"";position:absolute;left:0;top:0;right:16%;bottom:0;border-radius:32px;background:var(--paper-2)}
.device-wide__visual img{position:relative;width:100%;aspect-ratio:1.3/1;object-fit:cover;border-radius:24px;box-shadow:var(--shadow-soft)}
.device-wide__copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}
.device-points{display:grid;border-top:1px solid var(--line);margin:24px 0}
.device-points a{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}
.device-points strong{color:var(--ink)}
.device-points span{color:var(--muted)}
.editorial-mosaic{background:#FFFDFC;padding-top:88px;padding-bottom:88px}
.mosaic-grid{display:grid;grid-template-columns:1.45fr .75fr;grid-template-rows:1fr 1fr;gap:16px;min-height:600px}
.mosaic-grid>a{position:relative;overflow:hidden;border-radius:26px}
.mosaic-large{grid-row:1/3}
.mosaic-large img,.mosaic-small img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.mosaic-grid>a:hover img{transform:scale(1.025)}
.mosaic-large>div,.mosaic-small>div{position:absolute;left:0;right:0;bottom:0;padding:56px 26px 26px;background:linear-gradient(transparent,rgba(36,31,29,.86));color:#fff}
.mosaic-grid span{display:block;color:#F3C28A;font-size:.75rem;font-weight:900}
.mosaic-grid strong{display:block;margin-top:5px;font-family:"Noto Serif SC","Songti SC",serif;font-size:1.45rem;line-height:1.35}
.mosaic-grid p{margin:8px 0 0;color:#E6DDD7}
.mosaic-small.dark-card{background:var(--ink)}
.mosaic-small.dark-card>div{position:static;height:100%;display:flex;flex-direction:column;justify-content:end;background:none;padding:28px}
.search-guide-band{padding:44px 0;background:var(--brand);color:#fff}
.search-guide-band__inner{display:grid;grid-template-columns:220px 1fr 330px;gap:34px;align-items:center}
.search-guide-band__image img{width:100%;aspect-ratio:1.4/1;object-fit:cover;border-radius:18px}
.search-guide-band .eyebrow{color:#F6D7AE}
.search-guide-band h2{color:#fff;margin-bottom:10px;font-size:1.75rem}
.search-guide-band p{margin:0;color:#F4E4DC}
.search-guide-band .text-link{color:#fff;border-color:rgba(255,255,255,.5);margin-top:12px}
.search-guide-band form{padding:16px;border-radius:18px;background:rgba(36,31,29,.18)}
.search-guide-band label{color:#fff}
.search-guide-band form input{width:100%;margin-bottom:8px}
.search-guide-band form button{width:100%;background:var(--ink)}
.topic-preview-list{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:14px}
.topic-preview-list a{min-height:310px;position:relative;overflow:hidden;border-radius:24px;background:var(--ink)}
.topic-preview-list img{width:100%;height:100%;object-fit:cover;opacity:.84;transition:transform .3s ease,opacity .3s ease}
.topic-preview-list a:hover img{transform:scale(1.025);opacity:.73}
.topic-preview-list span{position:absolute;left:0;right:0;bottom:0;padding:56px 20px 20px;background:linear-gradient(transparent,rgba(36,31,29,.9));display:grid;gap:5px;color:#fff}
.topic-preview-list strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.2rem}
.topic-preview-list small{color:#DFD5CF;line-height:1.55}
.guide-columns-wrap{background:var(--paper-2)}
.guide-columns{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.guide-columns>div{border-top:2px solid var(--ink)}
.guide-columns h3{padding-top:18px}
.guide-columns a{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:17px 0;border-top:1px solid var(--line)}
.guide-columns span{color:var(--muted)}
.guide-cta{display:flex;gap:18px;align-items:center;margin-top:34px}
.trust-note{display:grid;grid-template-columns:1fr minmax(300px,.65fr);gap:60px;align-items:center}
.trust-note__copy>p:not(.eyebrow){color:var(--muted);font-size:1.06rem}
.trust-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px}
.trust-links a{font-weight:800;color:var(--brand-dark);border-bottom:1px solid #D3B0A7}
.trust-note__visual{padding:20px;background:var(--paper-2);border-radius:34px 34px 80px 34px}
.trust-note__visual img{width:100%;border-radius:23px;aspect-ratio:1.4/1;object-fit:cover}
.faq-preview{background:var(--ink);color:#E8DFDA}
.faq-preview__inner{display:grid;grid-template-columns:minmax(250px,.62fr) 1.38fr;gap:70px;align-items:start}
.faq-preview h2{color:#fff}
.faq-preview .eyebrow{color:#E4B77D}
.faq-preview__heading p{color:#CFC2BB}
.faq-preview .text-link{color:#fff;border-color:#76665D}
.faq-mini-list{border-top:1px solid #5A4E48}
.faq-mini-list details{border-bottom:1px solid #5A4E48;padding:0}
.faq-mini-list summary{list-style:none;cursor:pointer;font-family:"Noto Serif SC","Songti SC",serif;font-size:1.1rem;color:#fff;padding:18px 36px 18px 0;position:relative}
.faq-mini-list summary::-webkit-details-marker{display:none}
.faq-mini-list summary::after{content:"＋";position:absolute;right:2px;top:17px;color:#E4B77D}
.faq-mini-list details[open] summary::after{content:"−"}
.faq-mini-list details p{padding:0 40px 20px 0;margin:0;color:#CFC2BB}
.text-index{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.text-index a{padding:19px 20px 19px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:210px 1fr;gap:20px}
.text-index a:nth-child(odd){padding-right:30px}
.text-index a:nth-child(even){padding-left:30px;border-left:1px solid var(--line)}
.text-index strong{color:var(--ink)}
.text-index span{color:var(--muted)}
/* Internal page foundations */
.page-intro{padding-top:52px;padding-bottom:54px}
.page-intro__grid,.guide-intro-grid,.faq-intro-grid,.contact-intro,.safety-intro,.privacy-intro,.about-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);gap:58px;align-items:end}
.page-intro h1{font-size:clamp(2.4rem,4.7vw,4.7rem);max-width:920px}
.page-intro__grid>div:last-child,.guide-intro-grid>div:last-child,.faq-intro-grid>div:last-child{color:var(--muted);padding-bottom:14px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:5px 9px;margin-bottom:30px;color:var(--muted);font-size:.82rem}
.breadcrumbs a:hover{color:var(--brand)}
.breadcrumbs span[aria-hidden="true"]{color:#B6A99F}
.filter-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#FFFDFC}
.filter-strip__inner{width:var(--shell);margin:auto;display:flex;gap:6px;padding:12px 0;overflow-x:auto}
.filter-link{white-space:nowrap;padding:8px 13px;border-radius:999px;color:var(--muted);font-weight:800;font-size:.88rem}
.filter-link:hover,.filter-link.is-active{background:var(--ink);color:#fff}
.watch-feature{display:grid;grid-template-columns:1.04fr .96fr;gap:46px;align-items:center}
.watch-feature__visual{position:relative}
.watch-feature__visual img{width:100%;aspect-ratio:1.45/1;object-fit:cover;border-radius:28px;box-shadow:var(--shadow-soft)}
.watch-feature>div:last-child>p:not(.eyebrow){color:var(--muted)}
.article-stream{border-top:1px solid var(--line)}
.stream-item{display:grid;grid-template-columns:120px 1fr auto;gap:24px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line)}
.stream-item>span{color:var(--brand);font-size:.8rem;font-weight:900}
.stream-item h2{font-size:1.35rem;margin:0 0 6px}
.stream-item p{margin:0;color:var(--muted)}
.stream-meta{font-size:.78rem;color:var(--muted);white-space:nowrap}
.dark-wide-band{padding:52px 0;background:var(--ink);color:#E7DDD7}
.dark-wide-band__inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.dark-wide-band h2{color:#fff}
.dark-wide-band p{color:#CFC3BC}
.dark-wide-band .eyebrow{color:#E5B97F}
.dark-wide-band a{color:#fff}
.app-intro-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:54px;align-items:center}
.stacked-device-visual{position:relative;min-height:500px}
.stacked-device-visual img:first-child{width:86%;border-radius:30px;box-shadow:var(--shadow);aspect-ratio:1.4/1;object-fit:cover}
.stacked-device-visual img:last-child{position:absolute;width:42%;right:0;bottom:0;border:8px solid var(--paper);border-radius:26px;box-shadow:var(--shadow-soft);aspect-ratio:.78/1;object-fit:cover}
.device-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.device-choice-grid>article{padding:30px;border-radius:24px;background:#FFFDFC;border:1px solid var(--line)}
.plain-check-list{padding-left:1.25em;color:var(--muted)}
.plain-check-list li{margin:8px 0}
.index-row{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}
.index-row span{color:var(--muted)}
.app-steps-wrap{background:var(--paper-2)}
.number-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:none}
.number-steps li{padding:23px 19px;border-radius:20px;background:#fff}
.number-steps li span{color:var(--gold);font-weight:900;font-size:.8rem}
.number-steps strong{display:block;margin:10px 0 7px;color:var(--ink);font-size:1.05rem}
.number-steps p{margin:0;color:var(--muted);font-size:.9rem}
.desktop-feature{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.desktop-feature>img{width:100%;border-radius:26px;aspect-ratio:1.58/1;object-fit:cover}
.mini-topic-list{border-top:1px solid var(--line);margin-top:22px}
.mini-topic-list a{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}
.mini-topic-list span{color:var(--muted)}
.topic-intro{padding-bottom:30px}
.topic-section{padding:72px 0}
.topic-section--alt{background:var(--paper-2)}
.topic-section__inner{display:grid;grid-template-columns:300px 1fr;gap:55px;align-items:start}
.topic-section__media img{width:100%;aspect-ratio:1.25/1;object-fit:cover;border-radius:26px}
.topic-section__inner>div:last-child>p{color:var(--muted)}
.topic-article-list{border-top:1px solid var(--line)}
.topic-article-list a{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}
.topic-article-list span{color:var(--muted)}
.guide-map{display:grid;grid-template-columns:220px 1fr;gap:45px}
.guide-map__rail{position:sticky;top:105px;align-self:start;border-left:2px solid var(--line);padding-left:16px;display:grid;gap:8px}
.guide-map__rail a{padding:5px 0;color:var(--muted);font-weight:700}
.guide-map__rail a:hover{color:var(--brand)}
.guide-map__groups{display:grid;gap:48px}
.guide-map__groups>section{scroll-margin-top:105px}
.guide-map__groups h2{font-size:1.8rem}
.compact-article-list{display:grid;border-top:1px solid var(--line)}
.compact-article-list a{display:grid;grid-template-columns:185px 1fr auto;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.compact-article-list span{color:var(--brand);font-size:.8rem;font-weight:800}
.compact-article-list strong{color:var(--ink);font-size:1.04rem}
.compact-article-list small{color:var(--muted)}
.guide-banner{background:var(--brand);color:#fff;padding:44px 0}
.guide-banner__inner{display:grid;grid-template-columns:1fr 270px;gap:40px;align-items:center}
.guide-banner h2{color:#fff;margin-bottom:8px}
.guide-banner p{margin:0;color:#F2DED5}
.guide-banner .button{justify-self:end}
.faq-page-list{border-top:1px solid var(--line)}
.faq-page-list details{border-bottom:1px solid var(--line)}
.faq-page-list summary{cursor:pointer;list-style:none;padding:23px 45px 23px 0;position:relative;font-family:"Noto Serif SC","Songti SC",serif;font-size:1.18rem;font-weight:700;color:var(--ink)}
.faq-page-list summary::-webkit-details-marker{display:none}
.faq-page-list summary::after{content:"＋";position:absolute;right:5px;color:var(--brand)}
.faq-page-list details[open] summary::after{content:"−"}
.faq-page-list p{margin:0;padding:0 50px 25px 0;color:var(--muted);max-width:880px}
.faq-bottom-help{padding:32px;border-radius:26px;background:var(--paper-2);display:flex;justify-content:space-between;align-items:center;gap:30px}
.faq-bottom-help h2{font-size:1.6rem;margin-bottom:7px}
.faq-bottom-help p{margin:0;color:var(--muted)}
/* Article and prose */
.article-page{padding-top:46px;padding-bottom:100px}
.article-header{width:min(900px,100%);margin:0 auto 36px}
.article-header h1{font-size:clamp(2.4rem,5vw,4.8rem);margin-bottom:18px}
.article-lead{font-size:1.2rem;color:#5C534E;line-height:1.9}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 24px;color:var(--muted);font-size:.84rem}
.article-hero{width:min(1000px,100%);margin:0 auto 48px}
.article-hero img{width:100%;max-height:610px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow-soft)}
.article-body{width:min(800px,100%);margin:auto;font-size:1.04rem}
.article-body h2{margin-top:50px;font-size:1.8rem}
.article-body h3{margin-top:34px}
.article-body p,.article-body li{color:#4E4742}
.article-body ul,.article-body ol{padding-left:1.35em}
.article-body li{margin:.55em 0}
.article-note{margin:30px 0;padding:20px 22px;border-left:4px solid var(--gold);background:var(--paper-2);border-radius:0 16px 16px 0}
.article-note strong{color:var(--ink)}
.article-related{width:min(900px,100%);margin:62px auto 0;padding-top:30px;border-top:1px solid var(--line)}
.related-links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.related-links a{padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line);display:grid;gap:3px}
.related-links strong{color:var(--ink)}
.related-links span{font-size:.86rem;color:var(--muted)}
.article-return{width:min(900px,100%);margin:34px auto 0}
.prose-page{padding-top:48px;padding-bottom:96px}
.prose-page>header{max-width:850px;margin-bottom:45px}
.prose-page>header h1{font-size:clamp(2.35rem,4.5vw,4.4rem)}
.prose-page .article-body{margin-left:0}
.prose-page .article-body h2:first-child{margin-top:0}
/* Search and errors */
.search-page-head{padding-top:55px;padding-bottom:28px}
.search-page-head h1{font-size:clamp(2.3rem,4.5vw,4.3rem)}
.search-page-form{display:flex;gap:8px;max-width:700px}
.search-page-form label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.search-result-summary{padding:18px 0;color:var(--muted);border-bottom:1px solid var(--line)}
.search-result-list{display:grid;border-top:1px solid var(--line);margin-top:8px}
.search-result-list a{padding:23px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:150px 1fr;gap:24px}
.search-result-list span{color:var(--brand);font-size:.8rem;font-weight:900}
.search-result-list h2{font-size:1.3rem;margin:0 0 6px}
.search-result-list p{margin:0;color:var(--muted)}
.search-fallbacks{margin-top:40px;padding:28px;border-radius:24px;background:var(--paper-2)}
.search-fallbacks h2{font-size:1.45rem}
.search-fallbacks .text-index{grid-template-columns:1fr}
.search-fallbacks .text-index a{padding-left:0!important;border-left:0!important}
.empty-state{padding:32px 0;color:var(--muted)}
.error-page{min-height:65vh;display:grid;place-items:center;text-align:center;padding-top:70px;padding-bottom:70px}
.error-page>div{max-width:650px}
.error-page h1{font-size:clamp(3.5rem,10vw,7rem);margin-bottom:5px;color:var(--brand)}
/* Footer */
.site-footer{background:#1E1A18;color:#CFC4BE;padding:62px 0 24px}
.footer-main{width:var(--shell);margin:auto;display:grid;grid-template-columns:1.15fr 2fr;gap:70px}
.footer-brand{max-width:390px}
.brand-mark--footer{display:flex;align-items:center;gap:12px;color:#fff;margin-bottom:18px}
.brand-mark--footer img{width:50px;height:50px;object-fit:contain;border-radius:14px;background:#fff}
.brand-mark--footer strong{display:block;font-family:"Noto Serif SC","Songti SC",serif;font-size:1.2rem}
.brand-mark--footer span{display:block;color:#AA9D96;font-size:.78rem;margin-top:2px}
.footer-brand p{color:#AB9F98}
.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.footer-links h2{font-family:inherit;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#E0B079;margin-bottom:14px}
.footer-links a{display:block;padding:5px 0;color:#D6CCC6;font-size:.9rem}
.footer-links a:hover{color:#fff}
.footer-bottom{width:var(--shell);margin:45px auto 0;padding-top:20px;border-top:1px solid #433A36;display:flex;justify-content:space-between;gap:30px;color:#948881;font-size:.8rem}
.back-to-top{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border:0;border-radius:50%;background:var(--ink);color:#fff;box-shadow:var(--shadow-soft);opacity:0;pointer-events:none;transform:translateY(12px);transition:.2s;z-index:45}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}
/* Motion and states */
@media (prefers-reduced-motion:no-preference){
  .ribbon-card,.topic-preview-list a,.headline-list a,.text-index a{transition:transform .2s ease,background .2s ease}
  .ribbon-card:hover,.topic-preview-list a:hover,.headline-list a:hover{transform:translateY(-3px)}
}
@media (max-width:1180px){
  :root{--shell:min(1100px,calc(100% - 40px))}
  .header-search{display:none}
  .search-trigger{display:inline-flex}
  .cover-editorial{grid-template-columns:1fr .85fr;gap:34px}
  .cover-side-notes{right:0;transform:translateX(12%);width:235px}
  .search-guide-band__inner{grid-template-columns:190px 1fr 280px}
}
@media (max-width:1024px){
  :root{--shell:calc(100% - 36px)}
  .header-inner{flex-wrap:wrap;padding:11px 0;min-height:72px}
  .menu-toggle{display:inline-flex;margin-left:auto}
  .search-trigger{display:inline-flex}
  .primary-nav{order:3;width:100%;display:none;margin:0;padding:8px 0 4px;border-top:1px solid var(--line);overflow-x:auto}
  .primary-nav.is-open{display:flex}
  .cover-editorial{grid-template-columns:1fr;padding-top:55px}
  .cover-copy{max-width:820px}
  .cover-visual{width:min(780px,88%)}
  .cover-side-notes{right:0;bottom:62px;transform:none}
  .brand-entry-band__inner{grid-template-columns:1fr;gap:22px}
  .split-heading{grid-template-columns:1fr;gap:15px}
  .headline-grid{grid-template-columns:1fr 1fr}
  .device-wide{gap:40px}
  .search-guide-band__inner{grid-template-columns:180px 1fr}
  .search-guide-band form{grid-column:1/3;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
  .search-guide-band form label{grid-column:1/3}
  .search-guide-band form input{margin:0}
  .search-guide-band form button{width:auto}
  .topic-preview-list{grid-template-columns:1fr 1fr}
  .topic-preview-list a:first-child{grid-column:1/3;min-height:370px}
  .app-intro-layout{grid-template-columns:1fr .85fr}
  .topic-section__inner{grid-template-columns:240px 1fr;gap:38px}
  .footer-main{grid-template-columns:1fr 1.6fr;gap:40px}
  .footer-links{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  :root{--shell:calc(100% - 32px)}
  .section-space{padding-top:66px;padding-bottom:66px}
  h1{font-size:clamp(2.2rem,9vw,4rem)}
  .cover-editorial{padding-bottom:58px}
  .cover-visual{width:100%}
  .cover-side-notes{position:static;width:100%;transform:none;display:grid;grid-template-columns:repeat(3,1fr);grid-column:1;gap:8px}
  .cover-side-notes a{grid-template-columns:1fr}
  .cover-side-notes span{grid-row:auto}
  .brand-entry-links{grid-template-columns:1fr}
  .headline-grid,.device-wide,.trust-note,.dark-wide-band__inner,.app-intro-layout,.desktop-feature{grid-template-columns:1fr}
  .device-wide__visual{max-width:650px}
  .mosaic-grid{min-height:0;grid-template-columns:1fr 1fr;grid-template-rows:430px 270px}
  .mosaic-large{grid-column:1/3;grid-row:1}
  .search-guide-band__inner{grid-template-columns:150px 1fr}
  .topic-preview-list{grid-template-columns:1fr}
  .topic-preview-list a,.topic-preview-list a:first-child{grid-column:auto;min-height:330px}
  .guide-columns{grid-template-columns:1fr;gap:35px}
  .faq-preview__inner{grid-template-columns:1fr;gap:36px}
  .text-index{grid-template-columns:1fr}
  .text-index a,.text-index a:nth-child(odd),.text-index a:nth-child(even){padding:17px 0;border-left:0!important;grid-template-columns:185px 1fr}
  .page-intro__grid,.guide-intro-grid,.faq-intro-grid,.contact-intro,.safety-intro,.privacy-intro,.about-intro{grid-template-columns:1fr;gap:15px}
  .watch-feature{grid-template-columns:1fr}
  .stream-item{grid-template-columns:100px 1fr}
  .stream-meta{grid-column:2}
  .device-choice-grid{grid-template-columns:1fr}
  .number-steps{grid-template-columns:1fr 1fr}
  .topic-section__inner{grid-template-columns:1fr}
  .topic-section__media{max-width:560px}
  .guide-map{grid-template-columns:1fr}
  .guide-map__rail{position:static;display:flex;overflow-x:auto;border-left:0;border-bottom:1px solid var(--line);padding:0 0 12px}
  .guide-map__rail a{white-space:nowrap}
  .compact-article-list a{grid-template-columns:140px 1fr}
  .compact-article-list small{grid-column:2}
  .footer-main{grid-template-columns:1fr;gap:38px}
  .footer-brand{max-width:580px}
}
@media (max-width:600px){
  :root{--shell:calc(100% - 28px)}
  body{font-size:15px}
  .header-inner{width:calc(100% - 24px);gap:8px}
  .brand-mark img{width:42px;height:42px}
  .brand-copy small{display:none}
  .menu-toggle,.search-trigger{padding:8px 10px;font-size:.84rem}
  .cover-editorial{padding-top:40px}
  .cover-copy h1{font-size:clamp(2.25rem,11vw,3.45rem)}
  .cover-actions{align-items:stretch;flex-direction:column;gap:10px}
  .cover-actions .button,.cover-actions .text-link{width:100%;justify-content:center}
  .cover-search>div,.search-input-row{flex-direction:column}
  .cover-search button,.search-input-row button{width:100%}
  .cover-visual{border-radius:24px 24px 55px 24px}
  .cover-side-notes{grid-template-columns:1fr}
  .headline-grid{grid-template-columns:1fr}
  .headline-main h3{font-size:1.45rem}
  .ribbon-scroll{grid-auto-columns:78%}
  .device-points a,.guide-columns a,.index-row,.mini-topic-list a,.topic-article-list a,.text-index a,.text-index a:nth-child(odd),.text-index a:nth-child(even){grid-template-columns:1fr;gap:3px}
  .mosaic-grid{display:grid;grid-template-columns:1fr;grid-template-rows:380px 260px 260px}
  .mosaic-large{grid-column:auto;grid-row:auto}
  .mosaic-grid strong{font-size:1.2rem}
  .search-guide-band__inner{grid-template-columns:1fr}
  .search-guide-band__image{max-width:280px}
  .search-guide-band form{grid-column:auto;grid-template-columns:1fr}
  .search-guide-band form label{grid-column:auto}
  .search-guide-band form button{width:100%}
  .topic-preview-list a,.topic-preview-list a:first-child{min-height:270px}
  .guide-cta{align-items:stretch;flex-direction:column}
  .guide-cta .button,.guide-cta .text-link{width:100%;justify-content:center}
  .trust-note__visual{padding:12px;border-radius:24px 24px 50px 24px}
  .faq-bottom-help{flex-direction:column;align-items:start}
  .stacked-device-visual{min-height:410px}
  .number-steps{grid-template-columns:1fr}
  .stream-item{grid-template-columns:1fr;gap:6px}
  .stream-meta{grid-column:auto}
  .article-page{padding-top:34px}
  .article-header h1{font-size:clamp(2.2rem,10vw,3.5rem)}
  .article-hero{margin-bottom:34px}
  .related-links{grid-template-columns:1fr}
  .search-page-form{flex-direction:column}
  .search-result-list a{grid-template-columns:1fr;gap:4px}
  .footer-links{grid-template-columns:1fr 1fr;gap:22px}
  .footer-bottom{flex-direction:column;gap:5px}
  .back-to-top{right:12px;bottom:12px}
}
@media (max-width:390px){
  :root{--shell:calc(100% - 22px)}
  .brand-copy strong{font-size:.95rem}
  .search-trigger{display:none}
  .footer-links{grid-template-columns:1fr}
  .search-dialog{padding:22px 17px}
}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:5px 9px;list-style:none;padding:0;margin:0}
.breadcrumbs li:not(:last-child)::after{content:"/";margin-left:9px;color:#B6A99F}
.search-page-form>div{display:flex;gap:8px;flex:1}
.search-result-list a>strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:1.25rem;color:var(--ink);line-height:1.45}
.search-result-list a>small{color:var(--muted);line-height:1.55}
.search-fallbacks{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.search-fallbacks>a{padding:14px 0;border-top:1px solid var(--line);display:grid;gap:3px}
.search-fallbacks>a strong{color:var(--ink)}
.search-fallbacks>a span{color:var(--muted);font-size:.9rem}
@media (max-width:600px){.search-page-form>div{flex-direction:column}.search-fallbacks{grid-template-columns:1fr}}
