.ks-ev-overview-hero {
	background: linear-gradient(135deg, #f2f7fc 0%, #fff 58%, #e5f2fb 100%);
	padding: clamp(38px, 4.5vw, 64px) 0;
	text-align: center;
}

.ks-ev-overview-hero__inner { max-width: 920px; }
.ks-ev-overview-hero-media { background: #fff; border-radius: 20px; box-shadow: 0 18px 42px rgba(16, 42, 77, .12); display: grid; gap: 4px; grid-template-columns: repeat(2, minmax(0, 1fr)); height: clamp(210px, 26vw, 320px); margin: 0 auto 18px; max-width: 760px; overflow: hidden; }
.ks-ev-overview-hero-media picture { display: block; height: 100%; min-width: 0; }
.ks-ev-page .ks-ev-overview-hero-media img { display: block; height: 100%; object-fit: cover; width: 100%; }
.ks-ev-overview-hero-media picture:first-child img { object-position: 61% 52%; }
.ks-ev-overview-hero-media picture:last-child img { object-position: 52% 55%; }
.ks-ev-overview-eyebrow { color: #1166ad; font-size: 13px; font-weight: 800; letter-spacing: .11em; margin: 0 0 10px; text-transform: uppercase; }
.ks-ev-overview-brand-message { color: #102a4d !important; font-size: clamp(18px, 2vw, 24px); font-weight: 800; letter-spacing: -.01em; line-height: 1.25; margin: 0 auto 8px !important; }
.ks-ev-overview-hero h1 { color: #102a4d; font-size: clamp(36px, 5vw, 64px); letter-spacing: -.035em; line-height: 1.04; margin: 0 auto 14px; max-width: 900px; }
.ks-ev-overview-hero__lead { color: #102a4d; font-size: clamp(20px, 2.4vw, 29px); line-height: 1.35; margin: 0 auto 10px; max-width: 820px; }
.ks-ev-overview-hero p:not(.ks-ev-overview-eyebrow):not(.ks-ev-overview-hero__lead) { color: #526a82; margin: 0 auto 20px; max-width: 720px; }

.ks-ev-overview-programs { background: #fff; padding: clamp(36px, 4vw, 58px) 0; }
.ks-ev-overview-program-grid { display: grid; gap: 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ks-ev-overview-program-card { background: linear-gradient(180deg, var(--ks-ev-program-soft, #fff) 0, #fff 46%); border: 1px solid var(--ks-ev-program-accent, #d8e5ef); border-top-width: 3px; border-radius: 22px; box-shadow: 0 14px 36px rgba(16, 42, 77, .08); display: flex; flex-direction: column; min-width: 0; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.ks-ev-overview-program-card--goupil { --ks-ev-program-accent: #3f6f8f; --ks-ev-program-soft: #eef4f7; }
.ks-ev-overview-program-card--alba { --ks-ev-program-accent: #8a8065; --ks-ev-program-soft: #f5f2ea; }
.ks-ev-overview-program-card--esagono { --ks-ev-program-accent: #4f7f78; --ks-ev-program-soft: #eef5f3; }
.ks-ev-overview-program-card:hover { border-color: #9ac7e9; box-shadow: 0 22px 48px rgba(16, 42, 77, .14); transform: translateY(-5px); }
.ks-ev-overview-program-card[class*="--"]:hover { border-color: var(--ks-ev-program-accent); }
.ks-ev-overview-program-card__body { display: flex; flex: 1; flex-direction: column; padding: 22px 24px 24px; }
.ks-ev-overview-program-card__body h3 { color: #102a4d; font-size: clamp(28px, 3vw, 38px); letter-spacing: -.025em; line-height: 1.05; margin: 0 0 13px; }
.ks-ev-overview-program-card__lead { color: var(--ks-ev-program-accent, #1479db); font-size: 18px; font-weight: 700; line-height: 1.4; margin: 0; }
.ks-ev-overview-program-card .ks-ev-overview-eyebrow { color: var(--ks-ev-program-accent, #1166ad); }
.ks-ev-overview-program-card .ks-button { align-self: flex-start; margin-top: auto; }
.ks-ev-overview-photo { background: #eaf3fa; border-radius: 24px; margin: 0; overflow: hidden; }
.ks-ev-page .ks-ev-overview-photo img { display: block; height: 100%; object-fit: cover; width: 100%; }
.ks-ev-overview-photo--program-card { aspect-ratio: 16 / 10; border-bottom: 2px solid var(--ks-ev-program-accent, #d8e5ef); border-radius: 0; }
.ks-ev-overview-program-card--alba .ks-ev-overview-photo--program-card img { object-position: 59% 54%; }
.ks-ev-overview-program-card--esagono .ks-ev-overview-photo--program-card img { object-position: 52% 55%; }
.ks-ev-overview-pills { display: flex; flex-wrap: wrap; gap: 9px; list-style: none; margin: 25px 0 29px; padding: 0; }
.ks-ev-overview-pills li { background: var(--ks-ev-program-soft, #edf5fb); border: 1px solid color-mix(in srgb, var(--ks-ev-program-accent, #1479db) 28%, transparent); border-radius: 999px; color: #102a4d; font-size: 14px; font-weight: 700; padding: 8px 13px; }

.ks-ev-overview-heading { margin: 0 auto 28px; max-width: 760px; text-align: center; }
.ks-ev-overview-heading h2 { color: #102a4d; font-size: clamp(34px, 4vw, 54px); letter-spacing: -.025em; margin: 0 0 15px; }
.ks-ev-overview-heading > p:not(.ks-ev-overview-eyebrow):last-child { color: #526a82; }

.ks-ev-overview-needs { background: #f4f8fb; padding: clamp(38px, 4vw, 58px) 0; }
.ks-ev-overview-need-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ks-ev-overview-need-grid article { background: #fff; border: 1px solid #d8e5ef; border-radius: 18px; display: flex; flex-direction: column; min-height: 235px; padding: 22px; }
.ks-ev-overview-need-grid article > span { color: #26b66f; font-size: 27px; font-weight: 800; }
.ks-ev-overview-need-grid h3 { color: #102a4d; font-size: 16px; letter-spacing: .03em; line-height: 1.35; margin: 12px 0 8px; }
.ks-ev-overview-need-grid p { color: #526a82; }
.ks-ev-overview-need-grid a { color: #1479db; font-weight: 700; margin-top: auto; }

.ks-ev-overview-final { background: #e5f2fb; padding: clamp(32px, 3.8vw, 48px) 0; }
.ks-ev-overview-final > .ks-container { align-items: center; display: flex; gap: 40px; justify-content: space-between; }
.ks-ev-overview-final h2 { color: #102a4d; font-size: clamp(30px, 3.7vw, 48px); margin: 0 0 12px; max-width: 780px; }
.ks-ev-overview-final p:not(.ks-ev-overview-eyebrow) { color: #526a82; margin: 0; max-width: 700px; }
.ks-ev-overview-final .ks-button { flex: 0 0 auto; }

@media (max-width: 980px) {
	.ks-ev-overview-program-grid { gap: 18px; }
	.ks-ev-overview-program-card__body { padding-inline: 20px; }
	.ks-ev-overview-need-grid { gap: 14px; }
	.ks-ev-overview-need-grid article { padding-inline: 18px; }
}

@media (max-width: 700px) {
	.ks-ev-overview-hero { padding: 32px 0 38px; }
	.ks-ev-overview-hero-media { border-radius: 15px; height: clamp(126px, 36vw, 155px); margin-bottom: 16px; max-width: 100%; }
	.ks-ev-overview-program-grid { grid-template-columns: 1fr; }
	.ks-ev-overview-program-card__body { min-height: 270px; padding: 20px; }
	.ks-ev-overview-program-card .ks-button { align-self: stretch; justify-content: center; width: 100%; }
	.ks-ev-overview-photo--program-card { aspect-ratio: 16 / 9; width: 100%; }
	.ks-ev-overview-need-grid { grid-template-columns: 1fr; }
	.ks-ev-overview-need-grid article { min-height: 0; }
	.ks-ev-overview-final > .ks-container { align-items: flex-start; flex-direction: column; }
}
