/* Homepage navigation and readability, v140. */
.home-shell{--muted:#596e67;--site-muted:#596e67}
.home-shell [hidden]{display:none!important}
.home-shell a:focus-visible,.home-shell button:focus-visible{outline:3px solid #ae8845;outline-offset:4px}
.home-shell #contents,.home-shell .category-label,.home-shortcuts{scroll-margin-top:18px}
.hero-renewed-v2 .hero-lead{font-size:15px;color:#526d65;line-height:1.85}
.hero-renewed-v2 .hero-badge{font-size:12px;color:#466a60}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:22px}
.hero-renewed-v2 .hero-actions .hero-cta{margin:0;min-height:46px;padding:12px 20px;font-size:14px}
.hero-renewed-v2 .hero-cta-secondary{background:rgba(255,255,255,.8);border:1px solid #a7c8bd;color:#35695c;box-shadow:none}
.hero-renewed-v2 .hero-cta-secondary:hover{background:#e8f4ee}
.home-shortcuts{margin-top:22px;padding:18px 22px;border:1px solid #d6e3dc;border-radius:20px;background:#fffdf8;box-shadow:0 5px 18px #35584a05}
.shortcut-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin-bottom:8px}
.shortcut-title{font-size:14px;font-weight:700;color:#42675c}
.shortcut-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.shortcut-tools a{display:inline-flex;align-items:center;min-height:36px;color:#416c5f;text-decoration:underline;text-underline-offset:4px;font-size:13px}
.subject-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.subject-links a{display:flex;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:8px 10px;border:1px solid #d4e5dc;border-radius:12px;background:#eff7f2;color:#365f52;text-decoration:none;font-size:14px;font-weight:700;transition:background .18s,border-color .18s}
.subject-links a:hover{background:#deeee5;border-color:#9fbeae}
.subject-links a span{color:#739e89;font-weight:400}
.first-experience{padding-top:24px}
.experience-head p{font-size:14px!important;color:#586f65}
.experience-meta{font-size:12px;color:#4e6b60}
.experience-text small{font-size:13px;line-height:1.65;color:#596e67}
.experience-copy{gap:9px;padding:16px 13px}
.experience-text strong{font-size:17px;line-height:1.5}
.experience-go{flex-shrink:0}
.toc{padding-top:34px}
.toc-head p{font-size:15px;line-height:1.8;color:#596e67}
.category-label{display:flex;align-items:center;justify-content:space-between;gap:14px;font-family:inherit;font-size:15px!important;letter-spacing:.04em;line-height:1.6}
.category-label a{flex-shrink:0;display:inline-flex;align-items:center;min-height:36px;color:#4f7363;font-size:12px;letter-spacing:0;font-weight:500;text-decoration:none}
.category-label a:hover{text-decoration:underline;text-underline-offset:3px}
.chapter-card:after{content:none}
.chapter-card{min-height:220px!important;grid-template-columns:minmax(0,1fr) 142px!important;gap:18px}
.chapter-card .thumb{height:138px!important}
.chapter-card p{font-size:15px!important;line-height:1.8!important;color:#596e67}
.chapter-no{font-size:11px;letter-spacing:.1em;color:#5d7c6e}
.chapter-card .open-label{font-size:13px;min-height:40px;align-items:center;margin-top:14px;color:#376958}
.lr-home{font-size:13px;line-height:1.7}
.lab-home-card p{font-size:15px;color:#596e67;line-height:1.85}
.lab-home-go{font-size:13px;min-height:40px;align-items:center}
.bridge-card{padding:28px}
.bridge-title{font-size:27px;line-height:1.5}
.bridge-copy{font-size:15px;color:#596e67;line-height:1.85}
.learning-step small{font-size:14px;line-height:1.65;color:#596e67}
.learning-step strong{font-size:18px}
.feedback-lead{font-size:14px!important;color:#596e67}
.feedback-card label{font-size:14px}
.feedback-card select,.feedback-card textarea{font-size:16px}
.feedback-submit{font-size:15px;min-height:46px}
.privacy-note{font-size:12px;color:#596e67}
@media(min-width:821px) and (max-width:1050px){
 .chapter-card{grid-template-columns:minmax(0,1fr) 112px!important;padding:20px!important;gap:14px}
 .chapter-card .thumb{height:120px!important}
}
@media(max-width:760px){
 .hero-renewed-v2 .hero-inner{grid-row:1}
 .hero-renewed-v2 .hero-visual{grid-row:2}
 .hero-actions{justify-content:center;gap:10px;margin-top:18px}
 .hero-renewed-v2 .hero-lead{font-size:14px;max-width:470px;line-height:1.8}
 .geometry-stage{width:min(100%,315px);height:180px}
 .geometry-stage:before{width:160px;height:160px;top:10px}
 .geometry-stage:after{bottom:25px;width:130px}
 .cube-scene{top:50%;transform:translate(-50%,-53%) scale(.67)}
 .cube-orbit{width:185px;height:65px}
 .visual-caption{font-size:10px;bottom:10px}
 .home-shortcuts{padding:14px 16px;margin-top:16px}
 .shortcut-tools{gap:14px}
 .shortcut-tools a{min-height:44px}
 .subject-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .subject-links a{font-size:14px;gap:6px}
 .experience-text small{font-size:13px!important}
 .experience-copy{gap:9px;padding:14px 12px}
 .experience-number{flex-basis:26px;height:26px}
 .experience-text strong{font-size:16px}
 .experience-card{grid-template-columns:38% minmax(0,1fr);min-height:144px}
 .experience-stage{height:100%;min-height:144px}
}
@media(max-width:560px){
 .home-shell{width:calc(100% - 24px)!important;padding-top:12px!important}
 .hero.hero-renewed-v2{padding:24px 16px 18px!important;gap:18px}
 .hero-renewed-v2 .brand{font-size:clamp(26px,7.4vw,36px)}
 .hero-renewed-v2 .tagline{font-size:21px;letter-spacing:.015em}
 .hero-renewed-v2 .hero-actions .hero-cta{padding:11px 15px;font-size:13px}
 .hero-actions{gap:9px}
 .hero-renewed-v2 .hero-badge{font-size:11px}
 .home-shortcuts{padding:12px 13px;border-radius:17px}
 .shortcut-top{gap:0;margin-bottom:7px}
 .shortcut-title{width:100%;font-size:13px}
 .shortcut-tools{width:100%;justify-content:flex-start}
 .subject-links a{padding:8px 5px;font-size:13px}
 .experience-head p{font-size:14px!important;line-height:1.75}
 .experience-head h2{font-size:22px;line-height:1.55}
 .experience-number{display:none}
 .experience-copy{padding:12px;gap:7px}
 .experience-text strong{font-size:16px}
 .experience-go{font-size:16px}
 .experience-box{padding:22px 12px 18px}
 .category-label{font-size:15px!important;padding:7px 10px!important;gap:8px}
 .category-label a{min-height:40px;font-size:12px}
 .toc-head h2{font-size:29px}
 .toc-head p{font-size:14px}
 .chapter-card{grid-template-columns:minmax(0,1fr) 86px!important;padding:17px 14px!important;min-height:178px!important;gap:14px}
 .chapter-card .thumb{height:100px!important}
 .chapter-card h3{font-size:20px!important;line-height:1.5}
 .chapter-card p{font-size:14px!important;line-height:1.75!important}
 .chapter-no{font-size:10px;letter-spacing:.055em}
 .chapter-card .open-label{min-height:40px;font-size:12px;padding:7px 11px!important}
 .lab-home-card{padding:23px 18px}
 .lab-home-card p{font-size:14px}
 .bridge-card{padding:24px 14px}
 .bridge-title{font-size:22px}
 .bridge-copy{font-size:14px}
 .learning-step{padding:15px 7px}
 .learning-step strong{font-size:16px}
 .learning-step small{font-size:13px}
 .learning-steps{gap:9px}
 .feedback-card{padding:23px 16px}
 .lr-home{font-size:12px}
}
@media(max-width:350px){
 .hero-actions{flex-direction:column;align-items:stretch}
 .hero-renewed-v2 .hero-actions .hero-cta{width:100%}
 .chapter-card{grid-template-columns:minmax(0,1fr) 66px!important;gap:10px}
 .chapter-card .thumb{height:84px!important}
 .experience-card{grid-template-columns:34% minmax(0,1fr)}
 .experience-copy{padding:11px 9px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.subject-links a{transition:none}}
