/**
 * Homepage (front page) — etude 2.
 */

body.fkz-home-page #masthead:not(.fkz-site-header),
body.fkz-home-page .elementor-location-header,
body.fkz-home-page .site-footer:not(.fkz-site-footer),
body.fkz-home-page .elementor-location-footer {
	display: none !important;
}

body.fkz-home-page #page,
body.fkz-home-page .site,
body.fkz-home-page #content,
body.fkz-home-page main.site-main {
	border: none;
	box-shadow: none;
	margin: 0 !important;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

html:has(body.fkz-home-page),
body.fkz-home-page {
	background: var(--fkz-bg-page);
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

body.admin-bar.fkz-home-page #wpadminbar {
	position: fixed !important;
	top: 0 !important;
	z-index: 999999 !important;
}

.fkz-home {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: var(--fkz-gap);
	margin: var(--fkz-gap) auto 0;
	max-width: var(--fkz-max-desktop);
	position: relative;
	width: 100%;
	z-index: 1;
}

.fkz-home-panel {
	background: var(--fkz-bg-surface);
	border-radius: 20px;
	box-shadow: 0 4px 20px rgba(18, 44, 58, 0.05);
	box-sizing: border-box;
}

.fkz-home-section-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.fkz-home-section-head--baseline {
	align-items: baseline;
	margin-bottom: 2px;
}

.fkz-home-section-head__title {
	color: var(--fkz-ink);
	font-size: 19px;
	font-weight: 800;
	margin: 0;
}

.fkz-home-section-head__title--sm {
	font-size: 16px;
}

.fkz-home-section-head__sub {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-secondary);
	margin: 0 0 16px;
}

.fkz-home-section-head__link,
.fkz-home-section-head__link:visited,
body.fkz-home-page .fkz-home-section-head__link,
body.fkz-home-page .fkz-home-section-head__link:visited {
	align-items: center;
	color: var(--fkz-primary) !important;
	display: inline-flex;
	font-size: var(--fkz-fs-secondary);
	font-weight: 700;
	gap: 5px;
	text-decoration: none !important;
}

.fkz-home-section-head__link:hover,
.fkz-home-section-head__link:focus,
.fkz-home-section-head__link:focus-visible,
body.fkz-home-page .fkz-home-section-head__link:hover,
body.fkz-home-page .fkz-home-section-head__link:focus,
body.fkz-home-page .fkz-home-section-head__link:focus-visible {
	color: var(--fkz-ink) !important;
	text-decoration: none !important;
}

.fkz-home-section-head__link .fkz-icon-wrap,
.fkz-home-section-head__link svg {
	color: inherit !important;
	stroke: currentColor;
}

/* —— Hero —— */
.fkz-home-hero {
	background: linear-gradient(225deg, #5f7e91 0%, #81bac7 100%);
	overflow: visible;
	padding: 56px 40px;
	position: relative;
	z-index: 5;
}

.fkz-home > .fkz-home-panel:not(.fkz-home-hero) {
	position: relative;
	z-index: 1;
}

.fkz-home-hero__glow {
	border-radius: 20px;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
}

.fkz-home-hero__glow::before {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	content: "";
	height: 220px;
	left: -40px;
	position: absolute;
	top: -60px;
	width: 220px;
}

.fkz-home-hero__glow::after {
	border: 1px dashed rgba(255, 255, 255, 0.15);
	border-radius: 999px;
	bottom: -80px;
	content: "";
	height: 260px;
	position: absolute;
	right: -40px;
	width: 260px;
}

.fkz-home-hero__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0 auto;
	max-width: 900px;
	position: relative;
	text-align: center;
	z-index: 1;
}

.fkz-home-hero__title {
	color: #fff;
	font-size: 32px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.5;
	margin: 0;
}

.fkz-home-hero__subtitle {
	color: #eaf1f3;
	font-size: var(--fkz-fs-lead);
	line-height: 1.9;
	margin: 0;
	max-width: 620px;
}

.fkz-home-search {
	align-items: stretch;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 8px 28px rgba(18, 44, 58, 0.08);
	box-sizing: border-box;
	display: flex;
	margin-top: 12px;
	min-height: 0;
	overflow: visible;
	padding: 4px;
	position: relative;
	width: 100%;
	z-index: 5;
}

.fkz-home-search__field {
	cursor: text;
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: 6px 14px;
	position: relative;
	text-align: right;
	z-index: 1;
}

.fkz-home-search__field.is-open {
	z-index: 20;
}

.fkz-home-search__field[data-hero-field="service"] {
	flex: 1.35;
}

.fkz-home-search__label {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-micro);
	font-weight: 500;
	line-height: 1.3;
	margin-bottom: 2px;
}

.fkz-home-search__control {
	align-items: center;
	display: flex;
	gap: 6px;
	min-width: 0;
	width: 100%;
}

.fkz-home-search__icon,
.fkz-home-search__chev {
	color: var(--fkz-primary);
	flex-shrink: 0;
}

.fkz-home-search__icon .fkz-icon-wrap {
	display: block;
}

