/* Home page styles. Shared components remain in style.css. */
.main-homepage:focus {
	outline: none;
}

.main-slider {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1200/382;
	width: 100%;
	max-height: 600px;
}

.main-slider .main-slider-bg {
	background: var(--color-primary);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.main-slider-content {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.main-slider-content h1 {
	font-weight: var(--weight-regular);
	font-size: 3.5rem;
	line-height: 4.5rem;
	color: #fff;
}

.main-slider-content p {
	font-size: 50px;
	line-height: 60px;
	font-weight: var(--weight-regular);
	color: #fff;
}

@media screen and (max-width: 1200px) {
	.main-slider-content {
		padding-top: 0 !important;
	}
}

@media screen and (max-width: 767px) {
	.main-slider {
		aspect-ratio: auto;
		min-height: 430px;
	}

	.main-slider-content {
		align-items: flex-start;
		padding: 72px 0 56px;
	}

	.main-slider-content h1 {
		font-size: 2.5rem;
		line-height: 3rem;
	}

	.main-slider-content p {
		font-size: 1.5rem;
		line-height: 2rem;
	}
}
.main-homepage .main-slider {
	aspect-ratio: unset;
	max-height: none;
}

.main-homepage .main-slider .main-slider-bg {
	background-color: var(--color-surface-warm);
	background-image: url('../images/home-hero-bg-istanbul.png');
	background-image: image-set(
		url('../images/home-hero-bg-istanbul.webp') type('image/webp'),
		url('../images/home-hero-bg-istanbul.png') type('image/png')
	);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	filter: contrast(1.04) saturate(1.04);
}
.main-homepage .main-slider .main-slider-bg::before {
	content: none;
	display: none;
}
.main-homepage .main-slider .main-slider-bg::after {
	content: none;
	display: none;
}

@media screen and (min-width: 1600px) {
	.main-homepage .main-slider .main-slider-bg {
		background-position: center bottom;
		background-size: 100% auto;
	}
}

.main-homepage .main-slider-content {
	align-items: stretch;
	justify-content: stretch;
	padding: 0;
}

.main-homepage .main-slider-content .container {
	display: block;
	padding-top: 72px;
	padding-bottom: 72px;
}

.main-homepage .main-slider-content h1 {
	font-size: 2.5rem;
	line-height: 1.25;
	font-weight: var(--weight-semibold);
	color: #102f4f;
}

.main-homepage .main-slider-content .hero-title-line {
	display: block;
}

.main-homepage .main-slider-content p.f1 {
	font-size: 1.05rem;
	line-height: 1.65;
	font-weight: var(--weight-regular);
	color: var(--color-muted);
}
.homepage-trust-card {
	background: #fff;
	border-radius: 10px;
	padding: 24px;
	height: 100%;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.07);
}

.homepage-trust-icon {
	color: var(--color-primary);
	width: 28px;
	height: 28px;
}
@media screen and (max-width: 767px) {
	.main-homepage .main-slider-content .container {
		padding-top: 56px;
		padding-bottom: 56px;
	}

	.main-homepage .main-slider-content h1 {
		font-size: 1.8rem;
		line-height: 1.3;
	}

	.main-homepage .main-slider-content p.f1 {
		font-size: 0.95rem;
	}

	.main-homepage .hero__assurance {
		display: none;
	}
}
.main-homepage .homepage-blog .section-grid-1-3 a {
	color: #102f4f;
}
.main-homepage .homepage-blog .section-grid-1-3 a:hover {
	color: var(--color-primary);
}
.main-homepage .homepage-blog .section-grid-1-3 .right p {
	color: #555;
}
.hero__content {
	--hero-cta-row-width: 690px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	height: 100%;
	min-height: 100%;
	padding: 28px 0 28px;
}
.hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	align-self: flex-start;
	min-height: 40px;
	margin-bottom: 16px;
	padding: 7px 14px;
	border: 1px solid rgba(23, 105, 170, 0.22);
	border-radius: 999px;
	background: var(--color-primary-soft);
	font-size: 0.78rem;
	font-weight: var(--weight-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--color-primary);
	text-decoration: none;
	transition:
		background 0.18s ease,
		border-color 0.18s ease,
		color 0.18s ease;
}

.hero__eyebrow svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.hero__eyebrow:hover,
.hero__eyebrow:focus {
	background: #dff6f0;
	border-color: var(--color-primary);
	color: var(--color-primary-dark);
	text-decoration: none;
}

.hero__eyebrow:focus-visible {
	outline: 3px solid rgba(23, 105, 170, 0.28);
	outline-offset: 3px;
}
.hero__lead {
	max-width: 56ch;
	margin: 16px 0 28px;
	font-size: 1.05rem;
	line-height: 1.65;
	color: #5f7184;
}
.hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	width: min(100%, var(--hero-cta-row-width));
	margin-top: auto;
}

@media screen and (min-width: 992px) {
	.hero__actions {
		align-items: stretch;
		flex-wrap: nowrap;
	}
}
.hero__microcopy {
	margin: 18px 0 0;
	padding-left: 0;
	font-size: 0.85rem;
	line-height: 1.55;
	color: rgba(16, 47, 79, 0.7);
}
.hero__assurance {
	margin-top: 26px;
	padding-top: 22px;
	position: relative;
	width: min(100%, var(--hero-cta-row-width));
}

.hero__assurance::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(16, 47, 79, 0.1);
}
.hero__role-disclosure {
	max-width: 62ch;
	margin: 14px 0 0;
	padding-left: 14px;
	border-left: 3px solid var(--color-primary);
	font-size: 0.82rem;
	line-height: 1.6;
	color: rgba(16, 47, 79, 0.66);
}

.main-homepage .main-slider-content .hero__lead {
	color: var(--color-muted);
	font-size: 1.05rem;
	line-height: 1.65;
}

.main-homepage .main-slider-content .hero__microcopy {
	color: var(--color-muted);
	font-size: 0.85rem;
	line-height: 1.55;
}

.main-homepage .main-slider-content .hero__role-disclosure {
	color: var(--color-muted);
	font-size: 0.82rem;
	line-height: 1.6;
}
.hero__media {
	position: relative;
	display: flex;
	align-items: stretch;
	height: 100%;
	min-height: 460px;
	margin: 0;
}

.hero__review-panel {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 460px;
	padding: 26px;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(247, 251, 255, 0.98) 100%),
		repeating-linear-gradient(135deg, rgba(23, 105, 170, 0.08) 0 1px, transparent 1px 14px);
	border: 1px solid var(--color-line-soft);
	border-radius: 8px;
	box-shadow: 0 14px 32px rgba(16, 47, 79, 0.09);
	color: var(--color-body);
}

.hero__review-panel::before {
	content: '';
	position: absolute;
	inset: 0 0 auto;
	height: 5px;
	background: linear-gradient(
		90deg,
		var(--color-primary) 0%,
		var(--color-primary) 44%,
		#1f9d72 44%,
		#1f9d72 72%,
		#d7a928 72%,
		#d7a928 100%
	);
}

.hero__review-panel::after {
	content: '';
	position: absolute;
	inset: 5px 0 0;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(23, 105, 170, 0.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(23, 105, 170, 0.06) 1px, transparent 1px);
	background-size: 36px 36px;
	-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.24), transparent 46%);
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.24), transparent 46%);
}

.hero__review-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 22px;
}

.hero__review-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	border-radius: 999px;
	font-size: 0.76rem;
	font-weight: var(--weight-semibold);
	line-height: 1;
	white-space: nowrap;
}

.hero__review-kicker {
	padding: 8px 12px;
	background: var(--color-primary-soft);
	border: 1px solid #cfe5f8;
	color: var(--color-primary-dark);
}

.hero__review-title {
	max-width: 12ch;
	margin: 0;
	font-size: 1.65rem;
	font-weight: var(--weight-semibold);
	line-height: 1.12;
	color: var(--color-ink-strong);
}

.main-homepage .main-slider-content .hero__review-copy {
	max-width: 34ch;
	margin: 12px 0 22px;
	font-size: 0.94rem;
	line-height: 1.5;
	color: var(--color-muted);
}

.hero__review-panel--form {
	min-height: 0;
	overflow: visible;
	padding: 36px 32px;
	background: rgba(255, 255, 255, 0.88);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 20px;
	box-shadow:
		0 4px 6px -1px rgba(0, 0, 0, 0.05),
		0 20px 40px -4px rgba(16, 47, 79, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.hero__review-panel--form::before {
	content: none;
}

.hero__review-panel--form::after {
	content: none;
}

.hero__review-panel--form .hero__review-header {
	margin-bottom: 18px;
}

.hero__review-panel--form .hero__review-kicker {
	padding: 6px 12px;
	background: rgba(23, 105, 170, 0.06);
	border: 1px solid rgba(23, 105, 170, 0.12);
	border-radius: 30px;
	color: var(--color-primary);
	font-size: 0.78rem;
	font-weight: var(--weight-display);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.hero__review-panel--form .hero__review-title {
	max-width: none;
	font-size: 1.6rem;
	font-weight: var(--weight-display);
	color: #0c2340;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.hero__review-panel--form .hero__review-copy {
	max-width: none;
	margin-bottom: 20px;
	font-size: 0.92rem;
	line-height: 1.5;
	color: #64748b;
}

.main-homepage .main-slider-content .hero__review-panel--form .hero__review-copy {
	max-width: none;
	margin-bottom: 20px;
	font-size: 0.92rem;
	line-height: 1.5;
	color: #64748b;
}

.hero__review-form {
	display: grid;
	gap: 16px;
	z-index: 2;
}

.hero__form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.hero__form-field {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.hero__form-field label {
	margin: 0 0 2px 2px;
	color: #475569;
	font-size: 0.8rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	text-transform: none;
	letter-spacing: -0.01em;
}

.hero__review-form .form-control {
	width: 100%;
	min-height: 52px;
	padding: 12px 16px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: none;
	color: var(--color-ink-strong);
	font-size: 0.95rem;
	font-weight: 500;
	line-height: 1.4;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero__review-form textarea.form-control {
	height: 100px !important;
	min-height: 100px;
	max-height: 100px;
	overflow-x: hidden;
	overflow-y: auto;
	padding-right: 18px;
	resize: none;
	scrollbar-color: rgba(23, 105, 170, 0.42) transparent;
	scrollbar-gutter: stable;
	scrollbar-width: thin;
}

.hero__review-form textarea.form-control::-webkit-scrollbar {
	width: 8px;
}

.hero__review-form textarea.form-control::-webkit-scrollbar-track {
	background: transparent;
	border-radius: 999px;
	margin: 11px 0;
}

.hero__review-form textarea.form-control::-webkit-scrollbar-thumb {
	background: rgba(23, 105, 170, 0.34);
	border: 2px solid #ffffff;
	border-radius: 999px;
	min-height: 28px;
}

.hero__review-form textarea.form-control::-webkit-scrollbar-thumb:hover {
	background: rgba(23, 105, 170, 0.52);
}

.hero__review-form .form-control::placeholder {
	color: #94a3b8;
}

.hero__review-form .form-control:hover {
	border-color: #cbd5e1;
}

.hero__review-form .form-control:focus {
	background: #ffffff;
	border-color: var(--color-primary);
	box-shadow:
		0 0 0 4px rgba(23, 105, 170, 0.08),
		0 4px 12px rgba(23, 105, 170, 0.04);
	outline: none;
}

.hero__review-form .iti {
	width: 100%;
}

.hero__review-form .iti__selected-flag {
	border-radius: 8px 0 0 8px;
}

.hero__review-form .iti__selected-country,
.hero__review-form .iti__selected-country-primary {
	border-radius: 8px 0 0 8px;
	transition:
		background-color 0.16s ease,
		box-shadow 0.16s ease;
}

.hero__review-form .iti__selected-country {
	padding-right: 8px;
}

.hero__review-form .iti__selected-country-primary {
	padding-right: 12px;
}

.hero__review-form .iti__country-container:hover .iti__selected-country,
.hero__review-form .iti__selected-country:hover,
.hero__review-form .iti__selected-country:focus-visible {
	background: rgba(23, 105, 170, 0.035) !important;
	box-shadow: inset 0 0 0 1px rgba(23, 105, 170, 0.16) !important;
}

.hero__review-list {
	display: grid;
	gap: 10px;
	margin-bottom: 16px;
}

.hero__review-item {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 66px;
	padding: 11px 12px;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(216, 232, 245, 0.9);
	border-radius: 8px;
	box-shadow: 0 12px 24px rgba(16, 47, 79, 0.06);
}

.hero__review-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	background: var(--color-primary-soft);
	border: 1px solid #cfe5f8;
	border-radius: 8px;
	color: var(--color-primary);
}

.hero__review-icon svg {
	width: 20px;
	height: 20px;
}

.hero__review-item-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
	line-height: 1.25;
}

.hero__review-item-text strong {
	font-size: 0.92rem;
	font-weight: var(--weight-semibold);
	color: var(--color-ink-strong);
}

.hero__review-item-text span {
	margin-top: 3px;
	font-size: 0.8rem;
	color: var(--color-muted);
}

.hero__review-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 2px;
	padding: 14px;
	background: #102f4f;
	border-radius: 8px;
	color: #fff;
}

.hero__review-summary div {
	min-width: 0;
}

.hero__review-summary-label {
	display: block;
	margin-bottom: 3px;
	font-size: 0.76rem;
	line-height: 1.2;
	color: rgba(255, 255, 255, 0.72);
}

.hero__review-summary strong {
	display: block;
	font-size: 0.98rem;
	line-height: 1.25;
}

.hero__review-summary-step {
	flex-shrink: 0;
	padding: 6px 10px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: var(--weight-semibold);
	line-height: 1;
}

.hero__review-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 20px 0;
	padding-left: 2px;
	padding-right: 2px;
}

.hero__review-meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: auto;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	color: #475569;
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.2;
}

