/* Identity Bytes — homepage and index styling, microsoft.com-en-gb inspired. */
*{box-sizing:border-box;}
body{margin:0;background:#fff;color:${LEARN.text};font:400 15px/1.5 ${FONT};
 -webkit-font-smoothing:antialiased;}
.w{max-width:1180px;margin:0 auto;padding-inline:24px;}
a{color:${LEARN.link};}
a:focus-visible,button:focus-visible{outline:2px solid ${LEARN.accent};outline-offset:2px;}

.nav{border-bottom:1px solid ${LEARN.border};background:#fff;position:sticky;top:0;z-index:50;}
.nav .w{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px;padding-block:13px;}
.nav .brand{font-weight:600;font-size:15px;color:${LEARN.text};text-decoration:none;letter-spacing:-.01em;}
.nav a.n{font-size:13.5px;color:${LEARN.textSecondary};text-decoration:none;}
.nav a.n:hover{color:${LEARN.text};text-decoration:underline;}
.nav .push{flex:1 1 auto;}

.hero{background:#f2f2f2;border-bottom:1px solid ${LEARN.border};}
.hero .w{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center;
 padding-block:64px 60px;}
.hero h1{font-size:clamp(32px,4.4vw,46px);font-weight:600;line-height:1.1;
 letter-spacing:-.025em;margin:0 0 16px;text-wrap:balance;}
.hero p.lede{font-size:17px;line-height:1.55;color:#40403f;margin:0 0 26px;max-width:54ch;}
.cta{display:inline-block;background:${LEARN.link};color:#fff;text-decoration:none;
 font-size:15px;font-weight:600;padding:12px 30px;border:1px solid ${LEARN.link};}
.cta:hover{background:#005a9e;border-color:#005a9e;color:#fff;}
.cta.ghost{background:transparent;color:${LEARN.text};border-color:#8a8886;margin-left:10px;}
.cta.ghost:hover{background:#e6e6e6;color:${LEARN.text};}
.hero-facts{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:${LEARN.border};
 border:1px solid ${LEARN.border};}
.hero-facts li{background:#fff;padding:16px 20px;}
.hero-facts b{display:block;font-size:26px;font-weight:600;line-height:1.1;letter-spacing:-.02em;}
.hero-facts span{font-size:13px;color:${LEARN.textSecondary};}

section.band{padding-block:56px;}
section.band.alt{background:#f2f2f2;}
h1.sec,h2.sec{font-size:clamp(23px,2.9vw,31px);font-weight:600;letter-spacing:-.022em;
 margin:0 0 8px;text-wrap:balance;}
p.sub{color:${LEARN.textSecondary};margin:0 0 30px;max-width:72ch;font-size:15.5px;}

.levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:20px;
 margin:0;padding:0;list-style:none;}
.level{background:#fff;border:1px solid ${LEARN.border};display:flex;flex-direction:column;}
.level .cap{background:var(--c);color:#fff;padding:20px;}
.level .cap .lv{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
 opacity:.85;display:block;margin-bottom:6px;}
.level .cap .nm{font-size:21px;font-weight:600;letter-spacing:-.018em;display:block;}
.level .bd{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column;gap:10px;}
.level .bd p{margin:0;font-size:14px;line-height:1.5;color:#40403f;}
.level .bd .meta{font-size:12.5px;color:${LEARN.textSecondary};margin-top:auto;}
.level .bd a{font-size:14px;font-weight:600;text-decoration:none;}
.level .bd a:hover{text-decoration:underline;}

.stage-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;
 border-top:3px solid var(--c);padding-top:14px;margin-bottom:6px;}
.stage-head .tag{font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
 color:var(--c);}
.stage-head h2{margin:0;font-size:clamp(21px,2.6vw,27px);font-weight:600;letter-spacing:-.02em;}
.stage-head .n{font-size:13px;color:${LEARN.textSecondary};margin-left:auto;}

ol.steps{list-style:none;margin:18px 0 0;padding:0;}
ol.steps li{border-bottom:1px solid ${LEARN.border};}
ol.steps li:first-child{border-top:1px solid ${LEARN.border};}
ol.steps a{display:grid;grid-template-columns:52px 1fr auto;gap:4px 16px;align-items:center;
 padding:14px 6px;text-decoration:none;color:inherit;}
ol.steps a:hover{background:#f7f7f7;}
ol.steps a:hover .t{color:${LEARN.link};text-decoration:underline;}
ol.steps .num{font-size:14px;font-weight:600;color:${LEARN.textSecondary};
 font-variant-numeric:tabular-nums;}
ol.steps .t{font-weight:600;font-size:15px;}
ol.steps .m{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;}
.pill{font-size:11.5px;padding:2px 9px;border:1px solid ${LEARN.border};background:#fff;
 color:${LEARN.textSecondary};white-space:nowrap;}
.pill.d-Foundation{border-color:#9bd19b;background:#f1f9f1;color:#0b5c0b;}
.pill.d-Intermediate{border-color:#a6cfee;background:#eff6fc;color:#004578;}
.pill.d-Advanced{border-color:#f0c48a;background:#fdf6ec;color:#8a4b08;}
.pill.d-Expert{border-color:#eba5a7;background:#fdf0f0;color:#8c2225;}
.mins{font-size:12px;color:${LEARN.textSecondary};font-variant-numeric:tabular-nums;}

.prep{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:26px;
 margin:0;padding:0;list-style:none;}
.prep h3{font-size:16px;font-weight:600;margin:0 0 6px;}
.prep p{margin:0;font-size:14px;line-height:1.55;color:#40403f;}

footer.site{background:#f2f2f2;border-top:1px solid ${LEARN.border};padding-block:36px 44px;
 font-size:13px;color:${LEARN.textSecondary};}
footer.site p{margin:0 0 8px;max-width:80ch;}

@media(max-width:820px){.hero .w{grid-template-columns:1fr;gap:32px;padding-block:44px;}}
@media(max-width:560px){
 ol.steps a{grid-template-columns:36px 1fr;}
 ol.steps .m{grid-column:2;justify-content:flex-start;}
 .cta.ghost{margin-left:0;margin-top:10px;}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;}}