.fkz-home-search__chev {
	color: #c7d3d9;
}

.fkz-home-search__control input {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	box-sizing: border-box;
	color: var(--fkz-ink) !important;
	flex: 1 1 auto;
	font-family: inherit;
	font-size: var(--fkz-fs-secondary);
	line-height: 1.35;
	margin: 0 !important;
	min-width: 0;
	outline: none;
	padding: 0 !important;
	width: auto !important;
}

.fkz-home-search__control input::placeholder {
	color: var(--fkz-subtle);
	opacity: 1;
}

.fkz-home-search__divider {
	align-self: stretch;
	background: var(--fkz-border);
	flex-shrink: 0;
	margin: 8px 0;
	width: 1px;
}

.fkz-home-search__dropdown {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 16px 36px rgba(18, 44, 58, 0.22);
	display: none;
	left: 0;
	margin-top: 10px;
	max-height: 280px;
	overflow-y: auto;
	padding: 8px;
	position: absolute;
	right: 0;
	top: 100%;
	z-index: 50;
}

.fkz-home-search__dropdown[hidden] {
	display: none !important;
}

.fkz-home-search__dropdown.is-open,
.fkz-home-search__dropdown:not([hidden]) {
	display: block !important;
}

.fkz-home-search__option {
	border-radius: 9px;
	color: var(--fkz-ink);
	cursor: pointer;
	font-size: var(--fkz-fs-secondary);
	padding: 10px 14px;
	text-align: right;
	transition: background 0.12s;
}

.fkz-home-search__option:hover {
	background: var(--fkz-neutral-btn);
}

.fkz-home-search__empty {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-secondary);
	padding: 12px 14px;
	text-align: center;
}

body.fkz-home-page .fkz-home-search button.fkz-home-search__submit,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:hover,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:focus,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:focus-visible,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:active {
	-webkit-appearance: none !important;
	appearance: none !important;
	align-items: center;
	background: var(--fkz-ink) !important;
	border: none !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	color: #fff !important;
	cursor: pointer;
	display: inline-flex !important;
	flex-shrink: 0;
	font-family: inherit;
	font-size: var(--fkz-fs-body);
	font-weight: 700;
	gap: 5px;
	justify-content: center;
	line-height: 1;
	margin: 0 !important;
	min-height: 0 !important;
	outline: none;
	padding: 0 22px !important;
	text-decoration: none !important;
	text-transform: none !important;
	transition: background 0.15s;
	width: auto !important;
}

body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:hover,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit:focus-visible {
	background: #1d4359 !important;
}

body.fkz-home-page .fkz-home-search button.fkz-home-search__submit .fkz-icon-wrap,
body.fkz-home-page .fkz-home-search button.fkz-home-search__submit svg {
	color: #fff !important;
}

.fkz-home-hero__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin-top: 6px;
}

.fkz-home-hero__tag,
.fkz-home-hero__tag:visited,
.fkz-home-hero__tag:hover,
.fkz-home-hero__tag:focus,
.fkz-home-hero__tag:focus-visible,
.fkz-home-hero__tag:active {
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	color: #fff !important;
	font-size: var(--fkz-fs-caption);
	font-weight: 600;
	padding: 6px 14px;
	text-decoration: none !important;
	transition: background 0.15s;
	white-space: nowrap;
}

.fkz-home-hero__tag:hover,
.fkz-home-hero__tag:focus-visible {
	background: rgba(255, 255, 255, 0.26);
}

