/* v1.8 — readable content, quiet surfaces, strong brand accents. */
:root{--text:#18263e;--body-text:#344258;--readable-blue:#1549b9;--readable-green:#126938;--line:#d6dfec}
body{color:var(--text);background:#fff}p,li{line-height:1.8}p{color:var(--body-text)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #1549b9;outline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}h1,h2,h3,h4{color:#101e37}.eyebrow{color:var(--readable-blue)!important}.section--ink .eyebrow,.cta .eyebrow{color:#adceff!important}.section--ink p,.cta p{color:#e1e9f7}.text-link{color:#1549b9}.btn{background:#1549b9;color:#fff}.btn:hover{background:#0d358a}.btn--light{background:#fff;color:#103580}.btn--outline{background:transparent;border:1px solid currentColor}.footer p,.footer a{color:#d6e1f5}
.course-grid--all,.course-grid--visual{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}.catalog-title{margin:52px auto 26px}.catalog-title h2{font-size:38px;margin:8px 0}.program-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d6dfec;border-radius:20px;background:#fff;box-shadow:0 8px 28px #13284b0a;transition:transform .2s,box-shadow .2s}.program-card:hover{transform:translateY(-4px);box-shadow:0 15px 40px #13284b14}.program-card__image{position:relative;display:block;aspect-ratio:1.65;background:#edf2fa;overflow:hidden}.program-card__image img{display:block;width:100%;height:100%;object-fit:cover}.program-card__image>span{position:absolute;bottom:14px;left:18px;border-radius:99px;padding:6px 12px;font-size:12px;font-weight:700;color:#fff;background:#102544}.program-card__body{padding:24px;flex:1;display:flex;flex-direction:column}.program-card__meta{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:#16407c;font-weight:700}.program-card__meta span{background:#edf3fd;padding:5px 9px;border-radius:6px}.program-card h2{font:800 22px/1.4 var(--display);margin:17px 0 12px}.program-card h2 a{color:#15243d}.program-card h2 a:hover{color:#1549b9}.program-card p{font-size:15px;line-height:1.75;margin:0 0 25px}.program-card__footer{margin-top:auto;display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px solid #d6dfec;padding-top:20px}.program-card__footer small{display:block;color:#44546d;font-size:12px}.program-card__footer del{display:block;color:#576376;font-size:12px}.program-card__footer strong{display:block;font:800 24px var(--display);color:#15243d}.program-card__footer .btn{font-size:12px;padding:13px 15px;white-space:nowrap}
.course-hero{padding:54px 0;background:#f0f5fd;border-bottom:1px solid #d6dfec}.course-hero__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.course-hero .breadcrumb{display:block;color:#1549b9;font-size:13px;margin-bottom:24px}.course-hero .eyebrow{display:block}.course-hero h1{font:800 clamp(30px,3.8vw,49px)/1.18 var(--display);margin:15px 0 22px;letter-spacing:-1.3px}.course-hero p{font-size:17px;max-width:62ch}.course-hero figure{margin:0;overflow:hidden;border-radius:20px;border:1px solid #d6dfec;background:#e7edf7;box-shadow:0 12px 35px #13284b12}.course-hero img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover}.course-hero__meta{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.course-hero__meta span{background:#fff;border:1px solid #cad6e9;border-radius:8px;padding:7px 12px;color:#283d5c;font-size:13px;font-weight:700}.course-nav{border-bottom:1px solid #d6dfec;background:#fff}.course-nav .container{display:flex;gap:26px;overflow-x:auto}.course-nav a{color:#273f65;font-size:14px;font-weight:700;white-space:nowrap;padding:20px 0}.course-nav a:hover{color:#1549b9}.course-content-layout{grid-template-columns:minmax(0,1fr) 310px;gap:56px;align-items:start}.course-content{min-width:0}.content-section{scroll-margin-top:110px;margin:0 0 50px}.content-section h2{font:800 31px/1.3 var(--display);margin:0 0 20px}.content-section h3{font:800 22px/1.4 var(--display);margin:22px 0 16px}.course-content p,.course-content li{font-size:16px;line-height:1.85;color:#344258}.course-content strong{color:#162c4c}.source-list ul,.outline-overview ul,.accordion-content ul{padding-left:23px;margin:18px 0}.source-list li{margin:12px 0;padding-left:5px}.source-list li::marker,.accordion-content li::marker{color:#1549b9}.course-enroll{background:#101f3e!important;color:#fff;border:0;border-radius:18px;padding:26px;position:sticky;top:110px}.course-enroll>span,.course-enroll del,.course-enroll li,.course-enroll p{color:#e0e9f7!important}.course-enroll strong{color:#fff!important;font-size:39px}.course-enroll .text-link{color:#c6e2ff;display:block;margin-top:18px;text-align:center}.course-enroll .btn{width:100%;justify-content:center;background:#fff;color:#103580}.course-enroll .enroll-explanation{font-size:13px;line-height:1.7;margin:20px 0 0}.course-enroll ul{padding-left:0}.course-enroll li{font-size:14px}
.curriculum-actions{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.curriculum-actions button{border:1px solid #b7c7e1;border-radius:8px;background:#fff;color:#1549b9;padding:10px 14px;font:700 13px var(--sans);cursor:pointer}.curriculum-actions button:hover{background:#edf3fd}.curriculum-part{margin:30px 0 40px}.curriculum-part>h3{border-top:3px solid #1549b9;padding-top:20px;margin-bottom:10px}.part-meta{font-size:14px!important;font-weight:700;color:#44546d!important}.curriculum-module{margin:12px 0;border:1px solid #cbd7e8;border-radius:12px;overflow:hidden;background:#fff}.curriculum summary,.service-faq summary{display:flex;align-items:center;gap:14px;list-style:none;cursor:pointer;font-weight:700;color:#172d4e;line-height:1.6;padding:19px 20px}.curriculum summary::-webkit-details-marker,.service-faq summary::-webkit-details-marker{display:none}.curriculum summary>span:first-child{flex:1}.curriculum summary>small{white-space:nowrap;font-weight:500;color:#465a77;font-size:12px}.curriculum-module[open]>summary{background:#edf3fd;border-bottom:1px solid #cbd7e8}.accordion-toggle{margin-left:auto;display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border:1px solid #b7c7e1;border-radius:50%;font-size:20px;line-height:1;transition:transform .2s}.curriculum details[open]>summary>.accordion-toggle{transform:rotate(45deg)}.module-number{color:#1549b9;font-size:13px}.accordion-content{padding:5px 24px 16px}.accordion-content ul ul{margin:8px 0 16px;padding-left:23px}.accordion-content li{margin:9px 0}.curriculum-class{border-bottom:1px solid #e0e6f0;border-radius:0;margin:0}.curriculum-class:last-child{border-bottom:0}.curriculum-class>summary{font-size:15px;padding:18px 0}.curriculum-class[open]>summary{color:#1549b9}.lesson-topics{padding:0 4px 14px 16px}.lesson-topics ul{margin:0 0 10px;padding-left:18px}.lesson-topics li{font-size:15px}.table-scroll{overflow:auto;border:1px solid #cbd7e8;border-radius:12px;margin:24px 0}.allocation-table{border-collapse:collapse;width:100%;min-width:650px;font-size:13px;line-height:1.6}.allocation-table th,.allocation-table td{text-align:left;padding:14px;vertical-align:top;border-bottom:1px solid #d6dfec}.allocation-table th{background:#edf3fd;color:#17345f}.allocation-table td{color:#344258}.allocation-table tr:last-child td{border-bottom:0}.outline-overview{background:#f5f8fd;border:1px solid #d6dfec;border-radius:12px;padding:8px 24px 12px}.outline-overview li{font-size:14px;overflow-wrap:anywhere}
.service-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}.service-hub-grid article{padding:30px;border:1px solid #cbd7e8;border-top:4px solid #1549b9;background:#fff;border-radius:15px}.service-hub-grid h3{font:800 23px/1.4 var(--display);margin:0 0 14px}.service-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:start}.service-document{min-width:0;max-width:78ch;color:#344258;font-size:16px}.service-document p,.service-document li{color:#344258;font-size:16px;line-height:1.85}.service-document h2{font:800 30px/1.35 var(--display);margin:44px 0 20px;scroll-margin-top:110px}.service-document h3{font:800 23px/1.4 var(--display);margin:32px 0 15px}.service-document ul{padding-left:23px}.service-document li{margin:8px 0}.service-document>p:first-child{font-size:20px;font-weight:700;color:#17345f}.service-sidebar{position:sticky;top:110px}.service-sidebar>div{padding:26px;background:#edf3fd;border:1px solid #cbd7e8;border-radius:16px}.service-sidebar h2{font-size:24px;line-height:1.35}.service-sidebar p{font-size:14px}.service-sidebar .btn{width:100%;justify-content:center;font-size:13px}.phone-link{display:block;margin-top:20px;font-weight:700;color:#1549b9}.service-sidebar nav{padding:20px 0}.service-sidebar nav a{display:block;padding:12px 0;color:#273f65;border-bottom:1px solid #d6dfec;font-size:14px}.service-faq{border:1px solid #cbd7e8;border-radius:12px;margin:12px 0}.service-faq summary{font-size:16px}.service-faq summary:after{content:'+';margin-left:auto;font-size:22px;color:#1549b9}.service-faq[open] summary:after{content:'−'}.service-faq[open] summary{background:#edf3fd}.service-faq .accordion-content p{font-size:15px}.nav-subgroup{position:relative}.nav-subgroup>a:after{display:none}.nav-subgroup>a:before{content:'›';float:right}.nav-submenu{position:absolute;left:100%;top:-10px;width:290px;background:white;border:1px solid #d6dfec;box-shadow:0 15px 40px #13284b14;border-radius:12px;padding:10px;opacity:0;visibility:hidden;z-index:90}.nav-subgroup:hover>.nav-submenu,.nav-subgroup:focus-within>.nav-submenu{opacity:1;visibility:visible}.nav-submenu a{white-space:normal!important;line-height:1.5}
@media(max-width:1100px){.course-grid--all,.course-grid--visual{grid-template-columns:repeat(2,minmax(0,1fr))}.course-content-layout{gap:30px;grid-template-columns:minmax(0,1fr) 280px}.service-page-layout{gap:30px;grid-template-columns:minmax(0,1fr) 270px}.course-hero__grid{gap:30px}}
@media(max-width:1050px){.nav-submenu{position:static;width:auto;opacity:1;visibility:visible;padding:0 0 0 12px;border:0;border-left:2px solid #d6dfec;border-radius:0;box-shadow:none}.nav-subgroup>a:before{display:none}}
@media(max-width:800px){.course-hero__grid,.course-content-layout,.service-page-layout{grid-template-columns:1fr}.course-hero figure{max-width:650px}.course-hero{padding:35px 0}.course-enroll,.service-sidebar{position:static}.course-enroll{grid-row:1}.service-hub-grid{grid-template-columns:1fr}.course-content-layout,.service-page-layout{gap:35px}.course-content h2,.service-document h2{font-size:27px}.course-nav .container{gap:22px}.content-section{margin-bottom:40px}.course-hero h1{letter-spacing:-.7px}}
@media(max-width:600px){.course-grid--all,.course-grid--visual{grid-template-columns:1fr;gap:22px}.program-card__body{padding:22px}.program-card h2{font-size:22px}.course-hero h1{font-size:32px}.course-hero p{font-size:16px}.curriculum summary{padding:16px 14px;font-size:15px;gap:10px}.curriculum summary>small{display:none}.accordion-content{padding:5px 16px 15px}.curriculum-class>summary{padding:16px 0;font-size:14px}.lesson-topics{padding-left:6px}.course-content p,.course-content li,.service-document p,.service-document li{font-size:16px}.service-sidebar .btn{width:100%}.program-card__footer .btn{padding:12px}.catalog-title h2{font-size:32px}.outline-overview{padding:8px 16px}.service-document h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.program-card,.accordion-toggle{transition:none}.program-card:hover{transform:none}}

/* Supplied square course artwork: preserve all text and branding. */
.program-card__image--poster{aspect-ratio:1;background:#0b203d}.program-card__image--poster img{object-fit:contain}.program-card__image--poster>span{top:12px;bottom:auto;left:auto;right:12px;background:#102544;border:1px solid #d0e0fa}.course-hero .course-poster img{aspect-ratio:1;object-fit:contain}.course-hero .course-poster{background:#0b203d}

/* Client logos: preserve supplied brands, proportions and readable names. */
.client-logo-grid--complete{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.client-logo-grid--complete .client-card{background:#fff;border:1px solid #dbe3ef;border-radius:16px;padding:26px 18px 20px;min-height:198px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.client-logo-grid--complete .client-card__logos{width:100%;height:98px;display:flex;align-items:center;justify-content:center;gap:14px}
.client-logo-grid--complete img{width:100%;max-width:205px;height:88px;object-fit:contain;filter:none}
.client-logo-grid--complete .client-card__logos--pair img{max-width:45%;height:70px}
.client-logo-grid--complete figcaption{font-size:14px;line-height:1.5;font-weight:600;color:#344258;width:100%;overflow-wrap:anywhere}
.client-logo-grid--complete .client-card--dark{background:#142846;border-color:#142846}
.client-logo-grid--complete .client-card--dark figcaption{color:#fff}
.client-card__name{font-size:20px;font-weight:650;line-height:1.4;color:#102346;text-align:center}
.client-logo-grid--complete .client-card--name-only{justify-content:center}
@media(max-width:1000px){.client-logo-grid--complete{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.client-logo-grid--complete{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-logo-grid--complete .client-card{padding:18px 12px;min-height:190px}.client-logo-grid--complete figcaption{font-size:13px}.client-card__name{font-size:17px}.client-logo-grid--complete .client-card__logos--pair{flex-direction:column;gap:8px}.client-logo-grid--complete .client-card__logos--pair img{max-width:100%;height:40px}}

/* Original Elite logo, displayed without cropping or recolouring. */
.brand--image{display:inline-flex;flex:0 0 auto;line-height:0}
.brand--image .brand__logo{display:block;width:154px;height:auto;max-width:none;object-fit:contain}
.footer .brand--image{width:max-content;max-width:100%;padding:14px 18px;border-radius:12px;background:#fff}
.footer .brand--image .brand__logo{width:220px;max-width:100%;height:auto}
@media(max-width:760px){.brand--image .brand__logo{width:122px}.navlinks{top:70px}.footer .brand--image .brand__logo{width:200px}}

.coupon-controls{display:flex;gap:8px;align-items:center}.coupon-controls input{min-width:0;flex:1}.coupon-controls button{border:1px solid #b9c9df;padding:10px 12px;border-radius:8px;background:#edf3ff;color:#102346;cursor:pointer;font-weight:700}
#coupon-message{min-height:24px;font-size:14px;color:#344258}.enrollment-breakdown{padding:20px;background:#f3f7fd;border:1px solid #d9e4f4;border-radius:12px;margin:20px 0}.enrollment-breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.enrollment-breakdown__total{border-top:1px solid #c8d7ec;margin-top:8px;padding-top:15px!important}.enrollment-breakdown strong{font-size:23px;color:#102346}.enroll-form .btn:disabled{opacity:.55;cursor:not-allowed}
.batch-date b{font-size:20px}.batch-date span{font-size:10px}.batch-list .form-card{margin-bottom:16px}
@media(max-width:400px){.coupon-controls{flex-wrap:wrap}.coupon-controls input{flex-basis:100%}}

/* v1.9.1: readable text on dark payment and promotional surfaces. */
.payment-guide{background:#101f3e;color:#e8eef9}
.payment-guide p,.payment-guide li,.payment-guide b,.payment-guide strong{color:#e8eef9}
.payment-guide h2,.payment-guide h3,.payment-guide h4{color:#fff}
.payment-guide .eyebrow{color:#a8e6ff!important}
.payment-guide a{color:#a8e6ff;text-decoration:underline;text-underline-offset:3px}
.payment-guide .pay-methods>div{background:#192d50;border:1px solid #627fa6}
.payment-guide .pay-methods b{color:#fff}
.payment-guide .pay-methods strong{color:#a8e6ff;font-size:23px;line-height:1.5;overflow-wrap:anywhere}
.payment-guide p,.payment-guide li{font-size:16px;line-height:1.85}
.payment-guide li{margin:8px 0}.payment-guide ol{padding-left:24px}
.price-card--featured p,.price-card--featured li{color:#e8eef9}
.price-card--featured h2,.price-card--featured h3,.price-card--featured .price{color:#fff}
.price-card--featured .price small,.price-card--featured .popular,.price-card--featured li svg{color:#a8e6ff}
.section--ink .service-feature h3,.section--ink .upcoming-grid h3{color:#fff}
.section--ink .service-feature p,.section--ink .upcoming-grid p{color:#e8eef9}
.section--ink .btn--outline-light{color:#fff;background:transparent;border-color:#a8c4ee}
.visual-card--main h3,.cta h2,.cta h3{color:#fff}
.enroll-card:not(.course-enroll) p{color:#e8eef9}

/* Optional coupon disclosure; only show a discount when one is applied. */
.coupon-section{border:1px solid #cbd7e8;border-radius:10px;margin:20px 0;background:#fff}
.coupon-section>summary{padding:14px 16px;font-size:15px;font-weight:700;color:#1549b9;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}
.coupon-section>summary::-webkit-details-marker{display:none}.coupon-section>summary:after{content:'+';font-size:22px}.coupon-section[open]>summary:after{content:'−'}
.coupon-section__content{padding:0 16px 12px}.coupon-section__content label{font-size:14px}.coupon-section .coupon-controls{margin-top:8px}
.enrollment-breakdown>div[hidden],.coupon-controls button[hidden]{display:none}

.nav-submenu--courses{width:330px;left:auto;right:100%}
@media(max-width:1050px){.nav-submenu--courses{width:auto;left:auto;right:auto}}

.nav-submenu--webinars{left:auto;right:100%}
@media(max-width:1050px){.nav-submenu--webinars{left:auto;right:auto}}

/* Gentle accordion motion, with readable content and native details semantics. */
.curriculum summary,.service-faq summary{transition:background-color .2s,color .2s}
.curriculum summary:hover,.service-faq summary:hover{background-color:#f0f5fd;color:#1549b9}
.accordion-toggle{transition:transform .24s cubic-bezier(.22,.61,.36,1),background-color .2s}
.curriculum-module,.service-faq{transition:border-color .2s,box-shadow .2s}
.curriculum-module:hover,.service-faq:hover{border-color:#9db5da}
.curriculum-module[open],.service-faq[open]{box-shadow:0 5px 18px rgba(19,40,75,.05)}
@media(prefers-reduced-motion:reduce){.curriculum summary,.service-faq summary,.accordion-toggle,.curriculum-module,.service-faq{transition:none}}
