@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{--paper:#f7f8ff;--ink:#1d2452;--orange:#2f3192;--muted:#626984;--line:#dce0ef;--navy:#2f3192;--cream:#eef0fc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.17;letter-spacing:-.045em}h1{font-size:clamp(38px,5vw,68px);font-weight:800}h2{font-size:clamp(28px,3vw,42px);font-weight:800}h3{font-size:23px}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,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5458bc;outline-offset:4px}button{color:inherit}input,textarea,select{max-width:100%}p{color:var(--muted)}.wrap{max-width:1220px;width:calc(100% - 80px);margin:0 auto}.skip{position:absolute;top:-60px;background:white;padding:10px;z-index:100}.skip:focus{top:0}header{border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:20}.nav{height:94px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;gap:10px;font:800 31px Manrope,sans-serif;letter-spacing:-1.6px;white-space:nowrap}.brand svg{width:36px;height:36px;flex-shrink:0}.brand-dot{color:var(--orange)}nav{display:flex;gap:28px;font-size:13px;font-weight:600}.nav nav{margin:auto}nav a:hover,nav a[aria-current=page]{color:var(--orange)}.button{display:inline-flex;justify-content:center;gap:26px;align-items:center;padding:15px 23px;border:1px solid transparent;border-radius:7px;font-size:13px;font-weight:700;line-height:1.5;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.small{padding:11px 16px;font-size:12px}.navy{background:var(--navy);color:white}.orange-bg{background:var(--orange);color:white}.outline{background:transparent;border-color:var(--line)}.outline:hover{background:#e8ebfa}.text-link{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.text-link:hover{color:var(--orange)}.menu-button{display:none;border:0;background:transparent;font-size:25px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;display:block;margin-bottom:20px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding-top:84px;padding-bottom:94px}.hero h1{font-size:clamp(44px,4.9vw,65px);line-height:1.15}.underlined{position:relative;white-space:nowrap}.underlined:after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:8px;border-top:3px solid var(--orange);border-radius:50%;transform:rotate(-3deg)}.hero-copy>p{font-size:16px;line-height:1.8;margin-top:28px}.live-dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:8px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px}.hero .actions{gap:20px;align-items:flex-start;flex-direction:column}.hero-note{display:flex;gap:14px;align-items:center;margin-top:32px;font-size:11px;line-height:1.6;color:var(--muted)}.hero-note strong{color:var(--ink);font-weight:500}.mini-avatars{display:flex;padding-left:6px}.mini-avatars b{display:grid;place-items:center;border:3px solid var(--paper);width:35px;height:35px;border-radius:50%;background:#cbd8e5;color:var(--navy);margin-left:-6px;font-size:11px}.mini-avatars b:nth-child(2){background:#f5d3a6}.mini-avatars b:last-child{background:#c9d4bd}.hero-visual{position:relative;padding:55px 0 54px 15px;min-width:0}.hero-visual:before{content:'';position:absolute;width:390px;height:390px;max-width:100%;border-radius:50%;background:#f5e8cf;right:4%;top:38px;z-index:-1}.code-window{border-radius:13px;background:#2f3192;color:#f8f4e9;box-shadow:0 22px 45px #2f319220;transform:rotate(-2deg);overflow:hidden;position:relative}.window-top{display:flex;align-items:center;justify-content:space-between;background:#304255;padding:17px 20px;font:10px monospace;color:#bbcad7}.dots{display:flex;gap:5px}.dots i{background:#ee8e7b;width:7px;height:7px;border-radius:50%}.dots i:nth-child(2){background:#f3c368}.dots i:nth-child(3){background:#9bbf9e}.window-code{padding:26px 17px;font:12px/2.2 monospace;white-space:nowrap}.window-code em{font-style:normal;color:#cfa6e6}.line-no{color:#6e8497;margin-right:12px}.code-green{color:#b8d2aa}.code-yellow{color:#f4cf89}.window-output{border-top:1px solid #49596a;padding:16px 25px 22px}.window-output>span{font-size:9px;letter-spacing:2px;color:#9eb1c2}.window-output p{color:white;font:14px monospace;margin-top:10px}.orbit-tag{position:absolute;right:18px;top:0;font-size:9px;font-weight:800;line-height:1.5;letter-spacing:1px;transform:rotate(7deg)}.floating-card{position:absolute;right:-15px;bottom:35px;background:#fff;border:1px solid #dfddd4;border-radius:9px;padding:17px 22px;display:flex;gap:12px;align-items:center;transform:rotate(4deg);box-shadow:0 8px 18px #27313a10}.floating-card strong,.floating-card span:not(.sun){display:block;font-size:12px}.floating-card div>span{font-size:10px;color:var(--muted)}.sun{font-size:38px;color:var(--orange);line-height:1}.floating-pill{position:absolute;left:0;bottom:0;background:#dce7c9;border:1px solid #bdcca8;padding:12px 16px;border-radius:30px;font-size:10px;font-weight:700;transform:rotate(-3deg)}.subject-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f3f0e8}.subject-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:21px;padding-bottom:21px}.subject-strip span{font-size:9px;letter-spacing:1px;font-weight:800;color:var(--muted)}.subject-strip a{font-size:13px;font-weight:700}.section{padding-top:80px;padding-bottom:80px}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:35px}.section-head .eyebrow{margin-bottom:12px}.section-head p{margin-top:15px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.course-card{background:#ffffff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #27313a0c}.course-art{display:flex;flex-direction:column;position:relative;overflow:hidden;height:200px;padding:18px 22px;isolation:isolate}.course-art:before{content:'';position:absolute;z-index:-1;border:1px solid currentColor;border-radius:50%;width:200px;height:200px;right:-40px;top:20px;opacity:.18}.course-art:after{content:'';position:absolute;z-index:-1;width:110px;height:110px;border:1px solid currentColor;transform:rotate(30deg);left:40px;top:50px;opacity:.15}.orange{background:#f7d6c4;color:#8c452b}.blue{background:#d0e1ea;color:#37607b}.yellow{background:#f3e4a8;color:#776128}.purple{background:#ddd5e9;color:#66507e}.green{background:#d8e1ca;color:#4b6440}.pink{background:#f1d5da;color:#a24b66}.art-label{font-size:8px;font-weight:800;letter-spacing:1px}.art-symbol{font:800 65px/1 Manrope,sans-serif;letter-spacing:-5px;margin:auto;transform:rotate(-8deg)}.art-bottom{display:flex;justify-content:space-between;font-size:9px;font-weight:600}.art-bottom>span{font-size:20px;line-height:.7}.card-content{padding:23px}.card-kicker{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;display:flex;justify-content:space-between;gap:8px}.card-content h3{font-size:21px;margin-top:12px;line-height:1.35;min-height:56px}.card-content p{font-size:12px;line-height:1.8;margin-top:12px;min-height:65px}.card-footer{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:10px}.card-footer a{font-size:22px}.practice-section{background:#efece2;padding:75px 0}.practice-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px}.practice-grid>div>p{margin:23px 0;max-width:440px;font-size:14px}.accent{color:var(--orange)}.practice-steps>div{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid #d6d4ca}.practice-steps b{font:700 14px Manrope;color:var(--orange)}.practice-steps strong{display:block;font:700 17px Manrope;letter-spacing:-.5px}.practice-steps small{display:block;font-size:12px;color:var(--muted);margin-top:6px}.content-note{font-size:11px!important}.plan-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.plan-pair article{border:1px solid var(--line);padding:38px;border-radius:12px;background:#e7ecd9}.plan-pair article.dark{background:var(--navy);color:var(--paper)}.tag{font-size:9px;font-weight:700;letter-spacing:1px;background:#ffffff70;border:1px solid #ffffff60;padding:6px 10px;border-radius:30px;white-space:nowrap}.plan-pair h3{margin:22px 0 16px;font-size:30px}.plan-pair p{font-size:13px;margin-bottom:24px;max-width:390px}.dark p{color:#bdc8d2}.cta{background:#f7d1bc;border-radius:15px;padding:45px 55px;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:80px}.cta p{margin-top:16px;color:#765b4b;font-size:13px}.cta .eyebrow{margin-bottom:12px}footer{border-top:1px solid var(--line);padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px}.footer-grid p{font-size:13px;margin:18px 0 15px}.muted{color:var(--muted);font-size:12px}.footer-grid h3{font:700 12px Manrope;letter-spacing:0;margin:8px 0 20px}.footer-grid>div>a:not(.brand){display:block;font-size:12px;color:var(--muted);margin-top:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.page-heading{padding-top:64px;padding-bottom:48px;max-width:1220px}.page-heading>p{max-width:650px;font-size:16px;margin-top:24px}.page-heading .eyebrow{color:var(--orange)}.catalog-section{padding-bottom:80px}.catalog-tools{display:flex;gap:25px;justify-content:space-between;align-items:center}.search-box{border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;padding:0 17px;gap:12px;background:white;flex:1;max-width:620px}.search-box>span{font-size:28px}.search-box input{border:0;background:transparent;width:100%;padding:15px 0;outline-offset:0;font-size:13px}.access-filter{display:flex;align-items:center;gap:12px;font-size:12px}.access-filter select,select{border:1px solid var(--line);border-radius:6px;background:#ffffff;padding:12px;font-size:12px;color:var(--ink)}.filter-chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 15px}.filter-chips button{border:1px solid var(--line);background:transparent;border-radius:30px;padding:9px 17px;font-size:11px}.filter-chips button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}#course-count{margin-bottom:23px}.empty{text-align:center;padding:60px}.empty p{margin:16px}.course-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;padding-top:55px;align-items:center}.breadcrumb{display:block;font-size:11px;color:var(--muted);margin-bottom:25px}.course-heading h1{font-size:49px}.lead{font-size:19px!important;line-height:1.6;color:var(--ink);margin-top:25px}.course-heading p:not(.lead){margin-top:16px;font-size:14px;max-width:530px}.course-poster{border-radius:14px;padding:30px;min-height:350px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.course-poster:after{content:'';position:absolute;inset:30px;border:1px solid currentColor;border-radius:50%;opacity:.1;transform:scale(1.3)}.course-poster>span{font-size:9px;letter-spacing:1px;font-weight:700}.course-poster>strong{font:800 100px Manrope;align-self:center;letter-spacing:-7px;transform:rotate(-10deg)}.course-poster>div{font:800 22px Manrope;letter-spacing:-.7px}.course-poster small{font:400 11px 'DM Sans';letter-spacing:0}.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:60px}.topic-detail{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.topic-detail summary{display:flex;gap:15px;align-items:center;padding:22px 0;font-size:13px;font-weight:700}.topic-number{color:var(--orange);font-size:11px}.topic-meta{margin-left:auto;font-size:9px;color:var(--muted);white-space:nowrap;font-weight:400}.topic-meta b{margin-left:12px;font-size:17px}.topic-body{padding:0 0 22px 32px}.topic-body p{font-size:12px}.topic-body .actions{gap:14px;margin-top:14px}.topic-body .text-link{font-size:10px}.course-aside{border:1px solid var(--line);background:white;border-radius:12px;padding:25px;align-self:start;position:sticky;top:25px}.course-aside h3{font-size:19px;margin:14px 0}.free-label{color:#517347;font-weight:700;font-size:14px}.course-aside p{font-size:12px;margin:14px 0}.course-aside .button{width:100%;gap:12px}.course-aside hr{margin:25px 0;border:0;border-top:1px solid var(--line)}.course-fee{font:800 28px Manrope;display:block}.course-aside small{font-size:10px;color:var(--muted);display:block;margin-top:7px}.tiny{font-size:10px!important;color:var(--muted);line-height:1.7}.notice{background:#f3ecd9;border:1px solid #e6ddc3;border-radius:8px;padding:18px 22px;font-size:12px;line-height:1.8}.notice a{text-decoration:underline}.table-scroll{overflow-x:auto;margin:35px 0}.pricing-table{width:100%;border-collapse:collapse;text-align:left;min-width:680px}.pricing-table caption{text-align:left;font-size:12px;margin-bottom:15px;color:var(--muted)}.pricing-table th,.pricing-table td{border-bottom:1px solid var(--line);padding:22px 15px;font-size:13px}.pricing-table thead th{font-size:11px;letter-spacing:.5px;background:#efebe2}.pricing-table tbody th{font-weight:600}.pricing-table small,.pricing-table td>a:not(.button){display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:5px}.pricing-table strong{font-size:17px}.faq{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-weight:600;font-size:14px}.faq summary:after{content:'+';float:right}.faq p{font-size:12px;margin-top:15px;max-width:800px}.faq a{text-decoration:underline}.workspace-top{padding:35px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}.workspace-top h1{font-size:27px;letter-spacing:-1px}.workspace-top .eyebrow{font-size:9px;margin-bottom:7px}.workspace-top label{font-size:10px;display:flex;flex-direction:column;gap:5px}.workspace-top select{max-width:280px}.workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:30px;padding-bottom:70px}.lesson-sidebar{background:#f0ede4;border:1px solid var(--line);border-radius:9px;padding:22px 17px;align-self:start}.sidebar-label{font-size:9px;font-weight:800;letter-spacing:1px}#progress-text{font-size:10px;color:var(--muted);margin:8px 0}.progress-track{height:4px;background:#d7d7cd;border-radius:3px;overflow:hidden;margin:14px 0 20px}.progress-track span{display:block;background:var(--orange);height:100%;transition:width .3s}#topic-navigation{flex-direction:column;gap:6px;margin-bottom:23px}#topic-navigation a{display:flex;align-items:center;gap:10px;border-radius:5px;padding:11px;font-size:11px;font-weight:500}#topic-navigation a[aria-current=true]{background:white;box-shadow:0 2px 7px #28374707;color:var(--orange)}#topic-navigation a>span{font-size:9px;color:var(--muted)}.lesson-main{background:#ffffff;border:1px solid var(--line);border-radius:10px;padding:30px;min-width:0}.lesson-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);margin-bottom:22px}.lesson-topline .tag{background:#e8edda;border-color:#d3ddbe;color:#4e663b}.lesson-main h2{font-size:30px}.lesson-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin:25px 0}.lesson-tabs button{border:0;background:transparent;padding:12px 0;font-size:12px;color:var(--muted);border-bottom:2px solid transparent}.lesson-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--orange)}.lesson-tabs button>span{background:#efede5;border-radius:4px;padding:2px 5px;font-size:9px;margin-left:4px}.lesson-prose p{font-size:13px;margin:15px 0}.lesson-prose h3{font-size:19px;margin:22px 0 12px}.lesson-prose ul{padding-left:20px;color:var(--muted);font-size:13px}.lesson-prose code{background:#f0ede5;padding:2px 5px;border-radius:3px}.editor{border:1px solid #cdd4d9;border-radius:8px;overflow:hidden;margin-top:24px}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef0ec;padding:11px 14px;font-size:10px}.editor-toolbar select{padding:5px;font-size:10px}.editor-toolbar>div{display:flex;gap:6px}.editor-code{display:block;width:100%;resize:vertical;border:0;border-radius:0;min-height:230px;background:#2f3192;color:#edf3eb;padding:20px;font:12px/1.85 ui-monospace,monospace;tab-size:2;outline-offset:-4px;white-space:pre;overflow:auto}.editor-actions{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:#f2f1eb}.editor-actions button{padding:7px 12px;font-size:10px;border-radius:5px}.output-label{font-size:9px;letter-spacing:1px;font-weight:700;padding:12px 15px;background:#eceee8}.editor-output{background:white;min-height:100px;padding:15px;font:12px/1.8 monospace;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto}.editor-frame{width:100%;height:230px;border:0;background:white;display:block}.runtime-note{font-size:10px;margin:10px 0;color:var(--muted)}.lesson-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 15px}.slot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:20px 0}.slot{padding:13px 8px;border:1px solid var(--line);border-radius:6px;background:#f8f6ef;display:flex;flex-direction:column;gap:7px;text-align:center;align-items:center;font-size:11px}.slot small{font-size:8px;color:var(--muted)}.slot.live{background:#e7edda;border-color:#bfcea9}.slot[aria-current=true]{border:2px solid var(--orange)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.project-slot{border:1px solid var(--line);padding:18px;border-radius:8px}.project-slot b{color:var(--orange);font-size:20px}.project-slot h3{font-size:14px;margin:15px 0}.project-slot p{font-size:11px}.project-slot a{font-size:11px;margin-top:15px;display:inline-block}.coming-soon{border:1px dashed #d3cbbb;background:#f9f6ee;padding:25px;border-radius:8px;margin:20px 0}.coming-soon h3{font-size:21px}.coming-soon p{font-size:12px;margin-top:12px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-intro h1{font-size:53px}.contact-intro .lead{font-size:16px!important;margin-bottom:25px}.contact-points{margin:25px 0 35px}.contact-points div{display:flex;gap:18px;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}.contact-points b{color:var(--orange)}.form-card{padding:32px;border:1px solid var(--line);background:white;border-radius:12px}.form-card h2{font-size:26px}.form-card>p{font-size:11px;margin:12px 0 22px}.form-card label{display:block;font-size:11px;font-weight:600;margin:17px 0 6px}.form-card input:not([type=checkbox]),.form-card select,.form-card textarea{width:100%;border:1px solid var(--line);padding:11px 12px;border-radius:5px;background:#ffffff;font-size:12px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-card label.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:10px;font-weight:400;line-height:1.7;margin:20px 0}.checkbox input{margin-top:4px}.fee-summary{font-size:11px;background:#f2efdf;padding:12px;margin-top:12px;border-radius:5px}.fee-summary strong{font-size:15px}.form-card #enrollment-result{margin-top:20px}.form-card #enrollment-result h3{font-size:18px}.form-card #enrollment-result p{margin:12px 0}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-bottom:45px}.value-grid article>span{font-size:10px;color:var(--orange);font-weight:700}.value-grid h2{font-size:25px;margin:20px 0}.value-grid p{font-size:13px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 25px;border-radius:8px;background:var(--navy);color:white;z-index:100;font-size:12px;max-width:90%}[hidden]{display:none!important}
@media(min-width:1200px){.hero .actions{flex-direction:row;align-items:center}.hero .actions .text-link{font-size:11px}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:20px}.nav nav{gap:17px;font-size:11px}.nav-enroll{font-size:10px;padding:10px 12px;gap:10px}.hero{gap:25px;padding-top:60px}.window-code{font-size:10px}.hero h1{font-size:49px}.course-grid{gap:18px}.card-content{padding:19px}.card-content h3{font-size:19px}.course-layout{gap:30px;grid-template-columns:minmax(0,1fr) 275px}.course-heading{gap:35px}.course-heading h1{font-size:41px}.workspace{grid-template-columns:220px minmax(0,1fr);gap:18px}.lesson-main{padding:22px}.slot-grid{grid-template-columns:repeat(4,1fr)}.contact-layout{gap:40px}.practice-grid{gap:40px}}
@media(max-width:760px){.nav{height:76px}.nav nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;border-bottom:1px solid var(--line);font-size:14px}.nav nav.open{display:flex}.menu-button{display:block;margin-left:0}.nav-enroll{margin-left:auto}.brand{font-size:26px}.brand svg{width:31px;height:31px}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:55px;gap:36px}.hero h1{font-size:clamp(40px,8vw,60px)}.hero-copy>p{font-size:15px}.hero-visual{max-width:520px;width:100%;margin:auto;padding-left:5px}.window-code{font-size:12px}.hero .actions{flex-direction:row;align-items:center}.hero .text-link{font-size:11px}.subject-strip .wrap{flex-wrap:wrap;gap:14px 25px}.subject-strip span{width:100%}.subject-strip a{font-size:11px}.section{padding-top:50px;padding-bottom:50px}.section-head{align-items:flex-start;flex-direction:column;gap:15px}.section-head h2{font-size:30px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.course-art{height:180px;padding:15px}.art-symbol{font-size:53px}.card-content h3{font-size:18px;min-height:48px}.card-content p{min-height:105px;font-size:11px}.card-kicker{font-size:8px;flex-wrap:wrap}.card-footer{font-size:9px}.practice-grid{grid-template-columns:1fr;gap:25px}.practice-section{padding:50px 0}.practice-grid h2{font-size:33px}.plan-pair{gap:16px}.plan-pair article{padding:25px}.plan-pair h3{font-size:25px}.cta{padding:30px;flex-direction:column;align-items:flex-start;margin-bottom:50px}.footer-grid{gap:30px;grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.page-heading{padding-top:45px;padding-bottom:35px}.page-heading h1{font-size:42px}.catalog-tools{align-items:stretch;flex-direction:column;gap:15px}.access-filter{justify-content:space-between}.access-filter select{flex:1}.course-heading{grid-template-columns:1fr;gap:35px;padding-top:30px}.course-poster{min-height:280px}.course-heading h1{font-size:40px}.course-layout{grid-template-columns:1fr;gap:30px}.course-aside{position:static}.topic-meta{font-size:8px}.topic-detail summary{font-size:12px;gap:10px}.topic-body .actions{align-items:flex-start;flex-direction:column;gap:10px}.workspace-top{flex-direction:column;align-items:stretch;padding:25px 0}.workspace-top select{max-width:100%;width:100%}.workspace{grid-template-columns:1fr}.lesson-sidebar{padding:17px}.lesson-sidebar #topic-navigation{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.lesson-main{padding:20px}.lesson-main h2{font-size:26px}.lesson-tabs{gap:18px}.lesson-tabs button{font-size:11px}.slot-grid{grid-template-columns:repeat(5,1fr)}.project-grid{grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-intro h1{font-size:43px}.value-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:440px){.wrap{width:calc(100% - 32px)}.brand{font-size:24px;gap:7px}.nav-enroll{font-size:9px;padding:9px;gap:6px}.nav{gap:12px}.hero h1{font-size:40px}.hero .actions{flex-direction:column;align-items:flex-start}.window-code{font-size:9px;padding:20px 12px}.line-no{margin-right:6px}.floating-card{right:0;padding:12px 15px}.floating-pill{font-size:8px;padding:10px 12px}.course-grid{grid-template-columns:1fr}.course-art{height:210px}.card-content p{min-height:0;font-size:13px}.card-content h3{min-height:0;font-size:23px}.card-kicker{font-size:9px}.plan-pair{grid-template-columns:1fr}.topic-meta{max-width:86px;white-space:normal;text-align:right}.course-heading h1{font-size:35px}.lesson-topline{align-items:flex-start;flex-direction:column}.slot-grid{grid-template-columns:repeat(4,1fr)}.editor-toolbar{flex-wrap:wrap}.form-card{padding:22px}.form-two{grid-template-columns:1fr;gap:0}.lesson-sidebar #topic-navigation{grid-template-columns:1fr}.lesson-navigation .button{flex:1;font-size:10px;min-width:110px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.exercise-prompt{margin:22px 0 15px;padding:20px;background:#eef1e4;border-radius:8px}.exercise-prompt p{font-size:13px;color:var(--ink)}.exercise-prompt .eyebrow{margin-bottom:8px}.practice-controls{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.expected-result{margin:18px 0;font-size:12px}.expected-result summary{font-weight:700}.expected-result pre{background:#f0eee6;padding:15px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;max-height:280px;overflow:auto}.lesson-prose ol{font-size:13px;color:var(--muted);padding-left:20px}.answer{margin:7px 0 17px;font-size:11px}.answer summary{text-decoration:underline;text-underline-offset:3px}.answer p{font-size:12px;margin:8px 0}.exercise-heading h3{font-size:21px;line-height:1.4}.exercise-heading>p{margin-top:14px}.program-pagination{display:flex;justify-content:space-between;gap:12px;margin:20px 0}.lesson-prose .eyebrow{color:var(--orange)}

.lesson-code{white-space:pre;overflow:auto;background:#1d2452;color:#f5f3ee;padding:20px;border-radius:8px;font:13px/1.75 monospace;tab-size:4}.editor-code{tab-size:4}

.python-input-panel{padding:16px 20px;border-top:1px solid var(--line);background:#f6f1e8}.python-input-panel label{display:block;font-weight:700;margin-bottom:8px}.python-input-panel label span,.python-input-panel small{font-size:12px;font-weight:400;color:var(--muted)}.python-input-panel textarea{display:block;width:100%;padding:12px;border:1px solid #cdcfc8;border-radius:6px;background:#fff;font:14px/1.6 monospace;resize:vertical;tab-size:4}.python-input-panel small{display:block;margin-top:7px}

/* Shared dark learning studio for every course still using /learn/. */
.learning-dark{--paper:#0a101b;--ink:#edf3fb;--muted:#a1b1c8;--line:#28364b;color-scheme:dark;background:#0a101b;color:var(--ink)}
.learning-dark .wrap{max-width:1600px;width:calc(100% - 48px)}
.learning-dark header,.learning-dark footer{background:#101b2b;border-color:#28364b}
.learning-dark .workspace{grid-template-columns:245px minmax(0,1fr);gap:22px}
.learning-dark .workspace-top select,.learning-dark .editor-toolbar select{background:#172438;color:#edf3fb;border:1px solid #34465e;border-radius:6px}
.learning-dark .lesson-sidebar{background:#0e1725;border-color:#28364b}
.learning-dark .lesson-main{background:#0d1522;border-color:#28364b;padding:24px}
.learning-dark .lesson-sidebar a:hover,.learning-dark .lesson-sidebar a[aria-current=true]{background:#203343;color:#a4e2c0}
.learning-dark .progress-track{background:#26364c}
.learning-dark .lesson-tabs,.learning-dark .tabs{border-color:#28364b}
.learning-dark [data-tab]{background:#142135;color:#bfcee2;border-color:#34465e}
.learning-dark [data-tab][aria-selected=true]{background:#294539;color:#d5f6e3;border-color:#629b7f}
.learning-dark .slot{background:#142135;border-color:#34465e;color:#dce8f8}
.learning-dark .slot.live{background:#1b302e;border-color:#3f6257}
.learning-dark .slot[aria-current=true]{border-color:#f39b72;background:#403027}
.learning-dark .project-slot{background:#132033;border-color:#34465e}
.learning-dark .notice,.learning-dark .coming-soon,.learning-dark .expected-result{background:#17253a;border-color:#34465e;color:#bdcee3}
.learning-dark .notice p,.learning-dark .notice a{color:#c3d2e6}
.learning-dark .button.outline{border-color:#41546e;color:#dbe7f7}
.learning-dark .button.outline:hover{background:#24384e}
.learning-dark .button.navy{background:#304d61;color:#edf3fb}
.learning-dark .runtime-note{color:#a5b8ce}
.dark-editor{margin-top:24px;border:1px solid #34445b;border-radius:10px;background:#0b1421;color:#e8f1ff;color-scheme:dark;overflow:hidden}
.dark-editor .editor-toolbar{padding:13px 16px;background:#152237;color:#d7e5f7;gap:14px;border-bottom:1px solid #2b3b52;font-size:11px}
.dark-editor .editor-toolbar label{display:flex;align-items:center;gap:9px}
.dark-editor .editor-toolbar select{font-size:12px;padding:7px 9px;background:#1c2c43;color:#edf3fb;border:1px solid #3a4d68;border-radius:6px;max-width:100%}
.dark-editor .editor-actions{padding:11px 15px;gap:8px;background:#101c2d;border-bottom:1px solid #2b3b52}
.dark-editor .editor-actions button{font-size:11px;padding:9px 12px;min-height:35px}
.dark-editor .editor-actions .outline{color:#d9e7fa;border-color:#3d506b;background:#1b2b42}
.dark-editor .editor-actions .outline:hover{background:#263d57}
.dark-editor .editor-actions .orange-bg{background:#91dbb4;color:#092b20}
.editor-panes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:540px}
.editor-source,.editor-result{min-width:0;display:flex;flex-direction:column;background:#0b1421}
.editor-source{border-right:1px solid #2b3b52}
.editor-pane-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:43px;padding:10px 14px;background:#152237;border-bottom:1px solid #2b3b52;font-size:10px;letter-spacing:1px;font-weight:700;color:#d2e2f6}
.editor-pane-heading small{color:#9bb0ca;letter-spacing:0;font-size:10px;font-weight:400}
.editor-pane-heading button{border:1px solid #3b4f6b;background:#1d2e46;border-radius:5px;color:#c7d9ef;padding:3px 9px;font-size:10px;cursor:pointer}
.editor-code-wrap{display:flex;min-width:0;height:540px;overflow:hidden;flex:1;background:#0b1421}
.editor-line-numbers{flex:0 0 48px;text-align:right;white-space:pre;padding:18px 9px;color:#6c819d;border-right:1px solid #213047;overflow:hidden;user-select:none;font:12.5px/1.85 ui-monospace,Consolas,monospace}
.dark-editor .editor-code{min-width:0;width:100%;min-height:540px;height:540px;resize:none;flex:1;background:#0b1421;color:#cfe5ff;padding:18px 14px;font:12.5px/1.85 ui-monospace,Consolas,monospace;border:0;white-space:pre;tab-size:4;overflow:auto;border-radius:0}
.dark-editor .editor-output{min-height:260px;max-height:750px;flex:1;background:#0b111c;color:#dbe9fa;padding:18px;font:12px/1.85 ui-monospace,Consolas,monospace;white-space:pre-wrap;overflow:auto;overflow-wrap:anywhere}
.dark-editor .editor-frame{display:block;width:100%;height:480px;min-height:360px;flex:1;background:white;border:0;border-top:1px solid #2b3b52}
.dark-editor .python-input-panel{padding:11px 14px;background:#111e30;border-color:#2b3b52}
.dark-editor .python-input-panel label{color:#c9dbf1;font-size:11px}
.dark-editor .python-input-panel label span,.dark-editor .python-input-panel small{color:#9bb0ca;font-size:10px}
.dark-editor .python-input-panel textarea{background:#0c1727;color:#dceafd;border-color:#3a4d68;font-size:12px;line-height:1.65}
@media(max-width:1100px){.learning-dark .workspace{grid-template-columns:215px minmax(0,1fr);gap:16px}.learning-dark .lesson-main{padding:19px}.editor-panes{grid-template-columns:1fr}.editor-source{border-right:0;border-bottom:1px solid #2b3b52}.dark-editor .editor-output{min-height:260px;max-height:500px}.dark-editor .editor-frame{height:400px;min-height:320px}}
@media(max-width:760px){.learning-dark .wrap{width:calc(100% - 28px)}.learning-dark .workspace{grid-template-columns:1fr}.learning-dark .lesson-main{padding:16px}.dark-editor .editor-toolbar{flex-wrap:wrap}.editor-code-wrap{height:420px}.dark-editor .editor-code{height:420px;min-height:420px}.editor-pane-heading{flex-wrap:wrap}.dark-editor .editor-actions{padding:10px}.dark-editor .editor-actions button{font-size:10px;padding:8px 10px}}
.learning-dark #topic-navigation a:hover,.learning-dark #topic-navigation a[aria-current=true]{background:#203343;color:#a4e2c0;box-shadow:none}
.learning-dark .exercise-prompt{background:#17273a;border:1px solid #34465e}
.learning-dark .lesson-tabs button>span{background:#253b51;color:#c6d9ef}
.learning-dark .lesson-prose code{background:#203147;color:#d4e7ff}
.learning-dark .free-label{color:#a4e2c0}

.direct-contact{margin:32px 0 25px;padding:25px;border:1px solid var(--line);border-radius:12px;background:#ffffff}.direct-contact h2{font-size:27px}.direct-contact>p{font-size:12px;margin:12px 0 8px}.contact-detail{display:flex;align-items:flex-start;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.contact-icon{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:11px;background:#f7e2d4;color:#b55330}.contact-icon svg{width:21px;height:21px}.contact-detail>div{min-width:0}.contact-detail h3{font:700 11px/1.5 'DM Sans',sans-serif;letter-spacing:.3px;margin:0 0 6px;color:var(--muted)}.contact-detail a,.contact-detail address{font-size:14px;font-style:normal;overflow-wrap:anywhere}.contact-detail a:hover{text-decoration:underline;text-underline-offset:4px}.contact-detail .whatsapp-link{display:block;font-size:12px;color:#35744f;font-weight:700;margin-top:7px}.contact-map{margin-top:22px;overflow:hidden;border-radius:9px;border:1px solid var(--line)}.contact-map iframe{display:block;border:0;width:100%;height:280px;background:#eceee7}.contact-map>div{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px;background:#f5f1e8;font-size:10px;color:var(--muted)}.contact-map a{font-size:11px;font-weight:700;color:var(--ink)}@media(max-width:650px){.direct-contact{padding:19px}.contact-map iframe{height:250px}.contact-detail a,.contact-detail address{font-size:13px}}

/* Brand tagline and contact strip */
.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy small{font-family:Manrope,sans-serif;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;margin-top:5px;color:var(--muted)}
.contact-topbar{background:var(--navy);color:#fff;font-size:12px}.contact-topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:7px;padding-bottom:7px}.contact-topbar a{display:flex;align-items:center;gap:8px}.contact-topbar a:hover{text-decoration:underline}.contact-topbar a span{color:#b3ddeb;font-size:16px}.nav{position:relative}.footer-social{display:flex;gap:10px;margin-top:20px}.footer-social .social-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:white;border-radius:50%}.social-icon svg{width:16px;height:16px;fill:currentColor}.learning-dark .brand-copy small{color:#b6c2d2}
@media(max-width:600px){.contact-topbar .wrap{font-size:10px;flex-wrap:wrap;justify-content:center;gap:2px 14px}.brand-copy small{font-size:8px;letter-spacing:.1em}.contact-topbar a span{font-size:13px}}

/* Editorial course covers, all generated illustrations with fictional people. */
.course-art.course-art-photo{padding:17px 18px;height:220px;background:#e7e5dc;color:#fff;isolation:isolate}
.course-art-photo:before,.course-art-photo:after{display:none}
.course-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;z-index:-2;transition:transform .35s ease}
.course-art-photo:hover .course-photo{transform:scale(1.035)}
.course-art-photo .art-label{align-self:flex-start;padding:5px 10px;border-radius:20px;background:#fffdf2ed;color:#28383b;font-size:9px;letter-spacing:.4px;box-shadow:0 2px 10px #0000000d;backdrop-filter:blur(8px)}
.course-photo-label{position:absolute;left:15px;bottom:12px;font-size:8px;letter-spacing:.3px;color:#fff;background:#16262bba;padding:3px 7px;border-radius:4px;line-height:1.5}
.photo-course-code{position:absolute;right:14px;bottom:12px;background:#fffdf2ed;color:#26383d;border-radius:9px;padding:5px 9px;font-size:15px;font-weight:800;line-height:1.2;box-shadow:0 2px 10px #0001;backdrop-filter:blur(8px)}
@media(max-width:760px){.course-art.course-art-photo{height:215px}}
@media(prefers-reduced-motion:reduce){.course-photo{transition:none}.course-art-photo:hover .course-photo{transform:none}}

.footer-social a.social-icon:hover{background:var(--orange);color:white}.footer-social a.social-icon:focus-visible{outline:3px solid var(--orange);outline-offset:4px}

/* Explore courses: shared navigation, server-rendered links and native disclosures. */
.course-mega{position:static}.mega-trigger{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;white-space:nowrap;min-height:44px;border-radius:6px}.mega-trigger::-webkit-details-marker,.mega-group>summary::-webkit-details-marker{display:none}.mega-trigger::marker,.mega-group>summary::marker{content:''}.mega-trigger svg{transition:transform .18s}.course-mega[open] .mega-trigger svg{transform:rotate(180deg)}.course-mega[open] .mega-trigger,.mega-current .mega-trigger{color:#2f3192}.mega-panel{position:absolute;top:calc(100% - 5px);left:0;right:0;background:#fff;color:#1d2452;border:1px solid #dde1f0;border-radius:18px;box-shadow:0 24px 65px #20255225;overflow:auto;max-height:calc(100dvh - 150px);overscroll-behavior:contain;z-index:30;font-weight:400;animation:mega-enter .18s ease-out}.mega-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;border-bottom:1px solid #edf0f7}.mega-eyebrow{display:block;color:#626984;font-size:10px;font-weight:800;letter-spacing:1.5px;margin-bottom:4px}.mega-heading p{font:800 21px/1.3 Manrope,sans-serif;letter-spacing:-.6px;color:#1d2452}.mega-heading>a{font-size:12px;font-weight:700;color:#2f3192;display:flex;align-items:center;gap:15px;white-space:nowrap}.mega-heading>a:hover{text-decoration:underline;text-underline-offset:4px}.mega-grid{display:grid;grid-template-columns:1.2fr 1fr 1.1fr 1fr 1fr 1.1fr;padding:24px 20px;gap:14px}.mega-group{min-width:0}.mega-group>summary{display:flex;align-items:flex-start;gap:9px;list-style:none;cursor:pointer;padding:0 8px 13px;font-size:12px;font-weight:800;line-height:1.4;min-height:66px}.mega-icon{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border:1px solid #dce3f4;border-radius:9px;background:#f0f3ff;color:#2f3192;font:700 12px/1 monospace}.mega-group:nth-child(3) .mega-icon{background:#e6f6f4;border-color:#cdece7;color:#18605b}.mega-group:nth-child(5) .mega-icon{background:#fff0e8;border-color:#f5decf;color:#a74b24}.mega-group summary small{display:block;font-size:10px;font-weight:400;color:#626984;margin-top:5px;line-height:1.5}.mega-group-chevron{display:none}.mega-links{display:grid;gap:3px}.mega-course{display:block;padding:10px 8px;border-radius:8px;line-height:1.45;transition:background .15s}.mega-course>span{display:block;font-size:12px;font-weight:700}.mega-course small{display:block;font-size:10px;color:#626984;margin-top:3px}.mega-course:hover,.mega-course:focus-visible{background:#eef3ff;color:#2f3192}.mega-guide{font-size:11px;color:#2f3192;margin:12px 8px;line-height:1.5;font-weight:700}.mega-guide span{margin-left:5px}.mega-bottom{background:linear-gradient(110deg,#f0f3ff,#eef8fa);border-top:1px solid #e0e5f2;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.mega-workspace{display:flex;align-items:center;gap:12px}.mega-workspace-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#2f3192;color:#fff;border-radius:11px;font-size:23px}.mega-workspace strong{font-size:12px}.mega-workspace small{display:block;font-size:11px;color:#626984}.mega-workspace>span:last-child{color:#2f3192;margin-left:12px}.mega-actions{display:flex;align-items:center;gap:22px;white-space:nowrap;font-size:12px;font-weight:700}.mega-actions a>span{margin-left:10px}.mega-actions .mega-help{padding:10px 16px;border-radius:8px;background:#2f3192;color:#fff}.mega-actions .mega-help:hover{background:#232573}.mega-trigger:focus-visible,.mega-group>summary:focus-visible{outline:3px solid #5458bc;outline-offset:4px}.mega-course[aria-current=page]{background:#eef3ff;color:#2f3192}.learning-dark .mega-panel p{color:#1d2452}.learning-dark .mega-panel small{color:#626984}@keyframes mega-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1181px){.nav nav{gap:22px;align-items:center}.nav{gap:24px}}
@media(max-width:1180px){.nav{height:82px;gap:18px}.nav #navigation{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;color:#1d2452;border:1px solid #dce0ef;border-radius:0 0 16px 16px;box-shadow:0 20px 40px #20255220;padding:12px;max-height:calc(100dvh - 125px);overflow:auto;overscroll-behavior:contain;margin:0;font-size:14px}.nav #navigation.open{display:flex}.nav #navigation>a{padding:12px 14px;border-radius:7px}.nav #navigation>a:hover{background:#f0f3ff}.nav .menu-button{display:block;margin-left:0;min-width:44px;min-height:44px}.nav .nav-enroll{margin-left:auto}.mega-trigger{padding:12px 14px;justify-content:space-between}.mega-panel{position:static;max-height:none;overflow:visible;border-radius:12px;box-shadow:none;margin-bottom:10px;animation:none}.mega-heading{padding:18px;align-items:flex-start;flex-direction:column;gap:12px}.mega-heading p{font-size:19px}.mega-grid{grid-template-columns:1fr;padding:6px 12px;gap:0}.mega-group{border-bottom:1px solid #e6eaf5}.mega-group:last-child{border-bottom:0}.mega-group>summary{min-height:0;padding:14px 4px;align-items:center;font-size:13px}.mega-group summary small{font-size:11px;margin-top:2px}.mega-group-chevron{display:block;margin-left:auto;font-size:19px}.mega-group[open] .mega-group-chevron{transform:rotate(180deg)}.mega-links{padding:0 0 12px 39px}.mega-course{padding:10px 8px}.mega-course>span{font-size:13px}.mega-course small{font-size:11px}.mega-bottom{flex-direction:column;align-items:stretch;padding:18px;gap:18px}.mega-workspace{gap:10px}.mega-workspace small{font-size:10px}.mega-workspace>span:last-child{margin-left:auto}.mega-actions{justify-content:space-between;gap:12px}.mega-actions .mega-help{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.mega-panel{animation:none}.mega-trigger svg,.mega-course{transition:none}}

.safety-public-projects{margin:30px 0}.safety-public-projects h2{font-size:26px}.safety-public-projects article{padding:20px 0;border-bottom:1px solid var(--line)}.safety-public-projects h3{font-size:19px;margin:10px 0}.safety-public-projects p{font-size:13px;margin-bottom:12px}

/* Categories and course names stay left; the right pane contains course details. */
.mega-grid{grid-template-columns:290px minmax(0,1fr);gap:0;padding:0;align-items:stretch}.mega-course-chooser{background:#f7f9ff;border-right:1px solid #e0e5f2;padding:14px;max-height:490px;overflow:auto}.mega-group{border-bottom:1px solid #e1e6f2}.mega-group:last-child{border-bottom:0}.mega-group>summary{align-items:center;min-height:0;padding:12px 8px;font-size:12px}.mega-group-chevron{display:block;margin-left:auto;font-size:18px}.mega-group[open] .mega-group-chevron{transform:rotate(180deg)}.mega-links{padding:0 0 10px 35px;gap:2px}.mega-course{padding:9px 10px;border-left:3px solid transparent}.mega-course.mega-preview-active{background:#e8edff;color:#2f3192;border-left-color:#2f3192}.mega-course-preview{padding:24px 28px;max-height:490px;overflow:auto;min-width:0;scroll-margin-top:14px;background:#fff}.mega-detail-top{display:grid;grid-template-columns:200px minmax(0,1fr);gap:22px;align-items:center}.mega-detail-top figure{position:relative;aspect-ratio:16/11;border-radius:12px;overflow:hidden;background:#eef2fa;margin:0}.mega-detail-top img.course-photo{position:static;display:block;width:100%;height:100%;object-fit:cover}.mega-detail-top .course-photo-label{position:absolute;left:8px;bottom:8px;font-size:8px;background:#fffdf5;padding:3px 6px;border-radius:4px}.mega-detail h2{font:800 25px/1.25 Manrope,system-ui;letter-spacing:-.7px;color:#1d2452;margin:8px 0}.mega-detail-meta{font-size:11px;color:#626984}.mega-detail-fee{display:block;font-size:21px;color:#2f3192;margin:10px 0}.mega-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.mega-detail-actions a{font-size:11px;font-weight:700;padding:9px 12px;border-radius:7px;border:1px solid #d6def1;background:#fff;color:#2f3192}.mega-detail-actions a:first-child{background:#2f3192;border-color:#2f3192;color:#fff}.mega-detail-intro{font-size:13px;line-height:1.9;color:#52617d;margin:22px 0}.mega-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid #e3e8f3;padding-top:18px}.mega-detail h3{font-size:14px;letter-spacing:0;color:#1d2452;margin:0 0 10px}.mega-detail ul{padding-left:17px;margin:0;font-size:11px;line-height:1.85;color:#52617d}.mega-detail li{padding:3px 0}.mega-detail-more{border-top:1px solid #e3e8f3;margin-top:18px;padding-top:14px}.mega-detail-more summary{font-size:12px;font-weight:700;color:#2f3192;cursor:pointer;line-height:1.8;min-height:30px}.mega-detail-more p{font-size:11px;line-height:1.9;margin:12px 0;color:#52617d}.mega-detail-more a{font-size:11px;color:#2f3192;text-decoration:underline}.mega-selection-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mega-heading{padding:20px 24px}.mega-heading p{font-size:20px}.mega-bottom{padding:16px 24px}@media(max-width:1100px) and (min-width:981px){.mega-grid{grid-template-columns:250px minmax(0,1fr)}.mega-detail-top{grid-template-columns:150px minmax(0,1fr);gap:16px}.mega-course-preview{padding:20px}.mega-detail h2{font-size:22px}}@media(max-width:980px){.mega-grid{grid-template-columns:1fr;padding:0;gap:0}.mega-course-chooser{border-right:0;border-bottom:1px solid #e0e5f2;max-height:none;overflow:visible;padding:10px}.mega-course-preview{max-height:none;padding:20px;overflow:visible}.mega-detail-top{grid-template-columns:130px minmax(0,1fr);gap:15px}.mega-detail h2{font-size:21px}.mega-detail-columns{grid-template-columns:1fr;gap:20px}.mega-links{padding-left:35px}.mega-detail-intro{font-size:12px}.mega-heading p{font-size:19px}.mega-bottom{padding:18px}}@media(max-width:440px){.mega-detail-top{grid-template-columns:1fr}.mega-detail-top figure{max-width:260px;width:100%}.mega-detail-top .mega-eyebrow{margin-top:5px}}

/* Subject practice navigation shares the main navigation baseline. */
.practice-menu{position:static}.practice-menu>summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;font:inherit;white-space:nowrap;padding:0}.practice-menu>summary::-webkit-details-marker{display:none}.practice-dropdown{position:absolute;right:4%;left:4%;top:100%;background:white;padding:22px;border:1px solid #dce0ef;box-shadow:0 18px 40px #1d245225;border-radius:0 0 16px 16px;z-index:80;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-height:70vh;overflow:auto}.practice-dropdown section{display:flex;flex-direction:column;gap:8px}.practice-dropdown section strong{font-size:12px;text-transform:uppercase;color:#626984}.practice-dropdown a{font-size:13px;padding:4px!important;white-space:normal}.practice-dropdown .practice-all{grid-column:1/-1;font-weight:800}.practice-menu:not([open]) .practice-dropdown{display:none}@media(max-width:1000px){.practice-dropdown{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.practice-dropdown{position:static;grid-template-columns:1fr;padding:16px;max-height:55vh;border-radius:10px}.practice-menu>summary{padding:10px 0}}

.practice-menu>summary{min-height:44px}@media(max-width:1180px){.practice-dropdown{position:static;grid-template-columns:1fr;padding:16px;max-height:55vh;border-radius:10px}.practice-menu>summary{padding:12px 14px;justify-content:space-between}}
