:root{
 --bg:#FFFBF3;--bg2:#FFF6E4;--pale:#F8E7B8;--title:#1C1608;--text:#3A3120;--muted:#6B5E43;--note:#8A7B5E;--gold:#D4A017;--bright:#E8C547;--warm:#F0C94A;--deep:#B8860B;--border:rgba(212,160,23,.18);--shadow:0 16px 42px rgba(80,55,10,.10);--footer:#1A1508;--max:1280px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;line-height:1.72;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input{font:inherit}button{cursor:pointer}.skip-link{position:fixed;left:16px;top:-60px;z-index:9999;background:var(--footer);color:#FFF6E4;padding:10px 14px}.skip-link:focus{top:8px}.shell-inner{width:min(calc(100% - 32px),var(--max));margin-inline:auto}.site-fixed-shell{position:fixed;inset:0 0 auto 0;z-index:100}.gold-line{height:22px;background:#211a0a;color:#F8E7B8;font-size:12px;letter-spacing:.08em}.gold-line-inner{height:22px;display:flex;align-items:center;justify-content:space-between}.gold-brand{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-search-btn{border:0;background:transparent;color:#FFF6E4;height:22px;padding:0 8px;min-width:48px}.top-search-btn:hover,.top-search-btn:focus-visible{text-decoration:underline;outline:2px solid var(--bright);outline-offset:1px}.concierge-bar{height:70px;background:rgba(255,251,243,.97);border-bottom:1px solid var(--border);backdrop-filter:saturate(120%) blur(8px)}.concierge-grid{height:70px;display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);align-items:center;gap:16px}.brand-link{justify-self:start;min-height:44px;display:flex;align-items:center}.brand-logo{max-height:38px;width:auto;max-width:220px}.brand-wordmark{display:flex;flex-direction:column;line-height:1.05;color:var(--title)}.brand-wordmark strong{font-size:20px;letter-spacing:.08em}.brand-wordmark small{font-size:9px;letter-spacing:.18em;margin-top:4px}.book-button,.entry-link,.btn-primary,.btn-secondary,.text-button{min-height:44px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;font-weight:700}.book-button{justify-self:center;border:1px solid var(--border);background:var(--bg2);color:var(--title)}.entry-link{justify-self:end;background:linear-gradient(135deg,#F0C94A 0%,#D4A017 55%,#B8860B 100%);color:#1C1608}.book-button:hover,.book-button:focus-visible,.entry-link:hover,.entry-link:focus-visible,.btn-primary:hover,.btn-primary:focus-visible,.btn-secondary:hover,.btn-secondary:focus-visible,.text-button:hover,.text-button:focus-visible{outline:3px solid rgba(184,134,11,.25);outline-offset:2px;transform:translateY(-1px)}.stage-tabs{height:44px;background:#F8E7B8;border-bottom:1px solid var(--border)}.stage-tabs-inner{height:44px;display:flex;align-items:center;gap:8px}.stage-tabs a{min-height:30px;padding:4px 12px;border-radius:7px;display:flex;align-items:center;color:var(--title);font-size:14px;font-weight:650}.stage-tabs a:hover,.stage-tabs a:focus-visible{background:rgba(255,255,255,.5);outline:2px solid rgba(184,134,11,.24)}.stage-tabs a.active{background:var(--warm);color:#1C1608}.site-main{padding-top:136px}.page-hero{padding:46px 0 26px}.page-hero .eyebrow,.eyebrow{display:inline-block;color:var(--deep);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.page-hero h1,.home-hero h1{font-size:clamp(28px,3.2vw,32px);line-height:1.22;margin:10px 0 14px;color:var(--title);letter-spacing:-.02em}.page-hero p{max-width:880px;font-size:17px;margin:0;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:34px;align-items:center}.media-frame{overflow:hidden;background:linear-gradient(135deg,#FFF6E4,#F8E7B8);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.media-img{width:100%;max-height:420px;object-fit:cover}.media-slot{min-height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#FFF6E4,#F8E7B8);color:rgba(28,22,8,.38);font-size:12px;letter-spacing:.2em;border:1px solid var(--border)}.home-hero{padding:34px 0 44px}.home-cover{max-height:320px;width:100%;object-fit:cover}.home-cover.media-slot{height:280px}.home-copy{padding-top:24px;max-width:900px}.home-copy p{font-size:17px;color:var(--muted);max-width:820px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.btn-primary{background:linear-gradient(135deg,#F0C94A 0%,#D4A017 55%,#B8860B 100%);color:#1C1608}.btn-secondary{background:transparent;border:1px solid var(--deep);color:var(--title)}.section{padding:42px 0}.section-soft{background:var(--bg2);border-block:1px solid rgba(212,160,23,.12)}.section-gold{background:linear-gradient(180deg,#FFF8E7,#F8E7B8)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:22px}.section-head h2{font-size:clamp(23px,2.6vw,29px);line-height:1.25;margin:5px 0 0;color:var(--title)}.section-head p{max-width:620px;margin:0;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.info-card,.feature-card,.standard-card,.notice-card,.chapter-card,.faq-item{background:rgba(255,255,255,.62);border:1px solid var(--border);border-radius:12px;padding:22px;box-shadow:0 10px 28px rgba(80,55,10,.055)}.info-card h3,.feature-card h3,.standard-card h3,.notice-card h3,.chapter-card h3{color:var(--title);font-size:19px;margin:0 0 8px}.info-card p,.feature-card p,.standard-card p,.notice-card p,.chapter-card p{margin:0;color:var(--muted)}.mini-link{display:inline-flex;align-items:center;min-height:44px;margin-top:11px;color:var(--deep);font-weight:750}.mini-link:hover,.mini-link:focus-visible{text-decoration:underline;outline:none}.sign-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.sign-card{border-radius:10px;padding:16px;min-height:120px;border:1px solid rgba(80,55,10,.10);display:flex;flex-direction:column;justify-content:space-between;color:var(--title)}.sign-card:nth-child(odd){background:var(--warm)}.sign-card:nth-child(even){background:#D9AD2E}.sign-card strong{font-size:17px}.sign-card span{font-size:13px;line-height:1.5}.sign-card a{font-weight:800;font-size:13px;text-decoration:underline;text-underline-offset:3px}.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:start}.number-list{display:grid;gap:10px}.number-item{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--border)}.number-item .num{font-size:24px;color:var(--deep);font-weight:800}.number-item h3{margin:0 0 3px;font-size:18px;color:var(--title)}.number-item p{margin:0;color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;counter-reset:steps}.timeline-step{position:relative;padding:18px 14px;border-top:3px solid var(--gold);background:rgba(255,255,255,.58);border-radius:0 0 10px 10px;min-height:140px}.timeline-step b{display:block;color:var(--deep);font-size:20px;margin-bottom:8px}.timeline-step h3{font-size:16px;margin:0 0 6px}.timeline-step p{font-size:14px;color:var(--muted);margin:0}.status-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.58);border:1px solid var(--border);border-radius:12px;overflow:hidden}.status-table th,.status-table td{text-align:left;padding:15px;border-bottom:1px solid var(--border);vertical-align:top}.status-table th{color:var(--title);background:#FFF4D5}.status-table tr:last-child td{border-bottom:0}.status-pill{display:inline-flex;min-height:28px;align-items:center;padding:2px 9px;border-radius:7px;background:#F8E7B8;color:#1C1608;font-weight:800;font-size:13px}.long-copy{max-width:900px}.long-copy p{margin:0 0 16px;color:var(--text)}.long-copy h2,.long-copy h3{color:var(--title)}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.side-index{position:sticky;top:156px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:18px}.side-index h2{font-size:16px;margin:0 0 10px}.side-index a{display:block;padding:8px 0;color:var(--muted);border-bottom:1px solid rgba(212,160,23,.12)}.side-index a:last-child{border-bottom:0}.side-index a:hover,.side-index a:focus-visible{color:var(--deep);outline:none;text-decoration:underline}.chapter-stack{display:grid;gap:16px}.chapter-card{padding:26px}.chapter-card .chapter-no{display:inline-block;color:var(--deep);font-size:13px;font-weight:850;letter-spacing:.12em;margin-bottom:5px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gallery-card{background:white;border:1px solid var(--border);border-radius:14px;overflow:hidden}.gallery-card .media-img,.gallery-card .media-slot{min-height:230px}.gallery-card .gallery-copy{padding:20px}.gallery-card h2,.gallery-card h3{margin:0 0 8px;color:var(--title)}.gallery-card p{margin:0;color:var(--muted)}.roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.roster-card{border:1px solid var(--border);border-radius:12px;padding:20px;background:rgba(255,255,255,.60)}.roster-card .code{display:inline-flex;background:var(--warm);color:var(--title);border-radius:7px;padding:4px 8px;font-weight:800;font-size:13px}.roster-card h3{margin:12px 0 8px}.roster-card p{margin:0;color:var(--muted)}.program-list{display:grid;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden}.program-item{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:18px 20px;background:rgba(255,255,255,.55);border-bottom:1px solid var(--border)}.program-item:last-child{border-bottom:0}.program-item .program-label{font-weight:850;color:var(--deep)}.program-item h3{margin:0 0 4px;font-size:18px}.program-item p{margin:0;color:var(--muted)}.policy-list{display:grid;gap:14px}.policy-item{border-left:4px solid var(--gold);padding:16px 18px;background:rgba(255,255,255,.55);border-radius:0 10px 10px 0}.policy-item h2,.policy-item h3{font-size:19px;margin:0 0 7px;color:var(--title)}.policy-item p{margin:0;color:var(--muted)}.faq-list{display:grid;gap:14px}.faq-item h2{font-size:18px;margin:0 0 9px;color:var(--title)}.faq-item p{margin:0;color:var(--text)}.notice-strip{background:#2A210C;color:#FFF6E4;padding:18px;border-radius:12px}.notice-strip strong{color:#E8C547}.warning-box{background:#FFF2C8;border:1px solid rgba(184,134,11,.28);border-left:5px solid var(--deep);border-radius:10px;padding:18px;color:var(--text)}.app-showcase{display:grid;grid-template-columns:260px minmax(0,1fr);gap:30px;align-items:center}.app-icon{width:86px;height:86px;object-fit:cover;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:16px}.app-copy h2{margin-top:0}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.site-footer{background:var(--footer);color:#FFF6E4;border-top:1px solid rgba(232,197,71,.32);padding:42px 0 24px}.footer-wrap{display:grid;gap:26px}.footer-brand{display:flex;gap:14px;align-items:center}.footer-logo{max-height:36px;max-width:180px;width:auto}.footer-brand div{display:flex;flex-direction:column;line-height:1.2}.footer-brand strong{font-size:19px;color:#FFF6E4}.footer-brand span{font-size:10px;letter-spacing:.18em;color:#E8C547}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.footer-links section{display:grid;align-content:start;gap:7px}.footer-links h2{font-size:14px;color:#E8C547;margin:0 0 3px}.footer-links a{color:#FFF6E4;font-size:14px}.footer-links a:hover,.footer-links a:focus-visible{text-decoration:underline;outline:2px solid rgba(232,197,71,.4)}.footer-notice{margin:0;padding-top:18px;border-top:1px solid rgba(232,197,71,.18);color:#F7E9C8;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;color:#DCCB9B}.footer-bottom div{display:flex;flex-wrap:wrap;gap:14px}.overlay{position:fixed;inset:0;background:rgba(26,21,8,.42);z-index:180;opacity:0;visibility:hidden;pointer-events:none;transition:.18s}.overlay.visible{opacity:1;visibility:visible;pointer-events:auto}.field-book{position:fixed;left:0;right:0;top:92px;z-index:200;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:0 24px 50px rgba(40,30,5,.18);max-height:calc(100vh - 92px);overflow:auto;transform:translateY(-16px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.menu-open .field-book{transform:none;opacity:1;visibility:visible;pointer-events:auto}.menu-open,.search-open{overflow:hidden}.field-book-inner{padding-top:20px;padding-bottom:26px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--border)}.panel-brand{display:flex;align-items:center;gap:12px}.panel-logo{height:30px;width:auto;max-width:160px}.panel-brand div{display:flex;flex-direction:column;line-height:1.1}.panel-brand span{font-size:9px;color:var(--note);letter-spacing:.16em;margin-top:3px}.panel-close{min-height:44px;padding:0 15px;border:1px solid var(--border);background:var(--bg2);border-radius:9px;color:var(--title)}.field-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:20px}.field-groups h2{font-size:14px;color:var(--deep);margin:0 0 10px}.field-groups a{display:block;padding:10px 0;border-bottom:1px solid rgba(212,160,23,.13)}.field-groups a strong{display:block;color:var(--title);font-size:15px}.field-groups a span{display:block;color:var(--note);font-size:12px;line-height:1.5;margin-top:2px}.field-groups a:hover strong,.field-groups a:focus-visible strong{color:var(--deep)}.field-groups a:focus-visible{outline:2px solid rgba(184,134,11,.25);outline-offset:2px}.search-layer{position:fixed;left:0;right:0;top:92px;z-index:205;display:flex;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:.18s}.search-open .search-layer{opacity:1;visibility:visible;pointer-events:auto;transform:none}.search-card{width:min(calc(100% - 32px),760px);background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow);padding:24px}.search-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.search-head h2{font-size:24px;margin:4px 0 16px;color:var(--title)}.search-field{display:grid;gap:7px;font-size:13px;color:var(--muted)}.search-field input{height:48px;border:1px solid rgba(184,134,11,.38);background:white;color:var(--title);padding:0 14px;border-radius:8px;outline:none}.search-field input:focus{border-color:var(--deep);box-shadow:0 0 0 3px rgba(212,160,23,.16)}.search-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.search-presets a{min-height:46px;display:flex;align-items:center;padding:0 12px;background:var(--bg2);border:1px solid var(--border);border-radius:8px}.search-presets a:hover,.search-presets a:focus-visible{background:var(--pale);outline:2px solid rgba(184,134,11,.18)}.search-empty{color:var(--note);margin:14px 0 0}.mobile-bottom{display:none}.callout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.callout{background:#FFF9EA;border:1px solid var(--border);border-radius:12px;padding:20px}.callout strong{display:block;color:var(--title);margin-bottom:5px}.callout p{margin:0;color:var(--muted)}.quote-card{padding:26px;border-radius:12px;background:#2A210C;color:#FFF6E4}.quote-card p{font-size:20px;line-height:1.6;margin:0}.quote-card span{display:block;margin-top:10px;color:#E8C547;font-size:13px;letter-spacing:.08em}.legal-note{font-size:13px;color:var(--note)}
@media (max-width:1020px){.card-grid.four{grid-template-columns:repeat(2,1fr)}.sign-grid{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:repeat(3,1fr)}.field-groups{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.side-index{position:static}.roster-grid{grid-template-columns:repeat(2,1fr)}.footer-links{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.app-showcase{grid-template-columns:220px 1fr}}
@media (max-width:720px){body{padding-bottom:calc(50px + env(safe-area-inset-bottom))}.shell-inner{width:min(calc(100% - 32px),var(--max))}.gold-line{height:22px}.concierge-bar{height:70px}.concierge-grid{grid-template-columns:minmax(0,1fr) 76px 76px;gap:6px}.brand-logo{max-height:30px;max-width:140px}.brand-wordmark strong{font-size:17px}.brand-wordmark small{font-size:8px}.book-button,.entry-link{padding:0 10px;width:76px}.stage-tabs{display:none}.site-main{padding-top:92px}.page-hero{padding:32px 0 18px}.page-hero p{font-size:16px}.home-hero{padding-top:18px}.home-cover.media-slot{height:200px}.section{padding:32px 0}.section-head{align-items:start;flex-direction:column}.card-grid,.card-grid.two,.card-grid.four,.gallery-grid,.callout-grid{grid-template-columns:1fr}.sign-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:1fr}.editorial-grid{grid-template-columns:1fr}.program-item{grid-template-columns:1fr;gap:4px}.roster-grid{grid-template-columns:1fr}.status-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.field-book{top:92px;width:100%;max-height:calc(100vh - 92px)}.field-book-inner{width:100%;padding-inline:16px}.field-groups{grid-template-columns:1fr;gap:14px}.search-layer{inset:0;top:0;background:var(--bg);display:block;transform:none}.search-card{width:100%;height:100%;border:0;box-shadow:none;padding:calc(22px + env(safe-area-inset-top)) 16px 22px;overflow:auto}.search-presets{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(2,1fr);gap:20px}.footer-bottom{align-items:flex-start;flex-direction:column}.mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:150;height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#FFF6E4;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,1fr)}.mobile-bottom a{min-height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--title)}.mobile-bottom a.active{background:var(--warm);font-weight:800}.menu-open .mobile-bottom,.search-open .mobile-bottom{z-index:120}.app-showcase{grid-template-columns:1fr}.app-showcase>.media-frame{max-width:360px}.hero-actions,.button-row{flex-direction:column;align-items:stretch}.btn-primary,.btn-secondary,.text-button{width:100%}.media-img{max-height:360px}}
@media (max-width:430px){.sign-grid{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr}.brand-link{min-width:0}.brand-wordmark small{display:none}.gold-brand{max-width:240px}.top-search-btn{min-width:44px}.number-item{grid-template-columns:42px 1fr}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