.hero__review-meta svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.hero__review-meta span:nth-child(1) svg {
	color: #10b981;
}

.hero__review-meta span:nth-child(2) svg {
	color: #3b82f6;
}

.hero__review-meta span:nth-child(3) svg {
	color: #ef4444;
}

.hero__review-meta--form {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 20px;
	padding: 0 1px;
}

.hero__review-meta--form span {
	justify-content: center;
	padding-inline: 1px;
	text-align: center;
}
.hero-wizard__top {
	display: grid;
	gap: 10px;
}

.hero-wizard__bar {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
}

.hero-wizard__segment {
	height: 4px;
	background: #e2e8f0;
	border-radius: 999px;
	transition: background-color 0.25s ease;
}

.hero-wizard__segment.is-active,
.hero-wizard__segment.is-done {
	background: var(--color-primary);
}

.hero-wizard__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 24px;
}

.hero-wizard__back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 2px 0;
	background: none;
	border: 0;
	color: var(--color-primary);
	font-size: 0.84rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	cursor: pointer;
}

.hero-wizard__back svg {
	width: 16px;
	height: 16px;
	transition: transform 0.2s ease;
}

.hero-wizard__back:hover svg,
.hero-wizard__back:focus-visible svg {
	transform: translateX(-3px);
}

.hero-wizard__count {
	margin-left: auto;
	color: var(--color-muted);
	font-size: 0.8rem;
	font-weight: var(--weight-semibold);
	letter-spacing: 0.02em;
}

.hero-wizard__step {
	display: grid;
	gap: 16px;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	outline: none;
	animation: hero-wizard-in 0.28s ease;
}

.hero-wizard__question {
	float: left;
	width: 100%;
	margin: 0;
	padding: 0;
	color: var(--color-ink-strong);
	font-size: 1.05rem;
	font-weight: var(--weight-heading);
	line-height: 1.3;
}

.hero-wizard__tiles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	clear: both;
}

.hero-wizard__tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 104px;
	padding: 14px 6px 12px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	color: var(--color-ink-strong);
	font-size: 0.82rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-wizard__tile span {
	max-width: 100%;
	word-break: normal;
	overflow-wrap: break-word;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.hero-wizard__tile-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	flex-shrink: 0;
	background: var(--color-primary-soft);
	border: 1px solid #cfe5f8;
	border-radius: 12px;
	color: var(--color-primary);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-wizard__tile-icon svg {
	width: 24px;
	height: 24px;
}

.hero-wizard__tile:hover {
	border-color: rgba(23, 105, 170, 0.4);
	box-shadow: 0 8px 18px rgba(16, 47, 79, 0.07);
	transform: translateY(-2px);
}

.hero-wizard__tile:hover .hero-wizard__tile-icon {
	border-color: rgba(23, 105, 170, 0.3);
}

.hero-wizard__tile.is-selected .hero-wizard__tile-icon {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: #ffffff;
}

.hero-wizard__tile:focus-visible,
.hero-wizard__channel:focus-visible,
.hero-wizard__reach-link:focus-visible {
	outline: 3px solid rgba(23, 105, 170, 0.4);
	outline-offset: 2px;
}

.hero-wizard__tile.is-selected,
.hero-wizard__channel.is-selected {
	background: var(--color-primary-soft);
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(23, 105, 170, 0.08);
	color: var(--color-primary-dark);
}

.hero-wizard__label {
	display: block;
	margin: 0 0 2px 2px;
	color: #475569;
	font-size: 0.8rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.hero-wizard__optional {
	color: var(--color-muted);
	font-weight: var(--weight-regular);
}

.hero-wizard__channels {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.hero-wizard__channel {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 8px 10px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	color: var(--color-body);
	font-size: 0.86rem;
	font-weight: var(--weight-semibold);
	line-height: 1.1;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-wizard__channel svg {
	width: 17px;
	height: 17px;
	flex-shrink: 0;
	color: var(--color-primary);
}

.hero-wizard__channel--whatsapp svg {
	color: var(--color-whatsapp-dark);
}

.hero-wizard__channel:hover {
	border-color: rgba(23, 105, 170, 0.4);
}

.hero-wizard__consent {
	color: var(--color-body);
	font-size: 0.84rem;
	line-height: 1.45;
}

.hero-wizard__consent .custom-control-label {
	padding-top: 1px;
}

.hero-wizard__consent a {
	color: var(--color-primary);
	font-weight: var(--weight-semibold);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.hero-wizard__actions {
	display: grid;
	gap: 12px;
}

.hero-wizard.is-complete .hero-wizard__top,
.hero-wizard.is-complete .hero-wizard__actions {
	display: none;
}

.hero-wizard__success {
	display: grid;
	justify-items: center;
	padding: 6px 0 2px;
	text-align: center;
	outline: none;
	animation: hero-wizard-in 0.3s ease;
}

.hero-wizard__success-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	margin-bottom: 14px;
	background: rgba(2, 122, 72, 0.08);
	border: 1px solid rgba(2, 122, 72, 0.2);
	border-radius: 50%;
	color: var(--color-success);
}

.hero-wizard__success-icon svg {
	width: 28px;
	height: 28px;
	stroke-width: 2.4;
}

.hero-wizard__success-title {
	margin: 0 0 6px;
	color: var(--color-ink-strong);
	font-size: 1.3rem;
	font-weight: var(--weight-display);
	line-height: 1.25;
}

.main-homepage .main-slider-content .hero-wizard__success-copy {
	max-width: 36ch;
	margin: 0 0 20px;
	color: var(--color-muted);
	font-size: 0.9rem;
	line-height: 1.5;
}

.main-homepage .main-slider-content .hero-wizard__success .hero-wizard__label {
	margin: 0 0 10px;
	color: #475569;
	font-size: 0.8rem;
	line-height: 1.2;
}

.hero-wizard__reach {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	width: 100%;
}

.hero-wizard__reach-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 10px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	color: var(--color-ink-strong);
	font-size: 0.88rem;
	font-weight: var(--weight-semibold);
	line-height: 1.1;
	text-decoration: none;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-wizard__reach-link svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--color-primary);
}

.hero-wizard__reach-link:hover,
.hero-wizard__reach-link:focus {
	border-color: var(--color-primary);
	color: var(--color-primary-dark);
	text-decoration: none;
	transform: translateY(-2px);
}

.hero-wizard__reach-link--whatsapp {
	background: var(--color-whatsapp-dark);
	border-color: var(--color-whatsapp-dark);
	color: #ffffff;
}

.hero-wizard__reach-link--whatsapp svg {
	color: #ffffff;
}

.hero-wizard__reach-link--whatsapp:hover,
.hero-wizard__reach-link--whatsapp:focus {
	background: var(--color-whatsapp-dark);
	border-color: var(--color-whatsapp-dark);
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(29, 168, 81, 0.24);
}

.hero-wizard__again {
	margin-top: 16px;
	padding: 2px 0;
	background: none;
	border: 0;
	color: var(--color-primary);
	font-size: 0.84rem;
	font-weight: var(--weight-semibold);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
	.hero-wizard__step,
	.hero-wizard__success {
		animation: none;
	}
}

@media (max-width: 575px) {
	.hero-wizard__tile {
		min-height: 94px;
		font-size: 0.76rem;
	}

	.hero-wizard__tile-icon {
		width: 40px;
		height: 40px;
	}

	.hero-wizard__tile-icon svg {
		width: 20px;
		height: 20px;
	}

	.hero-wizard__channel span,
	.hero-wizard__reach-link span {
		font-size: 0.8rem;
	}
}

@media (max-width: 360px) {
	.hero-wizard__tiles {
		gap: 8px;
	}

	.hero-wizard__tile {
		padding: 10px 4px;
		font-size: 0.72rem;
	}
}

.hero__cred-card-text {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}

.hero__cred-card-text strong {
	font-size: 0.88rem;
	font-weight: var(--weight-semibold);
	color: #0f172a;
}

.hero__cred-card-text span {
	font-size: 0.76rem;
	color: #64748b;
}

@media (max-width: 767px) {
	.hero__content {
		height: auto;
	}

	.hero__media {
		min-height: 0;
		margin-top: 28px;
	}

	.hero__review-panel {
		min-height: 0;
		padding: 20px;
	}

	.hero__review-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
		margin-bottom: 16px;
	}

	.hero__review-title,
	.hero__review-panel--form .hero__review-title {
		max-width: none;
		font-size: 1.38rem;
	}

	.main-homepage .main-slider-content .hero__review-copy {
		max-width: none;
	}

	.hero__form-grid {
		grid-template-columns: 1fr;
	}

	.hero__review-meta {
		grid-template-columns: 1fr;
	}

	.hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.hero__microcopy {
		padding-left: 0;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.hero__form-grid {
		grid-template-columns: 1fr;
	}

	.hero__review-meta {
		grid-template-columns: 1fr;
	}
}

.homepage-about-snapshot {
	background: #fff;
	border-bottom: 1px solid rgba(16, 47, 79, 0.08);
	padding: clamp(64px, 7vw, 108px) 0 clamp(64px, 7vw, 104px);
}

.homepage-about-snapshot__grid {
	display: grid;
	align-items: center;
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1fr);
	gap: clamp(42px, 6vw, 82px);
}

.homepage-about-snapshot__content {
	max-width: 620px;
}

.homepage-about-snapshot__label {
	display: inline-flex;
	margin-bottom: 14px;
	color: #64748b;
	font-size: 0.84rem;
	font-weight: var(--weight-heading);
	line-height: 1.2;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.homepage-about-snapshot h2 {
	max-width: 620px;
	margin: 0 0 22px;
	color: var(--color-ink-strong);
	font-size: clamp(2rem, 1.62rem + 1.18vw, 3rem);
	font-weight: var(--weight-heading);
	line-height: 1.12;
	letter-spacing: 0;
}

.homepage-about-snapshot p {
	max-width: 66ch;
	margin: 0 0 14px;
	color: #475569;
	font-size: clamp(1rem, 0.96rem + 0.15vw, 1.08rem);
	line-height: 1.68;
}

.homepage-about-snapshot__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px clamp(16px, 2.4vw, 30px);
	margin-top: clamp(30px, 4vw, 44px);
	color: var(--color-ink-strong);
}

.homepage-about-snapshot__stat {
	min-width: 0;
}

.homepage-about-snapshot__stat strong {
	align-items: center;
	color: var(--color-primary);
	display: inline-flex;
	flex-wrap: nowrap;
	gap: 5px;
	font-size: clamp(1.42rem, 1.16rem + 0.72vw, 1.9rem);
	font-weight: var(--weight-emphasis);
	letter-spacing: 0;
	line-height: 0.98;
	max-width: 100%;
	overflow-wrap: normal;
	white-space: nowrap;
}

.homepage-about-snapshot__stat-number {
	color: inherit;
	font-size: clamp(1.6rem, 1.28rem + 0.9vw, 2.18rem);
	line-height: 0.9;
}

.homepage-about-snapshot__stat-unit {
	color: var(--color-primary-dark);
	font-size: clamp(0.72rem, 0.66rem + 0.16vw, 0.84rem);
	font-weight: var(--weight-display);
	line-height: 1.08;
	padding-top: 0.08em;
}

.homepage-about-snapshot__stat-value--text {
	font-size: clamp(1.12rem, 0.96rem + 0.48vw, 1.48rem);
	line-height: 1;
}

.homepage-about-snapshot__stat > span {
	display: block;
	margin-top: 5px;
	color: #475569;
	font-size: 0.86rem;
	font-weight: var(--weight-medium);
	line-height: 1.28;
}

.homepage-about-snapshot__media {
	position: relative;
	order: -1;
	width: 100%;
	max-width: 560px;
	margin: 0;
	padding-bottom: 30px;
}

.homepage-about-snapshot__image {
	margin: 0;
	overflow: hidden;
	background: var(--color-surface-soft);
	border: 1px solid rgba(216, 232, 245, 0.9);
	border-radius: 24px;
	box-shadow: 0 24px 58px rgba(15, 42, 75, 0.16);
}

.homepage-about-snapshot__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.homepage-about-snapshot__image--main {
	width: 100%;
	aspect-ratio: 4 / 3;
}

.homepage-about-snapshot__image--main img {
	object-position: center;
}

.homepage-about-snapshot__credential {
	position: absolute;
	right: clamp(8px, 2vw, 26px);
	bottom: 0;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	max-width: min(320px, calc(100% - 16px));
	min-height: 58px;
	padding: 12px 16px;
	background: rgba(255, 255, 255, 0.97);
	border: 1px solid rgba(226, 232, 240, 0.95);
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(15, 42, 75, 0.16);
	color: #334155;
	font-size: 0.82rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	text-decoration: none;
}

.homepage-about-snapshot__credential:hover,
.homepage-about-snapshot__credential:focus {
	color: #334155;
	text-decoration: none;
	transform: translateY(-1px);
}

.homepage-about-snapshot__credential:focus-visible {
	outline: 3px solid rgba(23, 105, 170, 0.28);
	outline-offset: 3px;
}

.homepage-about-snapshot__credential svg {
	width: 20px;
	height: 20px;
	flex: 0 0 auto;
	color: var(--color-primary);
}

[dir='rtl'] .homepage-about-snapshot__credential {
	right: auto;
	left: clamp(8px, 2vw, 26px);
}

@media screen and (max-width: 1199px) {
	.homepage-about-snapshot__grid {
		grid-template-columns: minmax(0, 0.92fr) minmax(0, 1fr);
		gap: clamp(36px, 5vw, 58px);
	}
}

@media screen and (max-width: 991px) {
	.homepage-about-snapshot {
		padding: 56px 0 62px;
	}

	.homepage-about-snapshot__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.homepage-about-snapshot__content {
		max-width: none;
	}

	.homepage-about-snapshot h2 {
		max-width: 18ch;
	}

	.homepage-about-snapshot p {
		font-size: 1.04rem;
	}

	.homepage-about-snapshot__media {
		max-width: 620px;
		margin: 0 auto;
	}
}

@media screen and (max-width: 575px) {
	.homepage-about-snapshot {
		padding: 44px 0 48px;
	}

	.homepage-about-snapshot h2 {
		max-width: none;
		line-height: 1.12;
	}

	.homepage-about-snapshot__stats {
		gap: 12px;
		margin-top: 28px;
	}

	.homepage-about-snapshot__stat strong {
		gap: 4px;
		font-size: clamp(0.96rem, 0.84rem + 3.2vw, 1.26rem);
	}

	.homepage-about-snapshot__stat-number {
		font-size: clamp(1.08rem, 0.9rem + 4.8vw, 1.54rem);
	}

	.homepage-about-snapshot__stat-unit {
		font-size: clamp(0.58rem, 0.52rem + 1.4vw, 0.7rem);
	}

	.homepage-about-snapshot__stat-value--text {
		font-size: clamp(0.82rem, 0.72rem + 2.8vw, 1.08rem);
	}

	.homepage-about-snapshot__stat > span {
		font-size: 0.82rem;
	}

	.homepage-about-snapshot__media {
		min-height: 0;
	}

	.homepage-about-snapshot__image--main {
		aspect-ratio: 4 / 3;
	}

	.homepage-about-snapshot__credential {
		left: 10px;
		right: 10px;
		max-width: none;
	}

	[dir='rtl'] .homepage-about-snapshot__credential {
		left: 10px;
		right: 10px;
	}
}

@media screen and (max-width: 767px) {
	.main-homepage .homepage-about-snapshot__content {
		padding: 0 !important;
	}
}

.homepage-social-proof {
	background: var(--color-surface-warm);
	border-bottom-color: rgba(16, 47, 79, 0.08) !important;
	overflow: hidden;
}

.main-homepage .main-slider .homepage-social-proof {
	position: relative;
	z-index: 3;
	background: transparent;
	border-bottom: 0 !important;
}

.main-homepage .main-slider .homepage-social-proof__logo-link:hover,
.main-homepage .main-slider .homepage-social-proof__logo-link:focus {
	background: transparent;
}

.homepage-social-proof__partners {
	margin-top: 0;
}

.homepage-social-proof__marquee {
	--partner-logo-gap: 28px;
	display: flex;
	gap: var(--partner-logo-gap);
	margin-inline: auto;
	max-width: 100%;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
}

.homepage-social-proof__marquee:hover .homepage-social-proof__track,
.homepage-social-proof__marquee:focus-within .homepage-social-proof__track {
	animation-play-state: paused;
}

.homepage-social-proof__track {
	display: flex;
	flex: 0 0 auto;
	gap: var(--partner-logo-gap);
	min-width: max-content;
	animation: homepagePartnerMarquee 42s linear infinite;
}

.homepage-social-proof__logo-link {
	width: 220px;
	height: 82px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px 18px;
	background: transparent;
	border: 0;
	border-radius: 6px;
	text-decoration: none;
	transition:
		background-color 0.16s ease,
		opacity 0.16s ease,
		transform 0.16s ease;
}

.homepage-social-proof__logo-link:hover,
.homepage-social-proof__logo-link:focus {
	background: transparent;
	text-decoration: none;
	transform: translateY(-2px);
	opacity: 0.96;
}

.homepage-social-proof__logo-link:focus-visible {
	outline: 2px solid var(--color-primary);
	outline-offset: 3px;
}

.homepage-social-proof__logo {
	width: 174px;
	height: 58px;
	display: block;
	object-fit: contain;
	filter: saturate(0.98) contrast(1.03);
	transition:
		filter 0.16s ease,
		transform 0.16s ease;
}

.homepage-social-proof__logo--wide {
	width: 184px;
	height: 52px;
}

.homepage-social-proof__logo--lokman {
	width: 184px;
	height: 62px;
}

.homepage-social-proof__logo--standard {
	width: 150px;
	height: 62px;
}

.homepage-social-proof__logo--compact {
	width: 98px;
	height: 68px;
}

.homepage-social-proof__logo-link:hover .homepage-social-proof__logo,
.homepage-social-proof__logo-link:focus .homepage-social-proof__logo {
	filter: saturate(1.08) contrast(1.04);
	transform: scale(1.02);
}

@media screen and (max-width: 767px) {
	.homepage-social-proof__partners {
		margin-top: 0;
		padding-top: 0;
	}

	.homepage-social-proof__marquee {
		--partner-logo-gap: 14px;
		margin-inline: -15px;
	}

	.homepage-social-proof__logo-link {
		width: 166px;
		height: 70px;
		padding: 6px 12px;
	}

	.homepage-social-proof__logo {
		width: 132px;
		height: 46px;
	}

	.homepage-social-proof__logo--wide {
		width: 138px;
		height: 40px;
	}

	.homepage-social-proof__logo--lokman {
		width: 142px;
		height: 48px;
	}

	.homepage-social-proof__logo--standard {
		width: 112px;
		height: 50px;
	}

	.homepage-social-proof__logo--compact {
		width: 78px;
		height: 54px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.homepage-social-proof__marquee {
		-webkit-mask-image: none;
		mask-image: none;
		overflow: visible;
	}

	.homepage-social-proof__track {
		flex-wrap: wrap;
		justify-content: center;
		min-width: 0;
		width: 100%;
		animation: none;
	}

	.homepage-social-proof__track[aria-hidden='true'] {
		display: none;
	}

	.homepage-social-proof__logo-link {
		transform: none !important;
	}
}

.homepage-process {
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
	border-bottom: 1px solid rgba(216, 232, 245, 0.82);
	overflow: hidden;
	position: relative;
}

.homepage-process::before {
	background: linear-gradient(
		115deg,
		rgba(234, 245, 255, 0) 0%,
		rgba(234, 245, 255, 0.82) 42%,
		rgba(234, 245, 255, 0) 72%
	);
	content: '';
	height: 100%;
	pointer-events: none;
	position: absolute;
	right: -18%;
	top: 0;
	transform: skewX(-14deg);
	width: min(54vw, 720px);
}

.homepage-process > .container {
	position: relative;
	z-index: 1;
}

.homepage-process__header {
	align-items: end;
	display: grid;
	gap: clamp(22px, 4vw, 64px);
	grid-template-columns: minmax(0, 0.9fr) minmax(300px, 0.56fr);
	margin-bottom: clamp(30px, 4.5vw, 58px);
}

.homepage-process__kicker {
	color: var(--color-primary);
	display: inline-flex;
	font-size: 0.82rem;
	font-weight: var(--weight-display);
	letter-spacing: 0.05em;
	line-height: 1.2;
	margin-bottom: 14px;
	text-transform: uppercase;
}

.homepage-process h2 {
	color: var(--color-ink-strong);
	font-size: var(--text-section-title);
	font-weight: var(--weight-display);
	line-height: 1.06;
	margin: 0;
	max-width: 740px;
}

.homepage-process__intro {
	color: var(--color-muted);
	font-size: clamp(1.02rem, 0.98rem + 0.22vw, 1.14rem);
	line-height: 1.5;
	margin: 0;
	max-width: 42rem;
}

.homepage-process__grid {
	--process-gap: clamp(16px, 1.7vw, 24px);
	display: grid;
	gap: var(--process-gap);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.homepage-process-card {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.99) 0%,
		rgba(246, 251, 255, 0.97) 100%
	);
	border: 1px solid rgba(192, 219, 239, 0.88);
	border-radius: 22px;
	box-shadow:
		0 22px 54px rgba(16, 47, 79, 0.1),
		0 1px 0 rgba(255, 255, 255, 0.92) inset;
	isolation: isolate;
	min-width: 0;
	padding: 18px;
	position: relative;
	transition:
		background-color 0.22s ease,
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease;
}

.homepage-process-card::before {
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0) 46%),
		linear-gradient(180deg, rgba(47, 143, 211, 0.08) 0%, rgba(47, 143, 211, 0) 42%);
	border-radius: 20px;
	content: '';
	inset: 1px;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.homepage-process-card__top {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 16px;
	min-height: 42px;
	position: relative;
	z-index: 2;
}

