.hm4 *{box-sizing:border-box}
.hm4{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--font);-webkit-font-smoothing:antialiased}
.hm4 a{color:inherit;text-decoration:none}
.hm4 a:hover{text-decoration:underline;text-underline-offset:5px}
.hm4 button{font:inherit;cursor:pointer}
.hm4 button,.hm4 a{touch-action:manipulation}
.hm4 button:focus-visible,.hm4 a:focus-visible,.hm4 summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.hm4 button{color:inherit}
.hm4 button:disabled{cursor:default}
.hm4 h1,.hm4 h2,.hm4 h3,.hm4 p{margin:0}
.hm4 h1,.hm4 h2,.hm4 h3{text-wrap:balance}
.hm4 p{text-wrap:pretty}
.hm4 h1{font:550 clamp(2.6rem,4.8vw,4.5rem)/1.08 'Fraunces',Georgia,serif;letter-spacing:-.025em;max-width:13ch}
.hm4 h1 em{font-style:normal;color:var(--accent)}
.hm4 h2{font-size:clamp(1.8rem,3vw,2.55rem);font-weight:600;line-height:1.17;letter-spacing:-.025em}
.hm4 h3{font-size:1.25rem;font-weight:600;line-height:1.3}
.hm4 .wrap{max-width:1200px;margin:auto;padding-inline:32px}
.hm4 .preview-note{font-size:13px;text-align:center;padding:7px 18px;background:var(--surface-2);color:var(--muted);border-bottom:1px solid var(--line)}
.hm4 .site-header{position:sticky;top:0;background:var(--bg);z-index:12;border-bottom:1px solid var(--line)}
.hm4 .nav-row{min-height:83px;display:flex;gap:36px;align-items:center}
.hm4 .wordmark{font-size:25px;font-weight:800;letter-spacing:-.04em;display:flex;align-items:center;gap:10px;white-space:nowrap}
.hm4 .wordmark svg{width:29px;height:33px;color:var(--accent)}
.hm4 .wordmark span{color:var(--accent)}
.hm4 .nav-main{display:flex;align-items:center;gap:27px;margin-inline-start:auto;font-size:15px}
.hm4 .nav-actions{display:flex;align-items:center;gap:20px}
.hm4 .lang,.hm4 .menu-toggle{border:0;background:none;min-height:44px;padding:6px;color:var(--muted);font-size:15px}
.hm4 .menu-toggle{display:none}
.hm4 .membership{font-size:15px;white-space:nowrap}
.hm4 .skip{position:absolute;inset-inline-start:20px;top:-100px;padding:10px;background:var(--accent);color:var(--accent-ink);z-index:20}
.hm4 .skip:focus{top:10px}
.hm4 .hero{display:grid;grid-template-columns:1.05fr 1fr;gap:58px;padding-block:76px 62px;align-items:center}
.hm4 .intro-label{display:flex;align-items:center;gap:10px;color:var(--accent);font-size:15px;margin-bottom:24px}
.hm4 .intro-label:before{content:'';width:24px;height:1px;background:currentColor}
.hm4 .lead{font-size:19px;line-height:1.65;color:var(--muted);max-width:48ch;margin-top:25px}
.hm4 .hero-actions{display:flex;align-items:center;gap:25px;margin-top:31px;flex-wrap:wrap}
.hm4 .button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:11px 21px;border-radius:7px;background:var(--accent);color:var(--accent-ink);font-weight:700;line-height:1.3;transition:transform .2s ease-out,background .2s ease-out}
.hm4 .button:hover{text-decoration:none;transform:translateY(-2px);background:oklch(86% .12 82)}
.hm4 .plain-link{font-size:15px;border-bottom:1px solid var(--line);padding-block:8px}
.hm4 .small-note{margin-top:16px;font-size:14px;color:var(--muted)}
.hm4 .lesson-figure{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
.hm4 .figure-heading{padding:23px 24px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.hm4 .figure-heading p{font-size:14px;color:var(--muted)}
.hm4 .figure-heading strong{font-size:17px;font-weight:600;display:block;margin-bottom:3px}
.hm4 .figure-heading .sample{font-size:12px;border:1px solid var(--line);border-radius:4px;padding:3px 7px;white-space:nowrap;color:var(--muted)}
.hm4 .video-figure{min-width:0}
.hm4 .video-poster{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#000;direction:ltr}
.hm4 .video-poster img{display:block;width:100%;height:100%;object-fit:cover}
.hm4 .video-play{position:absolute;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.12)}
.hm4 .video-play svg{filter:drop-shadow(0 3px 12px rgba(0,0,0,.4))}
.hm4 .video-poster:hover .video-play{background:transparent}
.hm4 .video-poster:focus-visible{outline-offset:-4px}
.hm4 .video-caption{padding:16px 24px;font-size:14px;color:var(--accent);border-top:1px solid var(--line)}
.hm4 .chart{display:block;width:100%;height:auto;padding:0 15px;direction:ltr}
.hm4 .chart text{font-family:var(--font);font-size:13px;fill:var(--muted)}
.hm4 .chart .major{fill:var(--ink);font-weight:600}
.hm4 .chart .gold-text{fill:var(--accent)}
.hm4 .chart .blue-text{fill:var(--aqua)}
.hm4 .chart .grid{stroke:var(--line);stroke-width:1}
.hm4 .chart .bars{fill:var(--surface-2)}
.hm4 .chart .poc-bar{fill:var(--aqua);fill-opacity:.42}
.hm4 .chart .vwap-line{stroke:var(--accent);stroke-width:2;stroke-dasharray:5 4}
.hm4 .lesson-switch{display:flex;gap:0;padding:0 24px;border-bottom:1px solid var(--line)}
.hm4 .lesson-switch button{background:none;border:0;border-bottom:2px solid transparent;font-size:14px;padding:12px 0;margin-inline-end:25px;color:var(--muted)}
.hm4 .lesson-switch button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}
.hm4 .figure-caption{padding:19px 24px 23px;min-height:127px;font-size:15px;line-height:1.6;color:var(--muted)}
.hm4 .figure-caption strong{color:var(--ink);font-weight:600}
.hm4 .formula{direction:ltr;unicode-bidi:isolate;display:block;font-variant-numeric:tabular-nums;color:var(--ink);font-size:14px;margin-block:8px}
.hm4 .course-strip{display:grid;grid-template-columns:1.15fr 1.7fr auto;align-items:center;gap:34px;padding:31px 0;border-block:1px solid var(--line)}
.hm4 .course-strip .tag{color:var(--accent);font-size:14px;margin-bottom:5px}
.hm4 .course-strip h2{font-size:25px}
.hm4 .course-strip p{color:var(--muted);font-size:16px;max-width:46ch}
.hm4 .round-link{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);width:48px;height:48px;border-radius:50%;font-size:24px}
.hm4 .round-link:hover{background:var(--surface);text-decoration:none}
.hm4 .section{padding-block:74px}
.hm4 .section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}
.hm4 .section-top p{color:var(--muted);max-width:42ch;font-size:16px}
.hm4 .path{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}
.hm4 .path-item{border-top:1px solid var(--line);padding-top:24px}
.hm4 .path-number{font-size:14px;color:var(--accent);margin-bottom:19px;display:flex;align-items:center;gap:10px}
.hm4 .path-number span{display:flex;justify-content:center;align-items:center;width:25px;height:25px;border-radius:50%;border:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums}
.hm4 .path-item h3{font-size:24px;margin-bottom:13px}
.hm4 .path-item p{color:var(--muted);font-size:16px;margin-bottom:20px;max-width:36ch}
.hm4 .path-item a{color:var(--accent);font-size:15px;display:inline-block;padding-block:5px}
.hm4 .library-section{background:var(--surface);border-block:1px solid var(--line)}
.hm4 .library-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:85px}
.hm4 .library-copy p{color:var(--muted);margin-top:20px;max-width:33ch}
.hm4 .library-copy a{display:inline-block;margin-top:27px;color:var(--accent);font-size:15px}
.hm4 .concept{border-bottom:1px solid var(--line)}
.hm4 .concept:first-child{border-top:1px solid var(--line)}
.hm4 .concept summary{display:flex;align-items:center;justify-content:space-between;padding:20px 0;cursor:pointer;gap:18px;list-style:none;font-weight:600}
.hm4 .concept summary::-webkit-details-marker{display:none}
.hm4 .concept summary:after{content:'+';font-size:22px;color:var(--muted)}
.hm4 .concept[open] summary:after{content:'−'}
.hm4 .concept p{font-size:16px;color:var(--muted);padding-bottom:21px;max-width:61ch}
.hm4 .concept a{color:var(--accent)}
.hm4 .tools{display:grid;grid-template-columns:repeat(2,1fr);column-gap:50px}
.hm4 .tool{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-block:22px}
.hm4 .tool h3{font-size:18px}
.hm4 .tool p{color:var(--muted);font-size:15px;margin-top:4px}
.hm4 .tool>span{color:var(--muted)}
.hm4 .tool:hover{text-decoration:none}
.hm4 .tool:hover h3{color:var(--accent)}
.hm4 .membership-block{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:70px}
.hm4 .membership-block h2{font-size:30px;margin-bottom:12px}
.hm4 .membership-block p{max-width:58ch;font-size:16px}
.hm4 .membership-block .button{background:var(--accent-ink);color:var(--ink);white-space:nowrap}
.hm4 .footer-top{display:flex;justify-content:space-between;align-items:center;padding-block:28px;border-top:1px solid var(--line);gap:30px}
.hm4 .footer-links{display:flex;gap:27px;font-size:15px}
.hm4 .disclaimer{color:var(--muted);font-size:13px;padding-bottom:30px;max-width:92ch}
.hm4 .footer-brand{font-size:20px;font-weight:700}
.hm4 .footer-brand span{color:var(--accent)}
.hm4 [hidden]{display:none!important}
[dir=rtl] .hm4{--font:'IBM Plex Sans Arabic',system-ui,sans-serif}
[dir=rtl] .hm4 h1{font-family:var(--font);font-weight:600;line-height:1.45;letter-spacing:0;max-width:16ch;font-size:clamp(2.4rem,4.2vw,3.7rem)}
[dir=rtl] .hm4 .wordmark{direction:ltr}
[dir=rtl] .hm4 .arrow{display:inline-block;transform:scaleX(-1)}
[dir=rtl] .hm4 h2,[dir=rtl] .hm4 h3{letter-spacing:0;line-height:1.5}
[dir=rtl] .hm4 .chart{font-family:'Hanken Grotesk',sans-serif}
[dir=rtl] .hm4 .hero{padding-top:62px}
.hm4 .reveal{animation:hm4Enter .65s ease-out both}
@keyframes hm4Enter{from{transform:translateY(9px)}to{transform:translateY(0)}}
@media(min-width:1450px){.hm4 .wrap{max-width:1280px}
.hm4 .hero{gap:78px}
}
@media(max-width:1000px){.hm4 .nav-row{gap:20px}
.hm4 .nav-main{gap:18px}
.hm4 .membership{display:none}
.hm4 .hero{gap:30px}
.hm4 .figure-heading{padding-inline:18px}
.hm4 .hero-actions{gap:16px}
.hm4 .library-layout{gap:40px}
.hm4 .section-top{align-items:start}
.hm4 .hero{padding-block:50px}
.hm4 .course-strip{grid-template-columns:1fr 1.5fr auto;gap:20px}
.hm4 .path{gap:24px}
.hm4 .nav-actions{gap:8px}
}
@media(max-width:740px){.hm4 .wrap{padding-inline:22px}
.hm4 .preview-note{font-size:12px}
.hm4 .nav-row{min-height:69px;flex-wrap:wrap;column-gap:15px;row-gap:0}
.hm4 .wordmark{font-size:23px}
.hm4 .nav-actions{margin-inline-start:auto}
.hm4 .menu-toggle{display:block}
.hm4 .nav-main{display:none;order:3;flex-basis:100%;padding-block:10px 19px;gap:12px;flex-wrap:wrap}
.hm4 .nav-main.open{display:flex}
.hm4 .nav-main a{padding:7px 10px;background:var(--surface);border-radius:5px}
.hm4 .hero{grid-template-columns:1fr;gap:37px;padding-block:39px}
.hm4 .hero h1{max-width:15ch;font-size:clamp(2.6rem,9vw,3.7rem)}
.hm4 .intro-label{font-size:14px;margin-bottom:20px}
.hm4 .lead{font-size:17px;margin-top:20px}
.hm4 .hero-actions{margin-top:24px}
.hm4 .small-note{font-size:13px}
.hm4 .lesson-figure{max-width:530px;width:100%;margin-inline:auto}
.hm4 .figure-caption{min-height:112px}
.hm4 .course-strip{grid-template-columns:1fr auto;gap:16px;padding-block:26px}
.hm4 .course-strip>p{grid-row:2;grid-column:1/-1}
.hm4 .round-link{grid-column:2;grid-row:1}
.hm4 .course-strip h2{font-size:24px}
.hm4 .section{padding-block:49px}
.hm4 .section-top{display:block;margin-bottom:26px}
.hm4 .section-top p{margin-top:15px}
.hm4 .path{grid-template-columns:1fr;gap:26px}
.hm4 .path-item{padding-top:20px}
.hm4 .path-number{margin-bottom:13px}
.hm4 .path-item h3{font-size:23px;margin-bottom:9px}
.hm4 .path-item p{max-width:none;margin-bottom:10px}
.hm4 .library-layout{grid-template-columns:1fr;gap:30px}
.hm4 .library-copy p{max-width:none;margin-top:13px}
.hm4 .library-copy a{margin-top:16px}
.hm4 .tools{grid-template-columns:1fr}
.hm4 .membership-block{display:block;padding:27px 24px;margin-bottom:42px}
.hm4 .membership-block .button{margin-top:24px}
.hm4 .membership-block h2{font-size:27px}
.hm4 .footer-top{align-items:start;flex-direction:column;gap:15px}
.hm4 .footer-links{gap:20px;flex-wrap:wrap}
.hm4 .disclaimer{font-size:13px}
.hm4 .hero h1{overflow-wrap:normal}
[dir=rtl] .hm4 .hero h1{font-size:clamp(2.2rem,8vw,3.1rem)}
[dir=rtl] .hm4 .hero{padding-top:37px}
}
.hm4 .wordmark .brand-text{color:var(--ink);letter-spacing:-.04em}
.hm4 .wordmark .brand-text b{color:var(--accent);font-weight:800}
@media(max-width:740px){.hm4 .chart text{font-size:18px}
.hm4 .figure-heading{display:block}
.hm4 .figure-heading .sample{display:inline-block;margin-top:10px}
.hm4 .lesson-switch button{min-height:48px}
}
@media(prefers-reduced-motion:reduce){.hm4 .reveal{animation:none}
.hm4 .button{transition:none}
}

