.additional-courses-page { --add-ink:#102b40; --add-muted:#657c8b; --add-aqua:#4d9dff; --add-cyan:#4cc9ff; color:var(--add-ink); background:#f4fafb; }
.additional-hero { position:relative; min-height:600px; display:grid; align-items:end; overflow:hidden; color:#fff; background:#082333; }
.additional-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,17,29,.88),rgba(3,17,29,.48) 56%,rgba(3,17,29,.16)),var(--additional-hero-image) center/cover; }
.additional-hero::after { content:''; position:absolute; inset:auto 0 0; height:170px; background:linear-gradient(transparent,rgba(3,17,29,.62)); }
.additional-hero-inner { position:relative; z-index:1; display:flex; align-items:end; justify-content:space-between; gap:40px; width:100%; padding-top:120px; padding-bottom:78px; }
.additional-hero-copy { max-width:820px; }
.additional-eyebrow,.additional-kicker { display:inline-flex; align-items:center; gap:9px; color:#2d7ed8; font:700 11px 'DM Sans',sans-serif; letter-spacing:.16em; text-transform:uppercase; }
.additional-eyebrow { color:var(--add-aqua); }
.additional-eyebrow::before,.additional-kicker::before { content:''; width:7px; height:7px; flex:0 0 auto; border-radius:50%; background:currentColor; box-shadow:0 0 15px currentColor; }
.additional-hero h1 { max-width:900px; margin:20px 0 0; color:#fff; font:700 clamp(2.75rem,6.3vw,6.2rem)/.95 'Space Grotesk',sans-serif; letter-spacing:-.075em; }
.additional-hero-copy > strong { display:block; max-width:720px; margin-top:20px; color:#fff; font:600 clamp(1.15rem,2.2vw,1.6rem) 'Space Grotesk',sans-serif; }
.additional-hero-copy > p { max-width:670px; margin:14px 0 0; color:#c5dbe4; font-size:clamp(1rem,1.7vw,1.22rem); line-height:1.65; }
.additional-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.additional-actions .btn-ghost { color:#fff; border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.08); }
.additional-hero-badge { width:min(260px,100%); padding:21px; border:1px solid rgba(77,157,255,.3); border-radius:19px; background:rgba(5,29,43,.76); backdrop-filter:blur(12px); }
.additional-hero-badge > span { display:grid; width:43px; height:43px; place-items:center; color:#06212b; border-radius:13px; background:linear-gradient(135deg,var(--add-aqua),var(--add-cyan)); }
.additional-hero-badge svg { width:23px; height:23px; }
.additional-hero-badge strong { display:block; margin-top:17px; color:#fff; font:600 1.05rem 'Space Grotesk',sans-serif; }
.additional-hero-badge p { margin:7px 0 0; color:#a5bfca; font-size:12px; line-height:1.6; }
.additional-intro { padding:105px 0; background:#f4fafb; }
.additional-intro-grid { display:grid; grid-template-columns:1.03fr .97fr; gap:clamp(35px,7vw,100px); align-items:center; }
.additional-photo { position:relative; min-height:470px; overflow:hidden; border-radius:22px; box-shadow:0 25px 65px rgba(31,77,97,.16); }
.additional-photo::after { content:''; position:absolute; inset:17px -17px -17px 17px; z-index:-1; border:1px solid rgba(36,119,212,.25); border-radius:22px; }
.additional-photo img { width:100%; height:100%; min-height:470px; object-fit:cover; }
.additional-photo > span { position:absolute; left:20px; bottom:20px; padding:9px 12px; color:#fff; font-size:10px; font-weight:700; letter-spacing:.14em; border-radius:999px; background:rgba(4,28,42,.74); }
.additional-intro-copy h2,.additional-section-head h2,.additional-cta h2 { margin:18px 0 0; color:var(--add-ink); font:700 clamp(2rem,4vw,3.6rem)/1.02 'Space Grotesk',sans-serif; letter-spacing:-.065em; }
.additional-copy-cards { display:grid; gap:12px; margin-top:28px; }
.additional-copy-cards p { position:relative; margin:0; padding:21px 22px 21px 66px; color:var(--add-muted); border:1px solid rgba(24,70,91,.12); border-radius:18px; background:#fff; box-shadow:0 12px 30px rgba(31,77,97,.055); font-size:15px; line-height:1.72; }
.additional-copy-cards p:nth-child(2) { background:linear-gradient(135deg,#eaf3ff,#fff); border-color:rgba(36,119,212,.2); }
.additional-copy-cards span { position:absolute; top:22px; left:22px; color:#2477d4; font:700 12px 'Space Grotesk',sans-serif; letter-spacing:.12em; }
.additional-courses-section { padding:105px 0 112px; background:#fff; }
.additional-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:42px; }
.additional-section-head > p { max-width:480px; margin:0; color:var(--add-muted); font-size:15px; line-height:1.7; }
.additional-course-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; align-items:stretch; }
.additional-course-card { overflow:hidden; border:1px solid rgba(24,70,91,.13); border-radius:22px; background:#f7fbfc; box-shadow:0 18px 45px rgba(31,77,97,.08); }
.additional-course-image { position:relative; height:205px; overflow:hidden; background:#092738; }
.additional-course-image::after { content:''; position:absolute; inset:0; background:linear-gradient(transparent 45%,rgba(3,17,29,.72)); }
.additional-course-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.additional-course-card:hover .additional-course-image img { transform:scale(1.06); }
.additional-course-index { position:absolute; z-index:1; top:17px; left:18px; color:#fff; font:700 11px 'Space Grotesk',sans-serif; letter-spacing:.14em; }
.additional-course-body { display:flex; min-height:415px; flex-direction:column; padding:25px 23px 23px; }
.additional-course-tag { color:#2477d4; font:700 10px 'DM Sans',sans-serif; letter-spacing:.15em; text-transform:uppercase; }
.additional-course-body h3 { margin:13px 0 0; color:var(--add-ink); font:700 clamp(1.5rem,2.2vw,2rem)/1.05 'Space Grotesk',sans-serif; letter-spacing:-.05em; }
.additional-course-body > p { margin:15px 0 0; color:var(--add-muted); font-size:14px; line-height:1.68; }
.additional-requirements { margin-top:20px; padding-top:17px; border-top:1px solid rgba(24,70,91,.12); }
.additional-requirements strong { color:var(--add-ink); font:600 .9rem 'Space Grotesk',sans-serif; }
.additional-requirements ul { display:grid; gap:9px; margin:12px 0 0; padding:0; list-style:none; }
.additional-requirements li { display:flex; align-items:flex-start; gap:9px; color:var(--add-muted); font-size:12px; line-height:1.45; }
.additional-requirements li svg { width:16px; height:16px; flex:0 0 auto; color:#2d7ed8; }
.additional-result { display:flex; align-items:flex-start; gap:9px; margin-top:18px !important; padding:12px; border-radius:12px; color:#3a6471 !important; background:rgba(77,157,255,.1); font-size:12px !important; }
.additional-result svg { width:17px; height:17px; flex:0 0 auto; color:#2477d4; }
.additional-course-link { display:inline-flex; align-items:center; gap:8px; align-self:flex-start; min-height:44px; margin-top:auto; padding:0; color:#2477d4; border:0; background:transparent; cursor:pointer; font-size:12px; font-weight:700; }
.additional-course-link:hover { color:#1556a6; }
.additional-format { padding:105px 0; color:#e8f7f9; background:linear-gradient(145deg,#092738,#061622); }
.additional-section-head-dark h2 { color:#fff; }
.additional-section-head-dark > p { color:#9ab5c3; }
.additional-format .additional-kicker,.additional-cta .additional-kicker { color:var(--add-aqua); }
.additional-step-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.additional-step { min-height:190px; padding:24px; border:1px solid rgba(149,205,226,.15); border-radius:19px; background:rgba(255,255,255,.045); }
.additional-step > span { display:grid; width:39px; height:39px; place-items:center; color:#06212b; border-radius:12px; background:var(--add-aqua); font:700 11px 'Space Grotesk',sans-serif; }
.additional-step h3 { margin:24px 0 0; color:#fff; font:600 1.05rem 'Space Grotesk',sans-serif; }
.additional-step p { margin:9px 0 0; color:#9bb5c2; font-size:13px; line-height:1.6; }
.additional-faq { padding:105px 0; background:#fff; }
.additional-section-head-center { display:block; text-align:center; }
.additional-section-head-center .additional-kicker { justify-content:center; }
.additional-section-head-center h2 { margin-top:16px; }
.additional-section-head-center > p { margin:16px auto 0; }
.additional-faq-list { display:grid; gap:10px; }
.additional-faq-item { border:1px solid rgba(24,70,91,.13); border-radius:14px; background:#f7fbfc; }
.additional-faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:62px; padding:0 20px; color:var(--add-ink); cursor:pointer; font:600 14px 'Space Grotesk',sans-serif; list-style:none; }
.additional-faq-item summary::-webkit-details-marker { display:none; }
.additional-faq-item summary span { color:#2477d4; font-size:22px; font-weight:400; transition:transform .2s ease; }
.additional-faq-item[open] summary span { transform:rotate(45deg); }
.additional-faq-item p { margin:0; padding:0 20px 20px; color:var(--add-muted); font-size:13px; line-height:1.65; }
.additional-cta { padding:72px 0; color:#fff; background:linear-gradient(120deg,#0b3445,#061824); }
.additional-cta h2 { color:#fff; }
.additional-cta p { max-width:590px; margin:14px 0 0; color:#a3beca; font-size:14px; line-height:1.6; }
@media (max-width:1000px) { .additional-course-grid { grid-template-columns:1fr 1fr; } .additional-course-card:last-child { grid-column:span 2; max-width:calc(50% - 9px); } .additional-step-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:900px) { .additional-hero-inner { align-items:start; flex-direction:column; padding-bottom:62px; } .additional-hero-badge { width:min(370px,100%); } .additional-intro-grid { grid-template-columns:1fr; } .additional-photo { max-height:560px; } }
@media (max-width:700px) { .additional-hero { min-height:710px; } .additional-hero-inner { padding-top:82px; } .additional-intro,.additional-courses-section,.additional-format,.additional-faq { padding:76px 0; } .additional-intro-copy h2,.additional-section-head h2,.additional-cta h2 { font-size:2.35rem; } .additional-course-grid,.additional-step-grid { grid-template-columns:1fr; } .additional-course-card:last-child { grid-column:auto; max-width:none; } .additional-course-body { min-height:0; } .additional-photo,.additional-photo img { min-height:330px; } .additional-section-head { display:block; } .additional-section-head > p { margin-top:17px; } .additional-copy-cards p { padding-left:58px; } .additional-course-image { height:220px; } .additional-faq-item summary { min-height:68px; padding:10px 16px; } .additional-faq-item p { padding:0 16px 18px; } }
@media (prefers-reduced-motion: reduce) { .additional-course-image img { transition:none; } }