.homepage-process-card__number {
	align-items: center;
	background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);
	border: 1px solid rgba(255, 255, 255, 0.36);
	border-radius: 14px;
	box-shadow: 0 12px 24px rgba(23, 105, 170, 0.22);
	color: #fff;
	display: inline-flex;
	flex: 0 0 46px;
	font-size: 0.84rem;
	font-weight: var(--weight-emphasis);
	height: 42px;
	justify-content: center;
	line-height: 1;
	width: 46px;
}

.homepage-process-card__step {
	background: rgba(234, 245, 255, 0.86);
	border: 1px solid rgba(189, 219, 242, 0.8);
	border-radius: 999px;
	color: var(--color-primary-dark);
	font-size: 0.8rem;
	font-weight: var(--weight-display);
	letter-spacing: 0.04em;
	line-height: 1.2;
	padding: 7px 10px;
	text-transform: uppercase;
}

.homepage-process-card__media {
	aspect-ratio: 1.35;
	background: var(--color-surface-soft);
	border: 1px solid rgba(216, 232, 245, 0.82);
	border-radius: 18px;
	box-shadow: 0 14px 30px rgba(16, 47, 79, 0.08);
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.homepage-process-card__media::before {
	background: linear-gradient(
		115deg,
		rgba(255, 255, 255, 0) 8%,
		rgba(255, 255, 255, 0.36) 46%,
		rgba(255, 255, 255, 0) 72%
	);
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	transform: translateX(-125%);
	transition: transform 0.7s ease;
	width: 62%;
	z-index: 2;
}

.homepage-process-card__media::after {
	background: linear-gradient(180deg, rgba(7, 18, 37, 0) 50%, rgba(7, 18, 37, 0.3) 100%);
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.22s ease;
	z-index: 1;
}

.homepage-process-card__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	transform: scale(1.01);
	transition:
		filter 0.35s ease,
		transform 0.35s ease;
	width: 100%;
}

.homepage-process-card__body {
	padding: 20px 4px 5px;
	position: relative;
	z-index: 1;
}

.homepage-process-card h3 {
	color: var(--color-ink-strong);
	font-size: clamp(1.08rem, 1.02rem + 0.22vw, 1.22rem);
	font-weight: var(--weight-display);
	line-height: 1.16;
	margin: 0 0 10px;
}

.homepage-process-card p {
	color: var(--color-muted);
	font-size: 0.98rem;
	line-height: 1.48;
	margin: 0;
}

@media (hover: hover) and (pointer: fine) {
	.homepage-process-card:hover {
		border-color: rgba(141, 190, 226, 0.95);
		box-shadow:
			0 30px 70px rgba(16, 47, 79, 0.15),
			0 1px 0 rgba(255, 255, 255, 0.94) inset;
		transform: translateY(-6px);
	}

	.homepage-process-card:hover .homepage-process-card__media::before {
		transform: translateX(190%);
	}

	.homepage-process-card:hover .homepage-process-card__media::after {
		opacity: 0.78;
	}

	.homepage-process-card:hover .homepage-process-card__media img {
		filter: saturate(1.06) contrast(1.03);
		transform: scale(1.075);
	}
}