/* The homepage has a public learning layout. Every tool keeps the established app shell. */
body.home-landing .app{display:block}body.home-landing .side,body.home-landing .topbar,body.home-landing #tabbar,body.home-landing .foot-note{display:none!important}
body.home-landing .view{padding:0;min-height:80vh}body:not(.home-landing) #hm4Home{display:none}
body.home-landing .view>*{animation:none}body.home-landing:before,body.home-landing:after{display:none}
.hm4{font-family:var(--font);font-size:17px;line-height:1.65;background:var(--bg);color:var(--ink)}
.hm4 h2,.hm4 h3{font-family:var(--font)}.hm4 .wordmark img{border-radius:6px;flex:none}
.hm4 .wrap{width:100%;max-width:1280px}.hm4 .hero{padding-block:58px;gap:56px}.hm4 .hero h1{max-width:14ch;font-size:clamp(2.7rem,4.5vw,4.2rem)}
.hm4 .chart text{font-family:var(--font)}.hm4 .nav-row{gap:24px}.hm4 .nav-actions{gap:13px}.hm4 .nav-main{gap:23px}.hm4 .wordmark{font-family:var(--font)}
.hm4 .hm4-account{border:1px solid var(--line);background:var(--surface);border-radius:6px;min-height:40px;padding:6px 12px;font-size:14px;color:var(--ink)}
.hm4 .hm4-textbutton{border:0;background:transparent;padding:0;min-height:44px;color:var(--muted);font-size:15px}
.hm4 .hm4-decks{padding-top:30px;display:flex;align-items:start;justify-content:space-between;gap:24px}.hm4 .hm4-decks h3{font-size:16px;color:var(--muted)}.hm4 .hm4-decks>div{display:flex;flex-direction:column;gap:10px;font-size:15px;color:var(--accent)}
.hm4 .hm4-support{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:35px}.hm4 .hm4-support:has(#hm4Desk:empty){grid-template-columns:1fr}.hm4 #hm4Desk:empty{display:none}
.hm4 .hm-today{display:flex;flex-wrap:wrap;gap:12px;padding-block:25px 0}.hm4 .hm-tl{padding:12px 16px;background:var(--surface);border-radius:7px;display:flex;align-items:center;gap:14px;font-size:15px}.hm4 .hm-tl .lb{color:var(--muted)}
.hm4 .hm-tchip{font-size:14px}.hm4 .hm-tchip.fit{color:var(--up)}.hm4 .hm-tchip.caution{color:var(--accent)}.hm4 .hm-tchip.unfit{color:var(--down)}
.hm4 .hm-desk{margin:0;border:0;box-shadow:none;background:var(--surface);padding:23px}.hm4 .hm-desk>p{font:600 18px/1.4 var(--font);text-transform:none;letter-spacing:0;color:var(--ink)}
.hm4 .hm-desklines{display:grid;gap:12px;margin-top:15px}.hm4 .hm-deskline{display:flex;justify-content:space-between;gap:14px;font-size:15px}.hm4 .hm-deskstat{color:var(--muted)}
.hm4 .hm-install{border:0;box-shadow:none;background:var(--surface);border-radius:12px;padding:24px}.hm4 .hm-install .eyebrow{font:500 14px/1.5 var(--font);text-transform:none;letter-spacing:0}.hm4 .hm-install .note{font-size:15px;line-height:1.6}.hm4 .hm-install .btn{margin-top:12px;box-shadow:none}
.hm4 .button:hover{background:var(--accent);filter:brightness(1.08)}.hm4 .membership-block{border-radius:12px}.hm4 .membership-block .button:hover{background:var(--accent-ink)}
[data-lang="ar"] .hm4{font-family:"IBM Plex Sans Arabic",var(--font)}[data-lang="ar"] .hm4 h1{font-family:"IBM Plex Sans Arabic",var(--font);font-size:clamp(2.4rem,4vw,3.7rem);line-height:1.45;letter-spacing:0}
[data-lang="ar"] .hm4 h2,[data-lang="ar"] .hm4 h3{font-family:"IBM Plex Sans Arabic",var(--font);line-height:1.5;letter-spacing:0}
[data-theme="light"] .hm4 .membership-block{color:var(--ink);background:var(--accent-dim)}[data-theme="light"] .hm4 .membership-block .button{background:var(--accent);color:var(--accent-ink)}
[data-theme="light"] .hm4 .chart .poc-bar{fill-opacity:.65}
@media(max-width:1100px){.hm4 .nav-main{gap:15px}.hm4 .nav-actions{gap:9px}.hm4 .membership{display:none}.hm4 .hero{gap:30px}}
@media(max-width:740px){.hm4 .hero{padding-block:35px;gap:32px}.hm4 .hero h1{font-size:clamp(2.4rem,9vw,3.5rem)}.hm4 .nav-row{gap:10px}.hm4 .wordmark{font-size:21px}.hm4 .wordmark img{width:27px;height:27px}.hm4 .hm4-account{display:none}.hm4 .hm4-decks{display:block}.hm4 .hm4-decks>div{margin-top:15px}.hm4 .hm4-support{grid-template-columns:1fr}.hm4 .footer-links{align-items:center}.hm4 .chart text{font-size:18px}}
@media(prefers-reduced-motion:reduce){.hm4 .button{transition:none}.hm4 .button:hover{transform:none}}
.hm4 .hm4-mobile-account{display:none}@media(max-width:740px){.hm4 .hm4-mobile-account{display:inline-flex;align-items:center;border:0;border-radius:5px;padding:7px 10px;background:var(--surface);color:var(--ink);font:inherit;min-height:44px}}

/* Planned courses are status rows, not enrollment links. */
.hm4 .upcoming-courses{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;padding:32px 0 12px;border-top:1px solid var(--line)}
.hm4 .upcoming-courses>h2{grid-column:1/-1;font-size:1.1rem;line-height:1.5;margin-bottom:14px;color:var(--muted);font-weight:500}
.hm4 .upcoming-course{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.hm4 .upcoming-course h3{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;font-size:1rem;line-height:1.5}
.hm4 .upcoming-course h3>span[dir]{font-family:var(--mono);font-size:.84rem;color:var(--muted)}
.hm4 .upcoming-status{font-size:.84rem;color:var(--muted);white-space:nowrap}
@media(max-width:700px){.hm4 .upcoming-courses{grid-template-columns:1fr}.hm4 .upcoming-course{gap:12px}.hm4 .upcoming-course h3{gap:8px}}