/* —— Clinic CTA —— */
.fkz-home-clinic-cta {
	align-items: center;
	background: linear-gradient(135deg, #122c3a, #1d4359);
	display: flex;
	gap: 28px;
	justify-content: space-between;
	padding: 30px 32px;
}

.fkz-home-clinic-cta__body {
	align-items: center;
	display: flex;
	flex: 1;
	gap: 16px;
	min-width: 0;
}

.fkz-home-clinic-cta__icon {
	align-items: center;
	background: rgba(255, 255, 255, 0.12);
	border-radius: 14px;
	color: #fff;
	display: flex;
	flex-shrink: 0;
	height: 52px;
	justify-content: center;
	width: 52px;
}

.fkz-home-clinic-cta__copy {
	min-width: 0;
}

.fkz-home-clinic-cta__title {
	color: #fff;
	font-size: 17px;
	font-weight: 800;
	margin: 0 0 6px;
}

.fkz-home-clinic-cta__text {
	color: #c7d3d9;
	font-size: var(--fkz-fs-body);
	line-height: 1.8;
	margin: 0;
	max-width: 640px;
}

.fkz-home-clinic-cta__text--mobile {
	display: none;
}

.fkz-home-clinic-cta__btn,
.fkz-home-clinic-cta__btn:visited,
.fkz-home-clinic-cta__btn:hover,
.fkz-home-clinic-cta__btn:focus,
.fkz-home-clinic-cta__btn:focus-visible {
	align-items: center;
	background: #fff !important;
	border-radius: 11px;
	color: var(--fkz-ink) !important;
	display: inline-flex;
	flex-shrink: 0;
	font-size: var(--fkz-fs-body);
	font-weight: 700;
	gap: 6px;
	padding: 13px 22px;
	text-decoration: none !important;
	white-space: nowrap;
}

.fkz-home-clinic-cta__btn .fkz-icon-wrap,
.fkz-home-clinic-cta__btn svg {
	color: var(--fkz-ink) !important;
}

/* Hover: soft tint of the primary colour + the arrow nudges toward the direction of travel (subtle, 0.16s). */
.fkz-home-clinic-cta__btn {
	transition: background-color 0.16s ease;
}

.fkz-home-clinic-cta__btn:hover,
.fkz-home-clinic-cta__btn:focus-visible {
	background: #e0e9ed !important;
}

.fkz-home-clinic-cta__btn .fkz-icon-wrap {
	display: inline-flex;
	transition: transform 0.16s ease;
}

.fkz-home-clinic-cta__btn:hover .fkz-icon-wrap,
.fkz-home-clinic-cta__btn:focus-visible .fkz-icon-wrap {
	transform: translateX(-3px);
}

@media (prefers-reduced-motion: reduce) {
	.fkz-home-clinic-cta__btn,
	.fkz-home-clinic-cta__btn .fkz-icon-wrap {
		transition: none;
	}
}

/* —— How —— */
.fkz-home-how {
	padding: 36px 40px;
}

.fkz-home-how__title {
	color: var(--fkz-ink);
	font-size: 22px;
	font-weight: 800;
	margin: 0 0 6px;
	text-align: center;
}

.fkz-home-how__subtitle {
	color: var(--fkz-body);
	font-size: var(--fkz-fs-body);
	margin: 0 0 20px;
	text-align: center;
}

.fkz-home-how__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-bottom: 44px;
}

.fkz-home-how__pill {
	align-items: center;
	border-radius: 999px;
	display: flex;
	font-size: var(--fkz-fs-secondary);
	font-weight: 700;
	gap: 6px;
	padding: 8px 16px;
}

.fkz-home-how__pill--teal {
	background: #ddeff3;
	color: #0b5764;
}

.fkz-home-how__pill--green {
	background: #dff0e8;
	color: #285847;
}

.fkz-home-how__pill--gold {
	background: #f5ecd8;
	color: #7a5b12;
}

.fkz-home-how__steps {
	display: grid;
	gap: 32px;
	grid-template-columns: repeat(3, 1fr);
}

.fkz-home-how__step {
	position: relative;
	text-align: center;
}

.fkz-home-how__num {
	align-items: center;
	background: var(--fkz-neutral-btn);
	border-radius: 999px;
	color: var(--fkz-primary);
	display: flex;
	font-size: 17px;
	font-weight: 800;
	height: 44px;
	justify-content: center;
	margin: 0 auto 14px;
	width: 44px;
}

.fkz-home-how__step-title {
	color: var(--fkz-ink);
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 6px;
}

.fkz-home-how__step-desc {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-secondary);
	line-height: 1.9;
	margin: 0 auto;
	white-space: nowrap;
}

/* One line only where the three columns are wide enough (~334px longest line). */
@media (max-width: 1180px) {
	.fkz-home-how__step-desc {
		white-space: normal;
	}
}

/* —— Stats —— */
.fkz-home-stats {
	background: linear-gradient(225deg, #5f7e91 0%, #81bac7 100%);
	overflow: hidden;
	padding: 34px 40px;
	position: relative;
}

.fkz-home-stats__glow::before {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	content: "";
	height: 220px;
	left: -40px;
	position: absolute;
	top: -60px;
	width: 220px;
}

.fkz-home-stats__glow::after {
	border: 1px dashed rgba(255, 255, 255, 0.15);
	border-radius: 999px;
	bottom: -80px;
	content: "";
	height: 260px;
	position: absolute;
	right: -40px;
	width: 260px;
}

.fkz-home-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	position: relative;
}

.fkz-home-stats__item {
	padding: 0 12px;
	text-align: center;
}

.fkz-home-stats__item:not(:last-child) {
	border-left: 1px solid rgba(255, 255, 255, 0.28);
}

.fkz-home-stats__meta {
	align-items: center;
	color: rgba(255, 255, 255, 0.8);
	display: flex;
	font-size: var(--fkz-fs-secondary);
	gap: 6px;
	justify-content: center;
	margin-bottom: 8px;
}

.fkz-home-stats__value {
	color: #fff;
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.02em;
}

/* —— Insurances —— */
.fkz-home-insurances {
	padding: 24px 32px;
}

.fkz-home-insurances__grid {
	align-items: start;
	display: grid;
	gap: 16px 10px;
	grid-template-columns: repeat(12, 1fr);
}

/* One row until expanded; the extra insurers stay in the HTML (links) but are not rendered/loaded. */
.fkz-home-insurances:not(.is-expanded) .fkz-home-insurances__item:nth-child(n + 13) {
	display: none;
}

