.tracks{padding:105px 0;border-top:1px solid #e4e4e4;background:#fff;color:#111}
.tracks a{color:inherit;text-decoration:none}
.tracks-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px}
.tracks h2{font-size:clamp(36px,4.5vw,60px);line-height:1.02;letter-spacing:-.065em;margin:12px 0;color:#111}
.tracks h2 span{font-family:var(--serif);font-weight:400;color:#222}
.tracks-progress{min-width:155px;padding:15px 0 0 20px;border-top:1px solid #dcdcdc;color:#666}
.tracks-progress-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:400}
.tracks-progress strong{display:block;margin-top:7px;font-size:28px;letter-spacing:-.06em}
.tracks-progress small{font-size:11px;color:#666;letter-spacing:0}
.tracks-lede{max-width:570px;color:#666;margin:25px 0 67px;font-size:15px}
.track-level{display:grid;grid-template-columns:62px 1fr;gap:27px}
.track-level+ .track-level{margin-top:70px}
.level-rail{display:flex;flex-direction:column;align-items:center}
.level-step{width:42px;height:42px;border:1px solid #111;border-radius:50%;display:grid;place-items:center;color:#666;font-size:11px}
.level-step.is-active{background:#111;border-color:#111;color:#fff}
.level-line{width:1px;flex:1;min-height:45px;background:#dcdcdc;margin:12px 0}
.level-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}
.level-status{font-family:var(--sans);font-weight:400;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#2d2d2d}
.level-heading h3{font-size:clamp(25px,2.5vw,38px);letter-spacing:-.06em;line-height:1.05;max-width:620px;margin:12px 0 0}
.level-badge{border:1px solid #dcdcdc;color:#666;border-radius:999px;padding:8px 10px;text-transform:uppercase;letter-spacing:.05em;font-size:10px;white-space:nowrap}
.track-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.track-card{min-height:265px;padding:20px;background:#fff;color:#111;border:1px solid #e4e4e4;border-radius:16px;position:relative;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.track-card:hover,.branch-card:hover{transform:translateY(-4px);box-shadow:0 12px 22px #11111114;z-index:2}
.track-card-index,.branch-card-index{color:#2d2d2d;font-size:10px}
.track-card-icon{color:#111;font-family:var(--serif);font-size:37px;line-height:1;margin:28px 0 17px}
.track-card h4{margin:0 0 8px;font-size:19px;letter-spacing:-.05em}
.track-card p{color:#666;font-size:12px;line-height:1.55;margin:0;max-width:200px}
.track-card-link,.track-card-links a,.branch-card-link,.branch-links a{font-family:var(--sans);font-weight:400;text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#111}
.track-card-link,.branch-card-link{margin-top:auto}
.track-card-dark{background:#111;color:#fff;border-color:#111}
.track-card-dark h4{color:#fff}
.track-card-dark .track-card-index,.track-card-dark .track-card-icon,.track-card-dark .track-card-link{color:#fff}
.track-card-dark p{color:#d5d5d5}
.track-card-links,.branch-links{display:flex;flex-direction:column;gap:7px;margin-top:auto}
.branch-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.branch-tab{appearance:none;border:1px solid #e4e4e4;border-radius:999px;background:#fff;color:#666;padding:12px 16px;text-align:left;cursor:pointer;font:inherit;font-size:13px;font-weight:600;display:flex;justify-content:space-between;gap:10px;transition:background .2s ease,color .2s ease}
.branch-tab span{font-size:10px;color:#111}
.branch-tab:hover{background:#f4f4f4;color:#111}
.branch-tab.is-selected{border-color:#111;background:#111;color:#fff}
.branch-tab.is-selected span{color:#fff}
.branch-panel{margin-top:1px;background:#fff;border:1px solid #e4e4e4;border-radius:16px;padding:25px}
.branch-panel[hidden]{display:none}
.branch-panel-intro{display:flex;gap:15px;align-items:start;margin-bottom:28px}
.branch-panel-mark{font-family:var(--serif);color:#111;font-size:37px;line-height:1}
.branch-panel h4{margin:0 0 4px;font-size:22px;letter-spacing:-.05em}
.branch-panel-intro p{margin:0;color:#666;font-size:13px}
.branch-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.branch-card{min-height:210px;border:1px solid #e4e4e4;border-radius:12px;padding:17px;display:flex;flex-direction:column;background:#fff;color:#111;transition:transform .2s ease,box-shadow .2s ease}
.branch-card h5{font-size:16px;line-height:1.2;letter-spacing:-.04em;margin:22px 0 8px}
.branch-card p{color:#666;font-size:12px;line-height:1.5;margin:0}
.branch-empty{min-height:210px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;background:#f4f4f4;border-radius:12px}
.branch-empty>span{color:#111;font-size:11px}
.branch-empty h4{margin-top:12px}
.branch-empty p{max-width:440px;color:#666;font-size:13px;margin:0}
@media(max-width:900px){.track-card-grid,.branch-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.tracks{padding-block:75px}.tracks-heading{display:flex;flex-direction:column;align-items:flex-start}.tracks-progress{margin-top:10px}.track-level{grid-template-columns:42px 1fr;gap:16px}.level-heading{align-items:flex-start;flex-direction:column}.branch-tabs{grid-template-columns:1fr}.track-card-grid,.branch-card-grid{grid-template-columns:1fr}}
@media(max-width:520px){.tracks-heading{display:block}.tracks-progress{margin-top:24px}.track-level{display:block}.level-rail{display:none}.tracks-lede{margin-bottom:48px}.track-level+ .track-level{margin-top:55px}.branch-panel{padding:16px}}
