
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#181d2b;--muted:#707989;--blue:#2c60f5;--line:#e5e8ef;--light:#f5f7fa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:15px/1.75 'DM Sans',sans-serif;color:var(--ink);background:white;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #6d93ff;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;letter-spacing:-.055em}h1,h2{font-weight:800}h1{font-size:clamp(48px,6vw,82px)}h2{font-size:clamp(35px,4vw,54px)}h3{font-size:23px;letter-spacing:-.035em}p{color:var(--muted)}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.header{height:80px;position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(20px);z-index:30;border-bottom:1px solid #eceef3}.header .wrap{display:flex;align-items:center;justify-content:space-between;height:100%}.brand{font:800 25px Manrope,sans-serif;letter-spacing:-1.2px;display:inline-flex;align-items:center;gap:10px}.brand b{color:var(--blue);font-size:34px;font-weight:500;line-height:1}.brand em{font-style:normal;color:var(--blue)}nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:500}nav a:hover,nav a.active{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;font-weight:600;font-size:12px;background:var(--blue);color:white;padding:14px 25px;border:0;border-radius:100px;transition:.2s}.btn:hover{background:#1649db;transform:translateY(-2px);box-shadow:0 8px 30px #3561fa25}.btn.small{padding:10px 20px}.btn.white{background:white;color:var(--ink)}.btn.outline{background:transparent;color:inherit;border:1px solid #ffffff45}.menu{display:none;border:0;background:transparent;font-size:22px;color:var(--ink)}.announcement{text-align:center;padding:10px 20px;background:#f3f6fc;font-size:10px;letter-spacing:.01em;color:#737d90}.announcement a{color:var(--blue);margin-left:12px}.hero{background:#070c1b;color:white;overflow:hidden;position:relative}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 60%,#1f4bb851,transparent 50%),radial-gradient(ellipse at 20% 5%,#1b2c4925,transparent 65%)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:655px;gap:10px;align-items:center;padding-top:55px;padding-bottom:60px;position:relative}.eyebrow,.label{text-transform:uppercase;font-size:9px;letter-spacing:.19em;font-weight:700;color:var(--blue);margin-bottom:20px}.hero .eyebrow{color:#abc5ff}.eyebrow:before{content:'●';margin-right:9px;font-size:8px;color:#739cff}.hero h1{font-size:clamp(54px,5.9vw,80px);line-height:1.05;letter-spacing:-.065em}.gradient{background:linear-gradient(110deg,#a4cbff,#7297ff 50%,#b9a3ff);background-clip:text;color:transparent}.hero p{font-size:14px;line-height:1.9;color:#98a6c0;max-width:425px;margin-top:27px}.actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:30px}.hero-notes{display:flex;gap:22px;margin-top:32px;color:#91a1be;font-size:9px}.hero-notes span:before{content:'✓';margin-right:7px;color:#97b8ff}.art{height:480px;position:relative;perspective:900px;isolation:isolate}.grid{position:absolute;inset:0 -60px;background-image:linear-gradient(#7195ff0d 1px,transparent 1px),linear-gradient(90deg,#7195ff0d 1px,transparent 1px);background-size:38px 38px;transform:rotateX(40deg) rotateZ(-25deg);mask-image:radial-gradient(ellipse,#000,transparent 70%)}.ring{width:440px;height:240px;border:1px solid #618eff36;position:absolute;left:calc(50% - 220px);top:120px;border-radius:50%;transform:rotate(-30deg)}.ring.r2{transform:rotate(35deg)}.ring.r3{transform:rotate(90deg);width:380px;left:calc(50% - 190px);height:260px;top:110px}.chip{position:absolute;left:calc(50% - 105px);top:125px;width:210px;height:210px;border-radius:44px;border:1px solid #a3c9ffb0;background:linear-gradient(140deg,#9fc5ff55,#3466e566 45%,#102042);box-shadow:inset 0 0 35px #9cc4ff4a,0 0 100px #3e72fc60,15px 20px 0 -2px #142e60,16px 21px 0 #507bca;display:grid;place-items:center;transform:rotateX(20deg) rotateY(-25deg) rotateZ(-15deg);animation:float 7s ease-in-out infinite}.chip:before{content:'';position:absolute;inset:16px;border:1px solid #d2e5ff45;border-radius:30px}.chip svg{width:118px;filter:drop-shadow(0 0 12px #b9d9ff)}.node{position:absolute;background:linear-gradient(140deg,#25385cce,#0d172de8);border:1px solid #8da9ed40;padding:13px 18px;border-radius:15px;display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;box-shadow:0 15px 30px #0003;backdrop-filter:blur(12px);color:#ccdaf5}.node b{color:#a9c5ff;font:700 23px Manrope,sans-serif;letter-spacing:-1px}.n1{top:42px;left:32px}.n2{right:-5px;top:70px}.n3{bottom:95px;left:-10px}.n4{right:-5px;bottom:85px}.art-label{position:absolute;right:40px;top:15px;color:#5e749b;font:8px monospace;letter-spacing:.14em}.art-code{position:absolute;bottom:8px;left:calc(50% - 105px);font:10px/1.8 monospace;color:#6e87af}.art-code span{color:#94b6ff}.stack{padding:27px 0;border-bottom:1px solid var(--line)}.stack-label{text-align:center;font-size:9px;letter-spacing:.16em;color:#929aa9;margin-bottom:20px}.logos{display:flex;align-items:center;justify-content:space-between;gap:25px;color:#677082;font:600 21px Manrope,sans-serif;letter-spacing:-.7px}.logos .aws{font-weight:800;font-size:26px}.section{padding:100px 0}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}.heading p{max-width:340px;font-size:13px}.intro{max-width:560px;margin-top:23px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}.filter{border:1px solid transparent;border-radius:100px;background:#f3f5f8;color:#788090;padding:9px 20px;font-size:11px;transition:.2s}.filter:hover{border-color:#c1d0ff}.filter.active{background:#1c2230;color:white}.courses{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.course{border:1px solid var(--line);border-radius:19px;overflow:hidden;display:flex;flex-direction:column;transition:.25s;background:white}.course:hover{transform:translateY(-5px);box-shadow:0 20px 45px #1721420b}.visual{height:175px;position:relative;display:grid;place-items:center;background:var(--tint);overflow:hidden}.visual:before,.visual:after{content:'';position:absolute;width:230px;height:180px;border:1px solid #ffffffab;border-radius:50%;transform:rotate(-25deg) scaleX(1.4)}.visual:after{width:145px;height:120px}.glyph{font:800 58px Manrope,sans-serif;letter-spacing:-4px;color:var(--accent);transform:rotate(-9deg);position:relative;text-shadow:0 10px 20px #fff8}.tag{position:absolute;top:14px;left:16px;padding:4px 9px;font-size:8px;letter-spacing:.07em;background:#ffffffa1;border:1px solid #fff8;border-radius:100px;color:#647080}.course-body{padding:24px;display:flex;flex-direction:column;flex:1}.meta{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#919aa8;margin-bottom:12px}.course h3{font-size:21px;line-height:1.3}.course p{font-size:12px;line-height:1.85;margin-top:12px;flex:1}.course-bottom{margin-top:24px;padding-top:17px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:9px;color:#9199a8}.course-bottom a{font-size:11px;font-weight:600;color:var(--ink)}.course-bottom a:hover{color:var(--blue)}.text-link{color:var(--blue);font-size:12px;font-weight:600}.all-link{text-align:center;margin-top:32px}.soft{background:var(--light)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.editor{background:#101727;border:1px solid #2c3651;border-radius:19px;overflow:hidden;box-shadow:0 30px 60px #16295120;transform:rotate(-2deg)}.editor-bar{display:flex;align-items:center;gap:6px;padding:17px 20px;border-bottom:1px solid #ffffff0a;font:9px monospace;color:#6b7b9c}.editor-bar i{width:7px;height:7px;border-radius:50%;background:#f47a78}.editor-bar i:nth-child(2){background:#e8bd62}.editor-bar i:nth-child(3){background:#6dce9c}.editor-bar span{margin-left:18px}.editor pre{margin:0;padding:28px;font:12px/2.1 monospace;white-space:pre-wrap;color:#c0d0ee}.editor pre b{color:#b39cff;font-weight:400}.editor pre em{color:#86cbb2;font-style:normal}.comment{color:#536887}.terminal{margin:0 20px 20px;padding:16px;border-radius:10px;border:1px solid #ffffff0d;color:#7890b2;font:10px/1.8 monospace}.terminal span{color:#83d7ae}.features{display:grid;gap:24px;margin-top:33px}.feature{display:flex;gap:15px}.icon{border:1px solid #dfe4ee;background:white;display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;color:var(--blue)}.feature h3{font:600 14px 'DM Sans',sans-serif;letter-spacing:0;margin-bottom:6px}.feature p{font-size:12px;max-width:330px}.services{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:40px}.service{background:#eff3fc;border-radius:24px;padding:42px;min-height:350px;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden}.service.dark{background:#111a2e;color:white}.service>span{font:9px monospace;color:#8e9bb4;letter-spacing:.13em;margin-bottom:34px}.service h3{font-size:33px;max-width:340px}.service p{font-size:13px;max-width:320px;margin:19px 0 30px}.service.dark p{color:#98a7c1}.service .text-link{margin-top:auto}.service.dark .text-link{color:#a2bdff}.service:after{content:'↗';position:absolute;right:30px;bottom:-50px;font-size:180px;color:#255bf509;pointer-events:none}.service.dark:after{content:'{ }';color:#a0bdff08}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faqs details{border-bottom:1px solid #dde3ec;padding:23px 0}.faqs summary{list-style:none;cursor:pointer;font-size:14px;font-weight:500;display:flex;justify-content:space-between;gap:25px}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'+';font-size:21px;line-height:1;color:#8a95a9}.faqs details[open] summary:after{content:'−'}.faqs details p{font-size:12px;margin-top:16px;padding-right:20px}.cta{padding:75px 30px;text-align:center;background:#080e21;color:white;border-radius:26px;position:relative;overflow:hidden}.cta:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 130%,#3456d45e,transparent 65%);pointer-events:none}.cta>*{position:relative}.cta .label{color:#92b0ff}.cta h2{max-width:680px;margin:auto}.cta p{color:#8f9db8;font-size:13px;max-width:430px;margin:22px auto 0}.cta .actions{justify-content:center}.footer{padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:45px}.footer p{font-size:12px;margin-top:17px}.footer h3{font:600 11px 'DM Sans',sans-serif;letter-spacing:0;margin-bottom:20px}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:11px;color:#808a9b}.footer-links a:hover{color:var(--blue)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:50px;padding-top:23px;color:#929bab;font-size:9px}.page-hero{padding:80px 0;background:#f3f6fc}.page-hero p{max-width:600px;margin-top:25px}.page-hero h1{max-width:1000px}.breadcrumbs{font-size:11px;color:#8793a8;margin-bottom:25px}.detail-grid{display:grid;grid-template-columns:1fr 320px;gap:75px}.detail h2{font-size:35px;margin-bottom:20px}.detail>p{font-size:14px;margin-bottom:40px}.curriculum details{padding:22px 0;border-bottom:1px solid var(--line)}.curriculum summary{cursor:pointer;font-weight:500;font-size:14px}.curriculum p{font-size:13px;margin:15px 0 0 20px}.capstone{margin-top:50px}.aside{position:sticky;top:110px;align-self:start;border:1px solid var(--line);border-radius:18px;background:#f6f8fc;padding:30px}.aside h3{font-size:24px}.aside p{font-size:12px;margin:18px 0 24px}.aside .btn{width:100%}.aside ul{list-style:none;padding:0;color:#7b8598;font-size:11px;line-height:2.7}.aside li:before{content:'✓';color:var(--blue);margin-right:10px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.project{padding:32px;background:#f5f7fc;border:1px solid #edf0f7;border-radius:20px}.project>span{font:10px monospace;color:var(--blue)}.project h3{margin:28px 0 17px}.project p{font-size:12px}.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:50px}.step{border-top:1px solid #dce2ec;padding-top:20px}.step>span{font:11px monospace;color:var(--blue)}.step h3{font-size:19px;margin:22px 0 13px}.step p{font-size:12px}.registration{max-width:750px;margin:auto;text-align:center;border-radius:24px;border:1px solid var(--line);background:#f5f7fc;padding:60px 35px}.registration h2{font-size:38px}.registration p{font-size:13px;margin:23px auto;max-width:460px}.registration .btn[aria-disabled=true]{background:#e0e5ef;color:#71809b;cursor:default;transform:none;box-shadow:none}.registration .note{font-size:11px}.search{width:min(100%,360px);display:block;margin:0 0 28px;border:1px solid var(--line);padding:13px 17px;border-radius:12px}.empty{padding:40px;grid-column:1/-1}.fade{animation:enter .8s both}@keyframes float{0%,100%{transform:translateY(0) rotateX(20deg) rotateY(-25deg) rotateZ(-15deg)}50%{transform:translateY(-15px) rotateX(20deg) rotateY(-18deg) rotateZ(-10deg)}}@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}[hidden]{display:none!important}
@media(max-width:1050px){nav{gap:18px}.hero h1{font-size:66px}.art{transform:scale(.85)}.split{gap:45px}.logos{font-size:17px}.detail-grid{gap:40px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:70px}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;padding:25px;background:white;box-shadow:0 20px 30px #0001;flex-direction:column;align-items:stretch;gap:22px}nav.open{display:flex}.brand{font-size:23px}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:50px;padding-bottom:0;gap:0}.hero h1{font-size:clamp(49px,10vw,72px)}.hero p{font-size:14px}.hero-notes{gap:16px;font-size:8px}.art{width:500px;max-width:100%;height:430px;transform:scale(.85);transform-origin:top center;margin:25px auto -35px}.n1{left:5px}.n3{left:-10px}.n2,.n4{right:-10px}.logos{justify-content:center;flex-wrap:wrap;gap:16px 30px;font-size:17px}.section{padding:65px 0}.heading{display:block;margin-bottom:30px}.heading p{margin-top:22px}.courses{grid-template-columns:repeat(2,1fr);gap:15px}.visual{height:145px}.course-body{padding:19px}.course h3{font-size:19px}.course-bottom{flex-direction:column;align-items:flex-start;gap:10px}.split,.faq-layout,.detail-grid{grid-template-columns:1fr;gap:40px}.editor{order:2}.services{grid-template-columns:1fr}.service{padding:33px;min-height:330px}.journey{grid-template-columns:repeat(2,1fr);gap:30px}.projects{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(3,1fr);gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{font-size:8px}.page-hero{padding:55px 0}.aside{position:static}.filter{padding:8px 14px;font-size:10px}.cta{padding:60px 25px}.registration{padding:45px 24px}}
@media(max-width:420px){.courses{grid-template-columns:1fr}.visual{height:180px}.course-bottom{flex-direction:row}.hero h1{font-size:49px}.art{transform:scale(.75);margin-bottom:-80px}.btn{padding:13px 20px}.footer-grid{gap:20px}.announcement{font-size:9px}.hero-notes{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