/* Plain text link look (same as the other «مشاهده همه»); the theme's button skin must not apply. */
.fkz-home-insurances__toggle,
.fkz-home-insurances__toggle:hover,
.fkz-home-insurances__toggle:focus,
.fkz-home-insurances__toggle:active,
body.fkz-home-page .fkz-home-insurances__toggle,
body.fkz-home-page .fkz-home-insurances__toggle:hover,
body.fkz-home-page .fkz-home-insurances__toggle:focus,
body.fkz-home-page .fkz-home-insurances__toggle:active {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	cursor: pointer;
	font-family: var(--fkz-font);
	line-height: inherit;
	margin: 0;
	min-height: 0;
	outline-offset: 3px;
	padding: 0 !important;
}

.fkz-home-insurances__chev {
	display: inline-flex;
	transition: transform 0.16s ease;
}

.fkz-home-insurances.is-expanded .fkz-home-insurances__chev {
	transform: rotate(180deg);
}

.fkz-home-insurances__item {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 6px;
	text-decoration: none;
}

.fkz-home-insurances__logo {
	aspect-ratio: 1;
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	transition: transform 0.15s;
	width: 100%;
}

.fkz-home-insurances__item:hover .fkz-home-insurances__logo {
	transform: scale(1.15);
}

.fkz-home-insurances__logo img {
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.fkz-home-insurances__placeholder {
	align-items: center;
	background: var(--fkz-neutral-btn);
	color: var(--fkz-primary);
	display: flex;
	font-size: 14px;
	font-weight: 800;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.fkz-home-insurances__name {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-micro);
	line-height: 1.4;
	text-align: center;
}

/* —— Featured clinics —— */
.fkz-home-clinics {
	padding: 28px 32px;
}

.fkz-home-clinics__grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(5, 1fr);
}

/* Two rows until expanded; the rest stay in the HTML (links) but are not rendered/loaded. */
.fkz-home-clinics:not(.is-expanded) .fkz-home-clinic-card:nth-child(n + 11) {
	display: none;
}

.fkz-home-clinics.is-expanded .fkz-home-insurances__chev {
	transform: rotate(180deg);
}

.fkz-home-clinic-card {
	border: 1px solid var(--fkz-border);
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	text-align: center;
	text-decoration: none;
	transition: box-shadow 0.15s, border-color 0.15s;
}

.fkz-home-clinic-card:hover {
	border-color: #dde3e5;
	box-shadow: 0 8px 20px rgba(18, 44, 58, 0.08);
}

.fkz-home-clinic-card__tier {
	background: var(--fkz-primary);
	color: #fff;
	font-size: var(--fkz-fs-micro);
	font-weight: 700;
	letter-spacing: 0.02em;
	padding: 5px 0;
}

.fkz-home-clinic-card__body {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 14px 12px 16px;
}

.fkz-home-clinic-card__avatar {
	background: var(--fkz-border);
	border-radius: 999px;
	height: 56px;
	overflow: hidden;
	width: 56px;
}

.fkz-home-clinic-card__avatar img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.fkz-home-clinic-card__title {
	color: var(--fkz-ink);
	font-size: var(--fkz-fs-secondary);
	font-weight: 700;
	line-height: 1.4;
}

.fkz-home-clinic-card__rating {
	align-items: center;
	display: flex;
	gap: 2px;
}

.fkz-home-clinic-card__reviews {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-micro);
	margin-right: 3px;
}

/* —— Link lists —— */
.fkz-home-links {
	padding: 28px 32px;
}

.fkz-home-links__wrap {
	position: relative;
}

.fkz-home-links__clip {
	max-height: 300px;
	overflow: hidden;
	transition: max-height 0.35s ease;
}

.fkz-home-links.is-expanded .fkz-home-links__clip {
	max-height: 4000px;
}

.fkz-home-links__grid {
	display: grid;
	gap: 2px 32px;
	grid-template-columns: 1fr 1fr;
}

.fkz-home-links__item {
	align-items: center;
	border-radius: 12px;
	display: flex;
	gap: 12px;
	padding: 9px 6px;
	text-decoration: none;
	transition: background 0.15s;
}

.fkz-home-links__item:hover {
	background: var(--fkz-neutral);
}

