.academy-page { background:#f7fbfa; color:var(--text); }
.academy-page h1,.academy-page h2,.academy-page h3,.academy-page p { margin-top:0; }
.academy-page h2 { font-size:clamp(1.9rem,3.5vw,2.8rem); line-height:1.15; letter-spacing:-.045em; margin-bottom:1.25rem; }
.academy-page h2 span { color:#287d98; }
.academy-page p { color:#536c7d; font-size:1rem; line-height:1.8; }
.academy-page .eyebrow { color:#286d85; font-size:.68rem; margin-bottom:1.25rem; }
.academy-page .button { font-size:.86rem; gap:.8rem; padding:1rem 1.4rem; border:0; cursor:pointer; line-height:1.5; text-align:center; }
.academy-page .button--primary { background:linear-gradient(110deg,#2674a1,#1b597e); box-shadow:0 8px 24px #226d9822; }
.academy-hero { padding:5rem 0 0; background:radial-gradient(ellipse at 100% 0%,#d7edf1,transparent 65%),linear-gradient(135deg,#f7faf3,#edf7f7); }
.academy-hero__grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:3.5rem; padding-bottom:4rem; }
.academy-hero h1 { font-size:clamp(2.7rem,4.6vw,4.2rem); letter-spacing:-.06em; line-height:1.05; margin-bottom:1.5rem; }
.academy-hero h1 span { color:#277b96; }
.academy-hero__copy .academy-hero__lead { color:var(--text); font-size:1.5rem; font-weight:650; line-height:1.4; letter-spacing:-.025em; }
.academy-hero__copy>p:not(.academy-hero__lead) { max-width:30rem; }
.academy-hero__note { display:flex; gap:.5rem; margin-top:1rem; font-size:.73rem; color:#556f78; line-height:1.6; }
.academy-hero__note>span { color:#217962; font-weight:800; }
.academy-hero__visual { margin:0; position:relative; padding-bottom:1.8rem; }
.academy-hero__visual>img { width:100%; aspect-ratio:1.13; height:auto; object-fit:cover; border-radius:6.5rem 1.5rem 1.5rem 1.5rem; box-shadow:0 22px 60px #143a5020; }
.academy-hero__visual figcaption { position:absolute; display:flex; align-items:center; gap:1rem; left:-1.5rem; right:2.5rem; bottom:0; border:1px solid #ffffff; border-radius:1rem; background:#ffffffed; backdrop-filter:blur(15px); padding:1.1rem 1.4rem; box-shadow:0 15px 35px #153e4e14; }
.academy-hero__visual figcaption strong,.academy-hero__visual figcaption small { display:block; }
.academy-hero__visual figcaption strong { font-size:.95rem; }
.academy-hero__visual figcaption small { color:#637b86; margin-top:.25rem; font-size:.75rem; }
.academy-visual-icon { background:#e5f3ef; color:#277c78; display:grid; place-items:center; width:2.6rem; height:2.6rem; border-radius:.7rem; font-size:1.5rem; }
.academy-sectors { display:flex; justify-content:space-between; gap:1rem; padding:1.5rem 0; border-top:1px solid #c9dedd; color:#53707a; font-size:.75rem; font-weight:700; }
.academy-section { padding:5rem 0; }
.academy-section-heading { max-width:45rem; text-align:center; margin:0 auto 2.6rem; }
.academy-section-heading>p { max-width:36rem; margin:0 auto; }
.academy-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.academy-card { background:white; padding:2rem; border:1px solid #e2ecea; border-radius:1.2rem; box-shadow:0 12px 36px #264d4b06; }
.academy-icon { display:grid; place-items:center; width:3.3rem; height:3.3rem; border-radius:.9rem; background:#eaf5f2; color:#28778a; margin-bottom:1.6rem; }
.academy-icon svg { width:1.8rem; height:1.8rem; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.academy-card__label { text-transform:uppercase; letter-spacing:.1em; font-size:.6rem; font-weight:800; color:#497883; display:block; margin-bottom:.6rem; }
.academy-card h3 { font-size:1.25rem; line-height:1.4; letter-spacing:-.03em; }
.academy-card p { font-size:.88rem; }
.academy-card small { display:block; color:#647c86; font-size:.73rem; line-height:1.6; }
.academy-center { text-align:center; margin-top:2rem; }
.academy-center .button { border:1px solid #d5e4e4; box-shadow:none; }
.academy-learning { background:#edf5f3; }
.academy-learning__grid { display:grid; grid-template-columns:1fr 1.05fr; gap:4rem; align-items:center; }
.academy-learning blockquote { margin:1.8rem 0; border-left:3px solid #70b5ad; padding-left:1.25rem; font-size:1.15rem; line-height:1.65; letter-spacing:-.02em; }
.academy-text-link { font-size:.85rem; font-weight:800; color:#256e89; }
.academy-learning__tiles { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.academy-learning__tiles>div { background:#ffffffc9; border:1px solid #fff; border-radius:1rem; padding:1.5rem; }
.academy-learning__tiles>div>span { font-size:.68rem; color:#438a96; font-weight:800; display:block; margin-bottom:.75rem; }
.academy-learning__tiles h3 { font-size:.95rem; margin-bottom:.4rem; }
.academy-learning__tiles p { font-size:.78rem; margin:0; line-height:1.6; }
.academy-students__panel { display:grid; grid-template-columns:1fr 1fr; gap:4rem; background:#173e53; padding:3.5rem; border-radius:1.6rem; }
.academy-students__panel h2 { color:white; }
.academy-students__panel h2 span { color:#a9d8d7; }
.academy-students__panel p { color:#c6d9df; font-size:.92rem; margin-bottom:0; }
.academy-students__panel .eyebrow { color:#b1d6dc; }
.academy-students__panel ul { padding:0; margin:0; list-style:none; align-self:center; }
.academy-students__panel li { position:relative; padding:.8rem 0 .8rem 1.8rem; color:#e4eff0; font-size:.88rem; line-height:1.6; border-bottom:1px solid #ffffff1a; }
.academy-students__panel li:last-child { border-bottom:0; }
.academy-students__panel li::before { content:'✓'; color:#a1d9cb; position:absolute; left:0; }
.academy-process { padding-top:0; }
.academy-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; padding:0; margin:0; list-style:none; }
.academy-steps li { border-top:1px solid #ccdfde; padding-top:1.5rem; }
.academy-steps li>span { font-size:1.9rem; color:#80b2b8; font-weight:600; display:block; margin-bottom:1rem; }
.academy-steps h3 { font-size:1rem; }
.academy-steps p { font-size:.85rem; }
.academy-contact { background:linear-gradient(130deg,#e7f2ed,#deeff3); scroll-margin-top:5rem; }
.academy-contact__grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:4rem; align-items:start; }
.academy-contact__intro { padding-top:2.5rem; }
.academy-contact__promise { border-top:1px solid #bed6d5; padding-top:1.5rem; margin-top:2rem; }
.academy-contact__promise strong,.academy-contact__promise span { display:block; font-size:.83rem; line-height:1.8; }
.academy-contact__promise span { color:#536f7a; margin-top:.4rem; }
.academy-form-panel { background:white; padding:2rem; border-radius:1.3rem; box-shadow:0 18px 55px #17444b0d; }
.academy-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; }
.academy-form-note { font-size:.72rem!important; }
.academy-field { display:flex; flex-direction:column; gap:.45rem; min-width:0; }
.academy-field--full { grid-column:1/-1; }
.academy-field label { font-size:.75rem; font-weight:750; }
.academy-field label span { font-weight:400; color:#647b88; }
.academy-field input,.academy-field select,.academy-field textarea { width:100%; min-width:0; min-height:2.8rem; padding:.7rem .8rem; font:inherit; font-size:.82rem; color:var(--text); background:#f9fbfb; border:1px solid #ccdcdf; border-radius:.5rem; }
.academy-field textarea { resize:vertical; }
.academy-field input:focus,.academy-field select:focus,.academy-field textarea:focus { outline:2px solid #397f9d; outline-offset:2px; }
.academy-page a:focus-visible,.academy-page button:focus-visible { outline:3px solid #3187af; outline-offset:4px; }
.academy-form-panel .form-privacy { margin:1.4rem 0; }
.academy-form-panel .form-privacy__check { font-size:.73rem; }
.academy-form-panel .form-privacy__check input { width:1rem; height:1rem; flex-shrink:0; }
.academy-form-panel .form-privacy__layer { font-size:.62rem; line-height:1.65; }
.academy-feedback { padding:1rem; border-radius:.6rem; margin-bottom:1.2rem; font-size:.85rem; line-height:1.7; }
.academy-feedback p { margin:0; font-size:.85rem; }
.academy-feedback--success { background:#e6f6ec; color:#1c5942; border:1px solid #a2cfb4; }
.academy-feedback--error { background:#fff1ee; color:#873f2e; border:1px solid #efbdb1; }
.academy-field-error { color:#9b392a; font-size:.7rem; line-height:1.5; }
@media(min-width:1440px) { .academy-hero { padding-top:6rem; } }
@media(max-width:900px) { .academy-hero__grid { gap:2rem; }.academy-section { padding:3.5rem 0; }.academy-card { padding:1.5rem; }.academy-learning__grid,.academy-contact__grid { gap:2rem; }.academy-students__panel { gap:2rem; padding:2rem; }.academy-sectors { flex-wrap:wrap; justify-content:center; }.academy-steps { gap:1rem; }.academy-form-panel { padding:1.5rem; } }
@media(max-width:680px) { .academy-hero { padding-top:2.8rem; }.academy-hero__grid { grid-template-columns:1fr; gap:2rem; padding-bottom:2rem; }.academy-hero h1 { font-size:3rem; }.academy-hero__copy .academy-hero__lead { font-size:1.3rem; }.academy-hero__visual { margin:.5rem .3rem 0; }.academy-hero__visual>img { aspect-ratio:1.4; border-radius:3rem 1rem 1rem 1rem; }.academy-hero__visual figcaption { left:.75rem; right:.75rem; padding:.9rem; }.academy-sectors { font-size:.68rem; gap:.6rem 1rem; padding:1.2rem 0; }.academy-card-grid,.academy-learning__grid,.academy-students__panel,.academy-contact__grid { grid-template-columns:1fr; }.academy-section-heading { text-align:left; margin-bottom:1.8rem; }.academy-section-heading>p { margin:0; }.academy-card { padding:1.6rem; }.academy-icon { margin-bottom:1rem; }.academy-card h3 { font-size:1.2rem; }.academy-learning__tiles { gap:.7rem; }.academy-learning__tiles>div { padding:1rem; }.academy-students__panel { padding:1.6rem; gap:1rem; }.academy-steps { grid-template-columns:1fr 1fr; gap:1.3rem; }.academy-process { padding-top:0; }.academy-contact__intro { padding-top:0; }.academy-form-panel { padding:1.25rem; }.academy-form-grid { grid-template-columns:1fr; }.academy-page .button { font-size:.8rem; }.academy-page h2 { font-size:2rem; }.academy-contact { scroll-margin-top:4rem; } }
@media(prefers-reduced-motion:reduce) { .academy-page * { scroll-behavior:auto!important; transition:none!important; } }
