/* Saturated blue direction, retaining the approved content and layout. */
:root{--ink:#092c4d;--muted:#455b6d;--blue:#0077c8;--pale:#e2f4ff;--border:#bfdff3}
header{border-bottom:1px solid #d9ebf7;min-height:92px}
.brand{color:#0077c8}.brand-icon{background:#008ce5}
nav a{font-weight:800}
.button{background:#0077c8;border-radius:10px;font-size:1rem;font-weight:800;padding:18px 28px;box-shadow:0 8px 22px #008ce536}
.button:hover{background:#005fa5;box-shadow:0 10px 28px #0077c84a}
.hero{position:relative;isolation:isolate;background:#e9f7ff;border-radius:18px;overflow:hidden;gap:0;margin-top:24px;padding:0;grid-template-columns:1.05fr 1fr;min-height:580px}
.hero-copy{padding:48px 30px 38px 42px;position:relative;z-index:2}
.hero .eyebrow{letter-spacing:1.2px;font-weight:800;color:#005995}
h1{font-size:clamp(44px,4.7vw,68px);font-weight:800;line-height:1.06;letter-spacing:-2.7px;margin:25px 0}
h1 em{font:inherit;color:#0080d5;font-size:1.12em;display:inline-block}
.hero-copy>p{color:#163d5a;font-size:1.0625rem;font-weight:600;line-height:1.7;max-width:450px}
.hero-actions{gap:20px;margin-top:27px}.hero-actions>.button{min-width:225px}
.hero .text-link{font-weight:800;color:#073b61}
.hero-caption{color:#294f6b;margin-top:23px}.hero-caption strong{font-weight:700}
.hero-visual{margin:0;border-radius:0;min-height:580px;background:#d3eaff;position:relative}
.hero-visual>img{object-position:48% center}
.hero-visual:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#e9f7ff 0%,#e9f7ff00 22%)}
.photo-label{z-index:1;top:20px;right:18px;max-width:90%;background:#06385cdf;padding:9px 12px;border-radius:5px;letter-spacing:1px;text-shadow:none}
.floating-note{z-index:1;left:auto;right:22px;bottom:26px;width:290px;background:#0077c8;border:0;border-radius:10px;color:#fff;padding:22px;box-shadow:0 12px 28px #06385c2b}
.floating-note>span,.floating-note a{color:#fff}.floating-note strong{font-weight:800;font-size:19px;padding-right:15px}
.principles{margin-top:20px;border:0;border-radius:12px;background:#0077c8;color:#fff;padding:25px 14px}
.principles>div{border-color:#ffffff50}.principles span{color:#c5edff;font-weight:800}.principles p{color:#eaf8ff}.principles strong{font-size:1rem;font-weight:800}
h2{font-weight:800;letter-spacing:-1.5px}h2 em{font-family:inherit;font-style:normal;font-weight:800;color:#0077c8}
h3{font-weight:800}.eyebrow{font-weight:800;letter-spacing:1.5px}
.course{border:1px solid #c0ddf0;box-shadow:0 6px 24px #0a58950c;border-radius:12px;background:white}
.course-additional{background:white}.course h3{color:#08385e}.course-number{color:#006fb9;font-weight:800}
.tag{background:#0077c8;color:#fff;box-shadow:0 3px 12px #052c4a25;font-weight:800}
.course-link,.course-additional .course-link{padding:13px 16px;border:0;border-radius:7px;background:#e2f3ff;color:#005c9b;font-weight:800;align-items:center}
.course-link:hover,.course-additional .course-link:hover{background:#0077c8;color:#fff}
.approach{background:#083a61;color:#fff}.approach h2 em{color:#64d2ff}.approach .eyebrow{color:#7bddff}.approach p{color:#e0eff9}.approach .text-link{color:white}.approach-item>span{border-color:#67c7fa;color:#67c7fa}
.steps article,.info-grid article{border-top:3px solid #008fe8}.steps span{font-family:inherit;font-style:normal;font-weight:800;color:#0077c8}
.packages{background:#dff3ff}.package-grid article{border-top:5px solid #008ce5}.package-grid article>span{font-family:inherit;font-style:normal;font-weight:800}.package-grid h3{color:#073b61}
.education-note{background:#0077c8;color:white}
.faq-list details[open]{background:#edf8ff;border-radius:7px;padding:20px 18px;margin-bottom:8px}.faq-list summary{font-weight:800;color:#073b61}
.contact{background:#07385f;border-radius:14px;color:white}.contact h2 em{color:#68d5ff}.contact .eyebrow,.contact-bottom span:not(.button span){color:#8be0ff}.contact>p{color:#e1f3ff}.contact-bottom{border-color:#ffffff35}.contact-bottom strong{font-weight:700}.contact .button{background:#fff;color:#005d9d;box-shadow:none}.contact .button:hover{background:#dff4ff}
@media(max-width:1100px) and (min-width:761px){.hero-copy{padding:36px 25px}.hero h1{font-size:49px}.hero-visual{min-height:600px}.floating-note{width:245px;right:14px}.photo-label{font-size:.65rem}}
@media(max-width:760px){
 header{min-height:78px;padding:14px 18px;gap:12px}.header-cta{font-size:.8125rem!important}.brand{font-size:26px}
 .hero.wrap{width:100%;margin-top:0;border-radius:0;display:block;min-height:660px;padding:0;overflow:hidden;background:#eaf7ff}
 .hero-copy{padding:30px 24px 215px;min-height:660px;width:100%}
 .hero h1{font-size:clamp(41px,11.2vw,59px);line-height:1.08;letter-spacing:-1.6px;margin:21px 0 20px;max-width:480px}
 .hero h1 em{font-size:1.1em}.hero .eyebrow{font-size:.6875rem;letter-spacing:1px}
 .hero-copy>p{font-size:1rem;max-width:440px;line-height:1.6;color:#123b59}
 .hero-actions{gap:17px;flex-direction:column;align-items:stretch;margin-top:24px;max-width:440px}.hero-actions>.button{width:100%;justify-content:center;gap:35px;font-size:1.0625rem;padding:18px 22px}
 .hero-actions>.text-link{align-self:flex-start;background:#ffffffd9;padding:4px 8px;border-radius:4px}
 .hero-caption{display:none}
 .hero-visual{position:absolute;inset:0;min-height:0;margin:0;border:0;z-index:0;border-radius:0}
 .hero-visual>img{height:100%;width:100%;object-position:58% center}
 .hero-visual:after{background:linear-gradient(180deg,#fffffff7 0%,#fffffff0 23%,#ffffffe8 44%,#ffffffbc 63%,#ffffff00 83%)}
 .photo-label{display:none}.floating-note{display:none}
 .principles{margin-top:0;width:100%;border-radius:0;padding:14px 24px}.principles>div{padding:15px 0 15px 34px;border-color:#ffffff40}.principles span{left:0;top:17px}.principles strong{font-size:1rem}
 h2{font-size:32px;line-height:1.2;letter-spacing:-1px}.section{padding-top:55px;padding-bottom:55px}.intro{padding-bottom:0}.format-section{padding-top:0}
 .approach-copy h2{font-size:32px}.course-image{height:245px}.course h3{font-size:24px}.course-body,.course-additional .course-body{padding:24px}.contact h2{font-size:34px}
}
@media(max-width:360px){header{padding:12px;gap:8px}.header-cta{padding:10px!important;gap:7px!important}.hero-copy{padding-inline:20px}.hero h1{font-size:39px}.hero .eyebrow{letter-spacing:.4px;font-size:.65rem}}

.hero .profession-label{font-size:1.25rem;line-height:1.4;letter-spacing:.5px;text-transform:uppercase;font-weight:800;color:#005995}@media(max-width:760px){.hero .profession-label{font-size:1.0625rem;letter-spacing:.3px}}

/* Prominent profession heading, matching the main headline weight. */
.hero .hero-copy .profession-label{display:block;font-family:inherit;font-size:clamp(28px,2.5vw,36px);font-weight:800;line-height:1.15;letter-spacing:-.6px;text-transform:none;color:#0077c8;max-width:100%;overflow-wrap:break-word}
.hero .profession-label .line{display:none}
.hero h1,.hero h1 em{font-weight:800}
@media(max-width:760px){.hero .hero-copy .profession-label{font-size:clamp(25px,6.7vw,34px);line-height:1.15;letter-spacing:-.4px}.hero h1{margin-top:18px}}

/* Profession line at near-headline scale on all screen sizes. */
.hero .hero-copy .profession-label{font-size:clamp(40px,4.2vw,60px);font-weight:800;line-height:1.08;letter-spacing:-1.8px}
@media(min-width:761px) and (max-width:1100px){.hero .hero-copy .profession-label{font-size:44px}}
@media(max-width:760px){.hero .hero-copy .profession-label{font-size:clamp(37px,10vw,53px);line-height:1.08;letter-spacing:-1.2px}}
@media(max-width:380px){.hero .hero-copy .profession-label{font-size:36px}}