@media screen and (max-width: 1199px) {
	.homepage-process__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 767px) {
	.homepage-process {
		padding-top: 48px !important;
		padding-bottom: 52px !important;
	}

	.homepage-process::before {
		right: -58%;
		width: 92vw;
	}

	.homepage-process__header {
		align-items: start;
		grid-template-columns: 1fr;
		margin-bottom: 28px;
	}

	.homepage-process__grid {
		grid-template-columns: 1fr;
	}

	.homepage-process-card {
		padding: 14px;
		border-radius: 18px;
	}

	.homepage-process-card__media {
		aspect-ratio: 1.65;
		border-radius: 15px;
	}

	.homepage-process-card__body {
		padding-top: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.homepage-process-card,
	.homepage-process-card__media::before,
	.homepage-process-card__media img {
		transition: none;
	}

	.homepage-process-card:hover,
	.homepage-process-card:hover .homepage-process-card__media img {
		transform: none;
	}
}

.homepage-hospitals__grid {
	display: grid;
	gap: clamp(16px, 1.8vw, 24px);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.homepage-hospitals__summary {
	align-items: flex-start;
	display: grid;
	gap: 18px;
	justify-self: end;
	justify-items: start;
}

.homepage-hospitals__header {
	align-items: center;
	grid-template-columns: minmax(0, 1fr) auto;
}

.homepage-hospital-card {
	min-width: 0;
}

.homepage-hospital-card__link {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.99) 0%,
		rgba(247, 251, 255, 0.98) 100%
	);
	border: 1px solid rgba(192, 219, 239, 0.88);
	border-radius: 18px;
	box-shadow:
		0 22px 54px rgba(16, 47, 79, 0.1),
		0 1px 0 rgba(255, 255, 255, 0.92) inset;
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease;
}

.homepage-hospital-card__link:hover,
.homepage-hospital-card__link:focus {
	color: inherit;
	text-decoration: none;
}

.homepage-hospital-card__link:focus-visible {
	outline: 3px solid rgba(47, 143, 211, 0.38);
	outline-offset: 4px;
}

.homepage-hospital-card__media {
	aspect-ratio: 1.45;
	background: var(--color-surface-soft);
	display: block;
	overflow: hidden;
	position: relative;
}

.homepage-hospital-card__media::after {
	background: linear-gradient(180deg, rgba(7, 18, 37, 0) 42%, rgba(7, 18, 37, 0.46) 100%);
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.homepage-hospital-card__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	transform: scale(1.01);
	transition:
		filter 0.35s ease,
		transform 0.35s ease;
	width: 100%;
}

.homepage-hospital-card__badge {
	align-items: center;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-radius: 999px;
	bottom: 14px;
	box-shadow: 0 12px 28px rgba(7, 18, 37, 0.18);
	color: var(--color-primary-dark);
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: var(--weight-semibold);
	gap: 7px;
	left: 14px;
	line-height: 1.1;
	max-width: calc(100% - 28px);
	padding: 8px 11px;
	position: absolute;
	z-index: 2;
}

.homepage-hospital-card__badge svg {
	flex: 0 0 14px;
	height: 14px;
	stroke-width: 2.4;
	width: 14px;
}

.homepage-hospital-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
	padding: 20px 18px 18px;
}

.homepage-hospital-card__title {
	color: var(--color-ink-strong);
	display: block;
	font-size: clamp(1.12rem, 1.06rem + 0.24vw, 1.28rem);
	font-weight: var(--weight-semibold);
	line-height: 1.14;
	margin-bottom: 10px;
}

.homepage-hospital-card__description {
	color: var(--color-muted);
	display: block;
	font-size: 0.96rem;
	line-height: 1.48;
	margin-bottom: 16px;
}

.homepage-hospital-card__meta {
	color: #596272;
	display: flex;
	flex-direction: column;
	font-size: 0.92rem;
	gap: 8px;
	line-height: 1.35;
	margin-top: auto;
}

.homepage-hospital-card__meta span {
	align-items: flex-start;
	display: flex;
	gap: 8px;
	min-width: 0;
}

.homepage-hospital-card__meta svg {
	color: var(--color-primary);
	flex: 0 0 16px;
	height: 16px;
	margin-top: 1px;
	stroke-width: 2.3;
	width: 16px;
}

.homepage-hospital-card__cta {
	align-items: center;
	border-top: 1px solid rgba(216, 232, 245, 0.82);
	color: var(--color-primary-dark);
	display: flex;
	font-size: 0.94rem;
	font-weight: var(--weight-semibold);
	gap: 8px;
	justify-content: space-between;
	line-height: 1.2;
	margin-top: 18px;
	padding-top: 15px;
}

.homepage-hospital-card__cta svg {
	flex: 0 0 17px;
	height: 17px;
	stroke-width: 2.5;
	width: 17px;
}

.homepage-hospitals__actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 0;
}

@media (hover: hover) and (pointer: fine) {
	.homepage-hospital-card__link:hover {
		border-color: rgba(141, 190, 226, 0.95);
		box-shadow:
			0 30px 70px rgba(16, 47, 79, 0.15),
			0 1px 0 rgba(255, 255, 255, 0.94) inset;
		transform: translateY(-6px);
	}

	.homepage-hospital-card__link:hover .homepage-hospital-card__media img {
		filter: saturate(1.06) contrast(1.03);
		transform: scale(1.075);
	}
}

@media screen and (max-width: 1199px) {
	.homepage-hospitals__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 767px) {
	.homepage-hospitals__grid {
		grid-template-columns: 1fr;
	}

	.homepage-hospital-card__media {
		aspect-ratio: 1.65;
	}

	.homepage-hospital-card__body {
		padding: 18px 16px 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.homepage-hospital-card__link,
	.homepage-hospital-card__media img {
		transition: none;
	}

	.homepage-hospital-card__link:hover,
	.homepage-hospital-card__link:hover .homepage-hospital-card__media img {
		transform: none;
	}
}

.homepage-hospitals__grid {
	gap: clamp(14px, 1.6vw, 22px);
	grid-template-columns: repeat(4, minmax(250px, 1fr));
}

.homepage-hospital-card__link {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(245, 250, 255, 0.96) 100%);
	border: 1px solid rgba(192, 219, 239, 0.84);
	border-radius: 20px;
	box-shadow:
		0 18px 44px rgba(16, 47, 79, 0.11),
		0 1px 0 rgba(255, 255, 255, 0.86) inset;
	display: flex;
	flex-direction: column;
	isolation: isolate;
	justify-content: flex-end;
	min-height: clamp(270px, 16vw, 310px);
	position: relative;
}

.homepage-hospital-card__link::before {
	background: linear-gradient(180deg, rgba(4, 13, 27, 0.02) 0%, rgba(4, 13, 27, 0.03) 38%, rgba(9, 31, 53, 0.56) 100%);
	border-radius: inherit;
	content: '';
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.homepage-hospital-card__media {
	aspect-ratio: auto;
	border-bottom: 0;
	inset: 0;
	position: absolute;
}

.homepage-hospital-card__media::before {
	display: none;
}

.homepage-hospital-card__media::after {
	background: linear-gradient(180deg, rgba(8, 24, 43, 0.04) 0%, rgba(8, 24, 43, 0.01) 42%, rgba(8, 31, 54, 0.28) 100%);
}

.homepage-hospital-card__media img {
	min-height: 100%;
}

.homepage-hospital-card__badge {
	display: none;
}

.homepage-hospital-card__body {
	align-items: end;
	color: #fff;
	display: grid;
	flex: 0 0 auto;
	grid-template-areas:
		'title cta'
		'meta cta';
	grid-template-columns: minmax(0, 1fr) 42px;
	column-gap: 14px;
	row-gap: 6px;
	min-width: 0;
	padding: clamp(18px, 2vw, 24px);
	position: static;
	width: 100%;
	z-index: 3;
}

.homepage-hospital-card__title {
	color: #fff;
	font-size: clamp(1.35rem, 1.06rem + 0.72vw, 1.86rem);
	font-weight: var(--weight-display);
	grid-area: title;
	letter-spacing: 0;
	line-height: 1.04;
	margin: 0;
	min-width: 0;
	text-shadow: 0 12px 28px rgba(4, 13, 27, 0.22);
}

.homepage-hospital-card__description {
	display: none;
}

.homepage-hospital-card__meta {
	align-self: start;
	color: rgba(255, 255, 255, 0.84);
	font-size: 0.88rem;
	grid-area: meta;
	line-height: 1.32;
	margin-top: 0;
	max-width: 100%;
	min-width: 0;
}

.homepage-hospital-card__meta span {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 0;
	display: flex;
	gap: 7px;
	max-height: none;
	min-width: 0;
	overflow: hidden;
	padding: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.homepage-hospital-card__meta svg {
	color: rgba(255, 255, 255, 0.82);
	flex: 0 0 15px;
	height: 15px;
	width: 15px;
}

.homepage-hospital-card__cta {
	align-self: end;
	align-items: center;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(216, 232, 245, 0.92);
	border-radius: 999px;
	box-shadow: 0 10px 20px rgba(7, 18, 37, 0.12);
	color: var(--color-primary-dark);
	display: inline-flex;
	font-size: 0;
	gap: 0;
	grid-area: cta;
	height: 40px;
	justify-content: center;
	justify-self: end;
	line-height: 1;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: static;
	transition:
		background-color 0.2s ease,
		transform 0.2s ease;
	width: 40px;
}

.homepage-hospital-card__cta svg {
	flex: 0 0 17px;
	height: 17px;
	stroke-width: 2.35;
	width: 17px;
}

@media (hover: hover) and (pointer: fine) {
	.homepage-hospital-card__link:hover .homepage-hospital-card__cta {
		background: rgba(255, 255, 255, 0.98);
		box-shadow: 0 12px 22px rgba(7, 18, 37, 0.14);
		transform: translateX(2px);
	}
}

@media screen and (max-width: 1199px) {
	.homepage-hospitals__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.homepage-hospital-card__link {
		min-height: clamp(300px, 38vw, 340px);
	}
}

@media screen and (max-width: 767px) {
	.homepage-hospitals__grid {
		grid-template-columns: 1fr;
	}

	.homepage-hospitals__summary {
		gap: 16px;
		justify-self: stretch;
	}

	.homepage-hospitals__actions {
		justify-content: flex-start;
		width: 100%;
	}

	.homepage-hospital-card__link {
		border-radius: 18px;
		min-height: clamp(290px, 68vw, 330px);
	}

	.homepage-hospital-card__body {
		grid-template-columns: minmax(0, 1fr) 40px;
		padding: 20px 14px 18px 18px;
	}

	.homepage-hospital-card__cta {
		height: 38px;
		width: 38px;
	}
}

@media screen and (max-width: 479px) {
	.homepage-hospital-card__link {
		min-height: 300px;
	}
}

.homepage-featured-articles .section-title-bordered {
	color: var(--color-primary-dark);
}

.homepage-featured-articles__grid {
	align-items: stretch;
	display: grid;
	gap: clamp(24px, 3vw, 44px);
	grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.82fr);
	margin-top: clamp(22px, 3vw, 36px);
}

.homepage-featured-articles__grid--single {
	grid-template-columns: minmax(0, 1fr);
}

.homepage-featured-articles__primary,
.homepage-featured-articles__item,
.homepage-article-index__item {
	min-width: 0;
}

.homepage-featured-articles__link,
.homepage-article-index__link {
	color: var(--color-body);
	display: grid;
	min-width: 0;
	text-decoration: none;
}

.homepage-featured-articles__primary .homepage-featured-articles__link {
	grid-template-rows: minmax(0, 1fr) auto;
	height: 100%;
}

.homepage-featured-articles__link:hover,
.homepage-featured-articles__link:focus,
.homepage-article-index__link:hover,
.homepage-article-index__link:focus {
	color: var(--color-primary-dark);
	text-decoration: none;
}

.homepage-featured-articles__link:focus-visible,
.homepage-article-index__link:focus-visible {
	outline: 3px solid rgba(23, 105, 170, 0.22);
	outline-offset: 5px;
}

.homepage-featured-articles__media {
	background: var(--color-surface-soft);
	display: block;
	min-width: 0;
	overflow: hidden;
}

.homepage-featured-articles__media--primary {
	aspect-ratio: 1.62;
	border-radius: 20px 20px 6px 6px;
}

.homepage-featured-articles__media img,
.homepage-article-index__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition:
		filter 0.28s ease,
		transform 0.28s ease;
	width: 100%;
}

.homepage-featured-articles__link:hover .homepage-featured-articles__media img,
.homepage-featured-articles__link:focus .homepage-featured-articles__media img,
.homepage-article-index__link:hover .homepage-article-index__media img,
.homepage-article-index__link:focus .homepage-article-index__media img {
	filter: saturate(1.04) contrast(1.02);
	transform: scale(1.025);
}

.homepage-featured-articles__body {
	display: grid;
	gap: 0.5rem;
	min-width: 0;
	position: relative;
}

.homepage-featured-articles__body--primary {
	background: transparent;
	gap: 0.72rem;
	padding: clamp(18px, 2vw, 26px) 0 0;
}

.homepage-featured-articles__eyebrow,
.homepage-article-index__eyebrow {
	color: var(--color-primary);
	display: inline-flex;
	font-size: 0.73rem;
	font-weight: var(--weight-display);
	justify-self: start;
	letter-spacing: 0.08em;
	line-height: 1.2;
	overflow: hidden;
	text-overflow: ellipsis;
	text-transform: uppercase;
	white-space: nowrap;
}

.homepage-featured-articles__body h3 {
	color: var(--color-ink-strong);
	font-size: clamp(1.04rem, 0.98rem + 0.22vw, 1.18rem);
	font-weight: var(--weight-display);
	letter-spacing: 0;
	line-height: 1.22;
	margin: 0;
}