.fkz-home-links__icon {
	align-items: center;
	border-radius: 10px;
	display: flex;
	flex-shrink: 0;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.fkz-home-links__icon--teal {
	background: #ddeff3;
	color: #0b5764;
}

.fkz-home-links__icon--green {
	background: #dff0e8;
	color: #285847;
}

.fkz-home-links__text {
	color: var(--fkz-ink);
	font-size: var(--fkz-fs-secondary);
	font-weight: 600;
	line-height: 1.6;
}

.fkz-home-links__fade {
	background: linear-gradient(to top, #fff 22%, rgba(255, 255, 255, 0));
	bottom: 0;
	height: 72px;
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
}

.fkz-home-links.is-expanded .fkz-home-links__fade {
	display: none;
}

/* «نمایش بیشتر»: centered text link + chevron, same feel as the other «مشاهده همه» links (theme button skin removed). */
.fkz-home-links__more,
.fkz-home-links__more:hover,
.fkz-home-links__more:focus,
.fkz-home-links__more:active,
body.fkz-home-page .fkz-home-links__more,
body.fkz-home-page .fkz-home-links__more:hover,
body.fkz-home-page .fkz-home-links__more:focus,
body.fkz-home-page .fkz-home-links__more:active {
	align-items: center;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--fkz-primary) !important;
	cursor: pointer;
	display: flex;
	font-family: var(--fkz-font);
	font-size: var(--fkz-fs-secondary);
	font-weight: 700;
	gap: 5px;
	justify-content: center;
	margin: 12px auto 0;
	outline-offset: 3px;
	padding: 4px 8px !important;
	width: fit-content;
}

.fkz-home-links__more:hover,
body.fkz-home-page .fkz-home-links__more:hover {
	color: var(--fkz-ink) !important;
}

.fkz-home-links__more [data-fkz-expand-icon] {
	display: inline-flex;
	transition: transform 0.16s ease;
}

/* —— Testimonials —— */
.fkz-home-testimonials {
	overflow: hidden;
	padding: 28px 32px;
	position: relative;
}

.fkz-home-testimonials__deco::before {
	background: rgba(129, 186, 199, 0.2);
	border-radius: 999px;
	content: "";
	height: 300px;
	position: absolute;
	right: -90px;
	top: -90px;
	width: 300px;
}

.fkz-home-testimonials__deco::after {
	border: 1.5px dashed rgba(95, 126, 145, 0.45);
	border-radius: 999px;
	bottom: -80px;
	content: "";
	height: 220px;
	left: -80px;
	position: absolute;
	width: 220px;
}

.fkz-home-testimonials__title {
	color: var(--fkz-ink);
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 4px;
	position: relative;
	text-align: center;
}

.fkz-home-testimonials__subtitle {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-secondary);
	margin: 0 0 22px;
	position: relative;
	text-align: center;
}

.fkz-home-testimonials__grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(3, 1fr);
	position: relative;
}

.fkz-home-testimonial {
	border: 1px solid var(--fkz-border);
	border-radius: 14px;
	margin: 0;
	padding: 18px;
}

.fkz-home-testimonial__stars {
	display: flex;
	gap: 2px;
	margin-bottom: 10px;
}

.fkz-home-testimonial__quote {
	color: #3d4d55;
	font-size: var(--fkz-fs-body);
	line-height: 1.9;
	margin: 0 0 12px;
}

.fkz-home-testimonial__meta {
	color: var(--fkz-subtle);
	font-size: var(--fkz-fs-secondary);
}

.fkz-home-testimonial__meta strong {
	color: var(--fkz-ink);
	font-weight: 700;
}

/* —— FAQ —— */
.fkz-home-faq {
	overflow: hidden;
	padding: 0;
}

.fkz-home-faq__layout {
	align-items: center;
	display: grid;
	grid-template-columns: 2fr 1fr;
}

.fkz-home-faq__main {
	padding: 48px 52px;
}

.fkz-home-faq__title {
	color: var(--fkz-ink);
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 26px;
}

.fkz-home-faq__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fkz-home-faq__item {
	border: 1px solid var(--fkz-border);
	border-radius: 14px;
	padding: 16px 20px;
}

body.fkz-home-page .fkz-home-faq button.fkz-home-faq__q,
body.fkz-home-page .fkz-home-faq button.fkz-home-faq__q:hover,
body.fkz-home-page .fkz-home-faq button.fkz-home-faq__q:focus,
body.fkz-home-page .fkz-home-faq button.fkz-home-faq__q:focus-visible,
body.fkz-home-page .fkz-home-faq button.fkz-home-faq__q:active {
	-webkit-appearance: none !important;
	appearance: none !important;
	align-items: center;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--fkz-ink) !important;
	cursor: pointer;
	display: flex;
	font-family: inherit;
	font-size: var(--fkz-fs-body);
	font-weight: 700;
	gap: 10px;
	justify-content: space-between;
	line-height: 1.5;
	margin: 0 !important;
	min-height: 0 !important;
	outline: none;
	padding: 0 !important;
	text-align: right;
	text-decoration: none !important;
	text-transform: none !important;
	transition: none;
	width: 100%;
}

.fkz-home-faq__chev {
	color: var(--fkz-subtle);
	flex-shrink: 0;
	transition: transform 0.2s;
}

.fkz-home-faq__q[aria-expanded="true"] .fkz-home-faq__chev {
	transform: rotate(180deg);
}

.fkz-home-faq__a {
	color: var(--fkz-body);
	font-size: var(--fkz-fs-body);
	line-height: 1.85;
	margin-top: 10px;
	text-align: justify;
}

.fkz-home-faq__art {
	align-items: center;
	background: #fff;
	display: flex;
	height: 100%;
	justify-content: center;
	min-height: 300px;
	position: relative;
}

.fkz-home-faq__blob--a {
	background: rgba(129, 186, 199, 0.2);
	border-radius: 999px;
	height: 150px;
	position: absolute;
	right: 10px;
	top: 6px;
	width: 150px;
}

