@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";
:root{--ink:#122335;--muted:#646d77;--paper:#f5f6f7;--line:#dcdfe3;--blue:#17314c;--sky:#c6d5e5;--white:#fff;--radius:7px;--display:"Space Grotesk", Arial, sans-serif;--body:"DM Sans", Arial, sans-serif}.policy-page{max-width:850px}.policy-page h2{margin-top:36px}.policy-page p{line-height:1.75}.account-menu{z-index:30;position:relative}.account-menu summary{cursor:pointer;align-items:center;gap:10px;max-width:240px;list-style:none;display:flex}.account-menu summary>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-menu summary::-webkit-details-marker{display:none}.site-header .account-menu nav{background:var(--white);border:1px solid var(--line);border-radius:12px;gap:0;min-width:245px;padding:10px;display:grid;position:absolute;top:calc(100% + 14px);right:0;box-shadow:0 12px 35px #0003}.account-menu nav a,.account-menu nav button{border-radius:5px;padding:10px}.account-menu nav a:hover,.account-menu nav button:hover{background:var(--paper)}.account-menu nav form{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}.account-menu nav button{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0}.account-menu nav button:disabled{opacity:.6;cursor:wait}.profile-avatar{background:var(--blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;overflow:hidden}.profile-avatar.large{vertical-align:middle;width:80px;height:80px}.profile-avatar img{object-fit:cover;width:100%;height:100%}#profile form{gap:16px;max-width:500px;display:grid}#profile label{gap:6px;display:grid}.knowledge-check label.answer-correct{background:#16804b16;border:2px solid #16804b;box-shadow:inset 5px 0 #16804b}.knowledge-check label.answer-incorrect{background:#c3424216;border:2px solid #c34242;box-shadow:inset 5px 0 #c34242}.key-term{font:inherit;cursor:pointer;color:var(--ink);background:#6c91b916;border:0;border-bottom:2px solid #6c91b9;padding:0 2px;font-weight:700}.definition-term{display:inline;position:relative}.definition-bubble{z-index:25;text-align:left;white-space:normal;width:min(320px,100vw - 32px);font:inherit;background:var(--white);color:var(--ink);cursor:pointer;border:1px solid #6c91b9;border-radius:10px;gap:8px;padding:16px;font-size:15px;line-height:1.5;display:grid;position:absolute;top:calc(100% + 10px);box-shadow:0 8px 28px #0003}.definition-bubble small{color:var(--muted);font-size:12px}.key-term:focus-visible,.definition-bubble:focus-visible{outline-offset:3px;outline:2px solid #6c91b9}.lesson-glossary{background:var(--paper);border-left:4px solid #6c91b9;border-radius:6px;margin:30px 0;padding:24px}.lesson-glossary dl{gap:16px;display:grid}.lesson-glossary dt{font-weight:700}.lesson-glossary dd{color:var(--muted);margin:4px 0 0}.architecture-illustration svg{width:100%;height:auto;overflow:visible}.architecture-device{fill:var(--white);stroke:var(--ink);stroke-width:1.8px}.architecture-device text{stroke:none;fill:var(--ink);text-anchor:middle}.architecture-label{font-size:14px;font-weight:700}.architecture-detail{fill:var(--muted);stroke:none;text-anchor:middle;font-size:11px}.architecture-boundary{fill:#6c91b90a;stroke:var(--line);stroke-dasharray:5 4}.architecture-flow{fill:none;stroke:#5286b8;stroke-width:2px;color:#5286b8}.architecture-edge{fill:var(--ink);text-anchor:middle;paint-order:stroke;stroke:var(--white);stroke-width:5px;stroke-linejoin:round;font-size:11px}.architecture-playing .architecture-flow{stroke-dasharray:8 5;animation:1.6s linear infinite architecture-flow}@keyframes architecture-flow{to{stroke-dashoffset:-26px}}@media (prefers-reduced-motion:reduce){.architecture-playing .architecture-flow{animation:none}}@media (max-width:650px){.account-menu summary>span:nth-child(2){max-width:75px}}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);font-family:var(--body);margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #275383}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;font-weight:500;line-height:1.15}h1{margin-bottom:25px;font-size:clamp(2.7rem,4.3vw,4.8rem)}h2{font-size:2rem}h3{font-size:1.45rem}p{color:var(--muted)}.site-header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;height:92px;padding:0 5.5%;display:flex}.wordmark{font-family:var(--display);letter-spacing:-2px;align-items:center;font-size:2.1rem;font-weight:700;line-height:1;display:flex}.brand-mark{background:var(--blue);width:34px;height:34px;color:var(--sky);letter-spacing:-4px;justify-content:center;align-items:center;margin-right:12px;padding-right:4px;font-size:1.5rem;display:inline-flex;transform:skew(-9deg)}.wordmark-dot{color:#45678b}.site-header nav{gap:42px;font-size:.95rem;display:flex}.site-header nav a:hover,.account-link:hover{color:#264b72}.account-link{gap:22px;font-size:.9rem;font-weight:600;display:flex}.site-footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:30px 5.5%;font-size:.8rem;display:flex}.site-footer div{align-items:center;gap:22px;display:flex}.dev-pill{border:1px solid var(--line);border-radius:4px;padding:3px 8px;font-size:.75rem}.page-shell,.section-shell{max-width:1400px;margin:auto;padding:64px 5.5% 80px}.narrow{max-width:920px;min-height:65vh;padding-top:85px}.eyebrow{letter-spacing:.15em;color:var(--blue);margin-bottom:20px;font-size:.75rem;font-weight:650;line-height:1.5}.lede{max-width:640px;margin-bottom:30px;font-size:1.15rem;line-height:1.7}.muted{color:var(--muted)}.small{font-size:.8rem}.muted-heading{color:#616b75}.button{border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:18px;padding:12px 19px;font-size:.9rem;font-weight:550;line-height:1.5;transition:background .15s;display:inline-flex}.primary{background:var(--blue);color:#fff}.primary:hover{background:#214163}.secondary{color:var(--ink);background:0 0;border-color:#cbd0d5}.secondary:hover{background:#e9ebee}.quiet{color:var(--muted);background:0 0}.button-row{flex-wrap:wrap;gap:12px;display:flex}.home-hero{grid-template-columns:1.15fr 1fr;align-items:center;gap:60px;max-width:1400px;margin:auto;padding:90px 5.5% 82px;display:grid}.home-hero h1{font-size:clamp(3.4rem,5.3vw,5.5rem);line-height:1.03}.hero-caption{color:var(--muted);align-items:center;gap:10px;margin-top:52px;font-size:.8rem;display:flex}.status-dot{background:#587da5;border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.architecture-art{color:#e5eaf0;background:#15283d;border:1px solid #203d5c;padding:26px 30px;box-shadow:20px 20px #e4e7eb}.art-topline,.art-bottomline{letter-spacing:.17em;color:#acbac8;font-size:.65rem}.art-topline{border-bottom:1px solid #405062;justify-content:space-between;padding-bottom:24px;display:flex}.art-layer{border-bottom:1px solid #405062;align-items:center;gap:22px;padding:30px 0;display:flex}.art-layer>span:last-child{color:#c0d0e2;margin-left:auto;font-size:1.4rem}.art-index{color:#8497ac;font-family:monospace;font-size:.85rem}.art-layer strong{font-family:var(--display);margin-bottom:2px;font-size:1.65rem;font-weight:400;display:block}.art-layer div span{color:#b1bdc9;font-size:.8rem}.art-bottomline{padding-top:23px}.section-shell{border-top:1px solid var(--line);padding-top:55px}.section-heading{justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px;display:flex}.section-heading h2{margin-bottom:0}.three-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.two-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.feature-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);flex-direction:column;align-items:flex-start;padding:30px;display:flex}.feature-card:hover{border-color:#9ca9b6}.card-number{color:var(--muted);letter-spacing:.08em;margin-bottom:40px;font-family:monospace;font-size:.75rem}.feature-card h3{margin-bottom:17px;font-size:1.7rem}.feature-card p{flex:1;font-size:.95rem;line-height:1.7}.text-link{justify-content:space-between;width:100%;margin-top:20px;font-size:.9rem;font-weight:600;display:flex}.academy-intro{grid-template-columns:1.5fr 1fr;align-items:center;gap:80px;margin-bottom:43px;display:grid}.academy-intro h1{font-size:clamp(3.1rem,4.9vw,4.6rem);line-height:1.08}.academy-note{border-left:1px solid #cbd1d7;justify-self:end;max-width:390px;padding:12px 0 12px 48px}.small-cross{font-family:var(--display);color:#506984;margin-bottom:24px;font-size:2.7rem;font-weight:400;line-height:1;display:block}.academy-note h3{margin-bottom:16px;font-size:1.4rem}.academy-note p{font-size:.95rem;line-height:1.9}.note-caption{letter-spacing:.12em;color:#737d87;font-size:.65rem}.catalog-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:22px;font-size:.85rem;display:flex}.tabs{gap:8px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-radius:4px;padding:10px 16px;font-size:.85rem}.tabs button.active{background:var(--ink);color:#fff}.course-grid{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.course-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .18s,border-color .18s;overflow:hidden}.course-card:hover{border-color:#91a0af;transform:translateY(-3px)}.course-art{color:#25466a;background-color:#d8dfe7;background-image:linear-gradient(#bfc8d266 1px,#0000 1px),linear-gradient(90deg,#bfc8d266 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:32px 32px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;flex-direction:column;justify-content:space-between;height:204px;padding:22px 26px;display:flex;position:relative;overflow:hidden}.art-dark{color:#d4dee9;background-color:#1d3752;background-image:linear-gradient(#707f9022 1px,#0000 1px),linear-gradient(90deg,#707f9022 1px,#0000 1px)}.course-art-label,.course-art-foot{letter-spacing:.13em;font-size:.6rem}.course-symbol{font-family:var(--display);letter-spacing:-.08em;align-self:center;font-size:4.5rem;font-weight:400;line-height:1}.course-card-content{padding:26px 28px 22px}.meta-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.meta-row .eyebrow{margin:0;font-size:.65rem}.badge{letter-spacing:.02em;color:#25466a;white-space:nowrap;background:#e7ecf1;border-radius:4px;padding:3px 9px;font-size:.7rem;font-weight:600;display:inline-block}.badge.paid{color:#536172;background:#edf0f4}.course-card h3{margin:20px 0 14px;font-size:1.75rem}.course-card p{min-height:70px;font-size:.9rem;line-height:1.75}.course-card-bottom{color:var(--muted);border-top:1px solid #e8eaec;justify-content:space-between;padding-top:18px;font-size:.8rem;display:flex}.course-card-bottom>span:last-child{color:var(--blue);font-size:1.2rem}.academy-bottom{align-items:center;gap:12px;margin-top:38px;font-size:.8rem;display:flex}.academy-bottom p{margin:0}.academy-bottom>span:last-child{color:var(--muted);margin-left:auto}.back-link{color:var(--muted);margin-bottom:32px;font-size:.85rem;display:inline-block}.course-detail{grid-template-columns:1.7fr 1fr;gap:65px;display:grid}.course-detail h1{font-size:3.5rem}.detail-meta{color:var(--muted);align-items:center;gap:22px;font-size:.85rem;display:flex}.curriculum-heading{margin-top:50px;margin-bottom:24px}.module{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.module-heading{background:#edeff2;padding:24px}.module-heading .eyebrow{font-size:.65rem}.module-heading h3{margin:8px 0 0;font-size:1.2rem}.lesson-list-item{border-top:1px solid var(--line);align-items:center;gap:18px;padding:23px;font-size:.85rem;display:flex}.lesson-list-item div{flex:1}.lesson-list-item div strong,.lesson-list-item div span{display:block}.lesson-list-item div span{color:var(--muted);margin-top:4px;font-size:.8rem}.lesson-list-item>a{white-space:nowrap}.lesson-number{color:#7b8590;font-family:monospace}.enrollment-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;align-self:start;padding:28px}.enrollment-art{height:130px;font-family:var(--display);color:#4a6078;background:#e5e9ee;justify-content:center;align-items:center;margin-bottom:25px;font-size:3.5rem;display:flex}.enrollment-card h3{margin-top:12px}.enrollment-card ul{color:var(--muted);margin-bottom:28px;padding:0;font-size:.9rem;line-height:2.2;list-style:none}.enrollment-card li:before{content:"✓";color:var(--blue);margin-right:12px}.enrollment-card .button{width:100%}.enrollment-card .small{margin:20px 0 0}.notice{color:#445364;background:#eaedf1;border:1px solid #d4dbe2;border-radius:4px;margin:18px 0;padding:16px 18px;font-size:.85rem}.workspace{max-width:1800px;margin:auto;padding:30px 3.5% 65px}.workspace-heading{justify-content:space-between;align-items:center;gap:25px;margin-bottom:25px;display:flex}.workspace-heading .back-link{margin-bottom:13px;font-size:.8rem}.workspace-heading h1{letter-spacing:-.035em;margin:0;font-size:1.8rem}.lesson-counter{text-align:right;color:var(--muted);font-size:.75rem}.lesson-counter span{display:block}.lesson-counter span:first-child{letter-spacing:.12em;margin-bottom:8px;font-size:.65rem}.workspace-grid{grid-template-columns:1fr 1fr;align-items:start;gap:26px;display:grid}.instructions{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:30px 35px}.instruction-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:33px;padding-bottom:23px;display:flex}.instruction-top .eyebrow{margin:0;font-size:.65rem}.lesson-section{margin-bottom:35px}.section-kind{text-transform:uppercase;letter-spacing:.15em;color:#446384;margin-bottom:11px;font-size:.6rem;font-weight:650}.lesson-section h2{letter-spacing:-.03em;margin-bottom:14px;font-size:1.55rem}.lesson-section p{font-size:.95rem;line-height:1.85}.code-example{color:#203d5b;white-space:pre-wrap;overflow-wrap:anywhere;background:#edeff2;border:1px solid #dce1e7;border-radius:4px;padding:18px 20px;font-family:Consolas,Courier New,monospace;font-size:.85rem;line-height:1.8;overflow:auto}.lab-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:0 22px 14px;position:sticky;top:20px}.lab-panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:21px 0;display:flex}.lab-panel-heading>div{align-items:center;gap:10px;font-size:.9rem;font-weight:500;display:flex}.sim-label{letter-spacing:.09em;color:var(--muted);border:1px solid #dbdfe4;border-radius:3px;padding:3px 6px;font-size:.6rem}.lab-status-row{justify-content:space-between;align-items:center;gap:16px;padding:21px 0;display:flex}.lab-status-row strong,.lab-status-row .small{display:block}.lab-status-row .small{letter-spacing:.1em;margin-bottom:6px;font-size:.6rem}.lab-status-row strong{font-family:monospace;font-size:.85rem;font-weight:500}.lab-status-row .timer strong{font-size:1.35rem;line-height:1}.lab-status-row .timer{max-width:60%}.lab-status-row .lab-status-help{letter-spacing:normal;max-width:28ch;margin-top:8px;font-size:.8rem;line-height:1.5}.timer{text-align:right}.lab-actions{gap:8px;margin:0 0 22px;display:flex}.lab-actions .button{gap:7px;padding:9px 12px;font-size:.8rem}.terminal{color:#b7c6d6;background:#0e1b29;border-radius:5px;overflow:hidden}.terminal-title{color:#b4bdc6;background:#16293d;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;font-family:monospace;font-size:.65rem;display:flex}.terminal-output{height:305px;padding:18px 17px;font-family:Consolas,Courier New,monospace;position:relative;overflow:auto}.terminal-output pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px;font-family:inherit;font-size:.75rem;line-height:1.8}.terminal-empty{text-align:center;font-family:var(--body);padding:38px 10px 15px}.terminal-empty>span{color:#687e95;margin-bottom:8px;font-size:2rem;line-height:1.3;display:block}.terminal-empty strong{color:#d2d9e0;font-size:.95rem;font-weight:500}.terminal-empty p{color:#8d9baa;margin-top:10px;font-size:.8rem;line-height:1.7}.terminal-input{border-top:1px solid #1c3651;align-items:center;gap:9px;padding:12px 15px;font-size:.8rem;display:flex}.terminal-input input{color:#d2dbe4;width:100%;min-width:0;box-shadow:none;background:0 0;font-family:monospace;font-size:.75rem;border:0!important;margin:0!important;padding:0!important}.terminal-input input::placeholder{color:#808e9c}.terminal-input button{color:#b7c6d6;background:0 0;border:0;font-size:1.1rem}.lab-footnote{color:var(--muted);align-items:flex-start;gap:10px;padding-top:18px;display:flex}.lab-footnote p{font-size:.75rem;line-height:1.7}.knowledge-check{background:#f6f7f9;border:1px solid #d7dde4;border-radius:4px;margin:30px 0;padding:22px}.knowledge-check legend{font-family:var(--display);padding:0 8px;font-weight:500}.knowledge-check p{font-size:.9rem}.knowledge-check label{border:2px solid #0000;border-radius:6px;align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;line-height:1.5;display:flex;margin-bottom:13px!important}.knowledge-check input{accent-color:var(--blue);width:auto!important;margin:0!important}.knowledge-check .button{margin-top:8px}.check-feedback{color:var(--blue);margin:18px 0 0;font-size:.85rem}.completion-row{flex-wrap:wrap;align-items:center;gap:18px;font-size:.85rem;display:flex}.error-text{color:#a42d32;background:#fff1f0;border:1px solid #edccca;border-radius:4px;margin-top:14px;padding:12px;font-size:.85rem}.concept-panel{text-align:center;padding:50px 20px}.concept-panel>span{font-size:3.5rem;font-family:var(--display);color:#8697a9}.concept-panel h3{margin-top:30px}.concept-panel p{font-size:.95rem}.login-shell{grid-template-columns:1.25fr 1fr;align-items:center;gap:65px;max-width:1150px;min-height:75vh;margin:auto;padding:100px 5.5%;display:grid}.login-shell h1{font-size:3.4rem}.login-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:32px}.login-card h2{margin-bottom:12px;font-size:1.7rem}form label{margin:18px 0 7px;font-size:.85rem;font-weight:550;display:block}form input,form select,form textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cdd3d9;border-radius:4px;min-width:0;padding:11px 12px}form textarea{resize:vertical}.login-card .button{width:100%;margin-top:24px}.stats-row{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:repeat(3,1fr);margin-bottom:45px;display:grid}.stats-row>div{border-right:1px solid var(--line);padding:26px}.stats-row>div:last-child{border:0}.stats-row strong{font-family:var(--display);font-size:2rem;font-weight:500;display:block}.stats-row span{color:var(--muted);font-size:.85rem}.learning-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:28px;display:block}.learning-card h3{margin-top:12px}.learning-card .meta-row{color:var(--muted);font-size:.8rem}progress{appearance:none;background:#e2e6eb;border:0;border-radius:4px;width:100%;height:6px;margin:10px 0 18px;overflow:hidden}progress::-webkit-progress-bar{background:#e2e6eb}progress::-webkit-progress-value{background:var(--blue)}progress::-moz-progress-bar{background:var(--blue)}.empty-state{text-align:center;border:1px dashed #b7c0ca;padding:40px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;font-size:.8rem}th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#edeff2;font-size:.7rem;font-weight:550}th,td{border-bottom:1px solid var(--line);padding:17px}.table-secondary{color:var(--muted);font-size:.7rem;display:block}.tool-list{margin-top:50px}.tool-workspace{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:1fr 1fr;gap:38px;margin-top:40px;padding:32px;display:grid}.tool-workspace .meta-row{margin-top:18px}.tool-workspace .code-example{min-height:235px}.section-cta{border-radius:var(--radius);background:#e6eaef;justify-content:space-between;align-items:center;gap:25px;margin-top:55px;padding:30px;display:flex}.section-cta h2{margin:0}.prose{margin-top:50px}.prose p{line-height:1.9}.skip-link{background:var(--blue);color:#fff;z-index:100;padding:10px 20px;position:fixed;top:-70px;left:20px}.skip-link:focus{top:10px}@media (min-width:1500px){.workspace-grid{grid-template-columns:1.08fr 1fr}.terminal-output{height:390px}}@media (max-width:1050px){.home-hero{gap:30px;padding-top:60px}.architecture-art{padding:24px}.three-grid{gap:14px}.feature-card{padding:23px}.academy-intro{gap:35px}.course-detail{gap:30px}.course-detail h1{font-size:2.9rem}.workspace{padding:28px 2.5%}.workspace-grid{gap:16px}.instructions{padding:25px}.lab-panel{padding:0 16px 10px}.lab-panel-heading,.lab-actions{flex-wrap:wrap}.login-shell{gap:35px}.login-shell h1{font-size:2.8rem}.site-footer>span:nth-child(2){display:none}}@media (max-width:760px){.site-header{flex-wrap:wrap;gap:20px;height:auto;min-height:80px;padding:19px 6%}.wordmark{font-size:1.8rem}.site-header nav{border-top:1px solid var(--line);flex-basis:100%;order:3;justify-content:space-between;gap:18px;padding-top:10px;font-size:.85rem}.account-link{gap:10px;font-size:.8rem}.page-shell,.section-shell{padding:40px 6% 55px}.home-hero{grid-template-columns:1fr;gap:45px;padding:50px 6%}.home-hero h1{font-size:3.6rem}.hero-caption{margin-top:30px}.architecture-art{box-shadow:10px 10px #e4e7eb}.three-grid,.two-grid,.course-grid,.course-detail,.login-shell,.tool-workspace{grid-template-columns:1fr}.section-heading{flex-wrap:wrap;align-items:flex-start}.academy-intro{margin-bottom:22px;display:block}.academy-note{display:none}.academy-intro h1{font-size:3.3rem}.catalog-toolbar{flex-wrap:wrap;align-items:flex-start;gap:10px}.tabs{flex-wrap:wrap;gap:2px}.tabs button{padding:9px 11px;font-size:.8rem}.course-card p{min-height:0}.academy-bottom{align-items:flex-start}.academy-bottom>span:last-child{display:none}.course-art{height:180px}.course-detail h1{font-size:2.8rem}.enrollment-card{grid-row:1}.enrollment-art{display:none}.lesson-list-item{flex-wrap:wrap;gap:10px}.lesson-list-item div{min-width:180px}.workspace{padding:24px 4% 40px}.workspace-grid{grid-template-columns:1fr}.workspace-heading{align-items:flex-start}.workspace-heading h1{font-size:1.45rem}.lesson-counter{min-width:78px}.lab-panel{grid-row:1;position:static}.instructions{padding:22px}.terminal-output{height:220px}.lab-actions,.lab-panel-heading{flex-wrap:nowrap}.login-shell{gap:25px;padding:45px 6%}.login-shell h1{font-size:2.7rem}.login-card{padding:24px}.stats-row>div{padding:18px 12px}.stats-row span{font-size:.75rem}.stats-row strong{font-size:1.7rem}.tool-workspace{padding:24px}.section-cta{flex-direction:column;align-items:flex-start}.site-footer{flex-direction:column;align-items:flex-start;gap:14px;padding:25px 6%}.site-footer div{flex-wrap:wrap;gap:15px}.narrow{min-height:60vh}.button{font-size:.85rem}h2{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}:root{--blue:#064d80;--ink:#11283e;--sky:#bfd8ef;--paper:#f4f6f9;--line:#d9e1eb;--muted:#5e7184}.brand-logo{width:205px;max-width:100%;height:auto;display:block}.site-header{background:#fff}.home-hero{background:#0c2138;max-width:none;padding-left:max(5.5%,50vw - 623px);padding-right:max(5.5%,50vw - 623px)}.home-hero h1{color:#f1f6fd}.home-hero .eyebrow{color:#89b8e3}.home-hero .lede,.hero-caption{color:#b9c9db}.home-hero .primary{color:#143551;background:#e1ecf8}.home-hero .secondary{color:#d5e4f4;border-color:#48617d}.home-hero .secondary:hover{background:#1b3652}.architecture-art{background:#142e4a;border-color:#35516f;box-shadow:18px 18px #102942}.art-topline,.art-bottomline{color:#9fb8d2}.art-layer{border-color:#35516f}.art-layer strong{color:#eef5fc}.art-layer div span,.art-layer>span:last-child{color:#a8bfd6}.art-index{color:#87a4c5}.home-hero .status-dot{background:#7eaee0}.workspace-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.layout-switch{background:#e4eaf2;border-radius:6px;gap:4px;padding:4px;display:flex}.layout-switch button{color:var(--ink);background:0 0;border:0;border-radius:4px;padding:8px 12px;font-size:.85rem}.layout-switch button[aria-pressed=true]{background:#fff;box-shadow:0 1px 4px #18334822}.lesson-outline{z-index:5;max-width:100%;position:relative}.lesson-outline summary{cursor:pointer;color:var(--blue);padding:12px 0;font-size:.9rem}.lesson-outline nav{border:1px solid var(--line);background:#fff;border-radius:6px;width:350px;max-width:80vw;padding:8px;position:absolute;top:100%;left:0;box-shadow:0 12px 28px #12233522}.lesson-outline nav a{border-radius:4px;gap:10px;padding:12px;font-size:.9rem;display:flex}.lesson-outline nav a[aria-current=page],.lesson-outline nav a:hover{background:#e7eff8}.studio-frame{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:28px;display:grid}.studio-sidebar{background:#edf2f8;border:1px solid #d6dfeb;border-radius:14px;padding:20px}.studio-sidebar h2{font-size:1.15rem}.studio-course{text-align:left;color:#142c4e;cursor:pointer;background:#fff;border:1px solid #d6dfeb;border-radius:8px;width:100%;margin:10px 0;padding:14px;display:block}.studio-course.selected{border-color:#234d7c;box-shadow:inset 3px 0 #234d7c}.studio-course span{margin-top:6px;font-size:.75rem;display:block}.studio-sidebar form{margin-top:26px}.studio-main{min-width:0}.studio-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.studio-toolbar>div{margin-right:auto}.studio-toolbar h2{margin:0 0 6px}.studio-tabs{margin-bottom:24px}.studio-shell label{margin-bottom:15px;font-size:.9rem;font-weight:600;display:block}.studio-shell input:not([type=checkbox]):not([type=radio]),.studio-shell textarea,.studio-shell select{color:#142c4e;width:100%;font:inherit;background:#fff;border:1px solid #bdcbdc;border-radius:6px;margin-top:7px;padding:10px 12px;font-weight:400;display:block}.studio-shell textarea{resize:vertical}.studio-shell .studio-code{font-family:monospace}.studio-shell .terminal-input input{color:#dbe9fa!important;background:0 0!important;border:0!important;margin:0!important}.studio-fields{border:0;min-width:0;margin:0;padding:0}.studio-fields details{border-bottom:1px solid #d6dfeb;padding:16px 0}.studio-fields summary{cursor:pointer;margin-bottom:14px;font-weight:600}.studio-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.studio-wide{grid-column:1/-1}.studio-block{background:#f8fafc;border:1px solid #d6dfeb;border-radius:10px;margin:18px 0;padding:22px}.studio-check{align-items:baseline;gap:10px;display:flex!important}.studio-preview .instructions{max-height:700px}.studio-preview .lesson-section p{white-space:pre-line}.studio-shell button:disabled{opacity:.5;cursor:not-allowed}@media (max-width:1000px){.studio-frame{grid-template-columns:minmax(0,1fr)}.studio-sidebar{position:static}}@media (max-width:600px){.studio-form-grid{grid-template-columns:minmax(0,1fr)}}.workspace-scroll{padding-bottom:10px;overflow-x:auto}.real-terminal{color:#dce8f8;background:#0b1728;border-radius:8px;overflow:hidden}.xterm-host{height:440px;padding:12px}.terminal-help,.terminal-error{margin:0;padding:8px 14px;font-size:.8rem}.terminal-error{color:#ffb1b1}.terminal-title button{color:inherit;background:0 0;border:1px solid #536b87;border-radius:4px;padding:3px 9px;font-size:.75rem}.real-terminal .terminal-title{flex-wrap:wrap;gap:8px}.terminal-title select{max-width:110px;color:inherit;background:#172a40;border:1px solid #536b87;border-radius:4px;padding:3px;font-size:.75rem}.lab-check{padding:18px}.lab-check p{margin:10px 0 0}.lesson-section p{white-space:pre-line}.workspace-grid.workspace-split{grid-template-columns:minmax(380px,1fr) minmax(360px,1fr);min-width:780px}.workspace-split .instructions{grid-area:1/2;min-height:420px;max-height:calc(100dvh - 270px);overflow-y:auto}.workspace-split .lab-panel{grid-area:1/1;position:static}.workspace-grid.workspace-stacked{grid-template-columns:minmax(0,1fr);min-width:0}.workspace-stacked .instructions{grid-area:1/1}.workspace-stacked .lab-panel{grid-area:2/1;position:static}@media (max-width:760px){.brand-logo{width:176px}.home-hero{padding-left:6%;padding-right:6%}.architecture-art{box-shadow:10px 10px #102942}}.lesson-action{background:#102d4b;border:1px solid #426f99;border-left:4px solid #69bdff;border-radius:10px;padding:22px}.lesson-action .section-kind{color:#9bd3ff;letter-spacing:.1em;font-weight:800}.lesson-reading{padding:0 4px}.instructions .lesson-section p,.instructions .lesson-steps li{font-size:1rem;line-height:1.8}.instructions .lesson-action p,.instructions .lesson-action li,.lesson-action h2{color:#edf5ff}.instructions .lesson-action .section-kind{color:#9bd3ff;font-size:.75rem}.lesson-action .button.quiet{color:#edf5ff;border-color:#7296b8}.instructions .lesson-section h2{line-height:1.4}.lesson-steps{margin:16px 0;padding-left:24px}.lesson-steps li{margin:12px 0;padding-left:6px}.lesson-steps li::marker{color:#8dceff}.lesson-references{border-top:1px solid #35516d;margin-top:18px;padding-top:16px;font-size:.9rem}.lesson-references ul{padding-left:20px}.lesson-references li{margin:8px 0}.lesson-references a{color:#20527e;text-underline-offset:3px;text-decoration:underline}.lesson-action .lesson-references,.lesson-action .lesson-references a{color:#9bd3ff}.lab-status-row .lab-running{color:#137342}.lab-status-row .lab-provisioning{color:#245780}.provisioning-dots{vertical-align:bottom;width:0;animation:1.6s steps(4,end) infinite provisioning-dots;display:inline-block;overflow:hidden}@keyframes provisioning-dots{to{width:1.2em}}@media (prefers-reduced-motion:reduce){.provisioning-dots{width:1.2em;animation:none}}.learning-path{color:#edf5ff;background:#0d223b;border:1px solid #35516d;border-radius:12px;margin:24px 0 36px;padding:24px}.learning-path p,.learning-path .eyebrow{color:#c2d7ed}.learning-path .course-paths{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px 32px;padding:0;list-style:none;display:grid}.learning-path li{padding:8px}.learning-path li span{color:#b4c8dd;margin-top:6px;display:block}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.header-actions{align-items:center;gap:22px;display:flex}.theme-toggle{color:var(--ink);border:1px solid var(--line);white-space:nowrap;background:0 0;border-radius:6px;padding:8px 12px;font-size:.8rem}.theme-toggle:hover{background:var(--paper)}.theme-to-light,[data-theme=dark] .theme-to-dark{display:none}[data-theme=dark] .theme-to-light{display:inline}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e4edf7;--muted:#a6b7cb;--paper:#091522;--line:#30465e;--blue:#93caff;--white:#122337;--surface-raised:#1b3048}[data-theme=dark] .brand-logo{filter:brightness(0)invert()}[data-theme=dark] :is(.site-header,.course-card,.module,.enrollment-card,.instructions,.lab-panel,.login-card,.stats-row,.learning-card,table,.tool-workspace,.lesson-outline nav,.studio-course){background:var(--white);color:var(--ink);border-color:var(--line)}[data-theme=dark] :is(.module-heading,.enrollment-art,.notice,.knowledge-check,th,.section-cta,.layout-switch,.studio-sidebar,.studio-block,.badge,.badge.paid){background:var(--surface-raised);color:var(--ink);border-color:var(--line)}[data-theme=dark] .course-art{color:#d1e7ff;background-color:#203b57;background-image:linear-gradient(#7088a122 1px,#0000 1px),linear-gradient(90deg,#7088a122 1px,#0000 1px)}[data-theme=dark] .code-example{color:#d3e8ff;background:#0b1929;border-color:#38516d}[data-theme=dark] :is(form input,form select,form textarea,.studio-shell input:not([type=checkbox]):not([type=radio]),.studio-shell textarea,.studio-shell select){color:var(--ink);background:#0b1929;border-color:#48617d}[data-theme=dark] :is(.primary,.tabs button.active,.skip-link){background:var(--blue);color:#091522}[data-theme=dark] .primary:hover{background:#badcff}[data-theme=dark] .secondary{border-color:#52708f}[data-theme=dark] :is(.secondary:hover,.layout-switch button[aria-pressed=true],.lesson-outline nav a[aria-current=page],.lesson-outline nav a:hover){color:#edf5ff;background:#294664}[data-theme=dark] :is(.muted-heading,.note-caption,.lesson-number,.small-cross){color:var(--muted)}[data-theme=dark] :is(.section-kind,.lesson-references a,.site-header nav a:hover,.account-link:hover){color:#9bd3ff}[data-theme=dark] :is(.course-card-bottom,.academy-note,.studio-fields details,.sim-label){border-color:var(--line)}[data-theme=dark] .studio-course.selected{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue)}[data-theme=dark] .error-text{color:#ffc3c8;background:#3a202d;border-color:#88505d}[data-theme=dark] .lab-status-row .lab-running{color:#76e3aa}[data-theme=dark] .lab-status-row .lab-provisioning{color:#add5ff}[data-theme=dark] progress{background:#30465e}[data-theme=dark] progress::-webkit-progress-bar{background:#30465e}[data-theme=dark] :focus-visible{outline-color:#93caff}@media (max-width:1050px){.header-actions{gap:12px}.site-header nav{gap:20px}}@media (max-width:760px){.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-left:auto}}.concept-visual{color:#132d50;background:#edf4ff;border:1px solid #7296c1;border-radius:16px;margin:1.5rem 0;padding:1.5rem}.concept-visual figcaption{font-size:1.1rem;font-weight:750}.concept-visual ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;padding:0;list-style:none;display:grid}.concept-visual li button{color:#25466e;cursor:pointer;text-align:left;background:#fff;border:1px solid #adc2dd;border-radius:10px;width:100%;min-height:100px;padding:.8rem;transition:background .25s,color .25s}.concept-visual li button span{margin-bottom:.4rem;font-size:1.5rem;font-weight:800;display:block}.concept-visual li button[aria-current=step]{color:#fff;background:#163f75;border-color:#408eea;box-shadow:0 0 0 2px #6ca2e3}.visual-controls{flex-wrap:wrap;gap:.7rem;display:flex}.earned-badge{color:#f3c46b;background:#16345c;border:2px solid #dba744;border-radius:50%;place-items:center;width:64px;height:64px;font-size:2.5rem;display:inline-grid}.completion-screen{padding-top:4rem}html[data-theme=dark] .concept-visual{color:#dce8fa;background:#14263e;border-color:#3e638f}html[data-theme=dark] .concept-visual li button{color:#dce8fa;background:#203753;border-color:#52739b}html[data-theme=dark] .concept-visual li button[aria-current=step]{color:#fff;background:#275795}@media (max-width:600px){.concept-visual ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.concept-visual *{transition:none}}.flow-map{color:#4d79ac;width:100%;margin-top:1rem}.flow-map rect{fill:#163f75;stroke:#81a6d1;stroke-width:2px}.flow-map text{fill:#fff;text-anchor:middle;font-size:18px;font-weight:700}.flow-map .flow-caption{font-size:13px;font-weight:500}.flow-map .flow-edge-caption{fill:currentColor}.flow-playing .flow-link{stroke-dasharray:10 6;animation:1.1s linear infinite flow-travel}@keyframes flow-travel{to{stroke-dashoffset:-32px}}.jinja-demo{margin-top:1rem}.jinja-demo input{max-width:110px;margin-left:.5rem}.jinja-stages{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1rem;display:flex}.jinja-stages>div{color:#fff;background:#163f75;border-radius:10px;flex:1;min-width:130px;padding:1rem}.jinja-stages code{white-space:normal;overflow-wrap:anywhere;color:#a8ddff;margin-top:.7rem;display:block}@media (prefers-reduced-motion:reduce){.flow-playing .flow-link{animation:none}}.jinja-demo input{color:#153352;background:#fff;border:1px solid #7e9cbd;border-radius:6px;padding:.4rem .6rem}html[data-theme=dark] .jinja-demo input{color:#e2efff;background:#203753}.completion-screen h2{margin-top:3rem}.services-hero{grid-template-columns:1.25fr 1fr;align-items:center;gap:4rem;display:grid}.services-hero .lede{max-width:620px}.services-path{color:#f2f6fb;background:#132d49;border-radius:12px;padding:2rem}.services-path>div{border-top:1px solid #3b536e;gap:1.5rem;padding:1.3rem 0;display:flex}.services-path>div>span{color:#a6c7ec;font-family:var(--display)}.services-path h2{color:#f2f6fb;margin:0;font-size:1.6rem}.services-path p,.services-path .eyebrow{color:#cedceb}.services-path>p:last-child{margin-bottom:0;font-size:.9rem}.services-section{margin-top:5rem;scroll-margin-top:2rem}.services-intro{max-width:780px;color:var(--muted);margin-bottom:2rem}.service-card{flex-direction:column;display:flex}.service-card ul{margin-bottom:2rem;padding-left:1.2rem}.service-card li{margin:.55rem 0}.service-card .eyebrow{font-size:.7rem}.service-card-link{border-top:1px solid var(--line);margin-top:auto;padding-top:1rem;font-weight:700}.service-table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.service-table{border-collapse:collapse;text-align:left;width:100%;min-width:700px}.service-table caption{text-align:left;color:var(--muted);padding:1rem 1.3rem}.service-table th,.service-table td{border-top:1px solid var(--line);vertical-align:top;width:25%;padding:1.3rem}.service-table thead,.service-table tbody th{background:var(--white)}.services-faq details{border-bottom:1px solid var(--line);padding:1.2rem 0}.services-faq summary{cursor:pointer;font-weight:700}.services-faq p{max-width:800px;color:var(--muted)}.service-back{margin-bottom:2.5rem;display:inline-block}.service-detail-hero h1{font-size:clamp(2.6rem,4vw,4.5rem)}.service-fit{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:2rem}.service-fit hr{border:0;border-top:1px solid var(--line);margin:1.5rem 0}.service-fit .button{margin-top:1rem}.service-detail-grid{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.service-deliverables,.service-steps{padding-left:1.4rem}.service-deliverables li,.service-steps li{border-bottom:1px solid var(--line);padding:.8rem .3rem}.service-steps li::marker{font-weight:700}.service-related{flex-wrap:wrap;gap:1rem;display:flex}.service-related a{border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem}@media (max-width:850px){.services-hero,.service-detail-grid{grid-template-columns:1fr;gap:2rem}.services-section{margin-top:3rem}.services-page .three-grid{grid-template-columns:1fr}.services-page .section-cta{flex-direction:column;align-items:flex-start;gap:1.5rem}}.security-question{border:1px solid var(--line);background:var(--white);border-radius:10px;margin:2rem 0;padding:1.5rem}.security-question legend{padding:0 .5rem;font-weight:700}.security-question label,.promo-panel label{margin:1rem 0 .4rem;font-weight:600;display:block}.security-question select,.security-question input,.promo-panel select,.promo-panel input{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:6px;padding:.8rem}.tool-results,.promo-panel{margin:2rem 0}.tool-results li{border-bottom:1px solid var(--line);margin:1rem 0;padding-bottom:.7rem}.promo-panel{max-width:800px}.promo-panel details{margin-top:2rem}.promo-panel summary{cursor:pointer;font-weight:700}.issued-promo{overflow-wrap:anywhere;background:var(--paper);color:var(--ink);-webkit-user-select:all;user-select:all;padding:1rem;display:block}.plans-page .three-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.plans-page .service-card:only-child{grid-template-columns:1fr 1fr;column-gap:3rem;display:grid}.plans-page .service-card:only-child h3{grid-column:1/-1}@media (max-width:700px){.plans-page .service-card:only-child{display:flex}}.insights section{margin-block:2rem}.insights .metric-number{margin-top:.65rem;font-size:2.4rem;display:block}.insights-filters{flex-wrap:wrap;align-items:end;gap:1rem;margin:1.5rem 0;display:flex}.insights-filters label{flex:1;gap:.5rem;min-width:180px;display:grid}.insights-filters input,.insights-filters select{color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:8px;padding:.8rem}.insights-table{overflow-x:auto}.insights table{border-collapse:collapse;text-align:left;width:100%}.insights th,.insights td{border-bottom:1px solid var(--line);vertical-align:top;padding:.85rem}.insights th{font-size:.8rem}.insights td small{margin-top:.3rem;display:block}.insights progress{width:100%}.path-filters{flex-wrap:wrap;gap:.75rem;margin:2rem 0}.path-filters a{border:1px solid var(--line);border-radius:6px;padding:.65rem 1rem;text-decoration:none}.path-filters a[aria-current=page]{background:var(--sky);color:var(--ink);font-weight:700}.path-progress{margin:1.5rem 0}.path-detail .feature-card p{flex:none}.path-progress progress{width:100%}.path-curriculum{padding-left:1.5rem}.path-curriculum li{border-bottom:1px solid var(--line);margin-bottom:1rem;padding:1.25rem}.feature-card>div+div{margin-top:1rem}.academy-layout{padding-bottom:5rem}.academy-feedback{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:40;border:1px solid var(--line);background:var(--sky);color:#122335;border-radius:999px;align-items:center;gap:.5rem;min-height:44px;padding:.7rem 1rem;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;box-shadow:0 4px 18px #0003}.academy-feedback:hover{text-decoration:underline}.academy-feedback:focus-visible{outline:3px solid var(--sky);outline-offset:4px}.lab-view-controls{flex-wrap:wrap;margin:12px;display:flex}.workspace-grid.workspace-top,.workspace-grid.workspace-expanded{grid-template-columns:minmax(0,1fr);min-width:0}.workspace-top .lab-panel{grid-area:1/1;position:static}.workspace-top .instructions{grid-area:2/1}.workspace-top .xterm-host{height:clamp(300px,50dvh,700px)}.lab-expanded .site-header{z-index:60;position:fixed;inset:0 0 auto}.workspace-expanded .instructions{display:none}.workspace-expanded .lab-panel{inset:var(--lab-header-height,100px) 0 0;z-index:35;background:var(--white);border-radius:0;flex-direction:column;padding-bottom:70px;display:flex;position:fixed;overflow:auto}.workspace-expanded .real-terminal,.workspace-expanded .terminal{flex-direction:column;flex:1 0 280px;display:flex}.workspace-expanded .xterm-host,.workspace-expanded .terminal-output{flex:1;height:auto;min-height:180px}.academy-catalog{width:100%;max-width:1600px;padding-inline:clamp(20px,3vw,56px)}.academy-catalog .learning-path .course-paths{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:start;gap:16px 20px}.learning-path .course-paths li{border-top:1px solid #35516d;min-width:0;padding:16px 8px}.feedback-dialog{border:1px solid var(--line);background:var(--white);width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:12px;padding:32px;overflow:auto}.feedback-dialog::backdrop{background:#051020b3}.feedback-dialog h2{padding-right:25px}.feedback-dialog label{margin:18px 0 8px;display:block}.feedback-dialog input,.feedback-dialog textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:6px;padding:12px}.feedback-dialog textarea{resize:vertical}.feedback-dialog form>button{margin-top:20px}.feedback-close{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:0;font-size:28px;position:absolute;top:10px;right:10px}.path-course-group{border-top:1px solid #35516d;margin-top:28px;padding-top:24px}.path-group-heading{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.path-group-heading h3{margin:0}.path-access-label{border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:700;display:inline-block}.path-access-label.free{color:#124c35;background:#c8f3df}.path-access-label.paid{color:#183a65;background:#d1e5ff}.login-card .google-sign-in{color:#1f1f1f;background:#fff;border:1px solid #747775;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-family:Google Sans,Roboto,Arial,sans-serif;font-size:14px;font-weight:500;line-height:20px;display:flex}.login-card .google-sign-in:hover:not(:disabled){background:#fff;box-shadow:0 1px 3px #0003}.google-sign-in img{object-fit:contain;flex:0 0 20px;width:20px;height:20px}.ad-privacy-button{z-index:45;border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;border-radius:20px;padding:8px 12px;font-size:12px;position:fixed;bottom:12px;left:12px}.ad-consent{z-index:100;background:var(--white);width:min(540px,100vw - 32px);max-height:calc(100dvh - 100px);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:24px;position:fixed;bottom:54px;left:16px;overflow:auto;box-shadow:0 8px 40px #0004}.ad-consent h2{margin:0 0 12px;font-size:20px}.ad-consent p{margin:0 0 12px;font-size:14px}.ad-consent-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.foundation-acknowledgment label{align-items:flex-start;gap:.75rem;font-weight:600;line-height:1.6;display:flex}.foundation-acknowledgment input[type=checkbox]{flex:none;width:1.2rem;height:1.2rem;margin-top:.2rem}.course-preparation{border-bottom:1px solid var(--muted);margin-bottom:24px;padding-bottom:24px}.enrollment-card .course-preparation li:before{content:none}.academy-entry-actions{flex-wrap:wrap;align-items:center;gap:1.25rem;margin:1.5rem 0 1rem;display:flex}.academy-free-start{padding:1.5rem 0 2.5rem;scroll-margin-top:6rem}.academy-start-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem;display:grid}.academy-start-card{border:1px solid var(--line);border-radius:12px;padding:1.5rem;text-decoration:none}.academy-start-card h3{margin:1rem 0}.academy-start-card:hover{border-color:var(--sky)}.academy-path-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.25rem;margin-bottom:2rem;display:grid}.academy-path-grid .learning-path{min-width:0;margin:0}.academy-curriculum summary{cursor:pointer;padding:1rem 0;font-weight:600}.academy-curriculum[open] summary{border-bottom:1px solid;margin-bottom:1rem}@media (max-width:700px){.academy-start-grid,.academy-path-grid{grid-template-columns:1fr}.academy-entry-actions .button{justify-content:center;width:100%}.academy-start-card{padding:1.1rem}}
