/* Public student portal landing page; authentication modal styles stay in workspace-login.css. */
body.portal-login{--landing-accent:#4a88ff;--landing-muted:#a8b2bc;--landing-line:#ffffff16;background:#090d11;color:#f4f7f4;font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.portal-login *, .portal-login *::before,.portal-login *::after{box-sizing:border-box}
.portal-login a{color:inherit}.portal-login button{font-family:inherit}.portal-login :focus-visible{outline:2px solid var(--landing-accent);outline-offset:5px}
.landing-shell{width:min(1320px,calc(100% - 96px));margin-inline:auto}.landing-skip{position:fixed;top:-100px;left:20px;z-index:2000;background:#4a88ff;color:#f3f7ff!important;padding:12px 20px}.landing-skip:focus{top:12px}
.landing-header{height:100px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--landing-line);background:#0b1014;gap:24px}
.landing-brand{display:flex;align-items:center;gap:23px;text-decoration:none!important}.landing-brand img{width:155px;height:auto;filter:brightness(0) invert(1)}.landing-brand>span{border-left:1px solid #ffffff26;padding-left:23px;font-size:9px;letter-spacing:2px;color:#a8b2bc;max-width:155px;line-height:1.7}
.landing-header nav{display:flex;gap:30px}.landing-header nav a{font-size:12px;color:#bcc4cb;text-decoration:none}.landing-header nav a:hover{color:#4a88ff}.landing-header-login{background:transparent;color:#f4f7f4;border:1px solid #ffffff36;border-radius:6px;font-size:12px;padding:12px 18px;white-space:nowrap}.landing-header-login span{margin-left:19px;color:#4a88ff}
.portal-login .landing-hero{min-height:740px;display:flex;text-align:left;isolation:isolate;overflow:hidden;background:#0a1015}.portal-login .landing-hero::after{background:linear-gradient(90deg,#090f15eb 0%,#090f15cf 48%,#090f15bc 100%);z-index:-1}.portal-login .landing-hero .portal-hero-video{opacity:.5;z-index:-2}.landing-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:50px;align-items:center;padding-block:80px 100px;position:relative}.landing-hero-copy{position:relative;z-index:1}
.landing-eyebrow{font-size:10px!important;font-weight:600;letter-spacing:2.4px;line-height:1.7;color:#4a88ff!important;margin:0 0 25px;display:flex;gap:10px;align-items:center}.landing-dot{width:6px;height:6px;border-radius:50%;background:#4a88ff;box-shadow:0 0 12px #4a88ff44;display:inline-block;flex-shrink:0}
.landing-hero h1{font-size:clamp(42px,4.2vw,68px);line-height:1.09;font-weight:500;letter-spacing:-3.1px;margin:0 0 26px}.landing-hero h1 em{font-style:normal;color:#4a88ff;text-shadow:0 0 30px #4a88ff30}.landing-lead{font-size:15px;line-height:1.9;color:#b9c4ce;max-width:475px;margin:0 0 31px}
.landing-actions{display:flex;flex-wrap:wrap;gap:12px}.portal-login .landing-actions .btn,.portal-login .landing-final-cta .btn{border-radius:5px;padding:15px 21px;font-size:12px;font-weight:650;box-shadow:none;transition:background .15s}.portal-login .landing-actions .btn-main,.portal-login .landing-final-cta .btn-main{background:#4a88ff;border:1px solid #4a88ff;color:#f3f7ff}.portal-login .landing-actions .btn-main:hover,.portal-login .landing-final-cta .btn-main:hover{background:#74a4ff;transform:none;filter:none}.landing-actions .btn-main span,.landing-final-cta .btn-main span{margin-left:20px;font-size:18px;line-height:12px}.portal-login .landing-actions .btn-outline-main{border-color:#ffffff30;background:#ffffff06;color:#e2e8ec}.landing-hero-note{font-size:10px;color:#a8b3bc;margin-top:22px;line-height:1.7;display:flex;gap:9px}.landing-hero-note>span{color:#4a88ff}.landing-explore{display:inline-flex;align-items:center;gap:28px;font-size:11px;color:#c6d1d9!important;margin-top:48px;text-decoration:none!important}.landing-explore span{border:1px solid #ffffff2a;border-radius:50%;width:27px;height:27px;text-align:center;line-height:24px;color:#4a88ff}
.landing-terminal{border:1px solid #3867c44d;border-radius:12px;background:#0d1217;box-shadow:0 30px 100px #0007,0 0 80px #245bd614;position:relative;min-width:0;transform:perspective(1400px) rotateY(-3deg);margin-top:8px}.terminal-titlebar{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--landing-line);font-size:8px;color:#a9b7c1;letter-spacing:1.2px;gap:10px}.terminal-titlebar>span:first-child{display:flex;gap:9px;align-items:center}.terminal-titlebar i{height:6px;width:6px;border-radius:50%;background:#4a88ff}.terminal-preview-label{font-size:7px;color:#9fcde8;border:1px solid #4a88ff30;padding:4px 6px;border-radius:3px;white-space:nowrap}.terminal-market{display:flex;align-items:center;justify-content:space-between;padding:19px 20px}.terminal-market>div{display:flex;flex-direction:column;gap:5px}.terminal-symbol{font-size:19px;font-weight:600;letter-spacing:-.5px}.terminal-subtitle{font-size:10px;color:#8e9eaa}.terminal-timeframe{font-family:Consolas,monospace;font-size:11px;color:#4a88ff;border:1px solid #ffffff20;padding:7px 10px;border-radius:4px}.landing-chart{height:340px;position:relative;overflow:hidden;background:#0d1217}.landing-chart>.tradingview-widget-container,.landing-chart .tradingview-widget-container__widget{height:100%;width:100%}.landing-chart-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;line-height:2;color:#afbec9;background:repeating-linear-gradient(0deg,transparent 0,transparent 63px,#ffffff06 64px),repeating-linear-gradient(90deg,transparent 0,transparent 69px,#ffffff06 70px);margin:0}.landing-chart-fallback a{color:#4a88ff;text-decoration:underline}.widget-ready>.landing-chart-fallback,.widget-ready>.landing-ticker-fallback{display:none}.terminal-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--landing-line);padding:13px 16px;font-size:8px;color:#889ba7;letter-spacing:.2px;border-radius:0 0 12px 12px}.terminal-foot>span:first-child{display:flex;gap:6px;align-items:center}.terminal-foot .landing-dot{width:4px;height:4px}.terminal-foot>span:last-child{font-size:7px;letter-spacing:1px}.terminal-caption{position:absolute;bottom:-39px;right:22px;left:55px;background:#101d3bf5;border:1px solid #3867c454;border-radius:8px;box-shadow:0 12px 30px #0004;padding:17px;display:flex;align-items:center;gap:12px;backdrop-filter:blur(12px)}.terminal-caption-icon{width:32px;height:32px;display:grid;place-items:center;color:#4a88ff;border:1px solid #4a88ff44;border-radius:7px;font-size:22px}.terminal-caption>div{flex:1}.terminal-caption strong{font-size:11px;font-weight:600;display:block;margin-bottom:5px}.terminal-caption>div>span{font-size:9px;color:#a2c0d6}.terminal-caption>span:last-child{color:#4a88ff}
.landing-markets{background:#0d1318;border-block:1px solid var(--landing-line);padding:22px 0 12px}.markets-label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.8px;color:#acbcc4;margin-bottom:16px}.markets-label>span:last-child{font-size:9px;letter-spacing:.2px;color:#83949f}.landing-ticker{min-height:52px;position:relative}.landing-ticker .tradingview-widget-container{min-height:52px}.landing-ticker-fallback{text-align:center;font-size:11px;letter-spacing:1px;color:#4a88ff;margin:10px 0}.landing-ticker-fallback span{color:#9babb6;margin:0 28px 0 12px}
.landing-section{padding-block:100px}.landing-section-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:40px}.landing-section h2,.landing-learning h2{font-size:clamp(31px,3.2vw,48px);line-height:1.15;letter-spacing:-1.8px;font-weight:500;margin:0}.landing-section h2 span,.landing-learning h2 span{color:#839db1}.landing-section-heading>p{max-width:340px;font-size:13px;color:#9eacb7;line-height:1.85;margin:0 0 4px}.landing-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.landing-tool-card{background:linear-gradient(140deg,#151e24,#10161b);border:1px solid #ffffff12;border-radius:8px;padding:27px;display:flex;flex-direction:column;align-items:flex-start;transition:border-color .2s,background .2s}.landing-tool-card:hover{border-color:#4a88ff50;background:#142440}.tool-number{font-family:Consolas,monospace;font-size:8px;letter-spacing:1.2px;color:#96a4af}.landing-tool-card>i{font-size:27px;color:#4a88ff;margin:26px 0 21px}.landing-tool-card h3{font-size:18px;letter-spacing:-.35px;line-height:1.3;font-weight:500;margin:0 0 13px}.landing-tool-card p{font-size:12px;line-height:1.85;color:#a6b4bf;margin:0 0 26px}.tool-tag{border-top:1px solid #ffffff13;padding-top:16px;font-size:9px;color:#8cacc6;width:100%;margin-top:auto}.landing-tool-accent{background:linear-gradient(135deg,#14264a,#101b34);border-color:#4a88ff35}
.landing-learning{background:#0e1519;border-block:1px solid var(--landing-line);padding-block:85px}.landing-learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.learning-visual{background:radial-gradient(ellipse at 0 0,#1b357042,transparent 65%),#121c22;border:1px solid #3b6ee02b;border-radius:9px;padding:28px}.learning-visual-top{display:flex;justify-content:space-between;font-size:9px;color:#a7c5dc;letter-spacing:1.6px;margin-bottom:28px}.learning-visual h3{font-size:30px;font-weight:500;letter-spacing:-1px;line-height:1.25;margin-bottom:27px}.learning-row{border:1px solid #ffffff17;background:#0d171cb3;display:flex;align-items:center;gap:14px;padding:18px 16px;border-radius:6px;margin-top:10px}.learning-row i{font-size:22px;color:#4a88ff}.learning-row>div{flex:1}.learning-row strong{font-size:12px;font-weight:500;display:block;margin-bottom:5px}.learning-row div span{font-size:10px;color:#91a1ad}.learning-row>span{color:#88b1d1}.learning-visual-foot{font-size:7px;letter-spacing:1.5px;color:#86a9c4;margin-top:25px}.learning-copy{color:#acb8c2;font-size:13px;line-height:1.9;margin:23px 0}.learning-checks{list-style:none;padding:0;margin:0 0 26px}.learning-checks li{font-size:12px;color:#d5dfdf;margin:13px 0;display:flex;gap:12px}.learning-checks li::before{content:'✓';color:#4a88ff}.landing-text-button{border:0;border-bottom:1px solid #4a88ff5c;background:transparent;color:#4a88ff;font-size:12px;padding:0 0 8px;text-align:left}.landing-text-button span{margin-left:30px}
.landing-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.landing-questions details{border-bottom:1px solid var(--landing-line)}.landing-questions summary{font-size:13px;line-height:1.6;padding:21px 30px 21px 0;cursor:pointer;list-style:none;position:relative;color:#e2e9e8}.landing-questions summary::-webkit-details-marker{display:none}.landing-questions summary::after{content:'+';position:absolute;right:0;color:#4a88ff;font-size:20px;top:16px}.landing-questions details[open] summary::after{content:'−'}.landing-questions details p{font-size:12px;color:#a7b7c0;line-height:1.9;padding:0 25px 22px 0;margin:0}
.landing-final-cta{background:radial-gradient(ellipse at 90% 0,#2456cf33,transparent 65%),#101d38;border:1px solid #4a88ff38;border-radius:10px;padding:45px 50px;display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:80px}.landing-final-cta h2{font-size:39px;letter-spacing:-1.5px;line-height:1.18;font-weight:500;margin:0}.landing-final-cta .landing-eyebrow{font-size:8px!important;margin-bottom:18px}.landing-final-cta>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.landing-final-cta .landing-text-button{font-size:10px;border:0;padding:0}
.landing-footer{padding-bottom:25px}.landing-footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:28px;border-bottom:1px solid var(--landing-line)}.landing-footer-top img{width:125px;height:auto;filter:brightness(0) invert(1)}.landing-footer nav{display:flex;gap:25px;flex-wrap:wrap}.landing-footer nav a{font-size:10px;color:#acb8c2}.landing-footer>p{font-size:10px;color:#93a2ad;line-height:1.9;max-width:950px;margin:23px 0}.landing-footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#86a7c0;line-height:1.7}.landing-footer-bottom>span:last-child{letter-spacing:1.6px;font-size:8px}
.portal-login .modal .btn-main{background:#4a88ff;border-color:#4a88ff;color:#f3f7ff}.portal-login .modal .small-link{color:#4a88ff}.portal-login .modal .show-password-label input{accent-color:#4a88ff}.portal-login .modal .modal-content{box-shadow:0 25px 100px #0009;border-color:#3867c44d}.portal-login .modal input:focus,.portal-login .modal select:focus{border-color:#4a88ff;box-shadow:0 0 0 3px #4a88ff1a}
@media(min-width:1600px){.landing-hero-grid{gap:85px}.landing-chart{height:390px}}
@media(max-width:1100px){.landing-header{padding:0 30px}.landing-brand>span{display:none}.landing-shell{width:calc(100% - 60px)}.landing-hero-grid{gap:28px}.landing-hero h1{font-size:46px;letter-spacing:-2px}.landing-hero .landing-lead{font-size:13px}.landing-actions{gap:9px}.portal-login .landing-actions .btn{padding:13px 14px;font-size:11px}.terminal-titlebar{font-size:7px;padding:13px 12px}.terminal-preview-label{font-size:6px}.landing-chart{height:330px}.terminal-foot>span:last-child{display:none}.terminal-caption{left:22px;right:12px}.landing-learning-grid{gap:50px}.landing-tool-card{padding:24px}.landing-faq{gap:50px}}
@media(max-width:800px){.landing-header{height:80px;padding:0 22px;gap:15px}.landing-header nav{gap:16px}.landing-header nav a{font-size:11px}.landing-brand img{width:125px}.landing-header-login{padding:10px 12px;font-size:11px}.landing-header-login span{margin-left:10px}.landing-shell{width:calc(100% - 44px)}.portal-login .landing-hero{min-height:auto;text-align:left}.landing-hero-grid{grid-template-columns:1fr;padding-block:52px 90px;gap:42px}.landing-hero h1{font-size:57px;max-width:580px;letter-spacing:-2.4px}.landing-lead{max-width:520px}.landing-hero-note{font-size:10px}.landing-explore{margin-top:28px}.landing-terminal{transform:none;max-width:640px;width:100%;margin:0 auto}.landing-chart{height:340px}.terminal-titlebar{font-size:8px}.terminal-preview-label{font-size:7px}.terminal-foot>span:last-child{display:block}.terminal-caption{left:35px;right:22px}.landing-section{padding-block:65px}.landing-section-heading{align-items:flex-start;gap:22px}.landing-section-heading>p{max-width:250px;font-size:12px}.landing-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-learning-grid{grid-template-columns:1fr;gap:40px}.landing-learning{padding-block:60px}.learning-visual{max-width:540px;width:100%}.landing-faq{grid-template-columns:1fr;gap:24px}.landing-final-cta{padding:32px;gap:30px;margin-bottom:55px}.landing-final-cta h2{font-size:32px}.landing-final-cta .landing-eyebrow{letter-spacing:1.4px}.landing-footer-top{align-items:flex-start}.landing-footer nav{justify-content:flex-end;gap:14px 20px}.landing-eyebrow{font-size:9px!important;letter-spacing:1.8px}}
@media(max-width:540px){.landing-header nav{display:none}.landing-header{height:76px}.landing-brand{gap:0}.landing-hero h1{font-size:43px;line-height:1.13;letter-spacing:-1.9px}.landing-hero-grid{padding-top:45px}.landing-hero .landing-eyebrow{font-size:8px!important;letter-spacing:1.5px;margin-bottom:22px}.landing-lead{font-size:13px;line-height:1.85}.portal-login .landing-actions .btn{padding:14px 15px;font-size:11px}.landing-actions .btn-main span{margin-left:10px}.landing-hero-note{max-width:290px;font-size:9px}.terminal-market{padding:16px}.terminal-titlebar{font-size:6px;letter-spacing:1px;padding:13px 12px}.terminal-preview-label{font-size:5px}.terminal-symbol{font-size:17px}.landing-chart{height:310px}.terminal-caption{left:15px;right:15px;padding:13px;bottom:-35px;gap:10px}.terminal-caption strong{font-size:10px}.terminal-caption>div>span{font-size:8px}.terminal-foot{font-size:7px;padding:12px}.terminal-foot>span:last-child{font-size:5px}.markets-label{font-size:6px;letter-spacing:1px;gap:12px}.markets-label>span:last-child{font-size:7px}.landing-section-heading{display:block}.landing-section-heading>p{max-width:none;margin-top:22px}.landing-section h2,.landing-learning h2{font-size:34px;letter-spacing:-1.2px}.landing-tool-grid{grid-template-columns:1fr;gap:12px}.landing-tool-card{padding:25px}.landing-tool-card>i{margin:18px 0}.landing-tool-card p{font-size:13px}.tool-tag{font-size:10px}.learning-visual{padding:23px}.learning-row{padding:16px 12px;gap:10px}.learning-row div span{font-size:9px}.learning-copy{font-size:13px}.landing-learning h2{font-size:36px}.landing-faq{padding-top:60px}.landing-questions summary{font-size:12px}.landing-final-cta{display:block;padding:30px 24px}.landing-final-cta h2{font-size:35px}.landing-final-cta>div:last-child{margin-top:27px}.landing-final-cta .landing-eyebrow{font-size:7px!important}.landing-footer-top{display:block}.landing-footer nav{justify-content:flex-start;margin-top:25px}.landing-footer-bottom{display:block}.landing-footer-bottom>span{display:block;margin-bottom:8px}.portal-login .landing-hero .portal-video-play{bottom:12px;right:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.portal-login *{scroll-behavior:auto!important;transition:none!important}.landing-terminal{transform:none}}

.portal-login .landing-actions .btn-main,.portal-login .landing-final-cta .btn-main,.portal-login .modal .btn-main{box-shadow:0 0 24px #3675ed24}.landing-tool-card>i{filter:drop-shadow(0 0 10px #4a88ff35)}

/* Deeper navy surfaces and royal blue accents. */
body.portal-login{background:#060b18;--landing-muted:#a6b4cf}.landing-header{background:#080f21}.portal-login .landing-hero{background:#080f23}.portal-login .landing-hero::after{background:linear-gradient(90deg,#060d20ef 0%,#07132bdd 48%,#081530d4 100%)}.landing-terminal{background:#091328}.landing-markets{background:#0a1328}.landing-tool-card{background:linear-gradient(140deg,#111c35,#0b1429)}.landing-tool-accent{background:linear-gradient(135deg,#162b54,#101c38)}.landing-learning{background:#0a142a}.learning-visual{background:radial-gradient(ellipse at 0 0,#21417a38,transparent 65%),#101c34}.landing-final-cta{background:radial-gradient(ellipse at 90% 0,#2456cf33,transparent 65%),#101c38}.portal-login .landing-actions .btn-main,.portal-login .landing-final-cta .btn-main,.portal-login .modal .btn-main{background:#265dcc;border-color:#3977eb;color:#fff;box-shadow:0 0 22px #265dcc28}.portal-login .landing-actions .btn-main:hover,.portal-login .landing-final-cta .btn-main:hover{background:#326de0}.landing-hero h1 em{color:#588fff;text-shadow:0 0 28px #2d62d528}
