/* ===== Gastric sleeve page (جراحی اسلیو معده) ===== */
.visually-hidden {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
.only-desktop-block { display: block; }
.only-desktop-flex { display: flex; }
.only-mobile-block, .only-mobile-flex { display: none; }

.page-gs {
	--gs-title: 29.5px;
	/* رنگ تأکیدی این صفحه */
	--gold: #EDA35A;
	--gold-deep: #D98C3F;
}

/* Shared bits */
.gs-check {
	display: grid;
	place-items: center;
	flex: none;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	background: var(--gold) url("../images/gastric-sleeve/icon-check.webp") center / 30px 30px no-repeat;
}
.gs-dot { position: absolute; border-radius: 50%; }
.gs-ht { display: block; }
.gs-band-title { --line-gap: 13px; font-size: 26px; }

/* Notched card (button sits in a cut-out at the bottom) */
.gs-notch {
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	display: flex;
	justify-content: center;
	width: var(--notch-w);
	height: var(--notch-h);
	padding-top: 15px;
	translate: -50% 0;
}
.gs-notch::before,
.gs-notch::after {
	content: "";
	position: absolute;
	bottom: 0;
	z-index: -1;
	pointer-events: none;
}
.gs-notch::before {
	inset: 0;
	border-radius: 20px 20px 0 0;
	background: var(--notch-bg);
}
.gs-notch::after {
	left: -20px;
	right: -20px;
	height: 20px;
	background:
		radial-gradient(circle at 0 0, transparent 19.5px, var(--notch-bg) 20px) left bottom / 20px 20px no-repeat,
		radial-gradient(circle at 100% 0, transparent 19.5px, var(--notch-bg) 20px) right bottom / 20px 20px no-repeat;
}
.gs-btn {
	display: grid;
	place-items: center;
	width: var(--btn-w);
	height: var(--btn-h);
	border-radius: 15px;
	background: var(--gold);
	color: var(--cream);
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	transition: background .2s;
}
.gs-btn:hover { background: var(--gold-deep); }

/* ===== Hero ===== */
.gs-hero { min-height: 678px; }
.gs-hero__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 301px 16px 0;
	text-align: center;
}
.gs-hero__title {
	font-size: 36.5px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--cream);
}
.gs-hero__subtitle {
	margin-top: 25px;
	font-size: 20.5px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--gold);
}
.gs-hero__stats {
	display: flex;
	justify-content: center;
	gap: 52px;
	margin-top: 88px;
}
.gs-stat {
	display: flex;
	align-items: center;
	gap: 15px;
	width: 200.6px;
	height: 88px;
	padding-right: 12.6px;
	border: 2px solid var(--gold);
	border-radius: 22px;
}
.gs-stat__icon {
	display: grid;
	place-items: center;
	flex: none;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(247, 245, 238, .2);
}
.gs-stat__icon img { width: 24px; height: 24px; }
.gs-stat--weight .gs-stat__icon img { width: 30px; height: 30px; }
.gs-stat__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-top: 1px;
}
.gs-stat__num {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--cream);
	white-space: nowrap;
}
.gs-stat__label {
	font-size: 13px;
	line-height: 1.5;
	color: var(--cream);
	opacity: .9;
	white-space: nowrap;
}

/* ===== Why sleeve ===== */
.gs-why { padding: 122px 0 82px; overflow-x: clip; }
.gs-why__inner {
	display: grid;
	grid-template-columns: 395px minmax(0, 1fr);
	align-items: start;
	column-gap: 58px;
	padding-right: 31px;
}
.gs-why__media { position: relative; grid-column: 1; grid-row: 1; margin-top: 11px; }
.gs-why__photo {
	position: relative;
	z-index: 1;
	height: 390px;
	border-radius: 16px;
	overflow: hidden;
	background: var(--cream);
	box-shadow: 0 8px 10px -6px rgba(0, 0, 0, .1), 0 20px 25px -5px rgba(0, 0, 0, .1);
}
.gs-why__photo img { width: 100%; height: 100%; object-fit: cover; }
.gs-dot--a { left: -43px; top: -59px; width: 96px; height: 96px; background: color-mix(in srgb, var(--green-600) 10%, transparent); }
.gs-dot--b { left: 303px; top: 316px; width: 128px; height: 128px; background: color-mix(in srgb, var(--gold) 16%, transparent); }

