:root{--ink:#263f53;--muted:#657783;--teal:#087d8f;--cyan:#36b5c9;--line:#dce5e9;--soft:#f5f8f9;--green:#197654}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--teal)}.site-header{height:104px;border-bottom:1px solid #edf1f3;display:flex;align-items:center;gap:32px;padding:0 max(5%,calc((100vw - 1280px)/2))}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);font-size:29px;font-weight:760;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;background:var(--ink);color:#fff;font-size:38px;line-height:1;position:relative;padding-bottom:7px}.brand-mark span{position:absolute;color:#8bd74a;right:7px;bottom:7px}.brand-sub{display:block;font-size:9px;letter-spacing:2px;font-weight:650;margin-top:3px}.header-note{margin-left:auto;font-size:13px;color:var(--muted)}.preview-pill{font-size:9px;letter-spacing:1.5px;border:1px solid var(--line);border-radius:20px;padding:8px 11px;font-weight:700}.signup-layout{max-width:1240px;margin:0 auto;padding:65px 28px 75px;display:grid;grid-template-columns:1fr 1fr;gap:94px}.intro{padding-top:19px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2.2px;color:var(--teal);margin:0 0 20px}h1{font-size:clamp(38px,3.8vw,55px);font-weight:730;letter-spacing:-2.4px;line-height:1.12;margin:0 0 24px}h1 span{color:var(--teal)}.intro-copy{font-size:16px;line-height:1.8;color:var(--muted)}.journey{display:flex;gap:14px;margin:31px 0}.journey-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#e8f5f5;color:var(--teal);font-size:25px;flex-shrink:0}.journey strong{font-size:14px}.journey p{font-size:13px;line-height:1.65;margin:7px 0;color:var(--muted)}.editorial{margin-top:38px;overflow:hidden;position:relative;border-radius:22px;background:#eaf5f4;padding:30px 32px;min-height:230px}.editorial:after{content:"";position:absolute;width:220px;height:330px;border:1px solid #b6dddd;border-radius:50%;right:-100px;top:20px;transform:rotate(30deg);box-shadow:0 0 0 20px #dcefee,0 0 0 21px #b6dddd,0 0 0 41px #eaf5f4,0 0 0 42px #b6dddd}.editorial-kicker{font-size:8px;letter-spacing:1.4px;font-weight:700;position:relative;z-index:1}.editorial p{font-size:31px;line-height:1.22;letter-spacing:-1px;margin:22px 0;position:relative;z-index:1}.editorial-bottom{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;font-size:11px}.editorial-bottom span:last-child{font-size:27px}.form-panel{border:1px solid var(--line);box-shadow:0 14px 45px #263f5309;border-radius:22px;padding:30px 34px;background:#fff}.steps{list-style:none;display:flex;justify-content:space-between;gap:10px;padding:0;margin:0 0 36px;font-size:10px;color:var(--muted)}.steps li{display:flex;align-items:center;gap:6px}.steps li span{width:23px;height:23px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:10px}.steps .current{color:var(--teal);font-weight:700}.steps .current span{background:var(--teal);border-color:var(--teal);color:#fff}.form-panel .eyebrow{margin-bottom:10px}h2{font-size:28px;letter-spacing:-.8px;margin:0 0 11px}.muted{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 26px}label,legend{display:block;font-size:12px;font-weight:650;margin-bottom:9px}input:not([type=radio]){width:100%;height:45px;border:1px solid #cbd7df;border-radius:8px;background:#fff;padding:10px 12px;font-size:16px;color:var(--ink);font-family:inherit}input:focus{outline:3px solid #b7e7ed;outline-offset:2px}button:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.name-row{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-bottom:20px}.field-help{font-size:11px;color:var(--muted);margin:9px 0 23px;line-height:1.5}fieldset{border:0;padding:0;margin:0 0 23px;min-width:0}legend{margin-bottom:12px}.choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:13px 12px;margin-bottom:9px;cursor:pointer}.choice:has(input:checked){background:#f0f9fa;border-color:var(--teal)}.choice input{accent-color:var(--teal);width:16px;height:16px;margin:0;flex-shrink:0}.choice strong{display:block;font-size:12px}.choice small{display:block;font-size:10px;color:var(--muted);font-weight:400;margin-top:5px;line-height:1.4}.choice-symbol{margin-left:auto;color:var(--teal);font-size:20px}.primary{border:0;border-radius:9px;background:var(--ink);color:#fff;width:100%;padding:15px 18px;font:600 13px inherit;font-family:inherit;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:space-between;text-decoration:none;cursor:pointer;min-height:48px}.primary:hover{background:#34566e}.primary span{font-size:21px}.fine-print{font-size:10px;color:var(--muted);line-height:1.7;margin:15px 0 0}footer{max-width:1240px;padding:23px 28px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #edf1f3;font-size:10px;color:var(--muted)}.validation{color:#a1292d;font-size:12px;line-height:1.6}.validation.validation-summary-valid{display:none}.validation ul{padding-left:18px}.center-panel{max-width:560px;margin:55px auto 80px;padding:35px;border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 45px #263f5309}.back-link{font-size:12px;text-decoration:none;display:inline-block;margin-bottom:32px}.small-title{font-size:39px;letter-spacing:-1.5px}.mail-icon,.success-mark{display:grid;place-items:center;background:#e8f5f5;color:var(--teal);width:55px;height:55px;border-radius:16px;font-size:29px;margin-bottom:25px}.code-input{letter-spacing:9px;font-size:24px!important;text-align:center;height:59px!important}.text-button{display:block;margin:17px auto;background:none;border:0;color:var(--teal);font:inherit;font-size:12px;cursor:pointer;min-height:30px}.dev-preview{margin-top:24px;padding:20px;border:1px dashed #95bbc2;border-radius:12px;background:#f3f9fa;font-size:12px}.dev-preview p{line-height:1.6;color:var(--muted)}.dev-preview output{display:block;font-size:27px;letter-spacing:7px;font-weight:700}.dev-preview small{display:block;margin-top:14px;color:var(--muted);font-size:10px}.next-step{background:var(--soft);padding:23px;border-radius:14px;margin:28px 0}.next-step .eyebrow{font-size:9px;margin-bottom:12px}.next-step h2{font-size:22px}.next-step p:last-child{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:0}.welcome .primary{margin-top:25px}@media(min-width:1500px){.signup-layout{padding-top:85px;padding-bottom:90px}}@media(max-width:900px){.signup-layout{gap:35px;padding:40px 24px}.form-panel{padding:25px}.header-note{display:none}.preview-pill{margin-left:auto}.editorial{padding:25px}.desktop-break{display:none}}@media(max-width:680px){.site-header{height:83px;padding:0 22px}.brand{font-size:24px}.brand-mark{width:40px;height:40px;font-size:32px}.brand-sub{font-size:8px;letter-spacing:1.2px}.preview-pill{font-size:8px;padding:7px}.signup-layout{grid-template-columns:1fr;padding:32px 20px;gap:25px}.intro{padding-top:0}h1{font-size:39px;letter-spacing:-1.7px}.intro .eyebrow{margin-bottom:14px}.intro-copy{font-size:14px;margin-bottom:0}.journey,.editorial{display:none}.form-panel{padding:24px 20px;border-radius:16px}.steps{margin-bottom:28px;font-size:9px;gap:7px}.steps li{gap:5px}h2{font-size:26px}.name-row{gap:12px}.choice small{font-size:11px}.fine-print{font-size:11px}footer{margin:15px 20px 0;padding:20px 0;flex-direction:column;gap:10px}.center-panel{margin:30px 20px 50px;padding:26px 22px}.small-title{font-size:34px}}
.signin-panel{align-self:center;padding:35px;min-height:510px}.welcome-symbol{display:grid;place-items:center;width:59px;height:59px;border-radius:17px;background:#eaf5f4;color:var(--teal);font-size:34px;margin:0 0 26px}.signin-panel h2{font-size:30px}.google-button{width:100%;height:49px;border:1px solid #747775;border-radius:7px;background:#fff;color:#1f1f1f;font-family:Arial,sans-serif;font-size:14px;font-weight:600;cursor:pointer}.google-button:hover{background:#f7f8fa;box-shadow:0 2px 4px #00000012}.signin-help{text-align:center;font-size:11px;color:var(--muted);margin:12px 0 28px}.identity-note{padding:19px 20px;background:var(--soft);border-radius:12px;font-size:13px}.identity-note p{font-size:12px;color:var(--muted);line-height:1.7;margin:8px 0 0}.setup-notice{display:flex;align-items:center;gap:7px;margin-top:23px;font-size:10px;color:var(--muted);flex-wrap:wrap}.setup-notice a{margin-left:auto;text-decoration:none}.status-dot{width:6px;height:6px;border-radius:50%;background:#ba851b}.verified-email{display:flex;align-items:center;gap:9px;background:#eef7f3;border:1px solid #d4e9de;border-radius:10px;padding:10px 13px;font-size:12px;color:var(--green);margin-bottom:25px;overflow-wrap:anywhere}.verified-email form{margin-left:auto;flex-shrink:0}.verified-email .text-button{margin:0}.setup-guide ol{padding-left:20px;font-size:14px;line-height:1.75}.setup-guide li{margin-bottom:18px}.setup-guide code{display:block;overflow-wrap:anywhere;background:var(--soft);border-radius:7px;padding:10px;font-size:12px;margin-top:10px}@media(max-width:680px){.signin-panel{min-height:auto;padding:25px 22px}.signin-panel h2{font-size:27px}.setup-notice{font-size:11px;line-height:1.6}}
.payment-total{margin:0 0 18px}.payment-courses{display:grid;gap:13px;margin:0 0 24px}.payment-courses>div{padding-bottom:13px;border-bottom:1px solid var(--line)}.payment-courses strong,.payment-courses span{display:block}.payment-courses strong{font-size:13px;line-height:1.45}.payment-courses span{margin-top:5px;color:var(--muted);font-size:12px}.payment-result>.primary{margin-top:4px}
/* Elements branding: official mark, Rubik headings, Inter body, configurable palette. */
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text,#1c2630)}
h1,h2,.brand-name{font-family:Rubik,Inter,sans-serif}h1{font-weight:700;letter-spacing:-1.9px}h2{font-weight:600}h1 span{color:var(--primary,#425b76)}
.brand{gap:16px;letter-spacing:0}.brand-logo{display:block;width:54px;height:54px;object-fit:contain;image-rendering:auto}.brand-name{font-size:24px;font-weight:650;letter-spacing:.25px;color:var(--primary,#425b76)}.brand-sub{font-family:Inter,sans-serif;font-size:9px;letter-spacing:1.9px;text-transform:uppercase;font-weight:600;margin-top:5px}
.primary{background:var(--primary,#425b76)}.primary:hover{background:color-mix(in srgb,var(--primary,#425b76),black 15%)}
.eyebrow{color:var(--primary,#425b76)}.journey-icon,.welcome-symbol,.mail-icon{background:color-mix(in srgb,var(--accent,#38b4cd) 12%,white);color:var(--primary,#425b76)}
.editorial{background:var(--soft,#f3f3f3);border-top:3px solid var(--accent,#38b4cd)}.editorial:after{border:0;border-radius:0;width:240px;height:360px;right:-105px;top:-45px;transform:rotate(-30deg);box-shadow:none;background:repeating-linear-gradient(90deg,transparent 0 9px,color-mix(in srgb,var(--accent,#38b4cd) 25%,white) 9px 11px)}
.editorial p{font-family:Rubik,Inter,sans-serif;color:var(--primary,#425b76);font-weight:500}.editorial-bottom span:last-child{color:var(--primary,#425b76)}
.choice:has(input:checked){background:color-mix(in srgb,var(--accent,#38b4cd) 8%,white);border-color:var(--primary,#425b76)}.choice input{accent-color:var(--primary,#425b76)}input:focus{outline-color:color-mix(in srgb,var(--accent,#38b4cd) 38%,white)}.success-mark{background:color-mix(in srgb,var(--highlight,#89d329) 18%,white);color:var(--primary,#425b76)}
@media(max-width:680px){.brand-logo{width:43px;height:43px}.brand{gap:11px}.brand-name{font-size:20px}.brand-sub{font-size:8px;letter-spacing:1px}h1{letter-spacing:-1.4px}}
.signin-options{display:grid;gap:12px}.google-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.provider-button{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 16px}.provider-button img{width:20px;height:20px;object-fit:contain;flex-shrink:0}.provider-button:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.create-student-form .primary{margin-top:24px}
.create-student-form select{width:100%;min-height:62px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--blue);font:inherit;padding:0 16px}
.address-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:640px){.address-row{grid-template-columns:1fr}}
.learner-panel{max-width:820px}.learner-empty{padding:24px;background:var(--soft);border-radius:14px;margin:26px 0}.learner-empty h2,.learner-list h2{font-size:19px;margin:0 0 8px}.learner-empty p,.learner-list p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}.learner-list{list-style:none;padding:0;margin:25px 0}.learner-list li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.learner-list li>div{min-width:0}.learner-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.learner-actions .primary{width:auto;flex:1;text-decoration:none}.learner-secondary{padding:15px 20px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:600;font-size:14px}.learner-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:30px;font-size:13px}.learner-select{width:100%;padding:13px;border:1px solid var(--line);border-radius:8px;font:inherit;background:white;color:var(--ink);margin-bottom:12px}.learner-continue{text-decoration:none;margin-bottom:14px}
.browse-courses{display:inline-flex;align-items:center;gap:18px;margin-top:11px;padding:13px 18px;border:1px solid var(--primary);border-radius:8px;color:var(--primary);font-weight:700;font-size:13px;text-decoration:none}.browse-courses span{font-size:19px}.catalog-page,.course-detail{max-width:1120px;margin:0 auto;padding:58px 28px 85px}.catalog-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.catalog-heading h1,.course-detail h1{font-size:46px;margin-bottom:14px}.catalog-signin{border:1px solid var(--line);border-radius:8px;padding:11px 18px;text-decoration:none;font-size:13px;font-weight:700}.catalog-preview{padding:13px 16px;border-left:3px solid var(--accent);background:var(--soft);font-size:12px;color:var(--muted);margin:20px 0 28px}.catalog-filters{display:grid;grid-template-columns:minmax(260px,2fr) 1fr 1fr auto;gap:14px;align-items:end;padding:22px;border:1px solid var(--line);border-radius:14px}.catalog-filters select{width:100%;height:45px;border:1px solid #cbd7df;border-radius:8px;background:#fff;padding:0 11px;font:inherit;color:var(--ink)}.catalog-search{width:125px}.catalog-count{font-size:12px;color:var(--muted);margin:28px 0 12px}.course-list{border-top:1px solid var(--line)}.course-card{display:flex;justify-content:space-between;gap:30px;padding:27px 4px;border-bottom:1px solid var(--line)}.course-card h2{font-size:22px;margin:5px 0 7px}.course-meta{font-size:10px;letter-spacing:1.2px;font-weight:700;color:var(--primary);text-transform:uppercase;margin:0}.course-code,.course-dates,.course-instructor{font-size:13px;color:var(--muted);margin:6px 0}.course-card-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);white-space:nowrap}.course-card-side a{display:flex;gap:16px;align-items:center;font-size:13px;font-weight:700;text-decoration:none}.course-card-side a span{font-size:20px}.catalog-empty{margin-top:28px;padding:35px;background:var(--soft);border-radius:14px}.catalog-empty h2{font-size:21px}.catalog-empty p{color:var(--muted);font-size:13px}.course-detail>.eyebrow{margin-bottom:11px}.detail-code{font-size:16px;color:var(--muted);margin-top:-2px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px;margin-top:45px}.detail-grid section>h2{font-size:20px;margin:34px 0 16px}.detail-grid section>h2:first-child{margin-top:0}.course-facts{margin:0}.course-facts div{display:grid;grid-template-columns:125px 1fr;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.course-facts dt{font-weight:700}.course-facts dd{margin:0;color:var(--muted)}.meeting-list p{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.fee-list{list-style:none;padding:0}.fee-list li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.detail-action{border:1px solid var(--line);border-radius:18px;padding:27px;height:max-content}.detail-action h2{font-size:24px}.detail-action>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.7}.detail-action .primary{margin:0}
@media(max-width:800px){.catalog-filters{grid-template-columns:1fr 1fr}.catalog-query{grid-column:1/-1}.catalog-search{width:100%}.detail-grid{grid-template-columns:1fr;gap:30px}.course-card{flex-direction:column}.course-card-side{align-items:flex-start}.catalog-heading h1,.course-detail h1{font-size:38px}}@media(max-width:520px){.catalog-page,.course-detail{padding:35px 20px 60px}.catalog-heading{display:block}.catalog-signin{display:inline-block;margin-bottom:20px}.catalog-filters{grid-template-columns:1fr}.catalog-query{grid-column:auto}.course-card-side{white-space:normal}.course-facts div{grid-template-columns:1fr;gap:6px}}

/* Public shopping cart */
.header-cart{display:flex;align-items:center;gap:7px;color:var(--primary);text-decoration:none;font-size:12px;font-weight:700}.header-cart span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:12px;background:var(--primary);color:#fff;font-size:10px}.catalog-heading-actions{display:flex;gap:10px;align-items:center}.cart-page{max-width:1040px;margin:0 auto;padding:58px 28px 85px}.cart-page>h1{font-size:46px}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;margin-top:38px}.cart-items{border-top:1px solid var(--line)}.cart-item{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 4px;border-bottom:1px solid var(--line)}.cart-item h2{font-size:21px;margin:5px 0 7px}.cart-remove{margin:0}.cart-summary{border:1px solid var(--line);border-radius:18px;padding:27px;height:max-content}.cart-summary h2{font-size:24px}.cart-summary>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.7}.cart-summary .primary{margin-top:22px}.cart-browse{max-width:220px;margin-top:20px}.checkout-page .cart-item{display:block}@media(max-width:800px){.cart-layout{grid-template-columns:1fr;gap:28px}.cart-page>h1{font-size:38px}}@media(max-width:680px){.header-cart{margin-left:auto}.preview-pill{display:none}}@media(max-width:520px){.cart-page{padding:35px 20px 60px}.catalog-heading-actions{margin:18px 0;flex-wrap:wrap}.cart-item{align-items:flex-start}.cart-page>h1{font-size:36px}}
.current-courses{display:grid;grid-template-columns:220px 1fr;gap:32px;margin:28px 0;padding:24px 26px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:14px;background:var(--soft)}.current-courses h2{margin:5px 0 0;font-size:21px}.current-course-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.current-course-list a{display:flex;flex-direction:column;gap:4px;padding:13px 15px;border-radius:9px;background:#fff;text-decoration:none}.current-course-list strong{font-size:13px}.current-course-list span{font-size:11px;color:var(--muted)}.registration-status,.detail-registered,.cart-status,.detail-cart{display:inline-flex;align-items:center;gap:8px;color:#16704a;font-weight:700}.registration-status>span,.detail-registered>span,.cart-status>span,.detail-cart>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#dff5e9;color:#16704a}.detail-registered,.detail-cart{align-self:flex-start;margin-top:8px;padding:12px 16px;border:1px solid #bde4cf;border-radius:9px;background:#f1fbf5;font-size:13px}.detail-cart{flex-wrap:wrap;color:var(--blue);border-color:var(--line);background:var(--soft)}.detail-cart a{margin-left:8px;font-weight:600}@media(max-width:800px){.current-courses{grid-template-columns:1fr}.current-course-list{grid-template-columns:1fr 1fr}}@media(max-width:520px){.current-course-list{grid-template-columns:1fr}}
/* Course detail primary action */
.course-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:42px}.course-title-row>div{min-width:0}.course-add-form{width:230px;flex:0 0 230px;margin-bottom:8px}.detail-grid{display:block}.detail-grid>section{max-width:880px}@media(max-width:800px){.course-title-row{align-items:flex-start;gap:24px}.course-add-form{width:210px;flex-basis:210px}}@media(max-width:620px){.course-title-row{display:block}.course-add-form{width:100%;margin:24px 0 0}.detail-grid>section{max-width:none}}
.account-nav{display:flex;align-items:center;gap:22px;margin-left:auto}.account-nav>a,.account-nav button{border:0;background:none;padding:8px 0;color:var(--primary,#425b76);font:700 12px Inter,sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer}.account-nav>a:hover,.account-nav button:hover{text-decoration:underline}.account-nav form{margin:0}.account-nav .header-cart{display:flex;padding:0}.account-nav .header-cart:hover{text-decoration:none}.account-nav .header-cart:hover::first-line{text-decoration:underline}@media(max-width:1050px){.account-nav{gap:14px}.account-nav>a,.account-nav button{font-size:11px}.site-header{gap:20px}.preview-pill{display:none}}@media(max-width:800px){.site-header:has(.account-nav){height:auto;min-height:104px;flex-wrap:wrap;padding-top:17px;padding-bottom:15px}.site-header:has(.account-nav) .brand{margin-right:auto}.account-nav{order:3;width:100%;overflow-x:auto;gap:20px;border-top:1px solid var(--line);padding-top:11px}.account-nav .header-cart{margin-left:0}}@media(max-width:520px){.account-nav{gap:18px}.account-nav>a,.account-nav button{font-size:11px}.account-nav .header-cart span{display:none}}
.my-courses-page{max-width:1040px;margin:0 auto;padding:58px 28px 85px}.my-courses-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.my-courses-heading h1{font-size:46px;margin-bottom:14px}.my-course-list{margin-top:35px;border-top:1px solid var(--line)}.my-course-card{display:flex;align-items:center;justify-content:space-between;gap:38px;padding:27px 4px;border-bottom:1px solid var(--line)}.my-course-card h2{font-size:22px;margin:5px 0 7px}.my-course-details{display:flex;flex-direction:column;align-items:flex-end;gap:13px;font-size:12px;color:var(--muted);white-space:nowrap}.my-course-details>a{font-size:13px;font-weight:700;text-decoration:none}.my-courses-empty{margin-top:35px;padding:35px;background:var(--soft);border-radius:14px}.my-courses-empty h2{font-size:21px}.my-courses-empty p{font-size:13px;color:var(--muted)}.my-courses-browse{max-width:220px;margin-top:22px}@media(max-width:700px){.my-courses-page{padding:35px 20px 60px}.my-courses-heading{display:block}.my-courses-heading h1{font-size:38px}.my-courses-heading .catalog-signin{display:inline-block}.my-course-card{align-items:flex-start;flex-direction:column;gap:18px}.my-course-details{align-items:flex-start;white-space:normal}}
/* Signed-in learning dashboard */
.my-courses-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:50px;padding:42px 46px;border-radius:24px;background:linear-gradient(125deg,var(--primary,#425b76) 0%,#314a62 66%,#267e91 135%);color:#fff;box-shadow:0 22px 55px #263f5320}.my-courses-hero:after{content:"";position:absolute;right:-65px;top:-110px;width:310px;height:310px;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0 12px,#ffffff14 12px 15px);transform:rotate(-28deg)}.my-courses-hero>div{position:relative;z-index:1}.my-courses-hero .eyebrow{color:#bfeaf2;margin-bottom:14px}.my-courses-hero h1{font-size:44px;line-height:1.08;margin:0 0 13px;max-width:650px}.my-courses-hero h1 span{color:#fff}.my-courses-hero p:not(.eyebrow){margin:0;color:#e1ebef;font-size:15px}.course-count-card{display:grid;place-items:center;align-content:center;min-height:135px;border:1px solid #ffffff35;border-radius:18px;background:#ffffff12;backdrop-filter:blur(4px);text-align:center}.course-count-card strong{font:700 46px/1 Rubik,Inter,sans-serif}.course-count-card span{margin-top:9px;font-size:11px;letter-spacing:.6px;color:#e7f0f3}.next-course-banner{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:24px;margin:28px 0 48px;padding:22px 25px;border:1px solid var(--line);border-left:4px solid var(--highlight,#89d329);border-radius:16px;background:#fff;box-shadow:0 12px 35px #263f530c}.next-course-date,.my-course-date{display:grid;place-items:center;align-content:center;border-radius:13px;background:color-mix(in srgb,var(--accent,#38b4cd) 12%,white);color:var(--primary,#425b76);text-transform:uppercase}.next-course-date{width:70px;height:70px}.next-course-date span,.my-course-date span{font-size:9px;font-weight:800;letter-spacing:1.3px}.next-course-date strong,.my-course-date strong{font:700 26px/1.1 Rubik,Inter,sans-serif}.next-course-banner .eyebrow{margin:0 0 5px;font-size:8px}.next-course-banner h2{font-size:21px;margin:0 0 5px}.next-course-banner p:not(.eyebrow){font-size:12px;color:var(--muted);margin:0}.next-course-banner>a{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.next-course-banner>a span{font-size:20px}.my-course-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.my-course-list-heading .eyebrow{margin-bottom:8px}.my-course-list-heading h2{font-size:27px;margin:0}.my-course-list-heading .catalog-signin{margin-bottom:2px}.my-course-list{margin-top:18px}.my-course-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:22px;padding:25px 18px;border:1px solid transparent;border-bottom-color:var(--line);border-radius:13px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.my-course-card:hover{position:relative;z-index:1;transform:translateY(-2px);border-color:var(--line);background:#fff;box-shadow:0 13px 35px #263f5312}.my-course-date{width:54px;height:58px}.my-course-date strong{font-size:20px}@media(prefers-reduced-motion:no-preference){.my-courses-hero{animation:dashboard-enter .45s ease-out both}.next-course-banner{animation:dashboard-enter .45s .08s ease-out both}.my-course-card{animation:dashboard-enter .4s ease-out both}@keyframes dashboard-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}}@media(max-width:700px){.my-courses-hero{grid-template-columns:1fr;padding:30px 25px;gap:25px}.my-courses-hero h1{font-size:36px}.course-count-card{min-height:90px;grid-template-columns:auto auto;gap:10px}.course-count-card strong{font-size:34px}.course-count-card span{margin:0}.next-course-banner{grid-template-columns:58px 1fr;padding:18px;gap:17px}.next-course-date{width:56px;height:58px}.next-course-banner>a{grid-column:2}.my-course-list-heading{display:block}.my-course-list-heading .catalog-signin{display:inline-block;margin-top:16px}.my-course-card{grid-template-columns:54px 1fr}.my-course-details{grid-column:2}}
.next-course-actions,.my-course-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;white-space:nowrap}.next-course-actions>a,.my-course-actions>a{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-decoration:none}.calendar-link{padding:8px 11px;border:1px solid var(--line);border-radius:8px;color:var(--primary,#425b76);background:#fff}.calendar-link:hover{border-color:var(--accent,#38b4cd);background:color-mix(in srgb,var(--accent,#38b4cd) 7%,white)}.calendar-link span{font-size:16px;line-height:1}.my-course-actions>a:last-child span{font-size:18px}@media(max-width:850px){.next-course-banner{grid-template-columns:70px 1fr}.next-course-actions{grid-column:2;justify-content:flex-start}}@media(max-width:700px){.next-course-actions,.my-course-actions{justify-content:flex-start;flex-wrap:wrap}.next-course-banner>a{grid-column:auto}}
/* Portal-only billing history */
.billing-page{max-width:1040px;margin:0 auto;padding:58px 28px 85px}.billing-heading{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:end;gap:45px;padding-bottom:34px;border-bottom:1px solid var(--line)}.billing-heading h1{font-size:46px;margin-bottom:12px}.billing-heading>div:first-child>p:last-child{font-size:14px;color:var(--muted);margin:0}.billing-total{padding:19px 22px;border-radius:15px;background:var(--primary,#425b76);color:#fff;box-shadow:0 12px 30px #263f5318}.billing-total span,.billing-total small{display:block;font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:#d8e4e9}.billing-total strong{display:inline-block;margin:8px 5px 0 0;font:700 27px Rubik,Inter,sans-serif}.billing-total small{display:inline}.billing-list{display:grid;gap:18px;margin-top:30px}.billing-card{padding:28px 30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px #263f530a;transition:transform .18s ease,box-shadow .18s ease}.billing-card:hover{transform:translateY(-2px);box-shadow:0 16px 38px #263f5312}.billing-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.billing-card-top .eyebrow{margin-bottom:8px}.billing-card h2{font-size:21px;margin:0}.billing-amount{text-align:right;white-space:nowrap}.billing-amount strong,.billing-amount span{display:block}.billing-amount strong{font:700 22px Rubik,Inter,sans-serif;color:var(--primary,#425b76)}.billing-amount span{font-size:9px;letter-spacing:1px;color:var(--muted);margin-top:3px}.billing-courses{list-style:none;padding:15px 0 4px;margin:18px 0;border-top:1px solid var(--line)}.billing-courses li{display:flex;justify-content:space-between;gap:25px;padding:8px 0;font-size:12px}.billing-courses small{color:var(--muted)}.billing-card-bottom{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:28px;padding-top:18px;border-top:1px solid var(--line)}.billing-card-bottom>div span,.billing-card-bottom>div strong{display:block}.billing-card-bottom>div span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.billing-card-bottom>div strong{font-size:12px}.billing-status{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:20px;font-size:11px;font-weight:700}.billing-status>span{display:grid;place-items:center;width:19px;height:19px;border-radius:50%}.billing-status.complete{background:#eef9f3;color:#16704a}.billing-status.complete>span{background:#d8f1e3}.billing-status.processing{background:#fff7e7;color:#8a6415}.billing-status.processing>span{background:#f8e8bf}.billing-help{text-align:center;color:var(--muted);font-size:11px;margin:25px 0}.billing-empty{text-align:center;padding:58px 30px;margin-top:30px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.billing-empty-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border-radius:15px;background:#fff;color:var(--primary);font:700 25px Rubik,Inter,sans-serif}.billing-empty h2{font-size:22px}.billing-empty p{font-size:13px;color:var(--muted)}.billing-browse{max-width:210px;margin:22px auto 0}@media(max-width:700px){.billing-page{padding:35px 20px 60px}.billing-heading{grid-template-columns:1fr}.billing-heading h1{font-size:38px}.billing-total{max-width:220px}.billing-card{padding:22px 20px}.billing-card-top{display:block}.billing-amount{text-align:left;margin-top:18px}.billing-card-bottom{grid-template-columns:1fr 1fr}.billing-status{grid-column:1/-1;width:max-content}.billing-courses li{display:block}.billing-courses small{display:block;margin-top:5px}}
/* Focused account access during checkout */
.cart-account-note{text-align:center;font-size:11px!important;margin:11px 0 0!important}.access-page{max-width:650px;margin:0 auto;padding:48px 28px 85px}.access-card{position:relative;overflow:hidden;padding:42px 46px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 18px 55px #263f5310}.access-card:after{content:"";position:absolute;width:190px;height:280px;right:-105px;top:-65px;transform:rotate(-28deg);background:repeating-linear-gradient(90deg,transparent 0 10px,color-mix(in srgb,var(--accent,#38b4cd) 17%,white) 10px 12px);pointer-events:none}.access-card>*{position:relative;z-index:1}.access-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:25px;border-radius:16px;background:color-mix(in srgb,var(--accent,#38b4cd) 13%,white);color:var(--primary,#425b76);font-size:30px}.access-card .eyebrow{margin-bottom:12px}.access-card h1{font-size:38px;line-height:1.12;margin-bottom:16px}.access-intro{max-width:490px;margin:0 0 28px;color:var(--muted);font-size:14px;line-height:1.75}.access-options{margin-bottom:24px}.access-note{display:flex;align-items:center;gap:13px;padding:16px 17px;border-radius:11px;background:#eef8f4;color:#287354}.access-note>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 auto;border-radius:50%;background:#d8f0e3;font-weight:800}.access-note p{margin:0;font-size:11px;line-height:1.55}.access-note strong{font-size:12px}@media(max-width:600px){.access-page{padding:30px 20px 60px}.access-card{padding:30px 23px}.access-card h1{font-size:33px}}
/* Checkout and payment responsibility */
.checkout-learner{margin:-8px 0 0;color:var(--muted);font-size:14px}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;margin-top:36px}.checkout-layout>section{min-width:0}.checkout-methods fieldset{margin:0}.checkout-methods legend{font-size:16px;margin-bottom:16px}.payment-choice{padding:17px 16px;margin-bottom:12px}.payment-choice strong{font-size:14px}.payment-choice small{font-size:12px}.unavailable-choice{opacity:.55;cursor:default}.sponsor-code{display:none;margin:4px 0 18px;padding:18px;background:var(--soft);border-radius:10px}.checkout-methods:has(input[value="sponsor"]:checked) .sponsor-code{display:block}.checkout-summary{border:1px solid var(--line);border-radius:16px;padding:25px;height:max-content}.checkout-course{padding:14px 0;border-bottom:1px solid var(--line)}.checkout-course strong,.checkout-course span{display:block}.checkout-course strong{font-size:13px;line-height:1.45}.checkout-course span{font-size:11px;color:var(--muted);margin-top:5px}.checkout-total{display:flex;justify-content:space-between;gap:20px;padding-top:19px;font-size:12px}.checkout-total strong{text-align:right}.checkout-review>h2{font-size:19px;margin:0 0 12px}.checkout-review>h2:not(:first-child){margin-top:30px}.review-course{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.review-course div strong,.review-course div span{display:block}.review-course div span,.review-course>span{color:var(--muted);margin-top:5px}.preview-stop{padding:19px;background:var(--soft);border-radius:11px;margin:28px 0 18px}.preview-stop strong{font-size:13px}.preview-stop p{font-size:12px;color:var(--muted);margin:7px 0 0}.checkout-review .primary:disabled{opacity:.55;cursor:not-allowed}.checkout-edit{display:block;text-align:center;margin-top:17px;font-size:12px;text-decoration:none}@media(max-width:800px){.checkout-layout{grid-template-columns:1fr;gap:28px}.checkout-summary{order:-1}}@media(max-width:520px){.review-course{display:block}.review-course>span{display:block}}