.fkz-home-faq__blob--b {
	border: 1.5px dashed rgba(95, 126, 145, 0.45);
	border-radius: 999px;
	bottom: 10px;
	height: 100px;
	left: 10px;
	position: absolute;
	width: 100px;
}

.fkz-home-faq__cards {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 10px;
	position: relative;
}

.fkz-home-faq__card {
	align-items: center;
	background: #fff;
	box-shadow: 0 8px 24px rgba(18, 44, 58, 0.1);
	display: flex;
	justify-content: center;
}

.fkz-home-faq__card--a {
	border-radius: 22px;
	color: var(--fkz-primary);
	height: 76px;
	transform: rotate(-6deg);
	width: 76px;
}

.fkz-home-faq__card--b {
	border-radius: 18px;
	color: #0b5764;
	height: 58px;
	transform: rotate(8deg) translateX(28px);
	width: 58px;
}

/* —— Trust —— */
.fkz-home-trust {
	align-items: center;
	display: flex;
	gap: 32px;
	justify-content: space-between;
	padding: 26px 32px;
}

.fkz-home-trust__title {
	color: var(--fkz-ink);
	font-size: 15px;
	font-weight: 800;
	margin: 0 0 8px;
}

.fkz-home-trust__text {
	color: var(--fkz-body);
	font-size: var(--fkz-fs-body);
	line-height: 1.9;
	margin: 0;
	max-width: 560px;
}

.fkz-home-trust__badges {
	display: flex;
	flex-shrink: 0;
	gap: 12px;
}

.fkz-home-trust__badge {
	background: #fff;
	border: 1px solid #e2e5e6;
	border-radius: 14px;
	height: 120px;
	overflow: hidden;
	width: 120px;
}

