@charset "UTF-8";
/* === About / Value Cards === */
.section-about{position:relative;padding:6rem 0 8rem;background:#fff;overflow:hidden}
@media(min-width:768px){.section-about{padding:8rem 0 10rem}}
.value-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.value-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}
.value-card {
	position: relative;
	background: #f8fafc;
	padding: 2.25rem 2rem;
	border-radius: 2rem;
	border: 1px solid #f1f5f9;
	display: flex;
	flex-direction: column;
	height: 100%;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	overflow: hidden;
}
@media(min-width:768px) {
	.value-card {
		padding: 3rem 2.75rem;
	}
}
.value-card:hover {
	transform: translateY(-6px);
	background: #fff;
	border-color: rgba(37, 99, 235, 0.15);
	box-shadow: 0 20px 40px rgba(0, 33, 71, 0.05);
}
.value-card__bg-circle {
	position: absolute;
	top: 0;
	right: 0;
	width: 8.5rem;
	height: 8.5rem;
	background: rgba(37, 99, 235, 0.04);
	border-radius: 0 0 0 100%; /* Perfect top-right quarter-circle! */
	transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), 
				background-color 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	z-index: 1;
	transform-origin: top right;
}
.value-card:hover .value-card__bg-circle {
	background: rgba(37, 99, 235, 0.08);
	transform: scale(1.1);
}
.value-card__inner {
	position: relative;
	z-index: 10;
	display: flex;
	flex-direction: column;
	height: 100%;
	flex-grow: 1;
}
.value-card__top {
	display: flex;
	align-items: center;
	margin-bottom: 2.25rem;
}
.value-card__icon {
	width: 3.25rem;
	height: 3.25rem;
	background: #002147;
	border-radius: 0.875rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	box-shadow: 0 8px 20px rgba(0, 33, 71, 0.12);
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.value-card__icon svg {
	width: 1.5rem !important;
	height: 1.5rem !important;
	stroke-width: 2.25px;
}
.value-card:hover .value-card__icon {
	background: #2563eb;
	transform: scale(1.06) rotate(3deg);
	box-shadow: 0 10px 25px rgba(37, 99, 235, 0.25);
}
.value-card__stat-block {
	position: absolute;
	top: -0.25rem; /* Perfectly aligned with the top of the inner card padding container */
	right: 0;
	text-align: right;
	z-index: 15;
}
@media(min-width:768px) {
	.value-card__stat-block {
		top: -0.5rem; /* Sit slightly higher than the icon container on desktop for a balanced visual center */
		right: 0;
	}
}
.value-card__stat {
	font-size: 2rem;
	font-weight: 900;
	color: #002147;
	letter-spacing: -0.03em;
	line-height: 1;
	margin-bottom: 0.125rem;
}
@media(min-width:768px) {
	.value-card__stat {
		font-size: 2.25rem;
	}
}
.value-card__stat-label {
	font-size: 0.5625rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	color: #94a3b8;
	text-transform: uppercase;
	display: block;
}
.value-card__title {
	font-size: 1.1875rem;
	font-weight: 800;
	color: #002147;
	letter-spacing: -0.02em;
	margin-bottom: 0.75rem;
	line-height: 1.35;
	transition: color 0.3s ease;
	padding-right: 5.5rem; /* Avoid overlap with absolute stat block on mobile */
}
@media(min-width:768px) {
	.value-card__title {
		padding-right: 7rem; /* Avoid overlap with absolute stat block on desktop */
	}
}
.value-card:hover .value-card__title {
	color: #2563eb;
}
.value-card__desc {
	font-size: 0.9375rem;
	color: #64748b;
	font-weight: 500;
	line-height: 1.65;
	flex-grow: 1;
}

/* === Courses / Flagship === */
.section-courses{padding:6rem 0 8rem;background:#fff}
.courses-layout{display:grid;gap:4rem;align-items:center}
@media(min-width:1024px){.courses-layout{grid-template-columns:1fr 1fr}}
.courses-content{display:flex;flex-direction:column;gap:2.5rem}
.courses-content__text{display:flex;flex-direction:column;gap:1.5rem;color:#4b5563;max-width:36rem;font-size:1.0625rem;font-weight:500;line-height:1.7}
.courses-features{display:grid;gap:1rem 2rem}
@media(min-width:768px){.courses-features{grid-template-columns:1fr 1fr}}
.courses-feature{display:flex;align-items:center;gap:.75rem}
.courses-feature__icon{color:#0056b3;flex-shrink:0;transition:transform .3s}
.courses-feature:hover .courses-feature__icon{transform:scale(1.1)}
.courses-feature span{font-size:.8125rem;font-weight:900;color:#002147;letter-spacing:-.02em;text-transform:uppercase}
.courses-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding-top:1rem}
.courses-advisor-link{display:flex;align-items:center;gap:1rem;color:#002147;transition:color .3s}
.courses-advisor-link:hover{color:#0056b3}
.courses-advisor-link__play{position:relative;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center}
.courses-advisor-link__play::before{content:'';position:absolute;inset:0;background:rgba(0,86,179,.1);border-radius:50%;transition:transform .3s}
.courses-advisor-link:hover .courses-advisor-link__play::before{transform:scale(1.1)}
.courses-advisor-link__play svg{position:relative;z-index:10;color:#0056b3}
.courses-advisor-link span{font-size:.875rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.courses-image{position:relative}
.courses-image__frame{position:relative;border-radius:3rem;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,.15);transition:transform .7s}
.courses-image:hover .courses-image__frame{transform:scale(1.02)}
.courses-image__img{width:100%;height:auto;object-fit:cover;aspect-ratio:4/3;min-height:500px}
.courses-image__gradient{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.4),transparent);opacity:.6}
.courses-image__ring{position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.courses-image__offset{position:absolute;z-index:-1;bottom:-2.5rem;right:-2.5rem;width:100%;height:100%;background:#f0f7ff;border-radius:3rem;transform:translate(1rem,1rem)}
.courses-image__badge{position:absolute;top:2rem;left:2rem;z-index:20;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);padding:.5rem 1.5rem;border-radius:9999px}
.courses-image__badge span{color:#fff;font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em}

/* === Programmes Grid === */
.section-programmes{padding:6rem 0 8rem;background:#f8fafc}
.featured-programme{margin-bottom:3rem}
.featured-programme__inner{position:relative;background:#002147;border-radius:2rem;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,.15);display:grid}
@media(min-width:1024px){.featured-programme__inner{grid-template-columns:1fr 1fr}}
.featured-programme__image{position:relative;height:16rem;overflow:hidden}
@media(min-width:768px){.featured-programme__image{height:20rem}}
@media(min-width:1024px){.featured-programme__image{height:auto;min-height:20rem}}
.featured-programme__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.featured-programme:hover .featured-programme__image img{transform:scale(1.05)}
.featured-programme__gradient-r{position:absolute;inset:0;background:linear-gradient(to right,transparent,rgba(0,33,71,.8));display:none}
@media(min-width:1024px){.featured-programme__gradient-r{display:block}}
.featured-programme__gradient-b{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,33,71,.8),transparent)}
@media(min-width:1024px){.featured-programme__gradient-b{display:none}}
.featured-programme__badge{position:absolute;top:1.5rem;left:1.5rem;z-index:10;display:flex;align-items:center;gap:.5rem;background:#2563eb;padding:.5rem 1rem;border-radius:9999px;box-shadow:0 10px 25px rgba(0,0,0,.2)}
.featured-programme__badge span{font-size:.625rem;font-weight:900;letter-spacing:.1em;color:#fff;text-transform:uppercase}
.featured-programme__content{padding:2.5rem;display:flex;flex-direction:column;justify-content:center;gap:2rem;position:relative}
@media(min-width:768px){.featured-programme__content{padding:3.5rem 4rem}}
.featured-programme__blur{position:absolute;top:0;right:0;width:15rem;height:15rem;background:rgba(0,86,179,.1);border-radius:50%;transform:translate(50%,-50%);filter:blur(3rem)}
.featured-programme__body{position:relative;z-index:10;display:flex;flex-direction:column;gap:1.5rem}
.featured-programme__icon-wrap{width:3.5rem;height:3.5rem;background:#2563eb;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.15)}
.featured-programme__title{font-size:1.5rem;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1.2}
@media(min-width:768px){.featured-programme__title{font-size:2rem}}
.featured-programme__desc{color:#d1d5db;font-size:1rem;font-weight:500;line-height:1.7;max-width:32rem}
.featured-programme__btns{display:flex;flex-wrap:wrap;gap:1rem;padding-top:.5rem}
.programme-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.programme-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}
@media(min-width:1024px){.programme-grid{grid-template-columns:repeat(3,1fr)}}
.programme-card{display:flex;flex-direction:column;background:#fff;border-radius:1.5rem;overflow:hidden;border:1px solid #f3f4f6;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .5s}
.programme-card:hover{box-shadow:0 25px 50px rgba(0,0,0,.1);border-color:rgba(0,86,179,.2)}
.programme-card__image{position:relative;height:12rem;overflow:hidden;flex-shrink:0}
@media(min-width:768px){.programme-card__image{height:13rem}}
.programme-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.programme-card:hover .programme-card__image img{transform:scale(1.1)}
.programme-card__hover-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.3),transparent);opacity:0;transition:opacity .3s}
.programme-card:hover .programme-card__hover-overlay{opacity:1}
.programme-card__body{padding:1.75rem;display:flex;flex-direction:column;flex-grow:1}
.programme-card__title{font-size:.9375rem;font-weight:900;color:#002147;margin-bottom:.75rem;letter-spacing:-.02em;line-height:1.3;transition:color .3s}
.programme-card:hover .programme-card__title{color:#0056b3}
.programme-card__desc{font-size:.8125rem;color:#6b7280;font-weight:500;line-height:1.7;margin-bottom:1.5rem;flex-grow:1}
.programme-card__link{font-size:.6875rem;font-weight:900;letter-spacing:.15em;color:#0056b3;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;margin-top:auto}

/* === Stats === */
.section-stats{position:relative;padding:6rem 0;display:flex;align-items:center;overflow:hidden}
@media(min-width:768px){.section-stats{padding:0;height:37.5rem}}
.section-stats__bg{position:absolute;inset:0;z-index:0}
.section-stats__bg-img{width:100%;height:100%;object-fit:cover}
.section-stats__overlay{position:absolute;inset:0;background:rgba(0,33,71,.6)}
.section-stats__content{position:relative;z-index:10}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
@media(min-width:1024px){.stats-grid{grid-template-columns:repeat(4,1fr);gap:2rem}}
.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem}
.stat-item__icon{width:4rem;height:4rem;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;border:1px solid rgba(255,255,255,.2);transition:all .5s}
.stat-item:hover .stat-item__icon{background:#0056b3;transform:scale(1.1);border-color:transparent}
.stat-item__value{font-size:2.25rem;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1}
@media(min-width:768px){.stat-item__value{font-size:3rem}}
@media(min-width:1024px){.stat-item__value{font-size:4.5rem}}
.stat-item__plus{color:#0056b3;margin-left:.25rem}
.stat-item__label{font-size:.625rem;font-weight:900;letter-spacing:.3em;color:rgba(255,255,255,.6);text-transform:uppercase;padding-top:.5rem}

/* === Why Aviation === */
.section-why-aviation{position:relative;padding:6rem 0 8rem;background:#fff;overflow:hidden}
.why-aviation-grid{display:grid;gap:2rem}
@media(min-width:768px){.why-aviation-grid{grid-template-columns:repeat(3,1fr)}}
.why-card{background:#f8fafc;padding:3rem;border-radius:2.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem;transition:all .5s;border:1px solid transparent}
.why-card:hover{background:#fff;box-shadow:0 25px 50px rgba(0,0,0,.1);border-color:#f3f4f6}
.why-card__icon {
	width: 3.25rem;
	height: 3.25rem;
	background: #002147;
	border-radius: 0.875rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	box-shadow: 0 8px 20px rgba(0, 33, 71, 0.12);
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.why-card__icon svg {
	width: 1.375rem !important;
	height: 1.375rem !important;
	stroke-width: 1.75px !important;
}
.why-card:hover .why-card__icon {
	background: #2563eb;
	transform: scale(1.06) rotate(3deg);
	box-shadow: 0 10px 25px rgba(37, 99, 235, 0.25);
}
.why-card__title{font-size:.8125rem;font-weight:900;color:#002147;letter-spacing:.15em;text-transform:uppercase}
.why-card__desc{font-size:.875rem;color:#6b7280;font-weight:500;line-height:1.7}

/* === Training Hub === */
.section-training-hub{position:relative;background:#002147;overflow:hidden;padding:8rem 0 12rem}
.section-training-hub__content{position:relative;z-index:20}
.training-hub-layout{display:grid;gap:5rem;align-items:center}
@media(min-width:1024px){.training-hub-layout{grid-template-columns:1fr 1fr}}
.training-hub__title{font-size:2.25rem;font-weight:900;color:#fff;line-height:1.1;letter-spacing:-.02em;margin-bottom:2.5rem}
@media(min-width:768px){.training-hub__title{font-size:3rem}}
@media(min-width:1024px){.training-hub__title{font-size:4.5rem}}
.training-hub__desc{display:flex;flex-direction:column;gap:1.5rem;color:#9ca3af;max-width:36rem;font-size:1.0625rem;font-weight:500;line-height:1.7;margin-bottom:2.5rem}
.training-hub__checks{display:flex;flex-direction:column;gap:1rem;padding-top:1rem}
.training-hub__check{display:flex;align-items:center;gap:1rem}
.training-hub__check svg{color:#0056b3;flex-shrink:0}
.training-hub__check span{font-size:.75rem;font-weight:900;letter-spacing:.15em;color:#fff;text-transform:uppercase;font-style:italic}
.training-hub__cards{position:relative}
.training-hub__blur-bg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:rgba(0,86,179,.05);border-radius:50%;filter:blur(5rem);pointer-events:none;z-index:-1}
.training-hub__card-grid{display:grid;gap:2rem}
@media(min-width:768px){.training-hub__card-grid{grid-template-columns:1fr 1fr}}
.hub-card{background:rgba(255,255,255,.05);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);padding:2rem 2.5rem;border-radius:2.5rem;display:flex;flex-direction:column;gap:1.5rem;transition:all .7s;box-shadow:0 25px 50px rgba(0,0,0,.15)}
.hub-card:hover{transform:translateY(-.5rem);background:rgba(255,255,255,.1)}
.hub-card--2{margin-top:0}
@media(min-width:768px){.hub-card--2{margin-top:5rem}}
.hub-card--3{grid-column:1/-1;justify-self:center;max-width:20rem}
@media(max-width:767px){.hub-card--3{max-width:100%}}
.hub-card__icon {
	width: 3rem;
	height: 3rem;
	background: #2563eb; /* Premium bright blue matching original correct design */
	border-radius: 0.75rem; /* Compact elegant rounded corners */
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
				background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
@media(min-width:768px) {
	.hub-card__icon {
		width: 3.25rem;
		height: 3.25rem;
	}
}
.hub-card__icon svg {
	width: 1.375rem !important; /* Beautiful, balanced icon-to-container ratio */
	height: 1.375rem !important;
	stroke-width: 2px !important; /* Elegant regular stroke thickness */
}
.hub-card:hover .hub-card__icon {
	background: #002147;
	transform: scale(1.08) rotate(3deg);
}
.hub-card__title{font-size:.8125rem;font-weight:900;color:#fff;letter-spacing:.15em;text-transform:uppercase;line-height:1.4}
.hub-card__desc{font-size:.625rem;font-weight:700;color:#9ca3af;line-height:1.7;text-transform:uppercase}

/* === Our Role === */
.section-our-role{padding:6rem 0;background:#fff;overflow:hidden}
.role-banner{position:relative;border-radius:2rem;overflow:hidden;min-height:31.25rem;margin-bottom:5rem;box-shadow:0 25px 50px rgba(0,0,0,.15)}
@media(min-width:768px){.role-banner{border-radius:3.5rem;min-height:37.5rem}}
.role-banner__bg{position:absolute;inset:0;z-index:0}
.role-banner__bg-img{width:100%;height:100%;object-fit:cover;object-position:right bottom}
.role-banner__overlay{position:absolute;inset:0;background:rgba(0,33,71,.4)}
.role-banner__gradient{position:absolute;inset:0;background:linear-gradient(to right,#002147,rgba(0,33,71,.95),transparent)}
.role-banner__content{position:relative;z-index:10;display:flex;flex-direction:column;justify-content:center;padding:3rem;max-width:56rem}
@media(min-width:768px){.role-banner__content{padding:5rem}}
.role-banner__title{font-size:2.25rem;font-weight:900;color:#fff;line-height:1.15;letter-spacing:-.02em;margin-bottom:2rem}
@media(min-width:768px){.role-banner__title{font-size:3rem}}
@media(min-width:1024px){.role-banner__title{font-size:3.75rem}}
.role-banner__text{display:flex;flex-direction:column;gap:1.5rem;color:#9ca3af;font-size:1.0625rem;font-weight:500;line-height:1.7;max-width:42rem;margin-bottom:2rem}
.role-banner__actions{display:flex;align-items:center;gap:2rem;padding-top:1rem;flex-wrap:wrap}
.role-banner__trusted{display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.1);padding-left:1.5rem}
.role-banner__trusted-label{font-size:.625rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.15em}
.role-banner__trusted-value{font-size:.8125rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:-.02em}
.foundation-grid{display:grid;gap:3rem;padding-top:2.5rem}
@media(min-width:768px){.foundation-grid{grid-template-columns:repeat(3,1fr)}}
.foundation-item{display:flex;flex-direction:column;align-items:flex-start;gap:0.875rem}
.foundation-item__icon{width:3rem;height:3rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:0.75rem;display:flex;align-items:center;justify-content:center;color:#2563eb;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:transform 0.4s cubic-bezier(0.16,1,0.3,1),background-color 0.4s cubic-bezier(0.16,1,0.3,1),border-color 0.4s cubic-bezier(0.16,1,0.3,1),color 0.4s cubic-bezier(0.16,1,0.3,1)}
.foundation-item__icon svg{width:1.25rem!important;height:1.25rem!important;stroke-width:1.75px!important}
.foundation-item:hover .foundation-item__icon{background:#2563eb;color:#fff;border-color:#2563eb;transform:scale(1.08) rotate(3deg);box-shadow:0 10px 25px rgba(37,99,235,0.2)}
.foundation-item__title{font-size:.9375rem;font-weight:900;color:#002147;letter-spacing:-.02em;text-transform:uppercase;transition:color .3s}
.foundation-item:hover .foundation-item__title{color:#2563eb}
.foundation-item__desc{font-size:.875rem;color:#6b7280;font-weight:500;line-height:1.7}

/* === Student Journey === */
.section-journey{padding:6rem 0;background:#f8fafc;border-top:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6}
.timeline{position:relative;max-width:64rem;margin:0 auto;padding:0 1rem}
.timeline__line{position:absolute;left:2rem;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,rgba(0,86,179,.1),rgba(0,86,179,.4),rgba(0,86,179,.1))}
@media(min-width:768px){.timeline__line{left:50%;transform:translateX(-50%)}}
.timeline__step{position:relative;display:flex;align-items:center;margin-bottom:2.5rem}
@media(min-width:768px){.timeline__step--left{flex-direction:row-reverse}}
.timeline__spacer{display:none}
@media(min-width:768px){.timeline__spacer{display:block;width:50%}}
.timeline__icon-wrap{position:relative;z-index:10;flex-shrink:0;width:4rem;height:4rem;display:flex;align-items:center;justify-content:center}
@media(min-width:768px){.timeline__icon-wrap{width:3.5rem;height:3.5rem}}
.timeline__pulse{position:absolute;inset:0;border-radius:50%;background:rgba(0,86,179,.1);animation:pulse 3s ease-in-out infinite;z-index:0}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.3);opacity:0}}
.timeline__icon{position:relative;z-index:10;width:100%;height:100%;background:#002147;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 25px rgba(0,21,71,0.15);border:4px solid #fff;cursor:pointer;transition:transform 0.4s cubic-bezier(0.16,1,0.3,1),background-color 0.4s cubic-bezier(0.16,1,0.3,1),box-shadow 0.4s cubic-bezier(0.16,1,0.3,1)}
.timeline__icon svg{width:1.25rem!important;height:1.25rem!important;stroke-width:1.75px!important}
.timeline__icon:hover{transform:scale(1.1);background:#2563eb;box-shadow:0 10px 30px rgba(37,99,235,0.4)}
.timeline__content{width:100%;padding-left:1.5rem}
@media(min-width:768px){.timeline__content{width:50%;padding-left:0}
.timeline__step--left .timeline__content{padding-right:2.5rem;text-align:right}
.timeline__step--right .timeline__content{padding-left:2.5rem;text-align:left}}
.timeline__title{font-size:.8125rem;font-weight:900;letter-spacing:.15em;color:#002147;text-transform:uppercase;line-height:1.4;transition:color .3s}
@media(min-width:768px){.timeline__title{font-size:.9375rem;max-width:17.5rem}
.timeline__step--left .timeline__title{margin-left:auto}
.timeline__step--right .timeline__title{margin-right:auto}}
.timeline__step:hover .timeline__title{color:#0056b3}

/* === Next Step CTA === */
.section-next-step{padding:6rem 0;background:#fff;overflow:hidden}
.next-step-card{position:relative;border-radius:2rem;background:#002147;overflow:hidden;min-height:37.5rem;box-shadow:0 25px 50px rgba(0,0,0,.15)}
@media(min-width:768px){.next-step-card{border-radius:3.5rem}}
.next-step-card__blur{position:absolute;top:0;right:0;width:50%;height:100%;background:rgba(0,86,179,.05);filter:blur(7.5rem);pointer-events:none}
.next-step-card__inner{position:relative;z-index:10;display:grid;gap:3rem;padding:1.5rem;align-items:center}
@media(min-width:768px){.next-step-card__inner{gap:4rem;padding:3rem}}
@media(min-width:1024px){.next-step-card__inner{grid-template-columns:1fr 1fr;padding:5rem}}
.next-step-form-wrap{background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 25px 50px rgba(0,0,0,.15);display:flex;flex-direction:column;gap:1.5rem;max-width:32rem;margin:0 auto;width:100%}
@media(min-width:768px){.next-step-form-wrap{border-radius:2.5rem;padding:2.5rem;gap:2rem}}
.next-step-form-wrap__title{font-size:1.5rem;font-weight:900;color:#002147;letter-spacing:-.02em;line-height:1.2}
@media(min-width:768px){.next-step-form-wrap__title{font-size:1.875rem}}
.next-step-form{display:flex;flex-direction:column;gap:1rem}
@media(min-width:768px){.next-step-form{gap:1.25rem}}
.next-step-content{display:flex;flex-direction:column;gap:2rem}
@media(min-width:768px){.next-step-content{gap:2.5rem}}
.next-step-content__title{font-size:1.875rem;font-weight:900;color:#fff;line-height:1.1;letter-spacing:-.02em;text-transform:uppercase}
@media(min-width:768px){.next-step-content__title{font-size:3rem}}
@media(min-width:1024px){.next-step-content__title{font-size:3.75rem}}
.next-step-content__desc{color:#94a3b8;font-size:1rem;font-weight:500;line-height:1.7;max-width:36rem}
@media(min-width:768px){.next-step-content__desc{font-size:1.0625rem}}
.next-step-content__btns{display:grid;grid-template-columns:1fr;gap:1rem;max-width:28rem}
@media(min-width:640px){.next-step-content__btns{grid-template-columns:1fr 1fr}}

/* === About Page - Hero & Mission === */
.about-page-section{padding:6rem 0}
@media(min-width:768px){.about-page-section{padding:8rem 0}}
.about-page-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:768px){.about-page-grid{grid-template-columns:1fr 1fr;gap:5rem}}

.about-offset-image{position:relative;width:100%;max-width:600px;margin:0 auto;padding-left:2rem;padding-top:2rem}
.about-offset-image--right{padding-left:0;padding-right:2rem}
.about-offset-image__bg{position:absolute;top:0;left:0;width:80%;height:80%;background:#2563eb;z-index:0}
.about-offset-image--right .about-offset-image__bg{left:auto;right:0}
.about-offset-image__frame{position:relative;z-index:10;width:100%;aspect-ratio:4/3;background:#e5e7eb;border:8px solid #fff;box-shadow:0 20px 50px rgba(0,0,0,.15);overflow:hidden}
@media(min-width:768px){.about-offset-image__frame{border-width:16px;aspect-ratio:5/4}}
.about-offset-image__img{width:100%;height:100%;object-fit:cover}

.about-content{padding-right:1rem}
.about-offset-image--right + .about-content{padding-right:0;padding-left:1rem}
@media(min-width:768px){
.about-content{padding-right:2rem}
.about-content--mission{padding-left:2rem;padding-right:0}
}

.about-tag{color:#2563eb;font-size:.625rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1rem}
.about-title{font-size:1.875rem;font-weight:900;color:#002147;letter-spacing:-.02em;line-height:1.2;margin-bottom:2rem}
@media(min-width:768px){.about-title{font-size:2.25rem}}
@media(min-width:1024px){.about-title{font-size:3rem}}
.about-title span{color:#2563eb}

.about-desc{color:#6b7280;font-size:1rem;font-weight:500;line-height:1.7;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem}
.about-quote{position:relative;padding-left:1.5rem;padding-top:.5rem;padding-bottom:.5rem}
.about-quote::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#2563eb}
.about-quote p{color:#002147;font-weight:700;font-style:italic;font-size:1.0625rem}

.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:1.5rem;border-top:1px solid #f3f4f6}
.about-stat__value{font-size:1.875rem;font-weight:900;color:#002147;letter-spacing:-.05em;line-height:1}
@media(min-width:768px){.about-stat__value{font-size:2.25rem}}
.about-stat__label{font-size:.625rem;font-weight:700;letter-spacing:.1em;color:#9ca3af;text-transform:uppercase;display:block;margin-top:.25rem}

.about-checks{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2.5rem}
.about-check{display:flex;align-items:center;gap:.75rem}
.about-check svg{color:#2563eb;flex-shrink:0;width:1rem;height:1rem}
.about-check span{font-weight:700;color:#002147;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}

/* === About Page - Leadership === */
.section-leadership{background:#f8fafc;padding:6rem 0}
@media(min-width:768px){.section-leadership{padding:8rem 0}}
.leadership-header{text-align:center;max-width:48rem;margin:0 auto 4rem}
.leadership-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.leadership-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}

.leader-card{display:flex;flex-direction:column;background:#fff;border-radius:1.5rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05);border:1px solid #f3f4f6;transition:all .5s}
.leader-card:hover{box-shadow:0 25px 50px rgba(0,0,0,.1);border-color:rgba(37,99,235,.2)}
.leader-card__image{position:relative;height:16rem;overflow:hidden;display:block}
@media(min-width:768px){.leader-card__image{height:18rem}}
.leader-card__img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.leader-card:hover .leader-card__img{transform:scale(1.05)}
.leader-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,33,71,.8),rgba(0,33,71,.2),transparent);transition:opacity .5s}
.leader-card:hover .leader-card__overlay{opacity:.9}
.leader-card__info{position:absolute;bottom:0;left:0;right:0;padding:1.5rem}
.leader-card__name{font-size:1.25rem;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1.2;transition:color .3s;margin-bottom:.25rem}
.leader-card:hover .leader-card__name{color:#93c5fd}
.leader-card__role{font-size:.75rem;font-weight:700;color:#93c5fd;letter-spacing:.1em;text-transform:uppercase;transition:color .3s}
.leader-card:hover .leader-card__role{color:#fff}
.leader-card__bio{padding:1.5rem;flex-grow:1}
@media(min-width:768px){.leader-card__bio{padding:2rem}}
.leader-card__bio p{font-size:.875rem;color:#6b7280;font-weight:500;line-height:1.7}

/* === About Page - Accreditation === */
.section-accreditation{background:#fff;padding:6rem 0;border-top:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6}
@media(min-width:768px){.section-accreditation{padding:8rem 0}}
.accred-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2.5rem;max-width:56rem;margin:0 auto 4rem}
@media(min-width:768px){.accred-logos{gap:4rem;margin-bottom:5rem}}
.accred-logo{height:3rem;object-fit:contain;opacity:.6;filter:grayscale(100%);transition:all .3s}
@media(min-width:768px){.accred-logo{height:4rem}}
.accred-logo:hover{opacity:1;filter:grayscale(0%)}

.accred-grid{display:grid;gap:1.5rem;max-width:56rem;margin:0 auto}
@media(min-width:768px){.accred-grid{grid-template-columns:repeat(3,1fr)}}
.accred-card{background:#f8fafc;padding:2rem;border-radius:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;border:1px solid #f3f4f6;transition:all .5s}
.accred-card:hover{border-color:rgba(37,99,235,.2);box-shadow:0 10px 25px rgba(0,0,0,.1)}
.accred-card__icon{width:3.5rem;height:3.5rem;background:#002147;border-radius:.75rem;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .5s;flex-shrink:0}
.accred-card__icon svg{width:1.5rem;height:1.5rem}
.accred-card:hover .accred-card__icon{background:#2563eb;transform:scale(1.1)}
.accred-card__title{font-size:.8125rem;font-weight:900;color:#002147;letter-spacing:.1em;text-transform:uppercase}
.accred-card__desc{font-size:.8125rem;color:#6b7280;font-weight:500;line-height:1.7}

/* === About Page - Testimonials === */
.section-testimonials{position:relative;background:#002147;padding:6rem 0;overflow:hidden}
@media(min-width:768px){.section-testimonials{padding:8rem 0}}
.testi-bg-1{position:absolute;top:0;right:0;width:31.25rem;height:31.25rem;background:rgba(37,99,235,.1);border-radius:50%;transform:translate(33%,-50%);filter:blur(5rem)}
.testi-bg-2{position:absolute;bottom:0;left:0;width:25rem;height:25rem;background:rgba(0,86,179,.1);border-radius:50%;transform:translate(-33%,50%);filter:blur(5rem)}
.testi-header{position:relative;z-index:10;text-align:center;max-width:48rem;margin:0 auto 4rem}
.testi-header .about-tag{color:#93c5fd}
.testi-header .about-title{color:#fff}
.testi-header .about-desc{color:#9ca3af}

.testi-grid{position:relative;z-index:10;display:grid;gap:2rem;max-width:64rem;margin:0 auto}
@media(min-width:768px){.testi-grid{grid-template-columns:1fr 1fr}}
.testi-card{background:rgba(255,255,255,.06);backdrop-filter:blur(12px);border-radius:2rem;padding:2rem;border:1px solid rgba(255,255,255,.1);transition:all .5s;display:flex;flex-direction:column}
@media(min-width:768px){.testi-card{padding:2.5rem}}
.testi-card:hover{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1)}
.testi-card__quote-icon{width:2.5rem;height:2.5rem;color:#2563eb;opacity:.6;margin-bottom:1.5rem}
.testi-card__quote{color:rgba(255,255,255,.9);font-size:.9375rem;font-weight:500;line-height:1.7;font-style:italic;margin-bottom:2rem;flex-grow:1}
@media(min-width:768px){.testi-card__quote{font-size:1rem}}
.testi-card__badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(37,99,235,.2);padding:.5rem 1rem;border-radius:9999px;margin-bottom:1.5rem;align-self:flex-start}
.testi-card__badge svg{width:.875rem;height:.875rem;color:#2563eb;fill:#2563eb}
.testi-card__badge span{font-size:.6875rem;font-weight:900;letter-spacing:.1em;color:#93c5fd;text-transform:uppercase}
.testi-card__author{display:flex;align-items:center;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}
.testi-card__avatar{width:4rem;height:4rem;border-radius:50%;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 2px rgba(255,255,255,.2)}
.testi-card__avatar img{width:100%;height:100%;object-fit:cover;object-position:top;transform:scale(1.3);transform-origin:center 15%}
.testi-card__name{color:#fff;font-weight:900;font-size:.875rem;letter-spacing:-.02em}
.testi-card__role{color:#93c5fd;font-size:.75rem;font-weight:700}
.testi-card__prog{color:#9ca3af;font-size:.6875rem;font-weight:500;margin-top:.25rem}

/* === About Page - CTA === */
.section-about-cta{background:#fff;padding:6rem 0}
@media(min-width:768px){.section-about-cta{padding:8rem 0}}
.about-cta-box{background:#f8fafc;border-radius:2rem;padding:3rem;text-align:center;max-width:56rem;margin:0 auto;border:1px solid #f3f4f6}
@media(min-width:768px){.about-cta-box{padding:5rem}}
.about-cta-box .about-title{margin-bottom:1.5rem}
.about-cta-box .about-desc{max-width:36rem;margin:0 auto 2.5rem}
.about-cta-btns{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}
@media(min-width:640px){.about-cta-btns{flex-direction:row}}

/* === Partners Page === */
.partners-content{padding:5rem 1.5rem;max-width:56rem;margin:0 auto}
.partners-content > section{margin-bottom:4rem}
.partners-content > section:last-child{margin-bottom:0}

.partners-section-title{font-size:1.875rem;font-weight:900;color:#002147;text-transform:uppercase;letter-spacing:-.05em;margin-bottom:1.5rem;position:relative}
.partners-section-title--no-margin{margin-bottom:0}
.partners-title-underline{display:block;height:.25rem;width:4rem;background:#FFD700;margin-top:1rem}
.partners-section-desc{font-size:1.125rem;color:#4b5563;line-height:1.625;font-weight:500}

.partners-institutional{background:#f9fafb;border-left:4px solid #0056b3;padding:2rem}
@media(min-width:768px){.partners-institutional{padding:3rem}}
.partners-inst-title{font-size:1.5rem;font-weight:700;color:#002147;text-transform:uppercase;letter-spacing:-.025em;margin-bottom:1rem}
.partners-inst-desc{font-size:1.125rem;color:#374151;line-height:1.625}

.partners-training{padding-top:2rem;padding-bottom:1rem}
.partners-training-header{display:flex;align-items:center;gap:1rem;margin-bottom:2.5rem}
.partners-title-line{height:2px;background:#e5e7eb;flex-grow:1;display:none}
@media(min-width:768px){.partners-title-line{display:block}}

.partners-grid{display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:768px){.partners-grid{grid-template-columns:repeat(3,1fr)}}

.partner-card{background:#fff;border:1px solid #f3f4f6;border-radius:1rem;padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;height:100%;transition:all .3s}
.partner-card:hover{box-shadow:0 25px 50px -12px rgba(0,0,0,.25);border-color:rgba(37,99,235,.2)}
.partner-card__logo-wrap{height:7rem;width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.partner-card__logo{max-height:100%;max-width:100%;object-fit:contain;transition:transform .3s}
.partner-card:hover .partner-card__logo{transform:scale(1.05)}
.partner-card__name{font-size:.9375rem;font-weight:900;letter-spacing:-.025em;color:#002147;text-transform:uppercase;margin-bottom:1rem;width:100%}
.partner-card__desc{font-size:.875rem;color:#6b7280;font-weight:500;line-height:1.625;flex-grow:1}

.partners-note{background:#002147;color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}
@media(min-width:768px){.partners-note{padding:3rem}}
.partners-note-title{font-size:1.25rem;font-weight:700;color:#FFD700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}
.partners-note-desc{color:rgba(255,255,255,.9);line-height:1.625;font-weight:500}

/* === Responsive Utilities === */
@media(max-width:768px){
.btn--hero{width:100%}
img{max-width:100%}
.courses-image__img{min-height:300px}
}
@media(max-width:640px){
.hero-content__ctas .btn{width:100%}
}

/* ===========================================
   Tailwind / Custom Overrides for Pilot Training Page
   =========================================== */

/* Disable browser automatic hyphenation on main container */
.site-main p, 
h1, 
h2, 
h3, 
h4, 
h5, 
h6, 
span {
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* ===========================================
   Pilot Training Pathway Layout and Components
   =========================================== */

/* Section Spacing & Rhythm */
.site-main .pilot-section {
    position: relative;
    padding: 5rem 0;
    background: #fff;
    overflow: hidden;
}
@media (min-width: 768px) {
    .site-main .pilot-section {
        padding: 7rem 0;
    }
}
.site-main .pilot-section--gray {
    background: #f8fafc;
}
.site-main .pilot-section--dark {
    background: #001733;
    color: #fff;
    padding: 8rem 0;
}
@media (min-width: 768px) {
    .site-main .pilot-section--dark {
        padding: 10rem 0;
    }
}

/* Custom Overrides for typography inside pilot sections */
.site-main .pilot-section .section-tag {
    color: #2563eb;
    margin-bottom: 1rem;
    display: inline-block;
}
.site-main .pilot-section .section-title {
    margin-bottom: 2rem;
    color: #002147;
}
.site-main .pilot-section--dark .section-title {
    color: #fff;
}

/* Base body/paragraph text inside pilot sections */
.site-main .pilot-text {
    font-size: 0.9375rem; /* 15px */
    color: #64748b;
    font-weight: 400;
    line-height: 1.7;
}
.site-main .pilot-section--dark .pilot-text {
    color: #94a3b8;
}
.site-main .pilot-text p + p {
    margin-top: 1.5rem;
}

/* Grid splits for 2-column sections */
.site-main .pilot-grid-split {
    display: grid;
    gap: 3rem;
    align-items: center;
}
@media (min-width: 768px) {
    .site-main .pilot-grid-split {
        grid-template-columns: repeat(2, 1fr);
        gap: 5rem;
    }
}

/* Spacing and order adjustments */
.site-main .pilot-order-first {
    order: -1;
}
@media (min-width: 768px) {
    .site-main .pilot-order-none-desktop {
        order: initial;
    }
}

/* Custom separator */
.site-main .pilot-divider {
    height: 4px;
    width: 80px;
    background: #ffd700;
    margin: 2rem auto;
}

/* Offset Image Composition */
.site-main .pilot-offset-image {
    position: relative;
    width: 100%;
    max-width: 580px;
    margin: 0 auto;
    aspect-ratio: 4/3;
}
@media (min-width: 768px) {
    .site-main .pilot-offset-image {
        aspect-ratio: 5/4;
    }
}
.site-main .pilot-offset-image--left {
    padding-left: 1.5rem;
    padding-top: 1.5rem;
}
@media (min-width: 768px) {
    .site-main .pilot-offset-image--left {
        padding-left: 2rem;
        padding-top: 2rem;
    }
}
.site-main .pilot-offset-image--right {
    padding-right: 1.5rem;
    padding-top: 1.5rem;
}
@media (min-width: 768px) {
    .site-main .pilot-offset-image--right {
        padding-right: 2rem;
        padding-top: 2rem;
    }
}

.site-main .pilot-offset-image__bg {
    position: absolute;
    top: 0;
    width: 80%;
    height: 80%;
    background: #2563eb;
    z-index: 0;
}
.site-main .pilot-offset-image--left .pilot-offset-image__bg {
    left: 0;
}
.site-main .pilot-offset-image--right .pilot-offset-image__bg {
    right: 0;
}

.site-main .pilot-offset-image__frame {
    position: relative;
    z-index: 10;
    width: 100%;
    height: 100%;
    background: #f1f5f9;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
    border: 8px solid #fff;
    border-radius: 4px;
}
@media (min-width: 768px) {
    .site-main .pilot-offset-image__frame {
        border-width: 16px;
    }
}
.site-main .pilot-offset-image__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Premium Image Badge System */
.site-main .pilot-image-badge {
    position: absolute;
    bottom: 0;
    right: 0;
    background: #fff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    display: flex;
    align-items: stretch;
    border-left: 1px solid #f1f5f9;
    border-top: 1px solid #f1f5f9;
    max-width: 280px;
    z-index: 20;
}
.site-main .pilot-image-badge__icon-wrap {
    width: 3.5rem;
    background: #2563eb;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #fff;
}
@media (min-width: 768px) {
    .site-main .pilot-image-badge__icon-wrap {
        width: 4rem;
    }
}
.site-main .pilot-image-badge__icon-wrap svg {
    width: 1.25rem;
    height: 1.25rem;
}
@media (min-width: 768px) {
    .site-main .pilot-image-badge__icon-wrap svg {
        width: 1.75rem;
        height: 1.75rem;
    }
}
.site-main .pilot-image-badge__content {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.site-main .pilot-image-badge__small {
    font-size: 0.625rem;
    font-weight: 900;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #2563eb;
    margin-bottom: 0.125rem;
}
.site-main .pilot-image-badge__main {
    font-size: 0.75rem;
    font-weight: 900;
    color: #002147;
    line-height: 1.2;
}
@media (min-width: 768px) {
    .site-main .pilot-image-badge__main {
        font-size: 0.875rem;
    }
}

/* Unified Pilot Card System */
.site-main .pilot-card {
    background: #fff;
    padding: 2rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
}
.site-main .pilot-card:hover {
    transform: translateY(-5px);
    border-color: rgba(37, 99, 235, 0.2);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
}

.site-main .pilot-card__icon-wrap {
    width: 3rem;
    height: 3rem;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}
.site-main .pilot-card:hover .pilot-card__icon-wrap {
    transform: scale(1.05) rotate(2deg);
}

/* Modifier: Why EASA grid cards */
.site-main .pilot-card--why {
    align-items: center;
    text-align: center;
    background: #fff;
    border-color: #f1f5f9;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}
.site-main .pilot-card--why .pilot-card__icon-wrap {
    background: #f0f7ff;
    border: 1px solid #dbeafe;
    border-radius: 50%;
    color: #2563eb;
}

/* Modifier: What Students May Expect cards */
.site-main .pilot-card--expect {
    background: #f8fafc;
    border-color: transparent;
    padding: 2.5rem;
}
.site-main .pilot-card--expect:hover {
    background: #fff;
    border-color: rgba(37, 99, 235, 0.2);
}
.site-main .pilot-card--expect .pilot-card__icon-wrap {
    background: #002147;
    color: #ffd700;
    box-shadow: 0 4px 10px rgba(0, 33, 71, 0.15);
}

/* Modifier: Your Next Step CTA cards */
.site-main .pilot-card--cta {
    background: #fff;
    border-color: #f1f5f9;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}
.site-main .pilot-card--cta .pilot-card__icon-wrap {
    background: #f0f7ff;
    color: #2563eb;
    margin-bottom: 1.5rem;
}

.site-main .pilot-card__title {
    font-size: 0.6875rem; /* 11px */
    font-weight: 900;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #002147;
    line-height: 1.5;
    margin-bottom: 0.75rem;
}
.site-main .pilot-card--why .pilot-card__title {
    margin-bottom: 0;
}
.site-main .pilot-card__desc {
    font-size: 0.8125rem; /* 13px */
    color: #64748b;
    font-weight: 500;
    line-height: 1.6;
}

/* Spacing list for suit items */
.site-main .pilot-suit-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.site-main .pilot-suit-item {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 0.5rem 0;
}
.site-main .pilot-suit-item__icon-wrap {
    width: 3rem;
    height: 3rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.3s ease;
    color: #2563eb;
}
.site-main .pilot-suit-item:hover .pilot-suit-item__icon-wrap {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
    transform: scale(1.05);
}
.site-main .pilot-suit-item__icon-wrap svg {
    width: 1.25rem;
    height: 1.25rem;
}
.site-main .pilot-suit-item__label {
    color: #fff;
    font-weight: 700;
    font-size: 0.875rem; /* 14px */
    letter-spacing: 0.02em;
}

/* Premium Suit Image Wrapper */
.site-main .pilot-suit-image-wrap {
    position: relative;
    width: 100%;
    max-width: 540px;
    margin: 0 auto;
}
.site-main .pilot-suit-image__frame {
    position: relative;
    z-index: 10;
    border: 2.5px dashed rgba(37, 99, 235, 0.4);
    padding: 0.75rem;
    border-radius: 16px;
    transition: border-color 0.4s ease;
}
.site-main .pilot-suit-image-wrap:hover .pilot-suit-image__frame {
    border-color: rgba(37, 99, 235, 0.8);
}
.site-main .pilot-suit-image__inner {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 4/3;
    box-shadow: 0 25px 60px rgba(37, 99, 235, 0.25);
}
.site-main .pilot-suit-image__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.site-main .pilot-suit-image__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 23, 51, 0.4), transparent);
}
.site-main .pilot-suit-badge {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 20;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
    padding: 0.75rem 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    animation: bounce 3s infinite;
}
.site-main .pilot-suit-badge__icon-wrap {
    width: 2.25rem;
    height: 2.25rem;
    background: #2563eb;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    flex-shrink: 0;
}
.site-main .pilot-suit-badge__icon-wrap svg {
    width: 1rem;
    height: 1rem;
}
.site-main .pilot-suit-badge__small {
    font-size: 0.5rem; /* 8px */
    font-weight: 900;
    letter-spacing: 0.15em;
    color: #2563eb;
    text-transform: uppercase;
    display: block;
}
.site-main .pilot-suit-badge__main {
    font-size: 0.75rem; /* 12px */
    font-weight: 900;
    color: #002147;
    line-height: 1.2;
    display: block;
}

/* Highlights Grid */
.site-main .pilot-highlights {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem 1rem;
}
@media (min-width: 480px) {
    .site-main .pilot-highlights {
        grid-template-columns: repeat(2, 1fr);
    }
}
.site-main .pilot-highlight-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.site-main .pilot-highlight-item__icon-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2563eb;
    flex-shrink: 0;
}
.site-main .pilot-highlight-item__icon-wrap svg {
    width: 0.875rem; /* 14px */
    height: 0.875rem;
}
.site-main .pilot-highlight-item__text {
    font-size: 0.625rem; /* 10px */
    font-weight: 900;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #002147;
}

/* Highlight career specific adjustments */
.site-main .pilot-highlights--career .pilot-highlight-item {
    gap: 1rem;
}
.site-main .pilot-highlights--career .pilot-highlight-item__icon-wrap {
    width: 1.5rem;
    height: 1.5rem;
    background: #002147;
    color: #ffd700;
}
.site-main .pilot-highlights--career .pilot-highlight-item__icon-wrap svg {
    width: 0.875rem;
    height: 0.875rem;
}

/* Quote Block */
.site-main .pilot-quote {
    border-left: 3px solid #2563eb;
    background: #f8fafc;
    padding: 1.5rem;
    margin-bottom: 2.5rem;
}
.site-main .pilot-quote__text {
    color: #002147;
    font-weight: 700;
    font-style: italic;
    font-size: 0.875rem; /* 14px */
    line-height: 1.6;
}
@media (min-width: 768px) {
    .site-main .pilot-quote__text {
        font-size: 0.9375rem; /* 15px */
    }
}

/* Card Grids for Pilot Training Section */
.site-main .pilot-cards-grid-3 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-top: 3rem;
}
@media (min-width: 640px) {
    .site-main .pilot-cards-grid-3 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1024px) {
    .site-main .pilot-cards-grid-3 {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Chevron overlays for dark section */
.site-main .pilot-chevron-wrap {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 20;
    width: 100%;
    overflow: hidden;
    pointer-events: none;
}
.site-main .pilot-chevron-wrap--top {
    top: -1px;
}
.site-main .pilot-chevron-wrap--bottom {
    bottom: -1px;
}
.site-main .pilot-chevron-wrap svg {
    width: 100%;
    height: 3rem; /* 48px */
    display: block;
}
@media (min-width: 768px) {
    .site-main .pilot-chevron-wrap svg {
        height: 7.5rem; /* 120px */
    }
}

/* Spacing and Rhythm adjustments */
.site-main .pilot-text--spaced {
    margin-bottom: 2.5rem;
}
.site-main .pilot-text--suit {
    margin-bottom: 3rem;
    max-width: 36rem;
}
.site-main .pilot-text--career {
    margin-bottom: 2rem;
}

/* ==========================================================================
   International Students Page - Custom Design Refinements & Rhythm Balance
   ========================================================================== */

/* Tighten global section rhythm */
.site-main .pilot-section.pilot-section--tight-top {
    padding-top: 3.5rem;
}
@media (min-width: 768px) {
    .site-main .pilot-section.pilot-section--tight-top {
        padding-top: 4.5rem;
    }
}

.site-main .pilot-section.pilot-section--tight-bottom {
    padding-bottom: 3.5rem;
}
@media (min-width: 768px) {
    .site-main .pilot-section.pilot-section--tight-bottom {
        padding-bottom: 4.5rem;
    }
}

/* alumni dark section overrides */
.site-main .pilot-section--dark.pilot-section--alumni {
    padding: 6.5rem 0;
}
@media (min-width: 768px) {
    .site-main .pilot-section--dark.pilot-section--alumni {
        padding: 8rem 0;
    }
}

/* FAQ Details/Accordion Optimization */
.site-main .faq-details {
    background: #f8fafc;
    border-radius: 12px;
    border: 1px solid #f1f5f9;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    overflow: hidden;
}
.site-main .faq-details:hover {
    border-color: rgba(37, 99, 235, 0.2);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.03);
    background: #fff;
}
.site-main .faq-details[open] {
    background: #fff;
    border-color: rgba(37, 99, 235, 0.25);
    box-shadow: 0 15px 30px rgba(0, 33, 71, 0.05);
}
.site-main .faq-summary {
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    user-select: none;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}
.site-main .faq-summary::-webkit-details-marker {
    display: none;
}
.site-main .faq-summary__icon-box {
    width: 2.5rem;
    height: 2.5rem;
    background: #002147;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    flex-shrink: 0;
    transition: all 0.3s ease;
}
.site-main .faq-details[open] .faq-summary__icon-box {
    background: #2563eb;
    transform: scale(1.05);
}
.site-main .faq-summary__question {
    font-size: 0.9375rem; /* 15px */
    font-weight: 800;
    color: #002147;
    letter-spacing: -0.01em;
    line-height: 1.4;
    transition: color 0.3s ease;
}
.site-main .faq-details[open] .faq-summary__question {
    color: #2563eb;
}
.site-main .faq-summary__chevron {
    width: 1.25rem;
    height: 1.25rem;
    color: #94a3b8;
    flex-shrink: 0;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.site-main .faq-details[open] .faq-summary__chevron {
    transform: rotate(180deg);
    color: #2563eb;
}
.site-main .faq-content {
    padding: 0 1.5rem 1.5rem 1.5rem;
}
.site-main .faq-content__inner {
    padding-left: 3.5rem; /* align perfectly below question text */
}
.site-main .faq-content__text {
    font-size: 0.875rem; /* 14px */
    color: #64748b;
    font-weight: 500;
    line-height: 1.65;
}

/* Testimonial card refinement (Soften & balance) */
.site-main .testi-card {
    background: rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(16px);
    border-radius: 16px; /* Cohesive with other cards */
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    height: 100%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.site-main .testi-card:hover {
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.08);
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}
.site-main .testi-card__quote-icon {
    width: 2.25rem;
    height: 2.25rem;
    color: #ffd700; /* beautiful golden quote mark to match accents */
    opacity: 0.7;
    margin-bottom: 1.25rem;
    flex-shrink: 0;
}
.site-main .testi-card__quote {
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.875rem; /* 14px */
    font-weight: 500;
    line-height: 1.65;
    font-style: italic;
    margin-bottom: 1.75rem;
    flex-grow: 1;
}
.site-main .testi-card__badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: rgba(255, 215, 0, 0.1);
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    margin-bottom: 1.5rem;
    align-self: flex-start;
    border: 1px solid rgba(255, 215, 0, 0.15);
}
.site-main .testi-card__badge svg {
    width: 0.75rem;
    height: 0.75rem;
    color: #ffd700;
    fill: #ffd700;
}
.site-main .testi-card__badge span {
    font-size: 0.625rem; /* 10px */
    font-weight: 900;
    letter-spacing: 0.08em;
    color: #ffd700;
    text-transform: uppercase;
}
.site-main .testi-card__author {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.site-main .testi-card__avatar {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.15);
}
.site-main .testi-card__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.site-main .testi-card__name {
    color: #fff;
    font-weight: 800;
    font-size: 0.875rem;
    letter-spacing: -0.01em;
}
.site-main .testi-card__role {
    color: #ffd700; /* Subtle warm role color */
    font-size: 0.75rem;
    font-weight: 700;
}
.site-main .testi-card__prog {
    color: #94a3b8;
    font-size: 0.6875rem;
    font-weight: 500;
    margin-top: 0.125rem;
}

/* ==========================================================================
   International Students - Application Process Redesign
   ========================================================================== */

.intl-process-section{
    background:#f8fafc;
    padding:80px 0;
}

.intl-process-header{
    text-align:center;
    max-width:680px;
    margin:0 auto 48px;
}

.intl-process-tag{
    display:block;
    margin-bottom:12px;
    font-size:11px;
    font-weight:800;
    letter-spacing:3px;
    color:#2563eb;
    text-transform:uppercase;
}

.intl-process-title{
    font-size:46px;
    line-height:1.1;
    font-weight:900;
    color:#002147;
    margin-bottom:16px;
    letter-spacing:-1.5px;
}

.intl-process-title span{
    color:#2563eb;
}

.intl-process-subtitle{
    max-width:580px;
    margin:0 auto;
    font-size:16px;
    line-height:1.7;
    color:#64748b;
}

.intl-process-wrapper{
    position:relative;
    max-width:960px;
    margin:0 auto;
}

.intl-process-line{
    display:none;
}

.intl-process-item{
    display:flex;
    gap:28px;
    margin-bottom:24px;
    position:relative;
}

.intl-process-item::before{
    content:"";
    position:absolute;
    top:32px;
    bottom:-24px;
    left:31px;
    width:2px;
    background:#dbeafe;
    z-index:1;
}

.intl-process-item:last-child::before{
    display:none;
}

.intl-process-step{
    position:relative;
    z-index:2;
}

.intl-process-step-box{
    width:64px;
    height:64px;
    background:#fff;
    border-radius:18px;
    border:2px solid #dbeafe;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 20px rgba(0,0,0,0.04);
}

.intl-process-step-label{
    font-size:9px;
    font-weight:800;
    color:#94a3b8;
    letter-spacing:1.5px;
}

.intl-process-step-number{
    font-size:26px;
    font-weight:900;
    color:#002147;
    line-height:1;
}

.intl-process-card{
    flex:1;
    background:#fff;
    border-radius:20px;
    padding:24px 28px;
    border:1px solid #e2e8f0;
    transition:.3s ease;
}

.intl-process-card:hover{
    transform:translateY(-2px);
    border-color:#2563eb30;
    box-shadow:0 20px 40px rgba(0,0,0,0.06);
}

.intl-process-card-header{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:12px;
}

.intl-process-card-header h3{
    font-size:20px;
    font-weight:850;
    color:#002147;
    margin:0;
}

.intl-process-card p{
    font-size:14.5px;
    line-height:1.65;
    color:#64748b;
    margin:0;
}

.intl-process-icon{
    width:36px;
    height:36px;
    border-radius:10px;
    background:#eff6ff;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#2563eb;
    flex-shrink:0;
}

.intl-process-icon-svg{
    width:18px;
    height:18px;
}

@media(max-width:768px){

    .intl-process-title{
        font-size:34px;
    }

    .intl-process-item{
        flex-direction:column;
        gap:16px;
    }

    .intl-process-line,
    .intl-process-item::before{
        display:none;
    }

    .intl-process-step{
        display:flex;
        justify-content:center;
    }

    .intl-process-card{
        padding:22px 24px;
    }
}

/* ==========================================================================
   Prospectus Page - Request Form Custom Styles
   ========================================================================== */

.prospectus-cta-section{
    position:relative;
    padding:120px 0;
    background:#f8fafc;
}

.prospectus-card{
    position:relative;
    max-width:760px;
    margin:0 auto;
    background:#002147;
    border-radius:36px;
    overflow:hidden;
    box-shadow:
        0 30px 80px rgba(0,33,71,0.18),
        0 10px 30px rgba(0,0,0,0.08);
}

.prospectus-card-glow{
    position:absolute;
    top:-120px;
    right:-120px;
    width:320px;
    height:320px;
    background:#0056b3;
    opacity:.35;
    filter:blur(70px);
    border-radius:50%;
}

.prospectus-card-inner{
    position:relative;
    z-index:2;
    padding:72px;
}

.prospectus-header{
    text-align:center;
    margin-bottom:48px;
}

.prospectus-tag{
    display:block;
    margin-bottom:18px;
    color:#60a5fa;
    font-size:11px;
    font-weight:800;
    letter-spacing:3px;
    text-transform:uppercase;
}

.prospectus-title{
    color:#fff;
    font-size:54px;
    line-height:1;
    font-weight:900;
    margin-bottom:24px;
    letter-spacing:-2px;
}

.prospectus-subtitle{
    max-width:560px;
    margin:0 auto;
    color:rgba(255,255,255,.72);
    line-height:1.8;
    font-size:17px;
}

.prospectus-form{
    display:flex;
    flex-direction:column;
    gap:28px;
}

.prospectus-field label{
    display:block;
    margin-bottom:12px;
    color:#dbeafe;
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.prospectus-field input,
.prospectus-field select{
    width:100%;
    height:62px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.05);
    color:#fff;
    padding:0 22px;
    font-size:16px;
    outline:none;
    transition:.3s ease;
}

.prospectus-field select option {
    background:#002147;
    color:#fff;
}

.prospectus-field input::placeholder{
    color:rgba(255,255,255,.35);
}

.prospectus-field input:focus,
.prospectus-field select:focus{
    border-color:#ffd700;
    background:rgba(255,255,255,.08);
    box-shadow:0 0 0 4px rgba(255,215,0,.12);
}

.prospectus-submit-btn{
    width:100%;
    height:68px;
    border:none;
    border-radius:18px;
    background:#ffd700;
    color:#002147;
    font-size:16px;
    font-weight:900;
    letter-spacing:3px;
    text-transform:uppercase;
    cursor:pointer;
    transition:.3s ease;
    margin-top:12px;
}

.prospectus-submit-btn:hover{
    transform:translateY(-2px);
    background:#ffe45c;
    box-shadow:0 20px 40px rgba(255,215,0,.22);
}

#prospectus-success-msg.hidden {
    display:none !important;
}

@media(max-width:768px){

    .prospectus-card-inner{
        padding:42px 28px;
    }

    .prospectus-title{
        font-size:38px;
    }

    .prospectus-subtitle{
        font-size:15px;
    }

    .prospectus-field input,
    .prospectus-field select{
        height:56px;
    }

    .prospectus-submit-btn{
        height:60px;
    }
}

/* ==========================================================================
   FAQ Section - Premium Redesign
   ========================================================================== */
.faq-section {
    background: #f8fafc;
    padding: 80px 0;
}

.faq-wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.faq-item {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 12px;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.faq-item:hover {
    border-color: #cbd5e1;
}

.faq-item.active {
    border-color: rgba(37, 99, 235, 0.4);
    box-shadow: 0 10px 25px rgba(0, 33, 71, 0.04);
}

.faq-question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 20px 24px;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    outline: none;
}

.faq-question-text {
    color: #002147;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: -0.3px;
    transition: color 0.3s ease;
}

.faq-item.active .faq-question-text {
    color: #2563eb;
}

.faq-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #eff6ff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.faq-item.active .faq-icon {
    background: #2563eb;
}

.faq-icon svg {
    width: 16px;
    height: 16px;
    stroke: #2563eb;
    stroke-width: 2.5;
    fill: none;
    transition: stroke 0.3s ease, transform 0.3s ease;
}

.faq-item.active .faq-icon svg {
    stroke: #fff;
    transform: rotate(180deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease, border-color 0.3s ease;
    border-top: 1px solid transparent;
}

.faq-item.active .faq-answer {
    opacity: 1;
    border-top-color: #f1f5f9;
}

.faq-answer-inner {
    padding: 16px 24px 20px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 500;
}

.faq-cta {
    text-align: center;
    margin-top: 56px;
}

.faq-cta p {
    color: #64748b;
    font-size: 16px;
    margin-bottom: 20px;
    font-weight: 500;
}

.faq-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 32px;
    border-radius: 12px;
    background: #002147;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 12px;
    font-weight: 800;
    transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
}

.faq-contact-btn:hover {
    background: #001733;
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(0, 33, 71, 0.12);
}

@media(max-width:768px) {
    .faq-section {
        padding: 60px 0;
    }

    .faq-wrapper {
        padding: 0 16px;
    }

    .faq-question {
        padding: 16px 20px;
        gap: 16px;
    }

    .faq-question-text {
        font-size: 15px;
    }

    .faq-answer-inner {
        padding: 12px 20px 16px;
        font-size: 14px;
    }

    .faq-icon {
        width: 28px;
        height: 28px;
    }

    .faq-icon svg {
        width: 14px;
        height: 14px;
    }
    
    .faq-cta {
        margin-top: 40px;
    }
}




