:root { --ink:#111214; --blue:#426ec7; --paper:#f5f5f1; --line:rgba(17,18,20,.13); --muted:#676968; --glass:rgba(255,255,255,.5); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Manrope,Arial,sans-serif; overflow-x:hidden; }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.page-glow { pointer-events:none; position:absolute; filter:blur(50px); border-radius:50%; opacity:.6; }
.glow-one { width:480px; height:400px; right:-180px; top:40px; background:#d9e3ff; }
.glow-two { width:370px; height:350px; left:-180px; top:1110px; background:#e3ebff; }
.header { height:102px; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:3; }
.brand { font-weight:800; letter-spacing:-1.3px; font-size:20px; } .brand span { color:var(--blue); }
.header-actions { display:flex; align-items:center; gap:25px; }.text-link { font-size:12px; font-weight:700; }.text-link span { color:var(--blue); font-size:17px; vertical-align:-1px; }
.button { border:0; border-radius:100px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:16px 21px; font-weight:800; font-size:13px; transition:transform .2s,box-shadow .2s,background .2s; }.button:hover { transform:translateY(-2px); box-shadow:0 12px 24px rgba(24,33,52,.12); }.button span { font-size:19px; line-height:12px; }.button-small { padding:12px 17px; font-size:11px; background:var(--ink); color:white; gap:12px; }.button-primary { color:#fff; background:var(--blue); }.button-dark { color:#fff; background:var(--ink); }.button-light { color:var(--ink); background:#fff; }.button-full { width:100%; }
.hero { min-height:640px; padding:83px 0 84px; display:grid; grid-template-columns:1.05fr .95fr; position:relative; }.hero-copy { position:relative; z-index:2; }.eyebrow,.section-label { margin:0 0 25px; font:500 10px/1.2 'DM Mono',monospace; letter-spacing:.65px; }.eyebrow { display:flex; align-items:center; gap:8px; }.eyebrow i { width:7px; height:7px; border-radius:50%; display:block; background:var(--blue); box-shadow:0 0 0 5px rgba(66,110,199,.1); }
h1,h2,h3,p { margin-top:0; } h1,h2 { letter-spacing:-3.8px; font-weight:800; line-height:.97; } h1 { font-size:clamp(48px,6.2vw,82px); margin-bottom:28px; } h2 { font-size:clamp(38px,4.8vw,65px); margin-bottom:26px; } em { color:var(--blue); font-style:normal; } .hero-description { max-width:480px; color:#424442; font-size:16px; line-height:1.65; margin-bottom:30px; }.hero-actions { display:block; }.hero-cta { width:min(100%,470px); min-height:82px; padding:19px 22px 19px 31px; justify-content:space-between; font-size:17px; letter-spacing:-.4px; box-shadow:0 17px 35px rgba(66,110,199,.28); }.hero-cta span { display:grid; place-items:center; width:43px; height:43px; border-radius:50%; color:var(--blue); background:#fff; font-size:25px; }.hero-cta:hover { box-shadow:0 21px 39px rgba(66,110,199,.37); }.play-link { display:block; width:max-content; margin:19px 0 0 3px; font-size:12px; font-weight:800; }.play-link b { border:1px solid var(--line); border-radius:50%; margin-right:7px; padding:5px 7px; font-size:14px; }.form-hint { margin:20px 0 0; color:#6f706e; font-size:10px; }
.hero-art { position:relative; min-height:480px; }.mascot-window { position:absolute; inset:4px -54px 20px 25px; border-radius:260px 260px 34px 34px; overflow:hidden; background:#fff; box-shadow:inset 0 0 0 1px rgba(0,0,0,.04),0 30px 60px rgba(62,76,103,.11); }.mascot-window img { width:185%; max-width:none; height:auto; position:absolute; left:-42%; top:-7%; mix-blend-mode:multiply; }.art-orbit { position:absolute; border:1px solid rgba(66,110,199,.25); border-radius:50%; z-index:1; }.orbit-one { width:420px; height:420px; right:-20px; top:10px; }.orbit-two { width:315px; height:315px; right:34px; top:63px; border-style:dashed; }.art-note { position:absolute; z-index:2; backdrop-filter:blur(12px); background:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.75); box-shadow:0 10px 25px rgba(25,35,52,.08); border-radius:15px; padding:12px 16px; font:500 8px/1.35 'DM Mono',monospace; letter-spacing:.4px; }.art-note span { color:var(--blue); display:block; font-size:11px; margin-bottom:3px; }.note-top { right:-45px; top:36px; }.note-bottom { left:-25px; bottom:24px; }
.proof { padding:0 0 145px; display:grid; grid-template-columns:repeat(3,1fr); }.proof-item { border-top:1px solid var(--line); padding:18px 16px 0 0; display:flex; gap:20px; }.proof-item:not(:last-child) { margin-right:30px; }.proof-item span,.card-number { color:var(--blue); font:500 10px 'DM Mono',monospace; }.proof-item p { margin:0; font-size:14px; line-height:1.45; font-weight:700; }
.about { padding-bottom:150px; }.section-label { color:#61635f; }.about-heading { display:grid; grid-template-columns:1.05fr .6fr; gap:60px; align-items:end; }.about-heading p,.path-card>p,.free-copy>p,.final-cta>p { color:#555754; font-size:15px; line-height:1.7; }.about-heading p { margin-bottom:31px; }.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.service-card { min-height:305px; display:flex; flex-direction:column; border-radius:23px; padding:25px; background:#ededeb; position:relative; overflow:hidden; }.service-card h3 { font-size:22px; letter-spacing:-1px; margin:48px 0 11px; }.service-card p { color:#5d5f5c; font-size:13px; line-height:1.58; max-width:220px; }.card-tag { margin-top:auto; font:500 9px 'DM Mono',monospace; color:#4f70af; }.service-featured { background:var(--blue); color:#fff; }.service-featured .card-number,.service-featured .card-tag { color:#dce7ff; }.service-featured p { color:#edf2ff; }.service-featured:after { content:'✦'; position:absolute; right:17px; bottom:-45px; font-size:170px; color:rgba(255,255,255,.13); }
.path { padding-bottom:150px; display:grid; grid-template-columns:.92fr 1.08fr; gap:12px; }.path-card { padding:43px; border-radius:24px; background:#dce8ff; min-height:518px; display:flex; flex-direction:column; align-items:flex-start; }.path-card>p { max-width:315px; }.path-card .button { margin-top:auto; }.steps { list-style:none; margin:0; padding:0 27px; display:flex; flex-direction:column; justify-content:space-between; }.steps li { min-height:123px; border-top:1px solid var(--line); padding-top:22px; display:grid; grid-template-columns:63px 1fr; }.steps li:last-child { border-bottom:1px solid var(--line); }.steps li>span { color:var(--blue); font:500 11px 'DM Mono',monospace; }.steps h3 { font-size:17px; letter-spacing:-.8px; margin:0 0 7px; }.steps p { font-size:13px; color:#696b68; margin:0; }
.free { padding-bottom:150px; display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; }.free-copy small { display:block; font:400 9px 'DM Mono',monospace; color:#777; margin:14px 0 0 17px; }.platform-card { min-height:410px; overflow:hidden; color:white; background:#121a31; border-radius:24px; box-shadow:0 20px 50px rgba(26,38,67,.2); position:relative; }.platform-top { display:flex; align-items:center; gap:10px; padding:18px 21px; border-bottom:1px solid rgba(255,255,255,.14); font:500 8px 'DM Mono',monospace; letter-spacing:.4px; }.platform-top span:last-child { margin-left:auto; color:#a6c0ff; }.platform-brand { font-weight:500; }.dot { width:7px; height:7px; border-radius:50%; background:#85a8ff; }.platform-body { position:relative; z-index:2; padding:50px 38px; width:79%; }.module-mark { color:#84a7ff; font:500 13px 'DM Mono',monospace; margin-bottom:28px; }.platform-body p { font:500 9px 'DM Mono',monospace; color:#b7c7ef; }.platform-body h3 { font-size:23px; letter-spacing:-1.4px; line-height:1.15; }.progress { height:4px; margin:37px 0 17px; background:rgba(255,255,255,.18); border-radius:4px; }.progress span { display:block; width:26%; height:100%; background:#87a8ff; border-radius:4px; }.platform-meta { display:flex; gap:13px; color:#8393b8; font:500 7px 'DM Mono',monospace; }.platform-mascot { position:absolute; right:-99px; bottom:-22px; width:310px; height:360px; overflow:hidden; transform:rotate(-6deg); }.platform-mascot img { position:absolute; width:760px; max-width:none; left:-255px; top:-95px; mix-blend-mode:screen; opacity:.9; }
.final-cta { background:var(--blue); color:#fff; min-height:500px; border-radius:26px; padding:75px 8.3%; margin-bottom:65px; position:relative; overflow:hidden; }.final-cta:after { content:'P'; color:rgba(255,255,255,.1); font-weight:800; font-size:590px; line-height:.7; position:absolute; right:-28px; bottom:-47px; }.final-cta .eyebrow { color:#e7eeff; }.final-cta .eyebrow i { background:#fff; box-shadow:0 0 0 5px rgba(255,255,255,.13); }.final-cta h2 { position:relative; z-index:1; margin-bottom:22px; }.final-cta em { color:#d9e4ff; }.final-cta>p { color:#e8efff; max-width:410px; position:relative; z-index:1; }.final-cta .button { position:relative; z-index:1; }.final-meta { position:absolute; z-index:1; right:8%; bottom:78px; display:flex; gap:21px; color:#dce7ff; font:500 8px 'DM Mono',monospace; }
.footer { min-height:98px; display:grid; grid-template-columns:1fr 2fr 1fr; align-items:start; gap:20px; font-size:11px; color:#676964; }.footer p { margin:0; }.footer>a:last-child { text-align:right; color:var(--ink); font-weight:700; }
.modal { position:fixed; z-index:20; inset:0; display:grid; place-items:center; padding:20px; opacity:0; visibility:hidden; transition:opacity .25s,visibility .25s; }.modal.is-open { opacity:1; visibility:visible; }.modal-backdrop { position:absolute; inset:0; background:rgba(12,16,23,.58); backdrop-filter:blur(8px); }.modal-box { width:min(100%,518px); padding:48px; position:relative; z-index:1; background:#f8f8f5; border-radius:27px; transform:translateY(15px) scale(.98); transition:transform .25s; }.modal.is-open .modal-box { transform:none; }.modal-box h2 { font-size:44px; margin-bottom:13px; }.modal-close { position:absolute; right:19px; top:17px; border:0; background:transparent; font-size:29px; line-height:1; cursor:pointer; }.modal-intro { color:#656764; font-size:13px; line-height:1.5; margin-bottom:25px; } form label { display:block; font-size:11px; font-weight:800; margin-top:15px; } form input { display:block; width:100%; border:1px solid #deded9; background:#fff; border-radius:11px; padding:15px 14px; margin-top:7px; color:var(--ink); outline:none; font-size:14px; } form input:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(66,110,199,.12); }.form-error { color:#c33b3b; min-height:15px; margin:9px 0 -3px; font-size:11px; }.privacy { color:#858683; text-align:center; font-size:9px; line-height:1.45; margin:14px 12px 0; }.success { padding:20px 0 4px; text-align:center; }.success span { display:grid; place-items:center; margin:0 auto 17px; width:45px; height:45px; border-radius:50%; color:#fff; background:var(--blue); font-size:22px; }.success h3 { font-size:26px; letter-spacing:-1px; margin:0 0 8px; }.success p { color:#696b68; font-size:13px; }.success .button { margin-top:10px; }
@media (max-width:760px) { .shell { width:min(100% - 32px,550px); }.header { height:75px; }.header .text-link { display:none; }.button-small { padding:11px 14px; }.hero { display:block; padding:59px 0 64px; min-height:0; }.hero-art { margin:30px 0 0; min-height:330px; }.mascot-window { inset:0 -20px 0 0; border-radius:190px 190px 22px 22px; }.mascot-window img { width:186%; left:-42%; top:-4%; }.orbit-one { width:285px; height:285px; }.orbit-two { width:220px; height:220px; }.note-top { right:-5px; top:20px; }.note-bottom { left:-5px; bottom:11px; }.proof { padding-bottom:85px; grid-template-columns:1fr; gap:18px; }.proof-item:not(:last-child) { margin:0; }.about { padding-bottom:85px; }.about-heading { display:block; }.about-heading p { margin-bottom:23px; }.service-grid { grid-template-columns:1fr; }.service-card { min-height:230px; }.service-card h3 { margin-top:30px; }.path { grid-template-columns:1fr; padding-bottom:85px; }.path-card { min-height:395px; padding:32px; }.steps { padding:0 11px; }.steps li { min-height:105px; grid-template-columns:48px 1fr; }.free { grid-template-columns:1fr; gap:34px; padding-bottom:85px; }.platform-card { min-height:360px; }.platform-body { padding:38px 28px; }.platform-body h3 { font-size:20px; }.final-cta { width:calc(100% - 32px); min-height:475px; padding:53px 29px; margin-bottom:44px; }.final-cta:after { font-size:430px; bottom:-37px; }.final-meta { left:29px; right:auto; bottom:44px; gap:10px; flex-wrap:wrap; }.footer { grid-template-columns:1fr; padding-bottom:30px; }.footer>a:last-child { text-align:left; }.modal-box { padding:38px 24px 28px; }.modal-box h2 { font-size:37px; } h1 { letter-spacing:-2.8px; }.hero-description { font-size:14px; }.hero-actions { display:block; }.hero-cta { width:100%; min-width:0; }.play-link { display:inline-block; margin-top:19px; font-size:11px; }.form-hint { font-size:9px; } }