.homepage-featured-articles__body--primary h3 {
	display: -webkit-box;
	font-size: clamp(1.72rem, 1.22rem + 1.25vw, 2.52rem);
	line-height: 1.02;
	max-width: none;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.homepage-featured-articles__body p {
	color: var(--color-muted);
	display: -webkit-box;
	font-size: 0.95rem;
	line-height: 1.48;
	margin: 0;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.homepage-featured-articles__body--primary p {
	font-size: clamp(1rem, 0.96rem + 0.16vw, 1.08rem);
	line-height: 1.56;
	max-width: 50rem;
	-webkit-line-clamp: 3;
}

.homepage-featured-articles__cta {
	align-items: center;
	color: var(--color-primary-dark);
	display: inline-flex;
	height: 24px;
	justify-content: center;
	transition:
		color 0.18s ease,
		transform 0.18s ease;
	width: 24px;
}

.homepage-featured-articles__cta svg {
	height: 17px;
	stroke-width: 2.5;
	width: 17px;
}

.homepage-featured-articles__link:hover .homepage-featured-articles__cta,
.homepage-featured-articles__link:focus .homepage-featured-articles__cta {
	color: var(--color-primary);
	transform: translateX(4px);
}

.homepage-featured-articles__list {
	align-content: start;
	display: grid;
	gap: clamp(18px, 1.8vw, 24px);
	grid-auto-rows: auto;
	height: auto;
	min-height: 0;
}

.homepage-featured-articles__item {
	display: grid;
	min-height: 0;
}

.homepage-featured-articles__link--compact {
	align-items: center;
	gap: clamp(14px, 1.6vw, 20px);
	grid-template-columns: minmax(148px, 196px) minmax(0, 1fr);
	height: auto;
	padding: 0;
}

@media screen and (min-width: 992px) {
	.homepage-featured-articles__item:first-child .homepage-featured-articles__link--compact {
		align-items: start;
		padding-top: 0;
	}
}

.homepage-featured-articles__media--compact {
	aspect-ratio: 1.5;
	border-radius: 12px 3px 12px 3px;
}

.homepage-featured-articles__link--compact .homepage-featured-articles__body {
	align-content: center;
	gap: 0.42rem;
	grid-template-columns: minmax(0, 1fr);
	padding: 0;
}

.homepage-featured-articles__link--compact .homepage-featured-articles__eyebrow,
.homepage-featured-articles__link--compact h3,
.homepage-featured-articles__link--compact p {
	grid-column: 1;
	min-width: 0;
}

.homepage-featured-articles__link--compact h3 {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.homepage-featured-articles__link--compact .homepage-featured-articles__cta {
	grid-column: 2;
	grid-row: 1 / span 3;
	justify-self: end;
	margin-top: 2px;
}

.homepage-article-index {
	display: grid;
	margin-top: clamp(22px, 3vw, 34px);
}

.homepage-article-index__link {
	align-items: center;
	gap: clamp(18px, 2.4vw, 34px);
	grid-template-columns: minmax(180px, 0.34fr) minmax(0, 1fr);
	padding: clamp(18px, 2.2vw, 26px) 0;
}

.homepage-article-index__media {
	aspect-ratio: 1.7;
	background: var(--color-surface-soft);
	border-radius: 16px 4px 16px 4px;
	display: block;
	overflow: hidden;
}

.homepage-article-index__body {
	align-items: start;
	display: grid;
	gap: 0.5rem;
	grid-template-columns: minmax(0, 1fr) 30px;
	min-width: 0;
}

.homepage-article-index__eyebrow,
.homepage-article-index__title,
.homepage-article-index__description {
	grid-column: 1;
}

.homepage-article-index__title {
	color: var(--color-ink-strong);
	display: -webkit-box;
	font-size: clamp(1.16rem, 1.03rem + 0.34vw, 1.42rem);
	font-weight: var(--weight-display);
	line-height: 1.12;
	max-width: 56rem;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.homepage-article-index__description {
	color: var(--color-muted);
	display: -webkit-box;
	font-size: 0.96rem;
	line-height: 1.5;
	max-width: 56rem;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

@media screen and (max-width: 991px) {
	.homepage-featured-articles__grid {
		align-items: start;
		grid-template-columns: 1fr;
	}

	.homepage-featured-articles__primary .homepage-featured-articles__link,
	.homepage-featured-articles__link--compact {
		height: auto;
	}

	.homepage-featured-articles__list {
		grid-auto-rows: auto;
		gap: 18px 22px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		height: auto;
	}

	.homepage-featured-articles__item {
		border-bottom: 0;
		border-right: 0;
	}

	.homepage-featured-articles__link--compact {
		align-items: start;
		grid-template-columns: 1fr;
		padding: 16px;
	}

	.homepage-featured-articles__link--compact .homepage-featured-articles__body {
		grid-template-columns: minmax(0, 1fr);
	}

	.homepage-featured-articles__media--compact {
		aspect-ratio: 1.5;
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.homepage-featured-articles__grid {
		gap: 24px;
	}

	.homepage-featured-articles__media--primary {
		aspect-ratio: 1.42;
		border-radius: 16px 16px 4px 4px;
	}

	.homepage-featured-articles__body--primary h3 {
		font-size: clamp(1.44rem, 1.16rem + 0.82vw, 1.82rem);
	}

	.homepage-featured-articles__list {
		gap: 18px;
		grid-template-columns: 1fr;
	}

	.homepage-featured-articles__item {
		border-right: 0;
	}

	.homepage-featured-articles__link--compact {
		gap: 12px;
		grid-template-columns: minmax(108px, 136px) minmax(0, 1fr);
		padding: 12px 0;
	}

	.homepage-article-index__link {
		grid-template-columns: minmax(92px, 116px) minmax(0, 1fr);
	}

	.homepage-featured-articles__media--compact {
		aspect-ratio: 1.5;
		border-radius: 12px 3px 12px 3px;
	}

	.homepage-article-index__media {
		aspect-ratio: 1.08;
		border-radius: 12px 3px 12px 3px;
	}

	.homepage-article-index__link {
		gap: 14px;
		padding: 18px 0;
	}

	.homepage-article-index__body {
		grid-template-columns: minmax(0, 1fr) 22px;
	}

	.homepage-article-index__title {
		font-size: clamp(1.02rem, 0.96rem + 0.22vw, 1.14rem);
	}

	.homepage-article-index__description,
	.homepage-featured-articles__link--compact p {
		display: none;
	}
}

@media screen and (max-width: 479px) {
	.homepage-featured-articles__link--compact {
		gap: 10px;
		grid-template-columns: minmax(86px, 108px) minmax(0, 1fr);
		padding: 10px 0;
	}

	.homepage-article-index__link {
		grid-template-columns: 1fr;
	}

	.homepage-featured-articles__media--compact {
		aspect-ratio: 1.5;
	}

	.homepage-article-index__media {
		aspect-ratio: 1.62;
	}
}

@media (prefers-reduced-motion: reduce) {
	.homepage-featured-articles__media img,
	.homepage-featured-articles__cta,
	.homepage-article-index__media img {
		transition: none;
	}

	.homepage-featured-articles__link:hover .homepage-featured-articles__media img,
	.homepage-featured-articles__link:focus .homepage-featured-articles__media img,
	.homepage-featured-articles__link:hover .homepage-featured-articles__cta,
	.homepage-featured-articles__link:focus .homepage-featured-articles__cta,
	.homepage-article-index__link:hover .homepage-article-index__media img,
	.homepage-article-index__link:focus .homepage-article-index__media img {
		transform: none;
	}
}

.homepage-free-consult {
	background: #ffffff;
	color: #050d1e;
	overflow: hidden;
	padding: clamp(48px, 6vw, 80px) 0;
}

.main-homepage > .homepage-free-consult {
	isolation: isolate;
	position: relative;
	background:
		linear-gradient(
			180deg,
			rgba(248, 252, 255, 0.96) 0%,
			rgba(255, 255, 255, 0.98) 46%,
			#ffffff 100%
		),
		linear-gradient(115deg, rgba(234, 245, 255, 0.72) 0%, rgba(255, 255, 255, 0) 52%), #ffffff;
}

.main-homepage > .homepage-free-consult::before {
	content: '';
	position: absolute;
	inset: 0 0 auto;
	height: clamp(86px, 12vw, 168px);
	pointer-events: none;
	background:
		linear-gradient(180deg, rgba(248, 252, 255, 0.9) 0%, rgba(255, 255, 255, 0) 100%),
		radial-gradient(ellipse at 72% 0%, rgba(234, 245, 255, 0.86) 0%, rgba(234, 245, 255, 0) 64%);
	z-index: 0;
}

.main-homepage > .homepage-free-consult > .container {
	position: relative;
	z-index: 1;
}

.homepage-free-consult > .container {
	max-width: min(100% - 56px, var(--site-container-max, 1540px));
}

.homepage-free-consult__panel {
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	min-height: 0;
	padding: 0;
	position: relative;
}

.homepage-free-consult__grid {
	align-items: center;
	display: grid;
	gap: clamp(24px, 4vw, 56px);
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	position: relative;
}

.homepage-free-consult__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: clamp(8px, 1.5vw, 20px) 0;
}

.homepage-free-consult__content h2 {
	color: #050d1e;
	font-size: var(--text-section-title);
	font-weight: var(--weight-display);
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
	max-width: 12em;
}

.homepage-free-consult__lead {
	color: #41506a;
	font-size: clamp(1rem, 0.96rem + 0.18vw, 1.12rem);
	font-weight: var(--weight-medium);
	line-height: 1.55;
	margin: clamp(14px, 2vw, 22px) 0 0;
	max-width: 34em;
}

.homepage-free-consult__button {
	align-self: flex-start;
	margin-top: clamp(22px, 3vw, 34px);
}

.homepage-free-consult__media {
	align-self: center;
	position: relative;
}

.homepage-free-consult__media > img {
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: min(100%, 520px);
	width: 100%;
}

@media screen and (max-width: 991px) {
	.homepage-free-consult__grid {
		gap: clamp(20px, 4vw, 32px);
		grid-template-columns: 1fr;
	}

	.homepage-free-consult__content h2,
	.homepage-free-consult__lead {
		max-width: 100%;
	}

	.homepage-free-consult__media > img {
		max-width: min(100%, 440px);
	}
}

@media screen and (max-width: 575px) {
	.homepage-free-consult {
		padding: 40px 0;
	}

	.homepage-free-consult__content h2 {
		overflow-wrap: break-word;
	}

	.homepage-free-consult__lead {
		font-size: 1rem;
	}

	.homepage-free-consult__media > img {
		max-width: min(100%, 340px);
	}
}

.homepage-cost-comparison {
	--cost-accent: #7657bc;
	--cost-accent-strong: #7657bc;
	--cost-country-col: 120px;
	--cost-label-bar-min: 118px;
	--cost-track: #e6f1ff;
	--cost-grid: rgba(134, 89, 238, 0.16);
	--cost-muted: #5f6b7b;
	--cost-row-gap: 22px;
	--cost-value-space: clamp(76px, 5vw, 96px);
	background: #f7f9fc;
	color: #071225;
	overflow: hidden;
	padding: clamp(46px, 5.4vw, 78px) 0 clamp(58px, 7vw, 104px);
}

.homepage-cost-comparison > .container {
	max-width: min(100% - 56px, var(--site-container-max, 1540px));
}

.homepage-cost-comparison__header {
	margin-bottom: clamp(38px, 4.8vw, 72px);
}

.homepage-cost-comparison__header h2 {
	color: #071225;
	font-size: clamp(2rem, 1.45rem + 2.15vw, 3.35rem);
	font-weight: var(--weight-emphasis);
	letter-spacing: 0;
	line-height: 1.08;
	margin: 0;
}

.homepage-cost-comparison__header p {
	color: #5f6b7b;
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.18rem);
	font-weight: var(--weight-heading);
	letter-spacing: 0;
	margin: 8px 0 0;
}

.homepage-cost-comparison__layout {
	align-items: start;
	display: grid;
	gap: clamp(30px, 4vw, 64px);
	grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
}

.homepage-cost-comparison__filters {
	align-items: start;
	display: grid;
	gap: 14px 16px;
	grid-template-columns: minmax(0, 1fr);
	min-width: 0;
}

.homepage-cost-comparison__field,
.homepage-cost-comparison__country-picker {
	display: grid;
	gap: 10px;
	min-width: 0;
}

.homepage-cost-comparison__filters > .homepage-cost-comparison__field:first-child,
.homepage-cost-comparison__filters
	> .homepage-cost-comparison__field:first-child
	.homepage-cost-comparison__select-wrap {
	max-width: 360px;
}

.homepage-cost-comparison__country-picker {
	grid-column: 1 / -1;
}

.homepage-cost-comparison__field-label {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.homepage-cost-comparison__field > .homepage-cost-comparison__field-label {
	border: 0;
	clip: auto;
	color: #566274;
	display: block;
	font-size: 0.82rem;
	font-weight: var(--weight-heading);
	height: auto;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0;
	overflow: visible;
	padding: 0 2px;
	position: static;
	white-space: normal;
	width: auto;
}

.homepage-cost-comparison__select-wrap {
	display: block;
	min-width: 0;
	overflow: visible;
	position: relative;
	width: 100%;
}

.homepage-cost-comparison__field--currency .homepage-cost-comparison__select-wrap {
	max-width: 168px;
}

.homepage-cost-comparison__select,
.homepage-cost-comparison__select-button {
	appearance: none;
	background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
	border: 1px solid rgba(203, 216, 233, 0.96);
	border-radius: 18px;
	box-shadow: 0 10px 24px rgba(16, 47, 79, 0.08);
	color: #172033;
	display: block;
	font-size: 1rem;
	font-weight: var(--weight-heading);
	line-height: 1.15;
	min-height: 58px;
	min-width: 0;
	padding: 0 64px 0 18px;
	transition:
		background-color 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease;
	width: 100%;
}

.homepage-cost-comparison__select-button {
	align-items: center;
	cursor: pointer;
	text-align: left;
}

.homepage-cost-comparison__select-button-text {
	display: block;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.homepage-cost-comparison__select-wrap--enhanced .homepage-cost-comparison__select {
	display: none;
}

.homepage-cost-comparison__select--currency {
	max-width: 168px;
	min-width: 0;
}

.homepage-cost-comparison__select-wrap:hover .homepage-cost-comparison__select,
.homepage-cost-comparison__select-wrap:hover .homepage-cost-comparison__select-button,
.homepage-cost-comparison__select-wrap--open .homepage-cost-comparison__select-button {
	border-color: rgba(134, 89, 238, 0.34);
	box-shadow: 0 12px 26px rgba(16, 47, 79, 0.1);
}

.homepage-cost-comparison__select-icon {
	align-items: center;
	background: #eef4fb;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px rgba(134, 89, 238, 0.12);
	color: var(--cost-accent-strong);
	display: inline-flex;
	height: 42px;
	justify-content: center;
	pointer-events: none;
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
	width: 42px;
	z-index: 2;
}

.homepage-cost-comparison__select-icon svg {
	height: 18px;
	stroke-width: 3;
	transition: transform 0.16s ease;
	width: 18px;
}

.homepage-cost-comparison__select-wrap--open .homepage-cost-comparison__select-icon svg {
	transform: rotate(180deg);
}

.homepage-cost-comparison__select-menu {
	background: #fff;
	border: 1px solid rgba(203, 216, 233, 0.96);
	border-radius: 16px;
	box-shadow: 0 18px 38px rgba(16, 47, 79, 0.16);
	box-sizing: border-box;
	display: none;
	left: 0;
	max-height: 260px;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 6px 8px 6px 6px;
	position: absolute;
	right: 0;
	scrollbar-color: rgba(134, 89, 238, 0.52) transparent;
	scrollbar-width: thin;
	top: calc(100% + 8px);
	width: 100%;
	z-index: 40;
}

.homepage-cost-comparison__select-menu::-webkit-scrollbar {
	width: 7px;
}

.homepage-cost-comparison__select-menu::-webkit-scrollbar-track {
	background: transparent;
	margin: 8px 0;
}

.homepage-cost-comparison__select-menu::-webkit-scrollbar-thumb {
	background: rgba(134, 89, 238, 0.58);
	border-radius: 999px;
	min-height: 34px;
}

.homepage-cost-comparison__select-menu::-webkit-scrollbar-thumb:hover {
	background: rgba(134, 89, 238, 0.76);
}

.homepage-cost-comparison__select-wrap--open .homepage-cost-comparison__select-menu {
	display: grid;
	gap: 2px;
}

.homepage-cost-comparison__select-option {
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 12px;
	color: #263248;
	cursor: pointer;
	display: block;
	font-size: 0.95rem;
	font-weight: var(--weight-semibold);
	line-height: 1.2;
	min-height: 40px;
	padding: 10px 12px;
	text-align: left;
	width: 100%;
}

.homepage-cost-comparison__select-option:hover,
.homepage-cost-comparison__select-option:focus {
	background: #f4f7fb;
	color: var(--cost-accent-strong);
	outline: none;
}

.homepage-cost-comparison__select-option[aria-selected='true'] {
	background: #f0edff;
	color: var(--cost-accent-strong);
}

.homepage-cost-comparison__chips {
	display: grid;
	gap: 12px 10px;
	grid-template-columns: repeat(3, max-content);
	max-width: 560px;
	padding-top: 0;
}

.homepage-cost-comparison__chip {
	align-items: center;
	background: #f7fbff;
	border: 1px solid #d7e4f1;
	border-radius: 999px;
	color: #26435f;
	cursor: pointer;
	display: inline-flex;
	font-size: 0.92rem;
	font-weight: var(--weight-semibold);
	justify-content: center;
	line-height: 1.1;
	min-height: 36px;
	padding: 0 18px;
	transition: box-shadow 0.18s ease;
	white-space: nowrap;
}

.homepage-cost-comparison__chip-check {
	display: none;
}

.homepage-cost-comparison__country-label {
	font-weight: var(--weight-regular);
}

.homepage-cost-comparison__chip:focus-visible,
.homepage-cost-comparison__select:focus-visible,
.homepage-cost-comparison__select-button:focus-visible,
.homepage-cost-comparison__select-option:focus-visible {
	box-shadow:
		0 0 0 3px rgba(134, 89, 238, 0.2),
		0 10px 22px rgba(16, 47, 79, 0.07);
	outline: none;
}

.homepage-cost-comparison__chip--active,
.homepage-cost-comparison__chip[aria-pressed='true'] {
	background: var(--color-primary);
	border-color: var(--color-primary);
	box-shadow: 0 10px 22px rgba(23, 105, 170, 0.18);
	color: #fff;
	font-weight: var(--weight-semibold);
}

.homepage-cost-comparison__chip--active:hover,
.homepage-cost-comparison__chip--active:focus,
.homepage-cost-comparison__chip[aria-pressed='true']:hover,
.homepage-cost-comparison__chip[aria-pressed='true']:focus {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: #fff;
	outline: none;
}

.homepage-cost-comparison__chart {
	min-width: 0;
}

.homepage-cost-comparison__chart-head {
	align-items: center;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: clamp(30px, 3vw, 46px);
	padding-left: calc(var(--cost-country-col) + var(--cost-row-gap));
	padding-right: var(--cost-value-space);
}

.homepage-cost-comparison__chart-head h3 {
	color: #1b2638;
	font-size: clamp(1.24rem, 1.08rem + 0.52vw, 1.58rem);
	font-weight: var(--weight-semibold);
	letter-spacing: 0;
	line-height: 1.18;
	margin: 0;
}

.homepage-cost-comparison__legend,
.homepage-cost-comparison__mobile-legend {
	align-items: center;
	color: #596272;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.88rem;
	font-weight: var(--weight-regular);
	gap: 18px 26px;
	line-height: 1.2;
}

.homepage-cost-comparison__legend {
	justify-content: flex-end;
	margin-left: auto;
	text-align: right;
}

.homepage-cost-comparison__legend span,
.homepage-cost-comparison__mobile-legend span {
	align-items: center;
	display: inline-flex;
	gap: 9px;
	white-space: nowrap;
}

.homepage-cost-comparison__legend-dot {
	border-radius: 999px;
	display: inline-block;
	flex: 0 0 20px;
	height: 20px;
	width: 20px;
}

.homepage-cost-comparison__legend-dot--best {
	background: var(--cost-accent);
}

.homepage-cost-comparison__legend-dot--average {
	background: var(--cost-track);
}

.homepage-cost-comparison__bars {
	display: grid;
	gap: 18px;
}

.homepage-cost-comparison__row {
	align-items: center;
	display: grid;
	gap: var(--cost-row-gap);
	grid-template-columns: var(--cost-country-col) minmax(0, 1fr);
	min-width: 0;
}

.homepage-cost-comparison__country {
	align-items: center;
	color: #1b2638;
	display: flex;
	font-size: 1rem;
	font-weight: var(--weight-semibold);
	gap: 12px;
	min-width: 0;
}

.homepage-cost-comparison__country .homepage-cost-comparison__country-label,
.homepage-cost-comparison__chip .homepage-cost-comparison__country-label {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.homepage-cost-comparison__flag {
	align-items: center;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	display: inline-flex;
	flex: 0 0 34px;
	height: 34px;
	justify-content: center;
	overflow: visible;
	width: 34px;
}

.homepage-cost-comparison__flag .iti__flag {
	border-radius: 1px;
	box-shadow: none;
	transform: scale(1.45);
	transform-origin: center;
}

.homepage-cost-comparison__bar-track {
	box-sizing: border-box;
	height: 28px;
	min-width: 0;
	position: relative;
	width: calc(100% - var(--cost-value-space));
}

.homepage-cost-comparison__gridline {
	background-image: linear-gradient(to right, var(--cost-grid) 1px, transparent 1px);
	background-size: calc(100% / 3) 100%;
	border-right: 1px solid var(--cost-grid);
	inset: -12px 0;
	pointer-events: none;
	position: absolute;
}

.homepage-cost-comparison__bar {
	border-radius: 999px;
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
}

.homepage-cost-comparison__bar--average {
	background: var(--cost-track);
	width: var(--average-width);
	z-index: 1;
}

.homepage-cost-comparison__bar--best {
	align-items: center;
	background: var(--cost-accent);
	display: flex;
	justify-content: flex-end;
	min-width: min(var(--cost-label-bar-min), 100%);
	width: var(--best-width);
	z-index: 2;
}

.homepage-cost-comparison__value {
	color: #fff;
	display: block;
	font-size: 0.84rem;
	font-weight: var(--weight-regular);
	line-height: 1;
	padding-right: 14px;
	position: relative;
	text-align: right;
	white-space: nowrap;
}

.homepage-cost-comparison__quote-value {
	align-items: center;
	color: var(--cost-accent-strong);
	display: inline-flex;
	font-size: 0.96rem;
	font-weight: var(--weight-heading);
	min-height: 100%;
}

.homepage-cost-comparison__axis {
	color: #5f6b7b;
	display: grid;
	font-size: 0.96rem;
	font-weight: var(--weight-semibold);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	line-height: 1.2;
	margin: 32px 0 0;
	padding-left: calc(var(--cost-country-col) + var(--cost-row-gap));
	padding-right: var(--cost-value-space);
}

.homepage-cost-comparison__axis span:nth-child(1) {
	text-align: left;
}

.homepage-cost-comparison__axis span:nth-child(2),
.homepage-cost-comparison__axis span:nth-child(3) {
	text-align: center;
}

.homepage-cost-comparison__axis span:nth-child(4) {
	text-align: right;
}

.homepage-cost-comparison__mobile-legend {
	display: none;
	margin-top: 22px;
}

.homepage-cost-comparison__note {
	color: #5f6b7b;
	font-size: 0.84rem;
	line-height: 1.45;
	margin: 28px 0 0;
	padding-left: calc(var(--cost-country-col) + var(--cost-row-gap));
	padding-right: var(--cost-value-space);
}

.homepage-cost-comparison__page-link {
	align-items: center;
	color: var(--color-primary);
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: var(--weight-semibold);
	gap: 7px;
	margin-left: calc(var(--cost-country-col) + var(--cost-row-gap));
	margin-top: 16px;
	text-decoration: none;
}

.homepage-cost-comparison__page-link:hover {
	color: #0e4f83;
	text-decoration: underline;
}

.homepage-cost-comparison__page-link svg {
	height: 16px;
	width: 16px;
}

.homepage-cost-comparison__empty {
	background: #fff;
	border: 1px dashed #c9dcea;
	border-radius: 8px;
	color: var(--cost-muted);
	font-weight: var(--weight-semibold);
	line-height: 1.4;
	margin: 0;
	padding: 22px;
	text-align: center;
}

@media screen and (max-width: 1199px) {
	.homepage-cost-comparison {
		--cost-country-col: 116px;
		--cost-row-gap: 18px;
		--cost-value-space: 78px;
	}

	.homepage-cost-comparison__layout {
		gap: 46px;
		grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
	}

	.homepage-cost-comparison__chart-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}
}

@media screen and (max-width: 991px) {
	.homepage-cost-comparison {
		--cost-country-col: 114px;
		--cost-row-gap: 18px;
		--cost-value-space: 84px;
	}

	.homepage-cost-comparison > .container {
		max-width: min(100% - 36px, 860px);
	}

	.homepage-cost-comparison__layout {
		gap: 38px;
		grid-template-columns: 1fr;
	}

	.homepage-cost-comparison__filters {
		gap: 14px;
		grid-template-columns: minmax(0, 1fr);
	}

	.homepage-cost-comparison__select--currency {
		max-width: none;
	}

	.homepage-cost-comparison__field--currency .homepage-cost-comparison__select-wrap {
		max-width: none;
	}

	.homepage-cost-comparison__chips {
		max-width: 100%;
	}

	.homepage-cost-comparison__filters > .homepage-cost-comparison__field:first-child,
	.homepage-cost-comparison__filters
		> .homepage-cost-comparison__field:first-child
		.homepage-cost-comparison__select-wrap {
		max-width: 100%;
	}

	.homepage-cost-comparison__chart-head {
		align-items: center;
		flex-direction: row;
	}
}

@media screen and (max-width: 767px) {
	.homepage-cost-comparison {
		--cost-country-col: 98px;
		--cost-label-bar-min: 96px;
		--cost-row-gap: 12px;
		--cost-value-space: 58px;
		padding: 44px 0 54px;
	}

	.homepage-cost-comparison__header {
		margin-bottom: 24px;
	}

	.homepage-cost-comparison__select,
	.homepage-cost-comparison__select-button {
		font-size: 0.95rem;
		min-height: 52px;
		padding-left: 16px;
		padding-right: 60px;
	}

	.homepage-cost-comparison__select-icon {
		height: 38px;
		width: 38px;
	}

	.homepage-cost-comparison__chip {
		font-size: 0.86rem;
		min-height: 31px;
		padding: 0 14px;
	}

	.homepage-cost-comparison__chart-head {
		display: block;
		padding-left: 0;
	}

	.homepage-cost-comparison__chart-head h3 {
		font-size: 1.12rem;
	}

	.homepage-cost-comparison__legend {
		display: none;
	}

	.homepage-cost-comparison__bars {
		gap: 14px;
		margin-top: 18px;
	}

	.homepage-cost-comparison__row {
		grid-template-columns: var(--cost-country-col) minmax(0, 1fr);
	}

	.homepage-cost-comparison__country {
		font-size: 0.88rem;
		gap: 7px;
	}

	.homepage-cost-comparison__flag {
		flex-basis: 26px;
		height: 26px;
		width: 26px;
	}

	.homepage-cost-comparison__flag .iti__flag {
		transform: scale(1.25);
	}

	.homepage-cost-comparison__bar-track {
		height: 24px;
	}

	.homepage-cost-comparison__gridline {
		inset: -10px 0;
	}

	.homepage-cost-comparison__value {
		font-size: 0.76rem;
		padding-right: 9px;
	}

	.homepage-cost-comparison__axis {
		font-size: 0.78rem;
		margin-top: 18px;
	}

	.homepage-cost-comparison__note {
		margin-left: 0;
		padding-left: 0;
	}

	.homepage-cost-comparison__page-link {
		margin-left: 0;
	}

	.homepage-cost-comparison__mobile-legend {
		display: flex;
		font-size: 0.82rem;
	}
}

@media screen and (max-width: 575px) {
	.homepage-cost-comparison__filters {
		grid-template-columns: 1fr;
	}

	.homepage-cost-comparison__chips {
		grid-template-columns: repeat(2, max-content);
	}

	.homepage-cost-comparison__field--currency {
		max-width: 150px;
	}

	.homepage-cost-comparison__select--currency {
		justify-self: start;
		max-width: 150px;
		min-width: 132px;
	}

	.homepage-cost-comparison__field--currency .homepage-cost-comparison__select-wrap {
		max-width: 150px;
		min-width: 132px;
	}

	.homepage-cost-comparison__axis {
		font-size: 0.72rem;
	}

	.homepage-cost-comparison__mobile-legend {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}
}

@media screen and (max-width: 420px) {
	.homepage-cost-comparison {
		--cost-country-col: 82px;
		--cost-label-bar-min: 88px;
		--cost-value-space: 42px;
	}

	.homepage-cost-comparison > .container {
		max-width: min(100% - 28px, 420px);
	}

	.homepage-cost-comparison__country {
		font-size: 0.8rem;
	}

	.homepage-cost-comparison__axis {
		gap: 4px;
	}
}

.homepage-treatment-showcase {
	background: linear-gradient(180deg, #f7fbff 0%, #ffffff 42%, #f9fcff 100%);
	color: #071225;
	overflow: hidden;
	padding: clamp(56px, 7vw, 104px) 0;
	position: relative;
}

.homepage-treatment-showcase::before {
	background: linear-gradient(
		90deg,
		rgba(23, 105, 170, 0.1),
		rgba(242, 139, 46, 0.18),
		rgba(23, 105, 170, 0.04)
	);
	content: '';
	height: 1px;
	left: max(
		var(--site-container-gutter, 28px),
		calc((100vw - var(--site-container-max, 1540px)) / 2)
	);
	pointer-events: none;
	position: absolute;
	right: max(
		var(--site-container-gutter, 28px),
		calc((100vw - var(--site-container-max, 1540px)) / 2)
	);
	top: clamp(28px, 4vw, 48px);
}

.homepage-treatment-showcase__header {
	align-items: end;
	display: flex;
	gap: clamp(18px, 3vw, 42px);
	justify-content: space-between;
	margin-bottom: clamp(26px, 3.5vw, 46px);
}

.homepage-treatment-showcase__kicker {
	align-items: center;
	color: #8b4b14;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: var(--weight-display);
	gap: 10px;
	letter-spacing: 0.16em;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.homepage-treatment-showcase__kicker::before {
	background: #f28b2e;
	border-radius: 999px;
	content: '';
	display: inline-block;
	height: 7px;
	width: 7px;
}

.homepage-treatment-showcase h2 {
	color: #081b31;
	font-size: clamp(2rem, 1.42rem + 1.75vw, 3.45rem);
	font-weight: var(--weight-display);
	letter-spacing: 0;
	line-height: 1.04;
	margin: 0;
	max-width: 11.2em;
}

.homepage-treatment-showcase__view-all {
	align-items: center;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid rgba(47, 128, 196, 0.28);
	border-radius: 999px;
	box-shadow:
		0 10px 24px rgba(16, 47, 79, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.78);
	color: var(--color-primary-dark) !important;
	display: inline-flex;
	flex: 0 0 auto;
	font-weight: var(--weight-display);
	gap: 12px;
	min-height: 50px;
	padding: 0 8px 0 22px;
	text-decoration: none !important;
	transition:
		background-color 0.18s ease,
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		color 0.18s ease,
		transform 0.18s ease;
}

.homepage-treatment-showcase__view-all:hover,
.homepage-treatment-showcase__view-all:focus {
	background: #fafdff;
	border-color: rgba(23, 105, 170, 0.48);
	box-shadow:
		0 14px 30px rgba(16, 47, 79, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
	color: #0b345d !important;
	transform: translateY(-1px);
}

.homepage-treatment-showcase__view-all span {
	white-space: nowrap;
}

.homepage-treatment-showcase__view-all i,
.homepage-treatment-showcase__view-all svg {
	align-items: center;
	background: linear-gradient(135deg, #1769aa 0%, #0f8a91 100%);
	border-radius: 999px;
	box-shadow: 0 8px 16px rgba(23, 105, 170, 0.2);
	color: #fff;
	display: inline-flex;
	height: 36px;
	justify-content: center;
	padding: 9px;
	stroke-width: 2.6;
	transition:
		box-shadow 0.18s ease,
		transform 0.18s ease;
	width: 36px;
}

.homepage-treatment-showcase__view-all svg {
	height: 36px;
	stroke-width: 2.6;
	width: 36px;
}

.homepage-treatment-showcase__view-all:hover i,
.homepage-treatment-showcase__view-all:focus i,
.homepage-treatment-showcase__view-all:hover svg,
.homepage-treatment-showcase__view-all:focus svg {
	box-shadow: 0 10px 18px rgba(23, 105, 170, 0.26);
	transform: translateX(2px);
}

.homepage-treatment-showcase__grid {
	display: grid;
	gap: clamp(14px, 1.5vw, 22px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.homepage-treatment-showcase-card {
	aspect-ratio: 1.32;
	background: #071225;
	border-radius: 16px;
	box-shadow: 0 20px 42px rgba(16, 47, 79, 0.16);
	color: #fff !important;
	display: block;
	isolation: isolate;
	min-height: 248px;
	overflow: hidden;
	position: relative;
	text-decoration: none !important;
	transition:
		box-shadow 0.22s ease,
		transform 0.22s ease;
}

.homepage-treatment-showcase-card:hover,
.homepage-treatment-showcase-card:focus {
	box-shadow: 0 28px 54px rgba(16, 47, 79, 0.2);
	color: #fff !important;
	transform: translateY(-2px);
}

.homepage-treatment-showcase-card:focus-visible,
.homepage-treatment-showcase__view-all:focus-visible {
	outline: 3px solid rgba(47, 143, 211, 0.36);
	outline-offset: 5px;
}

.homepage-treatment-showcase-card::before {
	background: linear-gradient(
		180deg,
		rgba(7, 18, 37, 0.14) 0%,
		rgba(7, 18, 37, 0.12) 42%,
		rgba(7, 18, 37, 0.82) 100%
	);
	content: '';
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.homepage-treatment-showcase-card img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.3s ease;
	width: 100%;
	z-index: 0;
}

.homepage-treatment-showcase-card:hover img,
.homepage-treatment-showcase-card:focus img {
	transform: scale(1.035);
}

.homepage-treatment-showcase-card--women img {
	object-position: center 32%;
}

.homepage-treatment-showcase-card--ent img {
	object-position: 58% center;
}

.homepage-treatment-showcase-card--urology img {
	object-position: center 34%;
}

.homepage-treatment-showcase-card--gastro img {
	object-position: 48% center;
}

.homepage-treatment-showcase-card--oncology img {
	object-position: 54% center;
}

.homepage-treatment-showcase-card--orthopedics img {
	object-position: 62% center;
}

.homepage-treatment-showcase-card__content {
	align-items: end;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(0, 1fr) auto;
	inset: auto 0 0 0;
	padding: clamp(14px, 1.2vw, 20px);
	position: absolute;
	z-index: 2;
}

.homepage-treatment-showcase-card__title {
	color: #fff;
	display: block;
	font-size: clamp(1.06rem, 0.96rem + 0.38vw, 1.34rem);
	font-weight: var(--weight-emphasis);
	letter-spacing: 0;
	line-height: 1.1;
	max-width: 15em;
	text-shadow: 0 2px 8px rgba(7, 18, 37, 0.55);
}

.homepage-treatment-showcase-card__arrow {
	align-items: center;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.32);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	flex: 0 0 44px;
	height: 44px;
	justify-content: center;
	transition:
		background-color 0.18s ease,
		border-color 0.18s ease,
		color 0.18s ease,
		transform 0.18s ease;
	width: 44px;
}

.homepage-treatment-showcase-card:hover .homepage-treatment-showcase-card__arrow,
.homepage-treatment-showcase-card:focus .homepage-treatment-showcase-card__arrow {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: #fff;
	transform: translateX(3px);
}

.homepage-treatment-showcase-card__arrow svg {
	height: 20px;
	stroke-width: 3;
	width: 20px;
}

@media screen and (max-width: 1199px) {
	.homepage-treatment-showcase__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 767px) {
	.homepage-treatment-showcase {
		padding: 48px 0 58px;
	}

	.homepage-treatment-showcase__header {
		align-items: flex-start;
		flex-direction: column;
		gap: 18px;
	}

	.homepage-treatment-showcase__view-all {
		min-height: 46px;
	}

	.homepage-treatment-showcase__grid {
		grid-template-columns: 1fr;
	}

	.homepage-treatment-showcase-card {
		aspect-ratio: 1.22;
		min-height: 250px;
	}

	.homepage-treatment-showcase-card__content {
		padding: 15px;
	}
}

@media screen and (max-width: 420px) {
	.homepage-treatment-showcase-card {
		aspect-ratio: auto;
		min-height: 232px;
	}

	.homepage-treatment-showcase-card__arrow {
		height: 40px;
		width: 40px;
	}

	.homepage-treatment-showcase-card__content {
		gap: 10px;
	}

	.homepage-treatment-showcase-card__title {
		font-size: 1.06rem;
	}
}

.homepage-ivf-showcase {
	background: #fff;
	color: #071225;
	overflow: hidden;
	padding: clamp(54px, 7vw, 96px) 0 clamp(62px, 8vw, 112px);
}

.homepage-ivf-feature-grid {
	display: grid;
	gap: clamp(18px, 1.6vw, 26px);
	grid-template-columns: minmax(280px, 1fr) minmax(300px, 1fr) minmax(280px, 1fr);
}

.homepage-ivf-feature-card {
	background: #fff;
	border: 1px solid rgba(216, 232, 245, 0.72);
	border-radius: 16px;
	box-shadow: 0 22px 48px rgba(16, 47, 79, 0.09);
	color: #071225;
	display: block;
	min-width: 0;
	overflow: hidden;
	position: relative;
	text-decoration: none !important;
	transition:
		box-shadow 0.2s ease,
		transform 0.2s ease;
}

.homepage-ivf-feature-card:hover,
.homepage-ivf-feature-card:focus {
	color: #071225;
	box-shadow: 0 26px 58px rgba(16, 47, 79, 0.14);
	transform: translateY(-2px);
}

.homepage-ivf-feature-card:focus-visible,
.homepage-ivf-destination-card:focus-visible,
.homepage-ivf-view-more:focus-visible {
	outline: 3px solid rgba(47, 143, 211, 0.36);
	outline-offset: 5px;
}

.homepage-ivf-feature-card img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.homepage-ivf-feature-card__content {
	position: relative;
	z-index: 2;
}

.homepage-ivf-feature-card h2,
.homepage-ivf-feature-card h3 {
	color: #071225;
	font-weight: var(--weight-heading);
	letter-spacing: 0;
	margin: 0;
}

.homepage-ivf-feature-card h2 {
	font-size: clamp(1.45rem, 1.15rem + 0.9vw, 2rem);
	line-height: 1.08;
	max-width: 13.5em;
}

.homepage-ivf-feature-card h3 {
	font-size: clamp(1.18rem, 1rem + 0.58vw, 1.62rem);
	line-height: 1.08;
	max-width: 13em;
}

.homepage-ivf-link {
	align-items: center;
	color: rgba(255, 255, 255, 0.92);
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: var(--weight-heading);
	gap: 5px;
	line-height: 1.2;
	margin-top: 10px;
}

.homepage-ivf-link svg {
	height: 17px;
	stroke-width: 3;
	width: 17px;
}

.homepage-ivf-feature-card--destinations {
	background: #071225;
	display: block;
	min-height: clamp(315px, 23vw, 385px);
	padding: 0;
}

.homepage-ivf-feature-card--destinations::after,
.homepage-ivf-feature-card--hospital::after,
.homepage-ivf-feature-card--coordination::after,
.homepage-ivf-feature-card--treatments::after {
	background: linear-gradient(
		180deg,
		rgba(7, 18, 37, 0.08) 0%,
		rgba(7, 18, 37, 0.24) 46%,
		rgba(7, 18, 37, 0.9) 100%
	);
	content: '';
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.homepage-ivf-polaroids {
	align-items: center;
	display: flex;
	flex: 1 1 auto;
	justify-content: center;
	min-height: 148px;
	padding: clamp(14px, 1.7vw, 26px) 0;
	position: relative;
}

.homepage-ivf-polaroid {
	background: #fff;
	border: 6px solid #fff;
	border-radius: 16px;
	box-shadow: 0 14px 26px rgba(16, 47, 79, 0.14);
	display: block;
	height: clamp(82px, 5.4vw, 104px);
	overflow: hidden;
	position: relative;
	width: clamp(82px, 5.4vw, 104px);
}

.homepage-ivf-polaroid img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.homepage-ivf-polaroid--one {
	transform: rotate(-1deg) translateX(12px);
	z-index: 1;
}

.homepage-ivf-polaroid--two {
	transform: rotate(-12deg) translateY(-2px);
	z-index: 2;
}

.homepage-ivf-polaroid--three {
	transform: rotate(15deg) translateX(-12px);
	z-index: 3;
}

.homepage-ivf-feature-card--destinations .homepage-ivf-feature-card__media {
	position: absolute;
	inset: 0;
	margin: 0;
	z-index: 0;
}

.homepage-ivf-feature-card--destinations .homepage-ivf-feature-card__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.homepage-ivf-feature-stack {
	display: grid;
	gap: clamp(12px, 1.2vw, 18px);
	grid-template-rows: minmax(145px, 1fr) minmax(145px, 1fr);
	min-width: 0;
}

.homepage-ivf-feature-card--hospital,
.homepage-ivf-feature-card--coordination,
.homepage-ivf-feature-card--treatments {
	min-height: 0;
}

.homepage-ivf-feature-card--hospital,
.homepage-ivf-feature-card--treatments {
	background: #071225;
}

.homepage-ivf-feature-card--hospital img,
.homepage-ivf-feature-card--coordination img,
.homepage-ivf-feature-card--treatments img {
	inset: 0;
	object-position: center;
	position: absolute;
}

.homepage-ivf-feature-card--destinations .homepage-ivf-feature-card__content,
.homepage-ivf-feature-card--hospital .homepage-ivf-feature-card__content,
.homepage-ivf-feature-card--coordination .homepage-ivf-feature-card__content,
.homepage-ivf-feature-card--treatments .homepage-ivf-feature-card__content {
	bottom: 0;
	left: 0;
	padding: clamp(17px, 1.55vw, 24px);
	position: absolute;
	right: 0;
	z-index: 2;
}

.homepage-ivf-feature-card--destinations h2,
.homepage-ivf-feature-card--hospital h3,
.homepage-ivf-feature-card--coordination h3,
.homepage-ivf-feature-card--treatments h3 {
	color: #fff;
	text-shadow: 0 2px 10px rgba(7, 18, 37, 0.62);
}

.homepage-ivf-feature-card--coordination {
	background: #071225;
	min-height: 160px;
}

.homepage-ivf-feature-card--coordination img {
	height: 100%;
	object-position: center;
}

.homepage-ivf-feature-card--treatments {
	min-height: clamp(315px, 23vw, 385px);
}

.homepage-ivf-destination-row {
	align-items: stretch;
	display: grid;
	gap: clamp(28px, 4vw, 58px);
	grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.8fr);
	margin-top: clamp(32px, 4vw, 56px);
}

.homepage-ivf-destination-intro {
	align-content: space-between;
	display: grid;
	grid-template-rows: auto auto 1fr auto;
	justify-items: start;
	min-height: 100%;
}

.homepage-ivf-destination-kicker {
	color: #2d7f64;
	display: block;
	font-size: 0.78rem;
	font-weight: var(--weight-semibold);
	letter-spacing: 0.12em;
	margin-bottom: 13px;
	text-transform: uppercase;
}

.homepage-ivf-destination-intro h2 {
	color: #071225;
	font-size: clamp(1.42rem, 1.14rem + 0.9vw, 2rem);
	font-weight: var(--weight-heading);
	letter-spacing: 0;
	line-height: 1.14;
	margin: 0;
	max-width: 11.5em;
}

.homepage-ivf-destination-intro p {
	color: #425066;
	font-size: clamp(1rem, 0.94rem + 0.22vw, 1.1rem);
	font-weight: var(--weight-regular);
	line-height: 1.52;
	margin: clamp(16px, 1.6vw, 22px) 0 clamp(24px, 2.4vw, 34px);
	max-width: 34ch;
}

.homepage-ivf-view-more {
	align-items: center;
	background: #1769aa;
	border: 1px solid #1769aa;
	border-radius: 999px;
	box-shadow: 0 14px 30px rgba(23, 105, 170, 0.2);
	color: #fff !important;
	display: inline-flex;
	font-weight: var(--weight-semibold);
	justify-content: center;
	min-height: 48px;
	min-width: min(190px, 100%);
	padding: 0 28px;
	text-decoration: none !important;
	transition:
		background-color 0.18s ease,
		box-shadow 0.18s ease,
		transform 0.18s ease;
}

.homepage-ivf-view-more:hover,
.homepage-ivf-view-more:focus {
	background: #10578e;
	border-color: #10578e;
	box-shadow: 0 16px 34px rgba(23, 105, 170, 0.26);
	transform: translateY(-1px);
}

.homepage-ivf-destination-carousel {
	min-width: 0;
	position: relative;
}

.homepage-ivf-destination-track {
	display: grid;
	gap: clamp(9px, 0.85vw, 14px);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	height: 100%;
}

.homepage-ivf-destination-card {
	aspect-ratio: 0.82;
	background: #071225;
	border-radius: 16px;
	box-shadow: 0 20px 42px rgba(16, 47, 79, 0.16);
	color: #fff !important;
	display: block;
	min-height: clamp(205px, 18vw, 275px);
	overflow: hidden;
	position: relative;
	text-decoration: none !important;
	transition:
		box-shadow 0.18s ease,
		transform 0.18s ease;
}

.homepage-ivf-destination-card:hover,
.homepage-ivf-destination-card:focus {
	box-shadow: 0 28px 54px rgba(16, 47, 79, 0.2);
	color: #fff !important;
	transform: translateY(-2px);
}

.homepage-ivf-destination-card::after {
	background: linear-gradient(
		180deg,
		rgba(7, 18, 37, 0.1) 0%,
		rgba(7, 18, 37, 0.18) 46%,
		rgba(7, 18, 37, 0.88) 100%
	);
	content: '';
	inset: 0;
	position: absolute;
	z-index: 1;
}

.homepage-ivf-destination-card img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.3s ease;
	width: 100%;
}

.homepage-ivf-destination-card:hover img,
.homepage-ivf-destination-card:focus img {
	transform: scale(1.035);
}

.homepage-ivf-destination-card:first-child img {
	object-position: 70% center;
}

.homepage-ivf-destination-card__rank {
	color: #fff;
	display: block;
	font-size: clamp(1.28rem, 1.02rem + 0.64vw, 1.68rem);
	font-weight: var(--weight-regular);
	left: clamp(14px, 1.3vw, 20px);
	line-height: 1;
	position: absolute;
	text-shadow: 0 3px 10px rgba(7, 18, 37, 0.5);
	top: clamp(14px, 1.3vw, 20px);
	z-index: 2;
}

.homepage-ivf-destination-card__content {
	bottom: 0;
	display: grid;
	left: 0;
	padding: clamp(14px, 1.2vw, 20px);
	position: absolute;
	right: 0;
	z-index: 2;
}

.homepage-ivf-destination-card__name {
	color: #fff;
	display: block;
	font-size: clamp(0.96rem, 0.88rem + 0.26vw, 1.12rem);
	font-weight: var(--weight-heading);
	line-height: 1.14;
	margin: 0;
	text-shadow: 0 2px 8px rgba(7, 18, 37, 0.55);
}

@media screen and (max-width: 1199px) {
	.homepage-ivf-feature-grid {
		grid-template-columns: 1fr 1fr;
	}

	.homepage-ivf-feature-card--destinations,
	.homepage-ivf-feature-card--treatments {
		min-height: 340px;
	}

	.homepage-ivf-feature-card--treatments {
		grid-column: 1 / -1;
		min-height: 260px;
	}

	.homepage-ivf-destination-row {
		align-items: start;
		grid-template-columns: 1fr;
	}

	.homepage-ivf-destination-intro {
		align-content: start;
		align-items: end;
		display: grid;
		gap: 24px;
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-rows: auto auto auto;
		justify-content: stretch;
		min-height: 0;
	}

	.homepage-ivf-destination-kicker,
	.homepage-ivf-destination-intro h2 {
		grid-column: 1;
		margin-bottom: 0;
		max-width: 16em;
	}

	.homepage-ivf-destination-intro p {
		grid-column: 1;
		margin-bottom: 0;
		max-width: 52ch;
	}

	.homepage-ivf-view-more {
		grid-column: 2;
		grid-row: 2 / span 2;
	}

	.homepage-ivf-destination-track {
		grid-template-columns: repeat(4, minmax(145px, 1fr));
	}
}

@media screen and (max-width: 767px) {
	.homepage-ivf-showcase {
		padding: 42px 0 58px;
	}

	.homepage-ivf-feature-grid,
	.homepage-ivf-feature-stack {
		grid-template-columns: 1fr;
	}

	.homepage-ivf-feature-card--destinations,
	.homepage-ivf-feature-card--treatments {
		min-height: 0;
	}

	.homepage-ivf-polaroids {
		justify-content: flex-start;
		min-height: 132px;
		padding: 16px 0 18px;
	}

	.homepage-ivf-feature-card--destinations,
	.homepage-ivf-feature-card--hospital,
	.homepage-ivf-feature-card--coordination,
	.homepage-ivf-feature-card--treatments {
		min-height: 220px;
	}

	.homepage-ivf-feature-card--coordination {
		min-height: 220px;
	}

	.homepage-ivf-feature-card--coordination img {
		position: absolute;
	}

	.homepage-ivf-feature-card--coordination .homepage-ivf-feature-card__content {
		width: 100%;
	}

	.homepage-ivf-destination-row {
		margin-top: 30px;
	}

	.homepage-ivf-destination-intro {
		align-items: flex-start;
		flex-direction: column;
		gap: 0;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}

	.homepage-ivf-destination-kicker,
	.homepage-ivf-destination-intro h2,
	.homepage-ivf-destination-intro p,
	.homepage-ivf-view-more {
		grid-column: auto;
		grid-row: auto;
	}

	.homepage-ivf-destination-intro p {
		margin-bottom: 24px;
	}

	.homepage-ivf-view-more {
		min-height: 46px;
		min-width: 180px;
	}

	.homepage-ivf-destination-track {
		display: flex;
		gap: 14px;
		margin: 0 -20px;
		overflow-x: auto;
		padding: 2px 20px 12px;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.homepage-ivf-destination-card {
		flex: 0 0 min(62vw, 215px);
		min-height: 255px;
		scroll-snap-align: start;
	}
}

@media screen and (max-width: 420px) {
	.homepage-ivf-feature-card--destinations {
		padding: 0;
	}

	.homepage-ivf-polaroid {
		height: 104px;
		width: 104px;
	}

	.homepage-ivf-feature-card--destinations .homepage-ivf-feature-card__content,
	.homepage-ivf-feature-card--hospital .homepage-ivf-feature-card__content,
	.homepage-ivf-feature-card--coordination .homepage-ivf-feature-card__content,
	.homepage-ivf-feature-card--treatments .homepage-ivf-feature-card__content {
		padding: 24px;
	}
}
.main-homepage {
	--homepage-section-title-size: clamp(1.95rem, 1.58rem + 1.2vw, 2.5rem);
	--homepage-section-title-compact-size: clamp(1.42rem, 1.18rem + 0.75vw, 2rem);
	--homepage-section-title-leading: 1.2;
}

.main-homepage .section-title-bordered {
	border-bottom: 0;
	margin-bottom: clamp(22px, 3vw, 36px);
	padding-bottom: 0;
}

.main-homepage .homepage-hospitals__header {
	align-items: center;
}

@media screen and (max-width: 767px) {
	.main-homepage {
		--homepage-section-title-size: clamp(1.72rem, 1.45rem + 1.35vw, 1.95rem);
		--homepage-section-title-compact-size: clamp(1.32rem, 1.16rem + 0.8vw, 1.62rem);
		--homepage-section-title-leading: 1.24;
	}

	.main-homepage .section-title-bordered {
		margin-bottom: 20px;
	}
}