.gs-why__body {
	grid-column: 2;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-left: 83px;
}
.gs-why__title { font-size: 24px; }
.gs-why__text {
	margin-top: 13px;
	padding-right: 34px;
	font-size: 16px;
	line-height: 26.4px;
	word-spacing: -0.6px;
	color: var(--ink);
}
.gs-pills {
	display: grid;
	grid-template-columns: repeat(2, 230px);
	gap: 10px 133px;
	margin: 32px 33px 0 0;
}
.gs-pill {
	display: flex;
	align-items: center;
	gap: 21px;
	height: 79px;
	padding-right: 15px;
	border: 1px solid var(--green-800);
	border-radius: 20px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	color: #141F32;
}

/* ===== Candidate + BMI ===== */
.gs-cand { height: 631px; }
.gs-ht--cand-a { left: 0; top: 0; width: 626px; height: 594px; }
.gs-ht--cand-b { right: 0; top: -33px; width: 699px; height: 664px; }
.gs-cand__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 559px;
	align-items: start;
	padding: 107px 0 0 74px;
}
.gs-cand__intro { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; align-items: flex-start; margin-right: -2px; }
.gs-band-title::after { margin-right: -1px; }
.gs-cand .band__title { --line-w: 249px; }
.gs-cand__list { margin-top: 66px; }
.gs-cand__list li {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 35px;
	font-size: 16px;
	line-height: 1.5;
	color: var(--cream-400);
}
.gs-cand__list li + li { margin-top: 45px; }
.gs-cand__list li + li + li { margin-top: 34px; }
.gs-cand__text { display: none; }

