
:root{
 --paper:#FFFBF3;--paper-2:#FFF6E4;--paper-3:#F8E7B8;--ink:#1C1608;--body:#3A3120;--soft:#6B5E43;--muted:#8A7B5E;--gold:#D4A017;--gold-light:#E8C547;--gold-bright:#F0C94A;--gold-deep:#B8860B;--night:#1A1508;--border:rgba(212,160,23,.2);--line:rgba(112,82,19,.18);--shadow:0 16px 42px rgba(80,55,10,.10);--width:1280px;--head:136px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:154px}
body{margin:0;padding-top:var(--head);background:var(--paper);color:var(--body);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75;overflow-x:clip;-webkit-font-smoothing:antialiased}
body.panel-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
img{max-width:100%;height:auto}
figure{margin:0}
strong,b{font-weight:700}
p{margin:0 0 1em}
h1,h2,h3{margin:0;color:var(--ink);line-height:1.3;letter-spacing:-.035em}
h1{font-size:clamp(28px,3vw,40px);font-weight:800}
h2{font-size:clamp(23px,2.2vw,30px)}
h3{font-size:20px}
.shell{width:min(var(--width),calc(100% - 48px));margin-inline:auto}
.skip-link{position:fixed;top:-80px;left:14px;z-index:300;background:var(--night);color:white;padding:12px;border-radius:4px}
.skip-link:focus{top:8px}
:focus-visible{outline:3px solid #855800;outline-offset:3px}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a26e07;outline-offset:3px}
.global-header{position:fixed;inset:0 0 auto;z-index:100;width:100%;box-shadow:0 3px 18px rgba(43,27,0,.08)}
.gold-thread{height:22px;background:var(--night);color:#FFE9B3;position:relative}
.gold-inner{height:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative}
.thread-name{font-size:10px;letter-spacing:.08em;white-space:nowrap;font-weight:700}
.thread-name b{color:var(--gold-bright);margin:0 5px}
.thread-search{border:0;background:transparent;color:#FFF5D8;display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:64px;min-height:44px;margin-top:0;z-index:2;padding:0 2px 0 8px;white-space:nowrap;font-size:11px;letter-spacing:.08em}
.search-ring{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-radius:50%;position:relative;flex:none}
.search-ring:after{content:"";position:absolute;width:6px;height:2px;background:currentColor;right:-5px;bottom:-2px;transform:rotate(45deg);border-radius:2px}
.concierge{height:70px;background:var(--paper);border-bottom:1px solid var(--border)}
.concierge-inner{height:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}
.brand{display:inline-flex;align-items:center;min-width:0;max-width:240px;justify-self:start}
.site-logo{height:35px;max-width:190px;width:auto;object-fit:contain;display:block}
.site-logo-text{font-size:25px;font-weight:900;letter-spacing:-.08em;color:var(--ink);white-space:nowrap;line-height:1;display:inline-flex;flex-direction:column;gap:4px}
.site-logo-en{font-family:Georgia,serif;letter-spacing:.18em;font-size:8px;color:var(--gold-deep);font-weight:700}
.drawer-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;min-width:102px;border:1px solid rgba(160,113,14,.4);background:linear-gradient(135deg,#FFF7E4,#F8E7B8);color:var(--ink);border-radius:8px;font-size:13px;font-weight:800;letter-spacing:.1em;box-shadow:0 3px 12px rgba(115,69,0,.05)}
.drawer-toggle:hover,.entry-top:hover{filter:brightness(.96);transform:translateY(-1px)}
.menu-grid{display:grid;grid-template-columns:7px 7px;gap:4px}
.menu-grid i{display:block;width:7px;height:7px;border-radius:1px;background:var(--gold-deep)}
.entry-top{display:inline-flex;align-items:center;justify-content:center;gap:11px;justify-self:end;border:1px solid var(--border);border-radius:8px;background:var(--night);color:#FFF6E4;font-size:13px;font-weight:800;min-height:44px;padding:0 20px;white-space:nowrap;transition:.2s ease}
.entry-top span{color:var(--gold-light)}
.top-tabs{height:44px;background:#F8E7B8;border-bottom:1px solid rgba(181,126,8,.28)}
.tab-inner{display:flex;align-items:stretch;gap:8px;height:100%;overflow:auto;scrollbar-width:none}
.tab-inner::-webkit-scrollbar{display:none}
.tab-inner a{display:flex;align-items:center;justify-content:center;white-space:nowrap;min-width:100px;min-height:44px;padding:0 17px;color:#4D3E1D;font-size:13px;font-weight:800;border-bottom:3px solid transparent}
.tab-inner a:hover{color:#1A1508;background:rgba(255,255,255,.45)}
.tab-inner a[aria-current=page]{color:#261A04;background:#E8C547;border-bottom-color:#A97910}
.site-main{display:block;min-height:50vh;padding-bottom:68px}
.micro{font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}
.gold-text{color:var(--gold-deep)}
.eyebrow{color:var(--gold-deep);font-size:12px;font-weight:900;letter-spacing:.12em}
.eyebrow b{margin:0 6px}
.button{min-height:46px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;gap:9px;font-weight:800;font-size:13px;border-radius:8px;transition:.16s ease}
.button.primary{background:linear-gradient(135deg,#F0C94A,#D4A017 55%,#B8860B);color:var(--ink);border:1px solid #BC8C11;box-shadow:0 7px 17px rgba(162,120,19,.14)}
.button.outline{background:#FFF9EC;color:var(--ink);border:1px solid rgba(165,124,30,.5)}
.button:hover,.text-arrow:hover{transform:translateY(-2px)}
.text-arrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#845709;min-height:44px;white-space:nowrap;text-decoration:underline;text-decoration-color:rgba(184,134,11,.35);text-underline-offset:5px}
.text-arrow span{font-size:15px}
.hero-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}
.section-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:2px solid var(--ink);border-bottom:1px solid var(--border);padding:11px 0;color:#735220;font-size:12px;font-weight:800;letter-spacing:.04em}
.section-topline span:last-child{color:#A98D54;font-family:Georgia,serif;font-size:10px;letter-spacing:.1em;text-align:right}
.home-block{margin-top:65px}
.visual{width:100%;border:1px solid rgba(199,157,59,.25);background:#FFF3D5;position:relative;overflow:hidden;border-radius:12px;isolation:isolate}
.visual>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.visual--cover{height:min(320px,28vw);min-height:210px;background:#EEDBAA;border-radius:12px}
.visual--wide{height:240px}
.visual--thumb{height:200px}
.visual--portrait{height:320px}
.visual--app{height:420px;max-width:340px;margin-inline:auto}
.visual--icon{height:66px;width:66px;border-radius:16px}
.visual-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;background:radial-gradient(ellipse at 50% 40%,rgba(255,255,255,.75),transparent 65%),repeating-linear-gradient(90deg,transparent 0,transparent 102px,rgba(151,109,23,.07) 103px,rgba(151,109,23,.07) 104px),linear-gradient(135deg,#F5E0AE,#FFF7E7 65%,#F7E3B2);color:#5C4011;padding:14px}
.visual-fallback:before,.visual-fallback:after{content:"";position:absolute;inset:14px;border:1px solid rgba(120,84,14,.2);pointer-events:none}
.visual-fallback:after{inset:23px;border-style:dashed;opacity:.5}
.visual-fallback .visual-mark{position:relative;z-index:1;font-size:11px;letter-spacing:.35em;color:#987226;font-family:Georgia,serif;font-weight:800}
.visual-fallback strong{position:relative;z-index:1;color:#32250A;font-size:clamp(23px,4vw,48px);line-height:1.15;letter-spacing:.08em}
.visual-fallback small{position:relative;z-index:1;color:#806027;letter-spacing:.2em;font-size:11px}
.visual-fallback i{width:46px;height:3px;background:#C29731;position:relative;z-index:1;margin-top:7px}
.visual--thumb .visual-fallback strong{font-size:25px}
.visual--app .visual-fallback strong{font-size:25px}
.visual--icon .visual-fallback .visual-mark,.visual--icon .visual-fallback small,.visual--icon .visual-fallback i{display:none}
.visual--icon .visual-fallback strong{font-size:13px}
.visual--icon .visual-fallback:before{inset:5px}.visual--icon .visual-fallback:after{display:none}
.hero-kicker{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 13px}
.adult-tag{font-size:11px;font-weight:800;color:#755007;border:1px solid var(--border);background:#FFF0C3;padding:3px 10px;border-radius:3px}
.home-hero .visual--cover{border-radius:10px;box-shadow:var(--shadow)}
.hero-caption{text-align:center;padding:31px 20px 24px;max-width:850px;margin-inline:auto}
.hero-caption h1{margin:14px 0 20px;font-size:clamp(30px,4.5vw,52px);font-family:Georgia,"Songti SC","STSong","SimSun",serif;letter-spacing:-.04em;font-weight:800}
.hero-caption>p{max-width:750px;font-size:16px;line-height:1.95;margin:0 auto;color:#5E5137}
.hero-caption .hero-controls{justify-content:center}
.tag-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tag-card{position:relative;min-height:160px;background:#FFF7E6;border:1px solid var(--border);border-radius:11px;padding:21px 26px;transition:transform .2s ease,box-shadow .2s ease}
.tag-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.tag-card--1{background:#F5E6BA}
.tag-card-n{font-family:Georgia,serif;font-weight:900;color:#B78926;font-size:12px;display:block;margin-bottom:9px}
.tag-card strong{display:block;color:#382A10;font-size:19px;letter-spacing:-.02em;margin-bottom:6px}
.tag-card p{max-width:280px;color:#6F6046;font-size:13px;line-height:1.75;margin:0}
.tag-card>b{position:absolute;top:18px;right:22px;color:#997026;font-size:18px}
.feature-stage .visual--wide{margin-top:22px}
.feature-stage-text{display:grid;grid-template-columns:1.35fr .8fr;gap:38px;margin-top:25px}
.feature-stage-text h2{margin:8px 0 15px;max-width:620px}
.feature-stage-text p{color:#65563D;line-height:2;max-width:700px}
.feature-route{align-self:start;border-top:2px solid #BA8D2C}
.feature-route>a{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:13px 4px;min-height:53px}
.feature-route>a>span:first-child{font-family:Georgia,serif;color:#B8891B;font-size:12px;font-weight:800}
.feature-route strong{color:#382A10;flex:1;font-size:14px}
.feature-route>a:hover{background:#FCECCB}
.three-boards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}
.story-board{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:22px;background:#FFFDF8;border-radius:12px;border:1px solid var(--border);box-shadow:0 7px 28px rgba(100,69,12,.035)}
.story-board .visual{margin:12px 0 20px;flex-shrink:0}
.story-board h3{font-size:22px;margin:0 0 11px}
.story-board p{font-size:14px;line-height:1.9;color:#66563D;flex:1}
.split-content{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px;padding-top:25px;align-items:start}
.split-content .visual{height:420px}
.split-body h2{margin:8px 0 22px}
.four-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.four-points>div{border:1px solid var(--border);background:#FFF9EA;border-radius:9px;padding:15px}
.four-points b{display:block;font-family:Georgia,serif;color:#A0791E;font-size:12px;margin-bottom:9px}
.four-points strong{color:#392D15;font-size:16px}
.four-points p{font-size:12px;color:#746346;line-height:1.7;margin:5px 0 0}
.split-body>.text-arrow{margin-top:18px}
.album-strip>.visual{margin:24px 0}
.album-intro{display:flex;align-items:flex-start;gap:20px;justify-content:space-between}
.album-intro h2{max-width:280px;font-size:25px;flex-shrink:0}
.album-intro p{color:#665A42;flex:1;max-width:580px;font-size:14px}
.album-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;border:1px solid var(--border);background:#FFF8E8}
.album-items>div{padding:18px;border-right:1px solid var(--border)}
.album-items>div:last-child{border-right:0}
.album-items span{display:block;font:900 15px Georgia,serif;color:#B58925}
.album-items strong{display:block;font-size:16px;margin:8px 0;color:#342A12}
.album-items p{font-size:12px;color:#705E3E;margin:0}
.block-head{margin:18px 0}
.steps-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:#D7C094;border:1px solid var(--border);margin:18px 0}
.steps-line>a{min-width:0;display:flex;flex-direction:column;padding:20px 16px;background:#FFFAF0;gap:6px}
.steps-line>a:hover{background:#FAEDC8}
.steps-line span{font:900 32px Georgia,serif;color:#B68B22}
.steps-line strong{font-size:14px;color:#30250E}
.steps-line small{font-size:12px;color:#77694B;line-height:1.5}
.status-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;margin-top:22px}
.status-list h2{margin:1px 0 18px}
.status-list>div{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--border);padding:10px 0}
.status-list>div strong{font-size:14px;white-space:nowrap;color:#3A2E13}
.status-list>div span{font-size:12px;color:#76664A;text-align:right}
.status-list .text-arrow{margin-top:12px}
.backroom-home .visual{margin:24px 0}
.backroom-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid var(--border)}
.backroom-items article{padding:12px 20px 13px 0;min-width:0}
.backroom-items h3{font-size:18px}
.backroom-items p{font-size:13px;color:#6A5B40;margin:8px 0}
.app-home{padding:30px 38px 36px;background:linear-gradient(140deg,#FFF4D5,#FFFDF8 68%);border:1px solid var(--border);border-radius:16px}
.app-home .section-topline{border-top-color:#B78A27}
.app-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:46px;align-items:center;margin-top:23px}
.app-layout .visual--app{margin-inline:auto}
.app-copy h2{margin:10px 0}
.app-copy .visual--icon{margin:16px 0}
.app-copy p{font-size:14px;color:#66553A;line-height:1.95}
.summary-panel .summary-copy{margin-top:22px;padding:30px 35px;background:#1A1508;color:#FFF6E4;border-radius:11px}
.summary-panel .summary-copy .micro{color:#E8C547}
.summary-panel .summary-copy h2{color:#FFF8EA;margin:8px 0 16px}
.summary-panel .summary-copy p{color:#F0DEC2;max-width:970px}
.summary-panel .text-arrow{color:#FFDC6A;margin-right:22px}
.two-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}
.two-summary article{border:1px solid var(--border);padding:28px;background:#FFF9EC;border-radius:11px}
.two-summary h2{margin:8px 0 16px}
.two-summary p{color:#605137;font-size:14px}
.home-faq-list{max-width:930px}
.home-faq-list details{border-bottom:1px solid var(--border);padding:0 4px}
.home-faq-list summary{min-height:58px;display:flex;align-items:center;font-weight:800;color:var(--ink);cursor:pointer;list-style:none}
.home-faq-list summary::-webkit-details-marker{display:none}
.home-faq-list summary:after{content:"+";margin-left:auto;font-size:22px;color:#AA8321}
.home-faq-list details[open] summary:after{content:"−"}
.home-faq-list details p{font-size:14px;color:#66563E;padding:0 24px 16px 0}
.brand-finale{padding:45px;background:#F8E7B8;border:1px solid var(--border);border-radius:14px;text-align:center}
.brand-finale .micro{color:#976E18}
.brand-finale h2{font-family:Georgia,"Songti SC","STSong",serif;font-size:36px;margin:15px 0}
.brand-finale p{max-width:890px;color:#594525;margin:0 auto 20px}
/* Inner pages, with intentionally different editorial arrangements by section */
.sub-hero{width:min(var(--width),calc(100% - 48px));margin:36px auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.68fr);gap:45px;align-items:center;padding:26px 32px 30px;background:#FFF8E9;border:1px solid var(--border);border-radius:12px;min-height:280px}
.page-heading{min-width:0}
.page-heading h1{font-family:Georgia,"Songti SC","STSong",serif;font-size:clamp(29px,3.7vw,46px);margin:10px 0 16px}
.page-deck{max-width:780px;color:#62523B;font-size:15px;line-height:1.92;margin:0}
.sub-hero>.visual{align-self:stretch;min-height:230px;max-height:340px}
.sub-hero>.visual--portrait{max-height:360px}
.sub-hero:not(:has(.visual)){grid-template-columns:minmax(0,1fr) 210px}
.no-image-deco{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;min-height:180px;border:1px solid var(--border);background:repeating-linear-gradient(-45deg,transparent 0,transparent 25px,rgba(213,163,47,.12) 25px,rgba(213,163,47,.12) 26px);color:#9C772A;gap:12px;text-align:center}
.no-image-deco b{font:900 13px Georgia,serif;letter-spacing:.22em}
.no-image-deco span{font-size:10px;font-weight:800;letter-spacing:.1em}
.sub-hero--editorial{background:#F5E7C6}
.sub-hero--policy{background:#FFFDF6}
.sub-hero--numbered,.sub-hero--criteria,.sub-hero--timeline{background:#F9EDCF}
.sub-hero--product{background:#F7E6BE}
.sub-hero--gallery .visual{height:290px}
.status-strip{width:min(var(--width),calc(100% - 48px));margin:18px auto 0;padding:20px 27px;border-left:5px solid #C08C11;background:#1F1A10;color:#FFECCC;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:6px}
.status-strip h2{font-size:21px;color:#FFF4D8;margin:6px 0}
.status-strip p{font-size:13px;color:#F3E1BC;margin:0}
.status-strip .micro{color:#E3BA5F}
.status-strip .button{flex-shrink:0;background:#FFF6E4}
.notice-18{width:min(var(--width),calc(100% - 48px));margin:18px auto 0;padding:20px 25px;background:#FFEFCD;border:1px solid #CC9D2D;border-left-width:5px;color:#463619;border-radius:7px}
.notice-18 strong{font-size:15px}
.notice-18 p{margin:7px 0 0;font-size:14px}
.criteria-banner,.schedule-key{width:min(var(--width),calc(100% - 48px));margin:17px auto 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:#2A210B;color:#FFF3D8;border-radius:7px;padding:15px 22px}
.criteria-banner span{color:#F1D5A1;font-size:13px}
.schedule-key{background:#F8E7B8;gap:8px}
.schedule-key span{border:1px solid #C9A657;padding:8px 12px;font-size:12px;border-radius:5px;color:#503C12;font-weight:800}
.page-content{margin-top:42px}
.chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}
.chapter{display:grid;grid-template-columns:45px minmax(0,1fr);gap:14px;padding:27px 27px 29px 22px;background:white;border:1px solid var(--border);border-radius:10px;min-width:0}
.chapter--tint{background:#FFF6E6}
.chapter-index{font:900 27px/1 Georgia,serif;color:#BA8A1F;margin-top:1px}
.chapter h2{font-size:21px;margin:0 0 13px}
.chapter p{font-size:15px;line-height:1.94;color:#61513A;margin:0;overflow-wrap:anywhere}
.layout--feature .chapter-grid{grid-template-columns:1.2fr .8fr}
.layout--feature .chapter:first-child{grid-row:span 2;background:#F8E7B8}
.layout--gallery .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout--gallery .chapter:nth-child(2){grid-column:span 2;background:#F6E8C6}
.layout--gallery .chapter:nth-child(6){grid-column:span 2}
.layout--gallery .chapter{grid-template-columns:1fr;gap:12px;min-height:270px}
.layout--magazine .chapter-grid{grid-template-columns:1.3fr .7fr}
.layout--magazine .chapter:nth-child(3n+1){grid-column:span 2;background:#F7E8C4}
.layout--directory .chapter-grid{grid-template-columns:1fr;gap:0;border-top:3px solid var(--gold-deep)}
.layout--directory .chapter{border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;padding:22px 12px;grid-template-columns:80px 1fr}
.layout--directory .chapter-index{font-size:33px}
.layout--directory .chapter-body{display:grid;grid-template-columns:200px 1fr;gap:25px}
.layout--numbered .chapter-grid,.layout--timeline .chapter-grid,.layout--schedule .chapter-grid,.layout--entry .chapter-grid,.layout--manual .chapter-grid{grid-template-columns:1fr;gap:11px}
.layout--numbered .chapter,.layout--timeline .chapter,.layout--entry .chapter{grid-template-columns:80px 1fr}
.layout--numbered .chapter-index,.layout--timeline .chapter-index,.layout--entry .chapter-index{font-size:41px}
.layout--timeline .chapter{border-left:5px solid #BE921E}
.layout--timeline .chapter:nth-child(even){border-left-color:#E8C547}
.layout--schedule .chapter{grid-template-columns:150px 1fr;background:transparent;border-radius:0;border-width:0 0 1px 0;padding:24px 18px}
.layout--schedule .chapter-index{font-size:34px}
.layout--criteria .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout--criteria .chapter{display:block;min-height:280px}
.layout--criteria .chapter-index{margin-bottom:22px}
.layout--notices .chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.layout--notices .chapter{border-top:4px solid #BD911E}
.layout--notices .chapter:nth-child(3n){grid-column:span 2}
.layout--strips .chapter-grid{grid-template-columns:1fr;gap:18px}
.layout--strips .chapter:nth-child(even){margin-left:min(6%,58px);background:#F8E7B8}
.layout--strips .chapter:nth-child(odd){margin-right:min(6%,58px)}
.layout--academy .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout--academy .chapter{display:block}
.layout--academy .chapter-index{display:block;margin-bottom:16px}
.layout--editorial .chapter-grid{grid-template-columns:1fr 1fr}
.layout--editorial .chapter:first-child{grid-column:span 2;background:#F4E3B9}
.layout--editorial .chapter h2{font-family:Georgia,"Songti SC",serif}
.layout--program .chapter:nth-child(4n+1),.layout--album .chapter:nth-child(4n+1){background:#F8E7B8}
.layout--album .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout--album .chapter:nth-child(4n+1){grid-column:span 2}
.layout--product .chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.layout--product .chapter:first-child{grid-column:span 2;background:#F4E0AC}
.layout--policy .chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.layout--policy .chapter:nth-child(3n+1){grid-column:span 2}
.layout--contact .chapter-grid,.layout--help .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout--contact .chapter,.layout--help .chapter{grid-template-columns:1fr;gap:8px}
.layout--about .chapter-grid{grid-template-columns:1fr 1fr}
.layout--about .chapter:first-child,.layout--about .chapter:last-child{grid-column:span 2;background:#F8E7B8}
.readout{background:#2B210E;color:#F8E7C2;border-radius:12px;margin-top:35px;padding:34px 38px;display:grid;grid-template-columns:70px 1fr;gap:17px;align-items:start}
.readout h2{color:#FFFAEB;margin:7px 0 12px}
.readout p{color:#E4D3B1;font-size:14px;max-width:950px;line-height:2;margin:0 0 12px}
.readout .micro{color:#E5BA59}
.readout .text-arrow{color:#FFE2A1;margin-right:25px}
.readout-ornament{font-size:56px;color:#D8A936;line-height:1}
.faq-page-intro{margin-top:35px}
.faq-page-intro h1{font-size:42px;margin:9px 0 16px}
.faq-page-intro>p{max-width:810px;color:#675943;margin-bottom:25px}
.faq-page-intro .notice-18{width:100%;margin:0}
.faq-page-content{margin-top:40px}
.faq-list{max-width:1080px;margin:24px auto}
.faq-item{border:1px solid var(--border);background:#FFFDF8;margin-bottom:10px;border-radius:9px}
.faq-item[open]{background:#FFF6E4}
.faq-item summary{display:flex;align-items:center;gap:13px;min-height:66px;padding:15px 24px;font-weight:800;color:#3A2E15;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";font-size:21px;color:#A67F1A;margin-left:auto}
.faq-item[open] summary:after{content:"−"}
.faq-item .faq-symbol{color:#BD8B25;font-size:16px}
.faq-item p{border-top:1px solid var(--border);padding:20px 32px 22px 53px;max-width:1000px;font-size:15px;color:#66563D;margin:0;line-height:2}
/* Footer and overlays */
.site-footer{background:#1A1508;border-top:3px solid #D4A017;color:#FFF6E4;padding:52px 0 28px}
.footer-inner{display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:60px;row-gap:35px}
.footer-brand a{display:inline-block}
.footer-brand .site-logo-text{color:#FFF4D9;font-size:23px}
.footer-brand .site-logo-en{color:#DDBB67}
.footer-brand p{font-size:13px;color:#D4C3A6;line-height:1.9;margin:17px 0 0}
.footer-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}
.footer-group h2{color:#E7C66F;font-size:14px;border-bottom:1px solid rgba(232,197,71,.3);padding-bottom:13px;margin:0 0 15px}
.footer-group a{display:block;font-size:13px;color:#D9CAB0;margin-bottom:8px;min-height:27px}
.footer-group a:hover{color:white;text-decoration:underline;text-underline-offset:4px}
.footer-rule,.footer-bottom{grid-column:1/-1}
.footer-rule{border-top:1px solid rgba(232,197,71,.25);padding-top:22px;font-size:12px;color:#CCB990;line-height:1.9}
.footer-bottom{display:flex;flex-wrap:wrap;gap:20px;border-top:1px solid rgba(232,197,71,.2);padding-top:14px;font-size:11px;color:#B7A586;align-items:center}
.footer-bottom span{margin-right:auto}
.footer-bottom a{color:#F2DCAD}
.mobile-bottom{display:none}
.site-backdrop{position:fixed;inset:0;background:rgba(28,22,8,.7);z-index:105;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s}
.site-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
.site-drawer{position:fixed;z-index:110;top:92px;left:0;right:0;width:100%;height:min(76vh,710px);background:#FFFBF3;border-bottom:3px solid var(--gold-deep);box-shadow:0 22px 45px rgba(19,14,4,.28);visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-12px);transition:opacity .17s,transform .17s;overflow:auto;overscroll-behavior:contain}
.site-drawer.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}
.drawer-heading{height:72px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--border)}
.drawer-brand{margin-right:auto}
.drawer-heading .site-logo-text{font-size:21px}
.drawer-heading .site-logo{height:31px}
.drawer-heading-note{font-family:Georgia,serif;font-weight:800;letter-spacing:.18em;color:#B08427;font-size:10px}
.close-control{border:1px solid var(--border);background:#FFF3D8;color:#33240A;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:75px;padding:0 12px;border-radius:7px;font-size:24px;font-weight:500;line-height:1}
.close-control span{font-size:12px;font-weight:800}
.close-control:hover{background:#FFE6B1}
.drawer-content{padding:26px 0 44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.drawer-group h2{font-size:14px;color:#715019;border-bottom:3px solid #D1A03A;padding-bottom:10px;margin:0 0 12px}
.drawer-group ul{list-style:none;margin:0;padding:0}
.drawer-group li{border-bottom:1px solid rgba(198,148,39,.16)}
.drawer-group a{display:block;min-height:59px;padding:9px 6px 11px;border-radius:3px}
.drawer-group a:hover{background:#FFF0CD}
.drawer-group strong{color:#362810;font-size:14px;display:block}
.drawer-group a span{display:block;font-size:11px;color:#8B7959;line-height:1.5;margin-top:3px}
.search-panel{position:fixed;z-index:115;top:92px;right:max(16px,calc((100vw - 1280px)/2));width:min(530px,calc(100% - 32px));max-height:calc(100dvh - 110px);background:var(--paper);border:1px solid rgba(212,160,23,.44);border-radius:0 0 12px 12px;box-shadow:0 20px 60px rgba(28,22,8,.32);padding:27px;visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-12px);transition:opacity .18s,transform .18s;overflow:auto;overscroll-behavior:contain}
.search-panel.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}
.search-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px}
.search-panel h2{font-size:23px;margin-bottom:16px}
.search-panel label{font-size:12px;font-weight:800;color:#584727;display:block;margin-bottom:6px}
.search-panel input{width:100%;height:52px;border:1px solid #BA952D;background:#FFF;font-size:15px;color:#271C0B;padding:0 14px;border-radius:6px;min-width:0}
.search-assist{font-size:12px;color:#927A54;margin:12px 0 18px}
.search-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.search-list a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:47px;padding:11px;border:1px solid var(--border);border-radius:5px;font-size:13px;background:#FFF9EF}
.search-list a[hidden]{display:none}
.search-list a:hover{background:#F4DFAD}
.search-list a span{color:#B18420}
.search-empty{font-size:13px;color:#7A6646}
@media(max-width:1100px){
 .layout--criteria .chapter-grid,.layout--academy .chapter-grid,.layout--help .chapter-grid,.layout--contact .chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-inner{grid-template-columns:210px minmax(0,1fr);gap:28px}
 .footer-groups{gap:13px}
 .steps-line{grid-template-columns:repeat(3,minmax(0,1fr))}
 .album-intro{flex-wrap:wrap}
 .album-intro h2{max-width:100%;min-width:0;flex:1 1 100%}
 .album-intro p{min-width:0;flex:1 1 100%}
}
@media(max-width:760px){
 :root{--head:92px}
 html{scroll-padding-top:112px}
 body{padding-bottom:calc(67px + env(safe-area-inset-bottom,0px))}
 .shell{width:calc(100% - 32px)}
 .global-header{width:100vw}
 .top-tabs{display:none}
 .concierge-inner{gap:5px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
 .brand{max-width:150px}
 .site-logo{height:29px;max-width:min(37vw,150px)}
 .site-logo-text{font-size:22px}
 .site-logo-en{font-size:7px}
 .drawer-toggle{min-height:44px;min-width:80px;gap:8px;padding:0 8px;font-size:12px}
 .entry-top{min-height:44px;padding:0 11px;font-size:12px;gap:3px}
 .entry-top span{font-size:13px}
 .home-block{margin-top:50px}
 .visual--cover{height:min(320px,48vw);min-height:185px}
 .visual--wide{height:235px}
 .hero-caption{padding:27px 8px 10px}
 .hero-caption h1{font-size:30px;margin:8px 0 14px}
 .hero-caption>p{font-size:14px}
 .tag-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .tag-card{min-height:160px;padding:17px 14px}
 .tag-card>b{top:12px;right:12px}
 .tag-card strong{font-size:16px}
 .tag-card p{font-size:12px}
 .feature-stage-text,.split-content,.status-layout,.app-layout,.three-boards,.two-summary{grid-template-columns:1fr}
 .three-boards{gap:12px}
 .story-board{padding:18px}
 .story-board .visual--thumb{height:220px}
 .split-content{gap:23px}
 .split-content .visual{height:260px}
 .four-points{grid-template-columns:repeat(2,minmax(0,1fr))}
 .album-items,.backroom-items{grid-template-columns:repeat(2,minmax(0,1fr))}
 .album-items>div:nth-child(2){border-right:0}
 .album-items>div:nth-child(-n+2){border-bottom:1px solid var(--border)}
 .steps-line{grid-template-columns:repeat(3,minmax(0,1fr))}
 .app-home{padding:22px}
 .app-layout{gap:20px}
 .app-layout>.visual--app{max-width:340px;width:100%;height:320px}
 .brand-finale{padding:28px 21px}
 .brand-finale h2{font-size:28px}
 .sub-hero,.sub-hero:not(:has(.visual)){width:calc(100% - 32px);grid-template-columns:1fr;gap:20px;padding:23px 22px;min-height:auto;margin-top:22px}
 .sub-hero>.visual{min-height:190px;height:210px;max-height:260px}
 .no-image-deco{display:none}
 .status-strip,.notice-18,.criteria-banner,.schedule-key{width:calc(100% - 32px)}
 .chapter-grid,.layout--feature .chapter-grid,.layout--magazine .chapter-grid,.layout--gallery .chapter-grid,.layout--criteria .chapter-grid,.layout--academy .chapter-grid,.layout--help .chapter-grid,.layout--contact .chapter-grid,.layout--album .chapter-grid,.layout--policy .chapter-grid,.layout--product .chapter-grid,.layout--editorial .chapter-grid,.layout--about .chapter-grid,.layout--notices .chapter-grid{grid-template-columns:1fr}
 .chapter,.layout--gallery .chapter{grid-column:auto!important;grid-row:auto!important;min-height:auto}
 .layout--strips .chapter:nth-child(even),.layout--strips .chapter:nth-child(odd){margin:0}
 .layout--directory .chapter-body{grid-template-columns:1fr;gap:7px}
 .layout--schedule .chapter{grid-template-columns:55px 1fr}
 .readout{grid-template-columns:1fr;padding:26px 22px;gap:4px}
 .readout-ornament{font-size:30px}
 .footer-inner{grid-template-columns:1fr}
 .footer-brand{max-width:450px}
 .footer-groups{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}
 .footer-rule,.footer-bottom{grid-column:auto}
 .site-footer{padding-bottom:28px}
 .mobile-bottom{position:fixed;left:0;right:0;bottom:0;height:calc(50px + env(safe-area-inset-bottom,0px));z-index:50;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#FFFBF3;border-top:1px solid rgba(187,135,20,.35);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -5px 16px rgba(60,46,20,.08)}
 .mobile-bottom>a{min-height:50px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;white-space:nowrap;color:#6E592D;font-size:10px;font-weight:800}
 .mobile-bottom>a .tab-symbol{font-size:19px;line-height:24px}
 .mobile-bottom>a[aria-current=page]{background:#F0C94A;color:#2A1D06}
 .site-drawer{top:92px;height:calc(100dvh - 92px);bottom:0}
 .drawer-heading{height:68px}
 .drawer-heading-note{display:none}
 .drawer-content{grid-template-columns:1fr;gap:18px;padding:18px 0 65px}
 .drawer-group ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
 .drawer-group a{min-height:65px}
 .search-panel{inset:22px 0 0;width:100%;height:calc(100dvh - 22px);max-height:none;right:0;padding:25px 18px 70px;border-radius:0;background:#FFFBF3}
}
@media(max-width:400px){
 .thread-name{font-size:9px;letter-spacing:0}
 .site-logo-text{font-size:18px}
 .site-logo-en{font-size:6px}
 .drawer-toggle{min-width:68px;padding:0 6px;gap:6px}
 .entry-top{padding:0 8px;font-size:11px}
 .hero-caption h1{font-size:28px;line-height:1.36}
 .hero-controls{gap:8px}
 .button{font-size:12px;padding:10px 13px}
 .tag-grid{gap:8px}
 .tag-card{padding:14px 12px}
 .tag-card p{font-size:11px}
 .four-points{grid-template-columns:1fr}
 .steps-line{grid-template-columns:repeat(2,minmax(0,1fr))}
 .chapter{padding:19px 16px;grid-template-columns:33px 1fr;gap:10px}
 .chapter-index{font-size:22px}
 .chapter h2{font-size:19px}
 .chapter p{font-size:14px}
 .layout--directory .chapter{grid-template-columns:35px 1fr}
 .layout--numbered .chapter,.layout--timeline .chapter,.layout--entry .chapter{grid-template-columns:40px 1fr}
 .layout--numbered .chapter-index,.layout--timeline .chapter-index,.layout--entry .chapter-index{font-size:26px}
 .status-strip{flex-direction:column;align-items:start}
 .search-list{grid-template-columns:1fr 1fr}
 .drawer-group ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 6px}
 .drawer-group a span{font-size:10px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
