:root{
 --page:#FFFBF3;--surface:#fff;--warm:#FFF6E4;--blush:#F8E7B8;
 --title:#1C1608;--ink:#3A3120;--muted:#6B5E43;--quiet:#8A7B5E;
 --gold:#D4A017;--bright:#E8C547;--sun:#F0C94A;--deep:#B8860B;
 --line:rgba(212,160,23,.18);--shadow:0 16px 42px rgba(80,55,10,.10);
 --max:1280px;--header-height:136px;--radius:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:156px}
body{margin:0;color:var(--ink);background:var(--page);font:400 16px/1.76 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;-webkit-text-size-adjust:100%;min-width:0}
body.modal-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}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.33;color:var(--title)}p{overflow-wrap:anywhere}button,a{touch-action:manipulation}a,button,input{outline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--deep);outline-offset:4px}
a:hover{color:#87620C}
.shell{width:min(calc(100% - 32px),var(--max));margin-inline:auto;min-width:0}
.skip-link{position:fixed;z-index:2000;top:-100px;left:14px;background:#1A1508;color:#fff;padding:12px 18px;border-radius:8px}
.skip-link:focus{top:10px;color:#fff}
.site-top{position:fixed;inset:0 0 auto;z-index:1000;width:100%;box-shadow:0 7px 24px rgba(48,37,9,.08)}
.gold-strip{height:22px;background:#241B0A;color:#FFF6E4;font-size:10px;font-weight:650;line-height:22px;letter-spacing:.12em}
.top-shell{height:100%;width:min(calc(100% - 32px),var(--max));margin:auto;display:flex;align-items:center;gap:12px;position:relative}
.separator{opacity:.48;margin:0 5px}.top-note{margin-left:auto;color:#F8E7B8;padding-right:45px;white-space:nowrap}
.top-search{position:absolute;top:0;right:0;width:44px;height:44px;border:0;background:transparent;color:#FFF6E4;display:grid;place-items:center;z-index:4;border-radius:5px}
.top-search:hover{background:#55421C}.magnify{display:block;position:relative;width:13px;height:13px;border:2px solid #FFF6E4;border-radius:50%}.magnify:after{content:"";position:absolute;width:7px;height:2px;background:#FFF6E4;right:-6px;bottom:-3px;transform:rotate(45deg);border-radius:2px}
.lobby{height:70px;background:#FFFBF3;border-bottom:1px solid var(--line)}
.lobby-shell{width:min(calc(100% - 32px),var(--max));height:100%;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.brand-link{justify-self:start;display:flex;align-items:center;min-width:0;max-width:100%}.brand-logo{display:block;object-fit:contain;object-position:left center;max-height:38px;max-width:min(100%,190px);width:auto;height:auto}
.wordmark{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.07;white-space:nowrap;gap:5px}.wordmark strong{font-weight:850;font-size:23px;letter-spacing:.06em;color:#1C1608}.wordmark small{font-size:9px;line-height:1.1;letter-spacing:.18em;font-weight:800;color:#B8860B}
.book-trigger{min-height:44px;min-width:108px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(184,134,11,.35);border-radius:9px;background:#FFF6E4;color:#30240B;font-size:14px;font-weight:780}
.book-trigger:hover,.book-trigger[aria-expanded=true]{background:#F8E7B8;color:#1C1608;border-color:#B8860B}
.book-icon{display:grid;gap:4px}.book-icon i{display:block;width:16px;height:2px;border-radius:1px;background:#B8860B}
.entry-action{justify-self:end;min-height:44px;min-width:105px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:9px;font-size:13px;font-weight:800;color:#201707;background:linear-gradient(135deg,#F0C94A 0%,#D4A017 55%,#B8860B 100%);box-shadow:0 4px 14px rgba(212,160,23,.17)}
.entry-action:hover,.btn-gold:hover{color:#201707;filter:brightness(.97);transform:translateY(-1px)}
.category-nav{height:44px;background:#FFF6E4;border-bottom:1px solid rgba(184,134,11,.25)}
.category-shell{width:min(calc(100% - 32px),var(--max));height:100%;margin:auto;display:flex;align-items:center;gap:5px;white-space:nowrap}
.nav-prefix{font-size:10px;font-weight:850;letter-spacing:.14em;color:#8A6B29;margin-right:16px}
.category-shell a{display:inline-flex;min-height:32px;align-items:center;justify-content:center;border-radius:5px;padding:5px 14px;color:#4F3F1F;font-weight:760;font-size:13px;transition:background .15s}
.category-shell a:hover,.category-shell a.selected{background:#F0C94A;color:#241B0A}.nav-tail{margin-left:auto;color:#9D895E;font-size:11px;letter-spacing:.04em}
.site-main{padding-top:calc(var(--header-height) + 24px)}
.section-label{display:inline-block;color:#A2730B;font-size:11px;letter-spacing:.17em;font-weight:850;line-height:1.5;text-transform:uppercase}
.home-lead{border-radius:var(--radius);background:white;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.hero-visual{padding:14px 14px 0}
.media-slot{width:100%;display:block;position:relative;border-radius:11px;background:linear-gradient(150deg,#FFF9EB,#F8E7B8);overflow:hidden;border:1px solid rgba(184,134,11,.14);min-width:0}
.media-slot img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;background:#FFF9EA}
.media-hero{height:clamp(190px,24vw,320px);background:#F8E7B8;border-radius:10px}
.media-section,.media-wide{height:240px}.media-card{height:202px;border-radius:10px}.media-portrait{height:390px;max-height:420px}.media-compact{height:165px}.media-badge{height:65px}
.media-fallback{width:100%;height:100%;position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(18px,4.2vw,60px);overflow:hidden;color:#35260B;background:radial-gradient(ellipse 60% 140% at 90% 0%,rgba(245,212,110,.9),transparent 70%),linear-gradient(125deg,#F9E6B4 0%,#FFF9EB 58%,#EED293 100%)}
.media-fallback:before{content:"";position:absolute;inset:12px;border:1px solid rgba(150,108,21,.21);z-index:-1;pointer-events:none}
.media-fallback:after{content:"";position:absolute;inset:auto 26px 24px auto;width:80px;height:80px;background:repeating-linear-gradient(90deg,rgba(184,134,11,.1) 0 1px,transparent 1px 8px);transform:rotate(24deg);z-index:-1}
.ornament-ring{position:absolute;right:7%;top:50%;width:min(28vw,300px);height:min(28vw,300px);transform:translateY(-50%);border-radius:50%;border:1px solid rgba(123,82,9,.16);box-shadow:0 0 0 19px rgba(235,191,78,.11),0 0 0 40px rgba(255,250,228,.28);z-index:-1}
.ornament-ring:before{content:"";position:absolute;inset:19%;border:1px solid rgba(123,82,9,.22);border-radius:50%}
.fallback-overline{font-size:10px;letter-spacing:.16em;font-weight:800;color:#896114}.media-fallback strong{font-family:Georgia,"Songti SC","STSong","Noto Serif CJK SC",serif;font-size:clamp(25px,3.7vw,49px);line-height:1.3;margin-top:9px;max-width:86%;font-weight:730;color:#2B200E}
.fallback-subline{font-size:13px;letter-spacing:.13em;color:#80662D;margin-top:12px;font-weight:650}.media-fallback>i{height:3px;width:68px;display:block;background:#B8860B;margin-top:21px}
.media-card .media-fallback{padding:22px}.media-card .media-fallback strong{font-size:26px}.media-card .fallback-overline{font-size:9px}
.media-portrait .media-fallback{align-items:center;text-align:center;padding:25px}.media-portrait .ornament-ring{right:25%;width:200px;height:200px}.media-portrait .media-fallback strong{font-size:34px}
.lead-bottom{padding:clamp(20px,4vw,36px);display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:center;gap:32px}
.lead-bottom h1{font-size:clamp(28px,3.3vw,40px);letter-spacing:-.02em;margin:10px 0 15px;max-width:850px;line-height:1.3}
.lead-bottom p{color:#53472F;max-width:760px;line-height:1.94;margin:0 0 21px}
.lead-actions,.app-actions,.continue-links,.inline-links{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:46px;padding:10px 18px;font-size:14px;font-weight:800;border-radius:9px;transition:filter .2s,transform .2s,border-color .2s}
.btn-gold{background:linear-gradient(135deg,#F0C94A,#D4A017 55%,#B8860B);color:#1C1608}
.btn-outline{border:1px solid rgba(184,134,11,.43);background:#FFFCF3;color:#47350E}
.btn-outline:hover{border-color:#B8860B;background:#FFF3CC;color:#1C1608}
.lead-side{background:#241B0A;color:#FFF6E4;border-radius:12px;padding:23px 18px 20px;box-shadow:0 14px 28px rgba(36,27,10,.12)}
.lead-side>span{display:block;font-size:11px;letter-spacing:.09em;color:#F8E7B8;font-weight:800}.lead-side strong{font-family:Georgia,serif;color:#F0C94A;font-weight:800;font-size:66px;line-height:1.25;display:block}.lead-side strong small{font-size:31px}.lead-side p{font-size:12px;color:#FFF6E4;line-height:1.72;margin:5px 0 0}
.home-section{margin-top:56px;min-width:0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:21px}.section-head h2{margin:6px 0 0;font-size:clamp(22px,2.6vw,31px);letter-spacing:-.024em}.section-head .small-go{white-space:nowrap}
.small-go{display:inline-flex;align-items:center;min-height:44px;gap:8px;color:#9A6F0A;font-size:13px;font-weight:830;padding:5px 0}.small-go:hover{color:#63480A}
.six-labels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.mini-stage{position:relative;min-height:172px;padding:20px 16px;border:1px solid var(--line);background:#FFF9EE;border-radius:12px;display:flex;align-items:flex-start;flex-direction:column;gap:5px;color:#3A3120;transition:transform .2s,box-shadow .2s}
.mini-stage:hover{transform:translateY(-3px);box-shadow:var(--shadow);color:#3A3120}.mini-stage>span{font:700 23px/1 Georgia,serif;color:#BA8E20}.mini-stage strong{font-size:16px;margin-top:6px;color:#241B0A}.mini-stage small{font-size:12px;line-height:1.7;color:#6B5E43}.mini-stage i{position:absolute;right:14px;top:15px;font-style:normal;color:#946B0C}
.mini-1,.mini-4{background:#FFF6E4}.mini-2,.mini-5{background:#F9ECCB}
.stage-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr);gap:18px}
.stage-photo .media-slot{height:100%;min-height:420px}.stage-copy{padding:25px;background:#fff;border:1px solid var(--line);border-radius:12px;min-width:0}.stage-copy>p{font-size:15px;line-height:1.96;color:#635234;margin:0 0 18px}
.four-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.four-stage a{min-height:96px;border-radius:9px;background:#FFF6E4;padding:15px 13px;display:flex;gap:10px;align-items:flex-start;color:#3A3120;border:1px solid var(--line)}
.four-stage a:hover{background:#F8E7B8;color:#241B0A}.four-stage a>span{font:800 19px/1.3 Georgia,serif;color:#B8860B}.four-stage a strong,.four-stage a small{display:block}.four-stage a strong{font-size:14px}.four-stage a small{font-size:11px;line-height:1.6;color:#796844;margin-top:4px}.four-stage a>b{margin-left:auto;font-weight:500;color:#AF8615}
.feature-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.trio-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0;transition:box-shadow .2s}.trio-card:hover{box-shadow:var(--shadow)}.trio-card>.media-slot{border-radius:0;border:0;border-bottom:1px solid var(--line)}.trio-card>div{padding:18px 19px 15px}.trio-card h3{font-size:19px;margin:0 0 7px}.trio-card p{font-size:14px;line-height:1.87;color:#6B5E43;margin:0 0 7px}
.split-feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;align-items:stretch}.split-art .media-slot{height:100%;min-height:352px}.split-text{border:1px solid var(--line);border-radius:12px;background:#fff;padding:23px;min-width:0}.split-intro{color:#6B5E43;font-size:14px;line-height:1.9;margin-bottom:18px}
.short-notes{display:grid;gap:0}.short-notes article{display:flex;gap:16px;border-top:1px solid var(--line);padding:12px 0}.short-notes article>span{font:800 19px Georgia,serif;color:#B8860B}.short-notes h3{font-size:15px;margin:0 0 3px}.short-notes p{font-size:13px;color:#7C6943;line-height:1.7;margin:0}
.progress-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:19px}.progress-photo .media-slot{height:100%;min-height:350px}.progress-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.progress-cards article{border:1px solid var(--line);background:#fff;border-radius:10px;padding:16px}.progress-cards span{display:block;color:#B8860B;font:800 26px/1.1 Georgia,serif}.progress-cards strong{display:block;margin:9px 0 4px;font-size:15px}.progress-cards small{display:block;color:#7B6944;font-size:12px;line-height:1.65}.section-caution{margin:12px 0 0;color:#87734D;font-size:12px}
.schedule-feature{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:18px}.schedule-photo .media-slot{height:100%;min-height:320px}.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.schedule-grid article{border:1px solid var(--line);background:#fff;border-radius:11px;padding:23px 19px}.status-chip{display:inline-flex;color:#281D07;background:#F8E7B8;padding:5px 12px;border-radius:5px;font-weight:850;font-size:14px}.status-1{background:#FFF0CB}.status-2{background:#FFF6E4}.status-3{background:#F4DE9A}.schedule-grid p{font-size:13px;color:#726143;line-height:1.85;margin:12px 0 0}
.app-feature{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:25px;padding:26px;background:#FFF6E4;border-radius:15px;border:1px solid var(--line)}.app-art .media-slot{height:390px;background:#F8E7B8}.app-text{align-self:center}.app-heading{display:flex;align-items:center;gap:14px;margin-bottom:17px}.app-heading>span{display:flex;flex-direction:column;line-height:1.3;gap:6px}.app-heading strong{font-size:22px}.app-heading small{color:#8A6B2D;font-size:11px;letter-spacing:.14em}.app-mark{max-height:64px;object-fit:contain}.app-mark-fallback{width:64px;height:64px;border-radius:14px;background:#241B0A;color:#F0C94A;display:flex;justify-content:center;align-items:center;font:800 28px Georgia,serif;box-shadow:0 7px 18px rgba(34,26,8,.15)}.app-mark-fallback span{color:#FFF6E4;font-size:21px}.app-text>p{font-size:14px;color:#5E4E30;line-height:2.05}.app-actions{margin-top:20px}
.quad-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quad-links a{position:relative;padding:22px 18px;border:1px solid var(--line);background:#fff;border-radius:11px;min-height:160px;color:#3A3120}.quad-links a:hover{background:#FFF6E4;color:#3A3120}.quad-links span{font-size:9px;letter-spacing:.1em;color:#977025;font-weight:850}.quad-links h3{font-size:19px;margin:12px 0 6px}.quad-links p{font-size:13px;line-height:1.75;color:#766543;margin:0}.quad-links i{position:absolute;top:20px;right:17px;font-style:normal;color:#B8860B}
.info-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info-columns article{padding:25px 24px;background:#fff;border:1px solid var(--line);border-radius:11px}.info-columns h3{font-size:21px;margin:8px 0 10px}.info-columns p,.safety-row p,.home-faq>p,.about-home p{font-size:14px;color:#655537;line-height:2.02}
.safety-row{padding:27px 30px;border-radius:12px;background:linear-gradient(120deg,#F8E7B8,#FFF9ED 70%);border:1px solid var(--line)}.safety-mark{display:block;color:#9B730D;font-size:25px}.safety-row h3{font-size:21px;margin:4px 0 10px}.inline-links{gap:22px}
.home-faq{display:grid;grid-template-columns:1.2fr 1fr;gap:23px;align-items:start}.faq-compact{display:grid;gap:10px}.faq-compact a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:13px 16px;font-weight:760;font-size:13px}.faq-compact a:hover{background:#FFF6E4}.about-home{background:#241B0A;color:#FFF6E4;border-radius:13px;display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:28px;padding:33px 38px}.about-home p{color:#FFF6E4;margin-bottom:15px}.large-initial{font:800 91px Georgia,serif;color:#F0C94A;letter-spacing:-.1em}.large-initial span{color:#FFF6E4;font-size:64px}
/* Inner-page editorial structures */
.inner-intro{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:28px;align-items:center;padding:26px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.inner-intro-copy{min-width:0}.intro-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px}.breadcrumbs{font-size:11px;color:#92815D;margin-left:auto}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.inner-intro h1,.faq-intro h1{font-size:clamp(28px,3vw,37px);margin:10px 0 10px}.lead-statement{font-size:clamp(19px,2vw,25px);font-weight:710;color:#443518;line-height:1.46;margin-bottom:15px}.intro-description{color:#695837;font-size:15px;line-height:2;margin-bottom:13px}.inner-intro-art .media-slot{height:300px}
.mode-roster .media-fallback,.mode-manifesto .media-fallback,.mode-policies .media-fallback{background:radial-gradient(ellipse at top right,rgba(220,174,45,.22),transparent 70%),linear-gradient(135deg,#FFF9E9,#F5E0A6)}
.mode-gallery .media-fallback{background:linear-gradient(120deg,#F3DB96,#FFF5E0)}
.mode-timeline .media-fallback,.mode-steps .media-fallback{background:linear-gradient(118deg,#FFF2C8,#FFF9EF)}
.state-line{display:flex;flex-wrap:wrap;gap:14px;align-items:center;border:1px solid rgba(184,134,11,.28);background:#FFF4D9;border-radius:10px;padding:13px 19px;margin-top:18px;color:#3D311B;font-size:13px}.state-line strong{font-size:14px}.state-line span:last-child{color:#77643E}.state-dot{width:9px;height:9px;border-radius:50%;background:#B8860B;display:inline-block;flex:0 0 auto}
.inner-section{margin-top:45px;min-width:0}.inner-section-head{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:17px}.inner-section-head h2{font-size:clamp(23px,2.55vw,30px);margin:7px 0 8px}.inner-section-head p{color:#756446;line-height:1.9;max-width:1000px;margin:0;font-size:15px}
.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.article-item{display:flex;gap:17px;min-width:0;border-radius:11px;border:1px solid var(--line);background:white;padding:23px 22px}.item-index{flex:0 0 auto;display:block;font:800 32px/1 Georgia,serif;color:#C19A30}.article-item h3{font-size:18px;margin:0 0 11px}.article-item p{font-size:15px;color:#665735;line-height:1.95;margin:0}
.mode-gallery~.inner-section .article-item:nth-child(3n),.mode-editorial~.inner-section .article-item:nth-child(3n),.mode-portfolio~.inner-section .article-item:nth-child(3n){background:#FFF6E4}
.mode-program~.inner-section .article-item,.mode-notices~.inner-section .article-item{border-left:3px solid #D4A017}
.mode-criteria~.inner-section .item-index{font-size:38px}
.mode-policies~.inner-section .article-item,.mode-handbook~.inner-section .article-item{border-radius:5px}
.mode-steps~.inner-section .article-item,.mode-timeline~.inner-section .article-item{border-left:4px solid #D4A017}
.mode-strips~.inner-section .article-list,.mode-insight~.inner-section .article-list{grid-template-columns:repeat(1,minmax(0,1fr))}.mode-strips~.inner-section .article-item,.mode-insight~.inner-section .article-item{padding:22px 28px}
.closing-feature{background:#F8E7B8;border:1px solid rgba(184,134,11,.25);border-radius:11px;margin-top:35px;padding:28px 32px}.closing-feature h2{font-size:23px;margin:8px 0 10px}.closing-feature p{font-size:15px;line-height:2;color:#4B3D20;margin:0}
.continue-section{margin-top:55px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#fff;padding:27px 30px;border:1px solid var(--line);border-radius:12px}.continue-section h2{font-size:23px;margin:7px 0 8px}.continue-section p{font-size:14px;color:#74613F;line-height:1.8;max-width:670px;margin:0}.continue-links{flex-shrink:0}
/* FAQ stays readable and interactive even without JavaScript */
.faq-intro{border:1px solid var(--line);background:#fff;border-radius:14px;padding:30px 35px;display:flex;justify-content:space-between;align-items:center;gap:24px}.faq-intro .breadcrumbs{display:inline-block;margin-left:18px}.faq-intro>div p{max-width:760px;color:#6B5E43;line-height:1.9;margin-bottom:8px}.faq-art{white-space:nowrap;color:#D4A017;font:800 88px Georgia,serif;letter-spacing:-.1em}.faq-art span{color:#392B0D;font-size:47px}
.faq-section{margin-top:42px}.faq-list{display:grid;gap:10px}.faq-item{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}.faq-item summary{list-style:none;cursor:pointer;min-height:64px;display:flex;align-items:center;gap:18px;padding:15px 20px;font-weight:800;color:#271D0C;font-size:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-count{font:800 20px Georgia,serif;color:#B8860B}.faq-plus{margin-left:auto;font-size:24px;font-weight:400;color:#AD7F18;transition:transform .2s}.faq-item[open] .faq-plus{transform:rotate(45deg)}.faq-item>p{border-top:1px solid var(--line);padding:17px 23px 21px 56px;color:#655537;line-height:2;margin:0;font-size:15px}
/* Footer */
.site-footer{margin-top:84px;background:#1A1508;color:#FFF6E4;border-top:3px solid #D4A017}.footer-inner{padding:48px 0 25px}.footer-lead{display:flex;align-items:center;gap:26px;padding-bottom:29px;border-bottom:1px solid rgba(255,246,228,.2)}.footer-brand{display:flex;align-items:center;flex:0 0 195px}.footer-lead .brand-logo{background:#FFF6E4;border-radius:6px;padding:5px;max-height:45px}.footer-lead .wordmark strong{color:#FFF6E4}.footer-lead .wordmark small{color:#F0C94A}.footer-lead>div strong{font-size:19px;color:#FFF6E4}.footer-lead>div strong span{color:#F0C94A;font-size:11px;letter-spacing:.15em;margin-left:9px}.footer-lead p{font-size:13px;color:#E7DABF;line-height:1.9;margin:7px 0 0;max-width:950px}
.footer-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding:29px 0 35px}.footer-group h2{font-size:14px;color:#F0C94A;letter-spacing:.08em;margin:0 0 17px}.footer-group>div{display:grid;gap:11px}.footer-group a{font-size:13px;color:#DDD0B7;min-height:26px}.footer-group a:hover{color:#FFF6E4;text-decoration:underline;text-underline-offset:4px}.footer-end{border-top:1px solid rgba(255,246,228,.2);padding-top:19px;display:flex;justify-content:space-between;gap:12px;color:#CFC1A5;font-size:11px}
/* Mobile navigation and accessible overlays */
.mobile-bottom{display:none}.modal-mask{position:fixed;inset:0;background:rgba(25,18,6,.55);backdrop-filter:blur(2px);z-index:1080;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .19s,visibility .19s}.modal-mask.is-open{opacity:1;visibility:visible;pointer-events:auto}
.book-panel,.search-panel{position:fixed;z-index:1100;visibility:hidden;pointer-events:none;opacity:0;transition:transform .24s ease,opacity .2s ease,visibility .2s;border:1px solid rgba(184,134,11,.24);box-shadow:0 22px 55px rgba(29,23,10,.23);background:#FFFBF3;overflow:auto;overscroll-behavior:contain}
.book-panel{top:92px;left:50%;width:min(1280px,100%);max-height:calc(100dvh - 104px);transform:translate(-50%,-22px);border-radius:0 0 13px 13px}
.book-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.panel-head{display:flex;align-items:center;gap:22px;padding:15px 24px;background:#FFF6E4;border-bottom:1px solid var(--line)}.panel-head>a{display:flex;align-items:center;max-width:180px}.panel-head .brand-logo{max-height:30px}.panel-head .wordmark strong{font-size:19px}.panel-head>div{display:flex;flex-direction:column;gap:2px;color:#241B0A}.panel-head>div strong{font-size:14px}.panel-head>div span{font-size:11px;color:#8A7545}
.close-panel{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid rgba(184,134,11,.25);background:#fff;border-radius:7px;color:#4B3715;font-size:29px;font-weight:300;margin-left:auto}.close-panel:hover{background:#F8E7B8}
.panel-groups{padding:22px 26px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.panel-group{min-width:0}.panel-group h2{font-size:17px;border-bottom:2px solid #E8C547;padding-bottom:9px;margin-bottom:11px}.panel-links{display:grid;gap:7px}.panel-links a{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;min-height:60px;padding:9px 10px;border-radius:7px;background:#fff;border:1px solid var(--line);align-content:center}.panel-links a:hover{background:#FFF3D4}.panel-links b{font-size:13px;font-weight:800;line-height:1.35;color:#332811}.panel-links small{font-size:10px;line-height:1.6;color:#786745;grid-column:1;display:block;margin-top:3px;overflow-wrap:anywhere}.panel-links a span{color:#BA8D1B;grid-row:1 / span 2;grid-column:2;align-self:center}.panel-foot{padding:12px 25px;color:#7C653D;background:#FFF6E4;font-size:12px;border-top:1px solid var(--line)}
.search-panel{top:92px;right:max(16px,calc((100vw - 1280px)/2));width:min(515px,calc(100% - 32px));padding:26px 28px;max-height:calc(100dvh - 105px);transform:translateY(-20px);border-radius:0 0 10px 10px}.search-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.search-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.search-heading>div>span{color:#9C7221;font-size:11px;font-weight:800;letter-spacing:.14em}.search-heading h2{font-size:25px;margin:7px 0 22px}.search-label{display:block;font-size:12px;font-weight:750;color:#6C5939;margin-bottom:8px}.search-input{display:block;width:100%;min-height:49px;background:#fff;border:1px solid #D6BD78;color:#1C1608;border-radius:6px;padding:12px 14px;outline-offset:0}.search-input:focus{outline:2px solid #B8860B}.search-help{font-size:12px;color:#826F4C;margin:9px 0 18px}.search-results{display:grid;grid-template-columns:1fr 1fr;gap:9px}.search-results a{min-height:57px;padding:11px 13px;background:#FFF6E4;border:1px solid var(--line);border-radius:6px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:790}.search-results a:hover{background:#F8E7B8}.search-results a[hidden]{display:none}.search-empty{font-size:13px;color:#6B5E43}.search-empty[hidden]{display:none}
@media (max-width:1240px){.nav-tail{display:none}.nav-prefix{margin-right:8px}.category-shell a{padding-inline:10px}.six-labels{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-stage{min-height:142px}}
@media (max-width:950px){.nav-prefix{display:none}.category-shell{justify-content:space-between}.category-shell a{padding-inline:9px}.panel-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-trio{gap:12px}.stage-feature,.split-feature,.schedule-feature,.progress-section{grid-template-columns:1fr 1fr}.stage-photo .media-slot{min-height:380px}.split-art .media-slot{min-height:380px}.quad-links{grid-template-columns:repeat(2,minmax(0,1fr))}.app-feature{grid-template-columns:260px minmax(0,1fr)}}
@media (max-width:700px){:root{--header-height:92px}html{scroll-padding-top:112px}.site-main{padding-top:calc(var(--header-height) + 16px)}.category-nav{display:none}.top-note{display:none}.lobby-shell{gap:6px}.brand-logo{max-height:33px}.wordmark strong{font-size:20px}.wordmark small{font-size:8px}.book-trigger{min-width:76px;gap:6px;padding:4px 8px}.entry-action{min-width:83px;padding-inline:9px;gap:3px}.lead-bottom{grid-template-columns:minmax(0,1fr) 145px;gap:16px}.lead-side{padding:13px}.lead-side strong{font-size:46px}.lead-side strong small{font-size:23px}.lead-side p{font-size:11px}.stage-feature,.split-feature,.schedule-feature,.progress-section,.app-feature,.home-faq,.inner-intro{grid-template-columns:1fr}.stage-photo .media-slot{min-height:230px;height:250px}.split-art .media-slot{min-height:230px;height:250px}.progress-photo .media-slot,.schedule-photo .media-slot{min-height:220px;height:240px}.app-art .media-slot{height:310px}.feature-trio{grid-template-columns:1fr}.feature-trio .trio-card{display:grid;grid-template-columns:38% minmax(0,1fr)}.trio-card>.media-slot{height:100%;min-height:205px;border-bottom:0;border-right:1px solid var(--line)}.feature-trio .trio-card>div{padding:18px}.media-card .media-fallback strong{font-size:21px}.six-labels{grid-template-columns:repeat(2,minmax(0,1fr))}.app-feature{padding:18px}.app-art .media-slot{height:280px}.about-home{grid-template-columns:1fr;padding:22px;gap:12px}.large-initial{font-size:64px}.large-initial span{font-size:50px}.footer-groups{grid-template-columns:1fr 1fr}.footer-lead{align-items:flex-start}.inner-intro-art .media-slot{height:240px}.article-list{grid-template-columns:1fr}.continue-section{flex-direction:column;align-items:stretch}.faq-art{font-size:56px}.faq-art span{font-size:32px}.book-panel{top:92px;max-height:calc(100dvh - 92px);width:100%;border-radius:0}.search-panel{position:fixed;inset:0;top:0;left:0;right:0;width:100%;height:100dvh;max-height:none;padding:40px 20px 20px;transform:translateY(-10px);border-radius:0;background:#FFFBF3}.panel-groups{padding:16px;gap:15px}.panel-head{padding:12px 16px}.mobile-bottom{position:fixed;z-index:900;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(50px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:#FFFBF3;border-top:1px solid rgba(184,134,11,.25);box-shadow:0 -8px 22px rgba(80,55,10,.06)}.mobile-bottom a{min-width:0;display:flex;align-items:center;justify-content:center;gap:1px;flex-direction:column;color:#725F35;font-size:11px;line-height:1.25;font-weight:750}.mobile-bottom a.selected{background:#F0C94A;color:#251C09}.bottom-symbol{font-size:19px;font-family:Arial,sans-serif;line-height:1.1}.site-footer{margin-top:65px}.footer-inner{padding-bottom:25px}body{padding-bottom:calc(50px + env(safe-area-inset-bottom,0px))}}
@media (max-width:480px){.shell,.top-shell,.lobby-shell{width:calc(100% - 32px)}.lobby{height:70px}.wordmark strong{font-size:18px;letter-spacing:0}.wordmark small{font-size:7px;letter-spacing:.09em}.book-trigger{min-width:68px;font-size:12px;gap:5px;padding:4px 6px}.book-icon{gap:3px}.book-icon i{width:13px}.entry-action{min-width:70px;font-size:11px;padding:8px 5px}.lead-bottom{grid-template-columns:1fr;gap:16px;padding:19px}.lead-bottom h1{font-size:28px;line-height:1.32}.lead-bottom p{font-size:14px}.lead-side{display:flex;align-items:center;gap:12px}.lead-side>span{max-width:95px}.lead-side strong{font-size:38px}.lead-side strong small{font-size:20px}.lead-side p{font-size:11px;margin:0}.home-section{margin-top:39px}.hero-visual{padding:8px 8px 0}.media-hero{height:190px}.media-fallback{padding:22px}.media-hero .media-fallback strong{font-size:26px}.media-hero .ornament-ring{width:190px;height:190px;right:-45px}.media-fallback strong{max-width:98%;font-size:26px}.fallback-overline{font-size:9px}.section-head{align-items:flex-start;gap:12px}.section-head h2{font-size:22px}.section-head .small-go{font-size:11px}.mini-stage{min-height:148px;padding:14px}.mini-stage strong{font-size:15px}.mini-stage small{font-size:11px;line-height:1.5}.stage-copy,.split-text{padding:17px}.four-stage{grid-template-columns:1fr 1fr;gap:7px}.four-stage a{padding:10px;gap:6px;min-height:105px}.four-stage a strong{font-size:12px}.four-stage a small{font-size:10px}.progress-cards article,.schedule-grid article{padding:13px}.progress-cards strong{font-size:13px}.progress-cards small{font-size:11px}.schedule-grid p{font-size:12px}.trio-card>div h3{font-size:16px}.trio-card>div p{font-size:12px;line-height:1.7}.feature-trio .trio-card{grid-template-columns:36% minmax(0,1fr)}.trio-card>.media-slot{min-height:226px}.trio-card .media-fallback{padding:10px}.trio-card .fallback-overline{display:none}.trio-card .media-fallback strong{font-size:19px}.trio-card .fallback-subline{font-size:10px}.quad-links{gap:9px}.quad-links a{padding:17px 13px;min-height:160px}.quad-links h3{font-size:17px}.quad-links p{font-size:12px}.info-columns{grid-template-columns:1fr}.info-columns article{padding:21px}.safety-row{padding:21px}.app-feature .media-portrait{height:260px}.app-text p{font-size:13px}.footer-lead{flex-direction:column;gap:15px}.footer-brand{flex-basis:auto}.footer-end{flex-direction:column}.inner-intro{padding:20px;gap:14px}.inner-intro h1{font-size:30px}.lead-statement{font-size:19px}.intro-description{font-size:14px}.inner-intro-art .media-slot{height:207px}.article-item{padding:17px 15px;gap:11px}.article-item h3{font-size:16px}.article-item p{font-size:14px}.item-index{font-size:27px}.closing-feature{padding:21px}.closing-feature p{font-size:14px}.continue-section{padding:20px}.faq-intro{padding:21px;gap:8px}.faq-art{font-size:42px}.faq-art span{font-size:24px}.faq-item summary{gap:9px;padding:14px;font-size:14px}.faq-item>p{padding:14px 18px;font-size:14px}.panel-groups{grid-template-columns:1fr;gap:12px}.panel-group h2{font-size:16px}.panel-links{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-links a{min-height:69px;padding:8px}.panel-links b{font-size:12px}.panel-links small{font-size:9px}.panel-head>a{max-width:115px}.panel-head .wordmark strong{font-size:16px}.panel-head>div>span{font-size:9px}.search-results{grid-template-columns:1fr 1fr}}
@media (max-width:345px){.book-trigger{min-width:57px}.book-trigger span:last-child{font-size:11px}.lobby-shell{gap:4px}.entry-action{min-width:65px}.wordmark strong{font-size:17px}.wordmark small{font-size:6.5px}.panel-links{grid-template-columns:1fr}.lead-actions .btn{flex:1 1 auto;padding:10px 12px;font-size:12px}.search-results{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep the search glyph visually inside the 22px gold strip while retaining a 44px touch target. */
.top-search{display:flex;justify-content:center;align-items:flex-start;padding-top:3px}

/* Full-size navigation tap areas without shrinking the background edge coverage. */
.category-shell a{min-height:44px}
.footer-group a{min-height:44px;display:flex;align-items:center}
.brand-link,.footer-brand,.panel-head>a{min-height:44px}