.gs-bmi {
	--notch-w: 367px;
	--notch-h: 75px;
	--notch-bg: var(--green-800);
	--btn-w: 346px;
	--btn-h: 60px;
	position: relative;
	grid-column: 2;
	grid-row: 1;
	height: 448px;
	margin-top: 8px;
	padding: 30px 26px 0 0;
	border-radius: 20px;
	background: var(--cream-200);
}
.gs-bmi__head { display: flex; align-items: center; gap: 14px; }
.gs-bmi__title { font-size: 20px; font-weight: 700; line-height: 1.4; color: var(--green-800); }
.gs-bmi__fields {
	display: flex;
	gap: 75px;
	margin: 21px 34.5px 0 0;
}
.gs-bmi__field { display: flex; flex-direction: column; align-items: flex-start; width: 182px; }
.gs-bmi__label { padding-right: 6px; font-size: 15px; line-height: 1.6; color: var(--ink); }
.gs-bmi__input {
	width: 100%;
	height: 45px;
	margin-top: 8px;
	border: 1px solid var(--cream-400);
	border-radius: 14.5px;
	background: var(--cream);
	font: inherit;
	font-size: 17px;
	font-weight: 700;
	color: #000;
	text-align: center;
	outline: none;
	transition: border-color .2s, box-shadow .2s;
}
.gs-bmi__input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px color-mix(in srgb, var(--gold) 25%, transparent); }
.gs-bmi__input[aria-invalid="true"] { border-color: #C0392B; }
.gs-bmi__result {
	margin: 25px -26px 0 0;
	text-align: center;
	font-size: 14px;
	line-height: 30px;
	color: var(--ink);
}
.gs-bmi__value { margin-inline: 4px; font-size: 20px; font-weight: 700; color: #C80000; }
.gs-bmi__result.is-empty .gs-bmi__value::before { content: "—"; }
/* رنگ وضعیت BMI */
.gs-bmi { --bmi-color: #C80000; }
.gs-bmi[data-status="under"] { --bmi-color: #8A8F98; }
.gs-bmi .gs-scale__marker { left: clamp(6.5px, var(--pos, 50%), calc(100% - 6.5px)); }
.gs-bmi[data-status="normal"] { --bmi-color: #22A06B; }
.gs-bmi[data-status="over"] { --bmi-color: #E5B438; }
.gs-bmi[data-status="obese"] { --bmi-color: #DC3545; }
.gs-bmi .gs-bmi__value { color: var(--bmi-color); transition: color .2s; }
.gs-bmi__cat { font-weight: 700; color: var(--bmi-color); transition: color .2s; }
.gs-bmi__cat:empty { display: none; }
.gs-bmi:not([data-status]) .gs-bmi__value { color: var(--ink); }
.gs-bmi .gs-scale__marker { background: var(--bmi-color); transition: left .3s, background-color .2s; }

.gs-scale { margin: 21px 34px 0 59px; }
.gs-scale__bar {
	position: relative;
	display: flex;
	height: 7px;
	border-radius: 3.5px;
	overflow: visible;
}
.gs-scale__seg { height: 100%; }
.gs-scale__seg--1 { width: 24.77%; background: #A9AEB5; border-radius: 0 3.5px 3.5px 0; } /* کمبود وزن: < ۱۸/۵ */
.gs-scale__seg--2 { width: 19.78%; background: #22A06B; } /* طبیعی: ۱۸/۵–۲۵ */
.gs-scale__seg--3 { width: 19.77%; background: #E5B438; } /* اضافه وزن: ۲۵–۳۰ */
.gs-scale__seg--4 { width: 35.68%; background: #DC3545; border-radius: 3.5px 0 0 3.5px; } /* چاقی: ≥ ۳۰ */
.gs-scale__bar { direction: ltr; }
.gs-scale__marker {
	position: absolute;
	top: 50%;
	left: var(--pos, 50%);
	width: 13px;
	height: 13px;
	translate: -50% -50%;
	border: 1.5px solid var(--white);
	border-radius: 50%;
	background: #C50000;
	transition: left .3s;
}
.gs-scale__marker[hidden] { display: none; }
.gs-scale__ticks { position: relative; height: 18px; margin-top: 10px; }
.gs-scale__ticks span {
	position: absolute;
	top: 0;
	left: var(--x);
	translate: -50% 0;
	font-size: 11px;
	line-height: 1;
	color: #000;
	white-space: nowrap;
}
.gs-scale__ticks span:first-child { translate: -3px 0; }
.gs-scale__ticks span:last-child { translate: -100% 0; }

.gs-bmi__msg {
	width: 407px;
	margin-top: 20px;
	padding-right: 46px;
	font-size: 14px;
	line-height: 17px;
	color: var(--ink);
	box-sizing: content-box;
}
.gs-bmi__msg[hidden] { display: none; }

/* ===== Results ===== */
.gs-results { padding: 96px 0 67px; }
.gs-results__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 748.8px;
	align-items: start;
}
.gs-results__intro {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 54px;
}
.gs-results__title { font-size: 26px; color: var(--green-800); }
.gs-results__desc {
	max-width: 330px;
	margin: 7px 18px 0 0;
	font-size: 15.6px;
	line-height: 24px;
	color: var(--green-800);
}
.gs-outline-btn {
	display: grid;
	place-items: center;
	width: 194px;
	height: 46px;
	margin: 22px 86px 0 0;
	border: 2px solid var(--gold);
	border-radius: 19px;
	color: var(--gold);
	font-size: 16px;
	font-weight: 500;
	transition: background .2s;
}
.gs-outline-btn:hover { background: color-mix(in srgb, var(--gold) 12%, transparent); }
.gs-results__list { grid-column: 2; grid-row: 1; translate: 5px 0; }

/* ===== Steps ===== */
.gs-steps { height: 509px; }
.gs-ht--steps-a { left: 0; top: 0; width: 588px; height: 509px; }
.gs-ht--steps-b { right: -1px; top: 29px; width: 588px; height: 480px; }
.gs-steps__inner { padding-top: 67px; }
.gs-steps__intro { display: flex; flex-direction: column; align-items: flex-start; margin-right: -1px; }
.gs-steps .band__title { --line-w: 311px; }
.gs-steps__desc {
	max-width: 460px;
	margin-top: 22px;
	font-size: 15.5px;
	line-height: 24px;
	color: var(--cream-400);
}
.gs-steps__list {
	position: relative;
	height: 120px;
	margin: 76px -2px 0 37px;
	padding: 0;
	list-style: none;
	counter-reset: none;
}
.gs-step {
	--k: 0;
	position: absolute;
	top: 42px;
	right: calc(var(--k) * (100% - 213px) / 4);
	display: grid;
	place-items: center;
	width: 213px;
	height: 77px;
	border: 4px solid var(--cream-400);
	border-radius: 18px;
	background: var(--cream);
}
.gs-step--2, .gs-step--4 { top: 0; }
.gs-step--2 { --k: 1; } .gs-step--3 { --k: 2; } .gs-step--4 { --k: 3; } .gs-step--5 { --k: 4; }
.gs-step__title { font-size: 22px; font-weight: 700; line-height: 1.3; color: var(--green-800); white-space: nowrap; }
.gs-step__num {
	position: absolute;
	top: -46px;
	left: calc(50% + 7px);
	display: grid;
	place-items: center;
	width: 60px;
	height: 60px;
	translate: -50% 0;
	border-radius: 50%;
	background: var(--gold);
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
	color: #095449;
}
.gs-step--2 .gs-step__num, .gs-step--4 .gs-step__num { top: auto; bottom: -47px; }

/* ===== Consultation (FAQ + form) ===== */
.gs-consult { padding: 77px 0 91px; }
.gs-consult__inner {
	display: grid;
	grid-template-columns: 519px 568px;
	justify-content: space-between;
	align-items: start;
	padding-left: 77px;
}
.gs-form-wrap { grid-column: 1; grid-row: 1; }
.gs-faq { grid-column: 2; grid-row: 1; padding-top: 134px; }
.gs-faq__title {
	display: flex;
	justify-content: flex-start;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--green-800);
}
.gs-faq__list { margin-top: 13px; }

.gs-form-wrap__head { display: flex; flex-direction: column; align-items: flex-start; }
.gs-form-title { margin-right: 57px; font-size: 26px; }
.gs-form-desc { margin-top: 23px; padding-right: 2px; font-size: 16px; line-height: 1.6; color: var(--green-800); }

.gs-form {
	--notch-w: 340px;
	--notch-h: 73px;
	--notch-bg: var(--cream);
	--btn-w: 309px;
	--btn-h: 52px;
	position: relative;
	height: 431px;
	margin-top: 39.5px;
	padding: 28px 43.5px 0 46.5px;
	border-radius: 20px;
	background: var(--cream-200);
}
.gs-form__field { display: flex; flex-direction: column; align-items: flex-start; }
.gs-form__field + .gs-form__field { margin-top: 18px; }
.gs-form__label { padding-right: 3.5px; font-size: 16px; line-height: 1.7; color: var(--ink); }
.gs-form__input {
	width: 100%;
	height: 45px;
	margin-top: 1px;
	padding: 0 14.5px;
	border: 1px solid var(--cream-400);
	border-radius: 14.5px;
	background: var(--cream);
	font: inherit;
	font-size: 15px;
	color: var(--ink);
	outline: none;
	transition: border-color .2s, box-shadow .2s;
}
.gs-form__input[type="tel"] { text-align: right; }
.gs-form__input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px color-mix(in srgb, var(--gold) 25%, transparent); }
.gs-form__input[aria-invalid="true"] { border-color: #C0392B; }
.gs-select { position: relative; display: block; width: 100%; }
.gs-form__select {
	appearance: none;
	-webkit-appearance: none;
	font-size: 16px;
	font-weight: 700;
	color: var(--ink);
	cursor: pointer;
}
.gs-select::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 24.5px;
	width: 17px;
	height: 9px;
	translate: 0 -50%;
	pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 9'%3E%3Cpath d='M1 1l7.5 7L16 1' fill='none' stroke='%23EDA35A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.gs-form__note { display: none; }
.gs-form__status {
	min-height: 0;
	margin-top: 10px;
	text-align: center;
	font-size: 14px;
	line-height: 1.5;
	color: var(--green-800);
}
.gs-form__status.is-error { color: #B03A2E; }

/* ===== Why the doctor ===== */
.gs-doc { height: 509px; }
.gs-ht--doc-a { left: 0; top: 0; width: 588px; height: 509px; }
.gs-ht--doc-b { right: -1px; top: 29px; width: 588px; height: 480px; }
.gs-doc__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 388px;
	align-items: start;
	padding: 72px 0 0 26px;
}
.gs-doc__media { position: relative; grid-column: 2; grid-row: 1; }
.gs-doc__photo {
	height: 383px;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 10px -6px rgba(0, 0, 0, .1), 0 20px 25px -5px rgba(0, 0, 0, .1);
}
.gs-doc__photo img { width: 100%; height: 100%; object-fit: cover; }
.gs-dot--c, .gs-dot--d { display: none; }
.gs-doc__body { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; align-items: flex-start; padding-top: 0; margin-right: -2px; }
.gs-doc .band__title { --line-w: 245px; }
.gs-doc__text {
	max-width: 660px;
	margin-top: 46px;
	font-size: 16px;
	line-height: 26.5px;
	color: var(--cream-400);
}
.gs-doc__stats { display: flex; gap: 30.4px; margin: 47px 50px 0 0; }

/* ===== Tablet (992–1359) ===== */
@media (max-width: 1359.98px) and (min-width: 992px) {
	.gs-why__inner { grid-template-columns: minmax(0, 36%) minmax(0, 1fr); column-gap: 40px; padding-right: 0; }
	.gs-why__photo { height: auto; aspect-ratio: 395 / 390; }
	.gs-dot--b { left: auto; right: -30px; top: auto; bottom: -54px; }
	.gs-why__body { padding-left: 0; }
	.gs-why__text { padding-right: 0; }
	.gs-pills { grid-template-columns: repeat(2, minmax(0, 230px)); column-gap: 24px; margin-right: 0; }

	.gs-cand { height: auto; padding-bottom: 72px; }
	.gs-cand__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 520px); column-gap: 32px; padding-left: 0; }
	.gs-bmi { --notch-w: 340px; --btn-w: 318px; padding-right: 24px; }
	.gs-bmi__fields { gap: 24px; margin-right: 10px; }
	.gs-bmi__field { width: min(182px, 44%); }
	.gs-bmi__msg { width: auto; padding: 0 24px 0 0; margin-left: 24px; }

	.gs-results__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 62%); column-gap: 32px; }
	.gs-results__list { margin: 0; translate: none; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.gs-steps { height: auto; padding-bottom: 110px; }
	.gs-steps__list { margin-left: 0; margin-right: 0; }
	.gs-step { width: 19%; right: calc(var(--k) * 20.25%); }
	.gs-step__title { font-size: 16px; }

	.gs-consult__inner { grid-template-columns: minmax(0, 48%) minmax(0, 48%); padding-left: 0; margin-right: 0; }
	.gs-form-title { margin-right: 0; }
	.gs-form { --notch-w: 320px; --btn-w: 290px; padding-inline: 32px; }

	.gs-doc { height: auto; padding-bottom: 72px; }
	.gs-doc__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 34%); column-gap: 40px; padding-left: 0; }
	.gs-doc__photo { height: auto; aspect-ratio: 388 / 383; }
	.gs-doc__stats { margin-right: 0; flex-wrap: wrap; gap: 16px; }
}
@media (max-width: 1199.98px) and (min-width: 992px) {
	.gs-why__inner { grid-template-columns: minmax(0, 1fr); row-gap: 48px; }
	.gs-why__media { grid-row: 2; width: min(395px, 100%); justify-self: center; }
	.gs-why__body { grid-column: 1; }
	.gs-cand__inner { grid-template-columns: minmax(0, 1fr); row-gap: 48px; }
	.gs-cand__intro, .gs-bmi { grid-column: 1; grid-row: auto; }
	.gs-bmi { width: 559px; justify-self: center; }
	.gs-results__inner { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
	.gs-results__intro, .gs-results__list { grid-column: 1; grid-row: auto; }
	.gs-consult__inner { grid-template-columns: minmax(0, 1fr); row-gap: 56px; }
	.gs-faq, .gs-form-wrap { grid-column: 1; grid-row: auto; }
	.gs-faq { padding-top: 0; }
	.gs-form-wrap { width: 100%; max-width: 640px; justify-self: center; }
	.gs-steps__list { height: 170px; }
	.gs-step { top: 90px; }
	.gs-step--2, .gs-step--4 { top: 30px; }
}

/* ===== Mobile ===== */
@media (max-width: 991.98px) {
	.only-desktop-block, .only-desktop-flex { display: none; }
	.only-mobile-block { display: block; }
	.only-mobile-flex { display: flex; }

	.gs-main { display: flex; flex-direction: column; }
	.gs-hero { order: 1; } .gs-why { order: 2; } .gs-cand { order: 3; } .gs-results { order: 4; }
	.gs-consult, .gs-consult__inner { display: contents; }
	.gs-faq { order: 5; } .gs-steps { order: 6; } .gs-form-wrap { order: 7; } .gs-doc { order: 8; }

	.gs-check { width: 25px; height: 25px; background-size: 21px 21px; }

	/* Hero */
	.gs-hero { min-height: 406px; }
	.gs-hero__bg {
		background:
			linear-gradient(to left, rgba(0, 16, 13, .9), rgba(0, 29, 25, .85) 50%, rgba(0, 40, 35, .7)),
			url("../images/gastric-sleeve/hero-mobile.webp") 50% 0 / cover no-repeat;
		background-color: var(--green-900);
	}
	.gs-hero__inner { padding-top: 151px; }
	.gs-hero__title { font-size: 24px; }
	.gs-hero__subtitle { display: none; }
	.gs-hero__stats {
		display: grid;
		grid-template-columns: repeat(2, 156px);
		justify-content: center;
		gap: 18px 16px;
		margin-top: 41px;
	}
	.gs-stat--stay { order: 1; } .gs-stat--weight { order: 2; }
	.gs-stat--time { order: 3; grid-column: 1 / -1; justify-self: center; }
	.gs-stat { width: 156px; height: 60px; gap: 8px; padding: 0 10px; border-radius: 14px; }
	.gs-stat__icon { width: 35px; height: 35px; }
	.gs-stat__icon img, .gs-stat--weight .gs-stat__icon img { width: 24px; height: 24px; }
	.gs-stat__text { flex: 1; min-width: 0; padding: 0; }
	.gs-stat__num { font-size: 15px; line-height: 1.35; }
	.gs-stat__label { font-size: 13px; line-height: 1.4; }

	/* Why sleeve */
	.gs-why { padding: 28px 0 39px; }
	.gs-why__inner { display: flex; flex-direction: column; align-items: center; padding: 0 14px; }
	.gs-why__body { display: contents; }
	.gs-why__title { order: 1; font-size: 20px; }
	.gs-why__title .sec-title__orn { width: 26px; height: 44px; }
	.gs-why__media { order: 2; width: 229px; margin-top: 31px; }
	.gs-why__photo { height: 291px; border-radius: 20px; }
	.gs-dot--a { left: -17px; top: -21px; width: 42px; height: 42px; }
	.gs-dot--b { left: 197px; top: 246px; width: 64px; height: 63px; }
	.gs-why__text { display: none; }
	.gs-pills { order: 3; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 10px; width: 100%; max-width: 400px; margin: 31px 0 0; }
	.gs-pill { gap: 8px; height: auto; min-height: 56px; padding: 8px 10px 8px 8px; border-radius: 18px; font-size: 13.5px; font-weight: 700; line-height: 1.35; color: var(--green-800); white-space: normal; text-wrap: balance; }

	/* Candidate */
	.gs-cand { height: auto; padding: 50px 0 42px; }
	.gs-ht { display: none; }
	.gs-cand__inner { display: flex; flex-direction: column; align-items: center; padding: 0 14px; }
	.gs-cand__intro { align-items: center; margin: 0; text-align: center; }
	.gs-band-title { display: flex; flex-direction: column; align-items: center; font-size: 18px; line-height: 1.6; }
	.gs-cand .band__title { --line-w: 114px; }
	.gs-band-title.only-desktop-block { display: none; }
	.gs-band-title::after { margin: 12px 0 0; }
	.gs-cand__list { display: none; }
	.gs-cand__text { display: block; max-width: 308px; margin-top: 23px; font-size: 14.5px; line-height: 20.5px; color: var(--cream-400); }

	.gs-bmi {
		--notch-w: 244px;
		--notch-h: 59px;
		--btn-w: 217px;
		--btn-h: 44px;
		width: 100%;
		max-width: 347px;
		height: 404px;
		margin-top: 26px;
		padding: 20px 36px 0 0;
	}
	.gs-bmi__head { gap: 6px; }
	.gs-bmi__head .bmi__icon { width: 30px; height: 30px; }
	.gs-bmi__title { font-size: 15px; }
	.gs-bmi__fields { justify-content: space-between; gap: 0; margin: 22px 8.5px 0 36.5px; }
	.gs-bmi__field { width: 109px; }
	.gs-bmi__label { padding-right: 0; font-size: 13px; }
	.gs-bmi__input { height: 39px; margin-top: 4px; font-size: 15px; }
	.gs-bmi__result { margin: 31px -36px 0 0; font-size: 15px; line-height: 26px; }
	.gs-bmi__value { font-size: 18px; }
	.gs-scale { margin: 21px 18px 0 47px; }
	.gs-scale__marker { width: 10px; height: 10px; border-width: 1px; }
	.gs-scale__ticks { margin-top: 13px; }
	.gs-bmi__msg {
		width: auto;
		margin: 26px -36px 0 0;
		padding: 0 52px;
		text-align: center;
		font-size: 13px;
		font-weight: 700;
		line-height: 16.5px;
		color: var(--green-800);
	}
	.gs-btn { font-size: 15px; }

	/* Results */
	.gs-results { padding: 38px 0 44px; }
	.gs-results__inner { display: flex; flex-direction: column; align-items: center; }
	.gs-results__intro { align-items: center; padding: 0 20px; text-align: center; }
	.gs-results__title { font-size: 20px; color: #1D2D2B; }
	.gs-results__title .sec-title__orn { width: 26px; height: 44px; }
	.gs-results__desc { max-width: 262px; margin: 29px 0 0; font-size: 15px; line-height: 22px; }
	.gs-outline-btn { width: 148px; height: 42px; margin: 22px 0 0; font-size: 15px; font-weight: 700; }
	.gs-results__list { width: 100%; margin: 29px 0 -14px; translate: none; }

	/* FAQ (dark band on mobile) */
	.gs-faq {
		padding: 38px 15px 63px;
		background: var(--green-800);
		color: var(--cream);
	}
	.gs-faq__title {
		flex-direction: column;
		align-items: center;
		font-size: 20px;
		line-height: 1.6;
		color: var(--cream);
	}
	.gs-faq__title::after {
		content: "";
		width: 63px;
		height: 2.7px;
		margin-top: 9px;
		border-radius: 2px;
		background: var(--gold);
	}
	.gs-faq__list { margin-top: 19px; }
	.gs-faq .faq__item { border-color: var(--white); }
	.gs-faq .faq__item + .faq__item { margin-top: 34px; }
	.gs-faq .faq__btn { font-weight: 400; color: var(--cream-400); }
	.gs-faq .faq__a { color: var(--cream); }
	.gs-faq .faq__toggle::before { border-color: var(--white); background: var(--green-800); }
	.gs-faq .faq__toggle::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 9'%3E%3Cpath d='M1.5 1.5l5 5 5-5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	}

	/* Steps (cream, vertical timeline on mobile) */
	.gs-steps { height: auto; padding: 36px 0 52px; background: var(--cream); color: var(--green-800); }
	.gs-steps__inner { padding: 0 14px; }
	.gs-steps__intro { align-items: center; margin: 0; text-align: center; }
	.gs-steps__title-m { font-size: 20px; color: #1D2D2B; }
	.gs-steps__title-m .sec-title__orn { width: 26px; height: 45px; }
	.gs-steps__desc { max-width: 245px; margin-top: 21px; font-size: 15px; line-height: 22px; color: var(--green-800); }
	.gs-steps__list {
		width: 304px;
		height: auto;
		margin: 15px auto 0;
		padding: 40px 0 0;
		display: flex;
		flex-direction: column;
		gap: 26px;
	}
	.gs-steps__list::before {
		/* خط زمانی + نقطه بالا */
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 16px;
		height: 16px;
		translate: -50% 0;
		border-radius: 50%;
		background: var(--green-800);
	}
	.gs-steps__list::after {
		content: "";
		position: absolute;
		top: 8px;
		bottom: -9px;
		left: 50%;
		width: 3px;
		translate: -50% 0;
		background: var(--green-800);
		z-index: 0;
	}
	.gs-step {
		position: relative;
		top: auto !important;
		right: auto;
		z-index: 1;
		width: 152px;
		height: 53px;
		border-width: 1.5px;
		border-color: var(--green-800);
		border-radius: 18px;
	}
	.gs-step--1, .gs-step--3, .gs-step--5 { align-self: flex-start; }
	.gs-step--2, .gs-step--4 { align-self: flex-end; }
	.gs-step__title { font-size: 14.5px; }
	.gs-step__num,
	.gs-step--2 .gs-step__num,
	.gs-step--4 .gs-step__num {
		top: 50%;
		bottom: auto;
		width: 38px;
		height: 38px;
		translate: -50% -50%;
		font-size: 22px;
	}
	.gs-step--1 .gs-step__num, .gs-step--3 .gs-step__num, .gs-step--5 .gs-step__num { left: -12px; }
	.gs-step--2 .gs-step__num, .gs-step--4 .gs-step__num { left: calc(100% + 11px); }

	/* Form (dark band on mobile) */
	.gs-form-wrap { padding: 44px 14px 54px; background: var(--green-800); }
	.gs-form-wrap__head { align-items: center; text-align: center; }
	.gs-form-wrap .band__title { --line-w: 64px; }
	.gs-form-desc { max-width: 300px; margin-top: 20px; font-size: 15px; line-height: 1.6; color: var(--cream-400); }
	.gs-form {
		--notch-w: 244px;
		--notch-h: 59px;
		--notch-bg: var(--green-800);
		--btn-w: 217px;
		--btn-h: 44px;
		width: 100%;
		max-width: 347px;
		height: 404px;
		margin: 27px auto 0;
		padding: 25px 39.5px 0 39.5px;
	}
	.gs-form__field + .gs-form__field { margin-top: 15px; }
	.gs-form__label { padding-right: 10px; font-size: 13px; font-weight: 700; line-height: 1.6; color: var(--green-800); }
	.gs-form__input { height: 39px; margin-top: 2px; font-size: 14px; }
	.gs-form__select { font-size: 13px; }
	.gs-select::after { left: 13.5px; width: 11px; height: 6px; }
	.gs-form__note { display: block; margin-top: 30px; text-align: center; font-size: 13px; font-weight: 700; line-height: 1.6; color: var(--green-800); }
	.gs-form__status { margin-top: 4px; font-size: 13px; }

	/* Doctor (cream on mobile) */
	.gs-doc { height: auto; padding: 33px 0 19px; background: var(--cream); color: var(--green-800); }
	.gs-doc__inner { display: flex; flex-direction: column; align-items: center; padding: 0 16px; }
	.gs-doc__body { display: contents; }
	.gs-doc__title-m { order: 1; font-size: 20px; }
	.gs-doc__title-m .sec-title__orn { width: 33px; height: 57px; }
	.gs-doc__media { order: 2; width: 303px; max-width: 100%; margin-top: 25px; }
	.gs-doc__photo { height: 385px; box-shadow: 0 4px 6px -4px rgba(0, 0, 0, .1), 0 10px 15px -3px rgba(0, 0, 0, .1); }
	.gs-dot--c, .gs-dot--d { display: block; }
	.gs-dot--c { left: -29px; top: -31px; width: 64px; height: 64px; background: color-mix(in srgb, var(--green-600) 10%, transparent); }
	.gs-dot--d { left: 242px; top: 339.5px; width: 96px; height: 96px; background: color-mix(in srgb, var(--gold) 16%, transparent); }
	.gs-doc__photo { position: relative; z-index: 1; }
	.gs-doc__text {
		order: 3;
		max-width: 303px;
		margin-top: 27px;
		text-align: center;
		font-size: 15px;
		line-height: 25.4px;
		word-spacing: -0.6px;
		color: var(--green-800);
	}
	.gs-doc__stats {
		order: 4;
		display: grid;
		grid-template-columns: 166px 161px;
		gap: 16px;
		margin: 31px 0 0;
	}
	.gs-doc .stat { width: auto; height: 60px; gap: 11px; border-radius: 11px; }
	.gs-doc .stat--surgery { padding-right: 13px; }
	.gs-doc .stat--exp { padding-right: 7px; }
	.gs-doc .stat__icon { width: 40px; height: 40px; background: color-mix(in srgb, var(--green-600) 10%, transparent); }
	.gs-doc .stat__icon img { width: 40px; height: 40px; }
	.gs-doc .stat__num, .gs-doc .stat__label { color: var(--green-800); }
	.gs-doc .stat__num { font-size: 19.5px; line-height: 1.2; }
	.gs-doc .stat__label { margin-top: 2px; font-size: 13.5px; }
}

@media (max-width: 374.98px) {
	.gs-doc__stats { grid-template-columns: repeat(2, minmax(0, 166px)); gap: 10px; width: 100%; justify-content: center; }
	.gs-doc .stat { gap: 6px; }
}
@media (max-width: 359.98px) {
	.gs-hero__stats { grid-template-columns: repeat(2, minmax(0, 150px)); column-gap: 10px; }
	.gs-stat { width: 100%; }
	.gs-stat--time { width: calc(50% - 5px); }
}

/* FAQ: open/close instantly (no arrow rotation transition on these pages) */
.gs-faq .faq__toggle::after { transition: none; }
/* FAQ: question row keeps the same height open or closed */
.gs-faq .faq__item.is-open .faq__btn { min-height: 56px; padding-top: 0; }
.gs-faq .faq__a { padding-top: 7.4px; }
@media (max-width: 991.98px) {
	.gs-faq .faq__a { padding-top: 1px; }
}
