.academy-header { width: min(100% - 3rem, 1180px); grid-template-columns: 105px 1fr; padding: 2.8rem 0 1.2rem; }
.academy-header h1 { font-size: clamp(2.7rem, 5.4vw, 4.9rem); max-width: 18ch; }
.academy-header .academy-mark { width: 92px; height: 92px; }
.academy-start { width: min(100% - 3rem, 1180px); margin: 2rem auto 3rem; scroll-margin-top: 1rem; }
.home-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: end; margin-bottom: 1.5rem; }
.home-intro h2 { font-size: clamp(1.5rem, 3vw, 2.2rem); }.home-intro > p { color: var(--ink-soft); margin: 0; font-size: .94rem; }
.academy-courses { display: grid; grid-template-columns: 1.08fr 1fr; gap: clamp(1.5rem, 4vw, 4rem); border-block: 1px solid #b9c6b9; padding: 1.7rem 0; }
.course-feature { padding: clamp(1.5rem, 3vw, 2.5rem); background: #e2ebd8; color: #193b34; }
.course-tag { font-size: .72rem; font-weight: 850; letter-spacing: .09em; color: #3e5b37; }
.academy-courses h3 { font-size: 1.65rem; margin: .5rem 0 .8rem; }.academy-courses .course-feature h3 { color: #193b34; font-size: clamp(2.1rem, 3.6vw, 3.4rem); line-height: 1.04; }
.course-feature p { max-width: 44ch; }.course-meta { font-size: .83rem; line-height: 1.6; color: #405a49; }
.home-primary { display: inline-flex; align-items: center; min-height: 48px; margin-top: 1rem; padding: .7rem 1rem; background: #224f3d; color: #f6f7e9; text-decoration: none; font-weight: 750; font-size: .9rem; border-radius: 3px; }.home-primary:hover { background: #153d2b; color: #f6f7e9; }
.course-options { display: grid; }.course-options article { padding: 1rem 0 1.5rem; }.course-options article + article { border-top: 1px solid #b9c6b9; padding-top: 1.6rem; }.course-options article p { margin: .5rem 0; font-size: .93rem; }.course-options a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; font-size: .9rem; }
.academy-tools { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem 1.5rem; padding-top: 1.1rem; font-size: .83rem; }.academy-tools a { min-height: 44px; display: inline-flex; align-items: center; }
.academy-start .home-habit { max-width: none; font-size: .85rem; color: var(--ink-soft); padding-top: .8rem; }
.mission-resources { width: min(100% - 2rem, 1180px); margin-bottom: 1.5rem; padding: .7rem 0; border-top-width: 1px; font-size: .8rem; }.mission-resources > strong { margin-right: .4rem; }.mission-resources button { font-size: .75rem; }
#course { width: min(100% - 2rem, 1180px); column-gap: 2.5rem; }.mission-card { max-width: none; }
#mission-map { max-height: calc(100dvh - 2rem); overflow-y: auto; padding: 0 .4rem .5rem 0; }.mission-map-list { display: grid; overflow: visible; max-height: none; gap: .4rem; }
.mission-map-group { font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; margin: 1.3rem 0 .55rem; color: var(--ink-soft); }
.mission-map-button { box-shadow: none; border: 1px solid #9eada8; min-height: 62px; }.mission-map-button:hover, .mission-map-button[aria-current="page"] { box-shadow: none; transform: none; }.mission-map-button[aria-current="page"] { border-color: #214f3b; background: #e4eddf; }
.mission-map-title { line-height: 1.4; }.mission-number { width: 1.7rem; font-size: .8rem; border-width: 1px; }
.mission-section-menu { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1.4rem; }.mission-section-menu button { font-size: .78rem; min-height: 44px; box-shadow: none; border: 1px solid #acb9b3; }
.mission-pagination { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #acb9b3; }.mission-pagination button { box-shadow: none; }.mission-pagination button:last-child { background: #e2ebd8; }
@media (max-width: 849px) { #mission-map { position: static; max-height: none; }.mission-map-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }.mission-map-button { width: 100%; min-width: 0; }.mission-map-title { font-size: .78rem; }.mission-map-group { margin-top: 1rem; } }
@media (max-width: 650px) { .academy-header { grid-template-columns: 62px 1fr; gap: 1rem; padding-top: 1.6rem; }.academy-header .academy-mark { width: 60px; height: 60px; }.academy-courses, .home-intro { grid-template-columns: 1fr; gap: 1rem; }.course-options article { padding-top: .8rem; }.academy-start, .academy-header { width: calc(100% - 2rem); }.mission-pagination { flex-direction: column; }.mission-map-list { grid-template-columns: 1fr; }.mission-map-button { min-height: 44px; }.mission-map-title { font-size: .86rem; } }
@media print { .academy-start, .mission-resources, .mission-section-menu, .mission-pagination { display: none !important; }#course { width: auto; } }

.vex-feature { background: #e1eaf0; color: #1c3550; }.academy-courses .vex-feature h3 { color: #1c3550; }.vex-feature .course-tag, .vex-feature .course-meta { color: #465d70; }.vex-feature .home-primary { background: #244f77; }.vex-feature .home-primary:hover { background: #173b61; }.feature-setup { display: flex; min-height: 44px; align-items: center; font-size: .83rem; color: #244f77; margin-top: .5rem; }