.fkz-home-trust__badge img {
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.fkz-home-trust__placeholder {
	align-items: center;
	color: var(--fkz-subtle);
	display: flex;
	font-size: var(--fkz-fs-secondary);
	font-weight: 700;
	height: 100%;
	justify-content: center;
}

/* —— Mobile —— */
@media (max-width: 899px) {
	/* Phone spacing (Sina 2026-11-03): the desktop `gap` and these margins used to add up (title→subtitle 22, subtitle→form 42,
	   form→tags 20). Now the gap is 0 and the margins ARE the spacing: 24 · title · 10 · subtitle · 22 · form · 18 · tags · 24. */
	.fkz-home-hero {
		padding: 24px 18px;
		text-align: center;
	}

	.fkz-home-hero__inner {
		gap: 0;
	}

	.fkz-home-hero__title {
		font-size: 19px !important;
		letter-spacing: -0.02em;
		line-height: 1.55;
		margin: 0 0 10px;
	}

	.fkz-home-hero__subtitle {
		font-size: var(--fkz-fs-lead) !important;
		line-height: 1.85;
		margin: 0 0 22px;
	}

	.fkz-home-hero .fkz-sb--hero {
		margin-top: 0;
	}

	.fkz-home-hero__tags {
		margin-top: 18px;
	}

	.fkz-home-search {
		flex-direction: column;
		padding: 4px;
	}

	.fkz-home-search__field {
		border-bottom: 1px solid var(--fkz-border);
		flex: none !important;
		padding: 10px 12px;
	}

	.fkz-home-search__field[data-hero-field="insurance"] {
		border-bottom: none;
	}

	.fkz-home-search__divider {
		display: none;
	}

	body.fkz-home-page .fkz-home-search button.fkz-home-search__submit {
		justify-content: center;
		margin: 4px !important;
		padding: 12px !important;
		width: calc(100% - 8px) !important;
	}

	.fkz-home-search__dropdown {
		margin-top: 6px;
		max-height: 200px;
	}

	.fkz-home-clinic-cta {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
		padding: 18px 16px;
	}

	.fkz-home-clinic-cta__body {
		align-items: center;
		flex-direction: row;
		gap: 10px;
		width: 100%;
	}

	.fkz-home-clinic-cta__icon {
		border-radius: 11px;
		height: 38px;
		width: 38px;
	}

	.fkz-home-clinic-cta__icon .fkz-icon-wrap {
		height: 18px !important;
		width: 18px !important;
	}

	.fkz-home-clinic-cta__title {
		font-size: 14px !important;
		font-weight: 800;
		line-height: 1.4;
		margin: 0;
	}

	.fkz-home-clinic-cta__text--desktop {
		display: none;
	}

	.fkz-home-clinic-cta__text--mobile {
		display: block;
		font-size: var(--fkz-fs-caption);
		line-height: 1.8;
		max-width: none;
	}

	.fkz-home-clinic-cta__btn {
		border-radius: 10px;
		font-size: var(--fkz-fs-secondary);
		justify-content: center;
		padding: 11px;
		width: 100%;
	}

	.fkz-home-how,
	.fkz-home-stats,
	.fkz-home-insurances,
	.fkz-home-clinics,
	.fkz-home-links,
	.fkz-home-testimonials,
	.fkz-home-trust {
		padding: 18px 16px;
	}

	.fkz-home-how__title {
		font-size: 15px;
	}

	.fkz-home-how__subtitle {
		font-size: var(--fkz-fs-micro);
		margin-bottom: 14px;
	}

	.fkz-home-how__pills {
		gap: 8px;
		margin-bottom: 20px;
	}

	.fkz-home-how__step-desc {
		white-space: normal;
	}

	.fkz-home-how__pill {
		font-size: var(--fkz-fs-micro);
		padding: 6px 11px;
	}

	.fkz-home-how__steps {
		gap: 14px;
		grid-template-columns: 1fr;
	}

	.fkz-home-how__step {
		align-items: flex-start;
		display: flex;
		gap: 12px;
		text-align: right;
	}

	.fkz-home-how__num {
		flex-shrink: 0;
		font-size: var(--fkz-fs-secondary);
		height: 30px;
		margin: 0;
		width: 30px;
	}

	.fkz-home-how__step-body {
		padding-top: 2px;
	}

	.fkz-home-how__step-title {
		font-size: var(--fkz-fs-secondary);
		margin-bottom: 3px;
		text-align: right;
	}

	.fkz-home-how__step-desc {
		font-size: var(--fkz-fs-secondary);
		max-width: none;
		text-align: right;
	}

	.fkz-home-stats__grid {
		gap: 14px 0;
		grid-template-columns: repeat(2, 1fr);
	}

	.fkz-home-stats__item:nth-child(2n) {
		border-left: none;
	}

	.fkz-home-stats__item:nth-child(-n + 2) {
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
		padding-bottom: 14px;
	}

	.fkz-home-stats__value {
		font-size: 15px;
	}

	.fkz-home-stats__meta {
		font-size: var(--fkz-fs-micro);
	}

	.fkz-home-insurances__grid {
		display: flex;
		gap: 10px;
		overflow-x: auto;
		padding-bottom: 2px;
		scrollbar-width: none;
	}

	/* Opened on a phone: equal columns that fill the whole width (the fixed 60px items in a wrapping row left a blank strip
	   on the left — same fix as the featured clinics, Mehdi 2026-11-10); each logo centred in its column. */
	.fkz-home-insurances.is-expanded .fkz-home-insurances__grid {
		display: grid;
		gap: 14px 6px;
		grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
		justify-items: center;
		overflow-x: visible;
	}

	.fkz-home-insurances__grid::-webkit-scrollbar {
		display: none;
	}

	/* a third larger on phones (Mehdi 2026-11-08): logo 36 -> 48px */
	.fkz-home-insurances__item {
		flex-shrink: 0;
		width: 60px;
	}

	.fkz-home-insurances__logo {
		height: 48px;
		width: 48px;
	}

	.fkz-home-insurances__name {
		font-size: var(--fkz-fs-micro);
		max-width: 72px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.fkz-home-section-head__title {
		font-size: 14px !important;
	}

	.fkz-home-section-head__title--sm {
		font-size: var(--fkz-fs-body) !important;
	}

	.fkz-home-links .fkz-home-section-head__title {
		font-size: 15px !important;
	}

	.fkz-home-section-head__sub {
		font-size: var(--fkz-fs-micro);
		margin-bottom: 10px;
	}

	.fkz-home-section-head__link,
	.fkz-home-section-head__link:visited,
	body.fkz-home-page .fkz-home-section-head__link,
	body.fkz-home-page .fkz-home-section-head__link:visited {
		color: var(--fkz-primary) !important;
		font-size: var(--fkz-fs-caption);
		text-decoration: none !important;
	}

	.fkz-home-section-head__link:hover,
	.fkz-home-section-head__link:focus,
	.fkz-home-section-head__link:focus-visible,
	body.fkz-home-page .fkz-home-section-head__link:hover,
	body.fkz-home-page .fkz-home-section-head__link:focus,
	body.fkz-home-page .fkz-home-section-head__link:focus-visible {
		color: var(--fkz-ink) !important;
	}

	.fkz-home-section-head__link .fkz-icon-wrap {
		display: none;
	}

	.fkz-home-stats {
		padding: 20px 12px;
	}

	.fkz-home-stats__glow::before {
		height: 100px;
		left: -20px;
		top: -30px;
		width: 100px;
	}

	.fkz-home-stats__glow::after {
		bottom: -40px;
		height: 130px;
		right: -20px;
		width: 130px;
	}

	.fkz-home-how__title {
		font-size: 15px !important;
	}

	.fkz-home-testimonials {
		padding: 18px 16px;
	}

	.fkz-home-testimonials__title {
		font-size: 14px !important;
		text-align: right;
	}

	.fkz-home-testimonials__subtitle {
		display: none;
	}

	.fkz-home-testimonials__deco::before {
		height: 170px;
		right: -50px;
		top: -50px;
		width: 170px;
	}

	.fkz-home-testimonials__deco::after {
		bottom: -40px;
		height: 120px;
		left: -40px;
		width: 120px;
	}

	.fkz-home-faq__title {
		font-size: var(--fkz-fs-body) !important;
	}

	.fkz-home-trust__title {
		font-size: var(--fkz-fs-body) !important;
	}

	.fkz-home-clinics__grid {
		display: flex;
		gap: 10px;
		overflow-x: auto;
		padding-bottom: 2px;
		scrollbar-width: none;
	}

	/* Opened on a phone: two equal columns that fill the whole width (the fixed 132px cards left a blank strip on one side),
	   20 centres at a time (home.js adds .is-later to the rest) with «نمایش بیشتر» for the next 20. */
	.fkz-home-clinics.is-expanded .fkz-home-clinics__grid {
		display: grid;
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow-x: visible;
	}

	.fkz-home-clinics.is-expanded .fkz-home-clinic-card {
		width: auto;
	}

	.fkz-home-clinics.is-expanded .fkz-home-clinic-card__title {
		max-width: calc(100% - 12px);
	}

	.fkz-home-clinics.is-expanded .fkz-home-clinic-card.is-later {
		display: none;
	}

	body .fkz-home-clinics__more,
	body .fkz-home-clinics__more:hover,
	body .fkz-home-clinics__more:focus {
		background: var(--fkz-badge-insurance-bg);
		border: 0;
		border-radius: 12px;
		box-shadow: none;
		color: var(--fkz-badge-insurance-fg);
		cursor: pointer;
		display: block;
		font-family: var(--fkz-font);
		font-size: var(--fkz-fs-secondary);
		font-weight: 700;
		margin: 12px 0 0;
		min-height: 44px;
		width: 100%;
	}

	body .fkz-home-clinics__more[hidden] {
		display: none;
	}

	.fkz-home-clinics__grid::-webkit-scrollbar {
		display: none;
	}

	.fkz-home-clinic-card {
		flex-shrink: 0;
		position: relative;
		width: 132px;
	}

	.fkz-home-clinic-card__tier {
		border-radius: 999px;
		font-size: var(--fkz-fs-micro);
		left: auto;
		letter-spacing: 0;
		padding: 2px 6px;
		position: absolute;
		right: 6px;
		top: 6px;
		width: auto;
	}

	.fkz-home-clinic-card__avatar {
		height: 58px; /* a third larger (Mehdi 2026-11-08) */
		margin-top: 6px;
		width: 58px;
	}

	.fkz-home-clinic-card__title {
		font-size: var(--fkz-fs-caption);
		max-width: 112px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.fkz-home-links__grid {
		grid-template-columns: 1fr;
	}

	.fkz-home-links__icon {
		border-radius: 9px;
		height: 36px;
		width: 36px;
	}

	.fkz-home-links__text {
		font-size: var(--fkz-fs-secondary);
	}

	.fkz-home-links__fade {
		height: 56px;
	}

	.fkz-home-testimonials__title {
		font-size: 14px;
		text-align: right;
	}

	.fkz-home-testimonials__subtitle {
		display: none;
	}

	.fkz-home-testimonials__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.fkz-home-testimonial {
		border-radius: 12px;
		padding: 12px;
	}

	.fkz-home-testimonial__quote {
		font-size: var(--fkz-fs-body);
		margin-bottom: 6px;
	}

	.fkz-home-faq__layout {
		grid-template-columns: 1fr;
	}

	.fkz-home-faq__main {
		padding: 22px 18px;
	}

	.fkz-home-faq__title {
		font-size: var(--fkz-fs-body);
		margin-bottom: 14px;
	}

	.fkz-home-faq__item {
		border-radius: 12px;
		padding: 12px 14px;
	}

	/* no smaller question on mobile: the :focus rule above kept it full size until a tap elsewhere shrank it (Mehdi 2026-11-10) */

	.fkz-home-faq__a {
		font-size: var(--fkz-fs-body);
	}

	.fkz-home-faq__art {
		display: none;
	}

	.fkz-home-trust {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.fkz-home-trust__title {
		font-size: var(--fkz-fs-body);
	}

	.fkz-home-trust__text {
		font-size: var(--fkz-fs-body);
	}

	.fkz-home-trust__badges {
		gap: 10px;
	}

	.fkz-home-trust__badge {
		aspect-ratio: 1;
		flex: 1;
		height: auto;
		width: auto;
	}
}

@media (min-width: 900px) {
	.fkz-home-clinics__more {
		display: none !important;
	}
}

@media (min-width: 900px) and (max-width: 1100px) {
	.fkz-home-clinics__grid {
		grid-template-columns: repeat(4, 1fr);
	}

	.fkz-home-clinics:not(.is-expanded) .fkz-home-clinic-card:nth-child(n + 9) {
		display: none;
	}

	.fkz-home-insurances__grid {
		grid-template-columns: repeat(8, 1fr);
	}

	.fkz-home-insurances:not(.is-expanded) .fkz-home-insurances__item:nth-child(n + 9) {
		display: none;
	}
}

/* «آنچه کاربران می‌گویند»: quote text justified (Mehdi 2026-11-10) */
.fkz-home-testimonial__quote {
	text-align: justify;
}
