﻿/*
Theme Name: Unilikon
Theme URI: https://example.com/unilikon
Author: Unilikon
Author URI: https://example.com
Description: Minimal WordPress theme for Unilikon.
Version: 1.0.0
Text Domain: unilikon
*/
:root {
	--green: #27ae60;
	--white: #fff;
	--black: #111;
	--light-gray: #f7f8fa;
	--gray: #f1f3f5;
	--gray-txt: #a0a4ab;
	--dark-green: #16753e;
	--blue: #2f80ed;
}
.page-template-developers .developers-section__card {
    display: flex;
    flex-direction: column;
}
:root {
  --font-family: "Exo 2", sans-serif;
}
button.developers-section__card-btn {
    background: var(--gray);
}
.btn {
  border-radius: 16px;
padding: 24px 32px;
background: var(--green);
font-weight: 600;
font-size: 16px;
text-align: center;
color: var(--white);
transition: all 0.3s ease;
border: none;
}
.btn:hover {
 background: var(--dark-green);
}
button,
a {
        cursor: pointer;
        transition: all .3s ease;
}
button.developers-section__card-btn:hover {
    background: var(--green);
    color: #fff;
}
h1 {
  font-family: var(--font-family);
  margin: 0;
  font-weight: 600;
font-size: 60px;
color: var(--white);
line-height: normal;
}
h2.title-text {
  font-weight: 600;
font-size: 50px;
color: var(--dark-green);
}
p.subtitle {
  font-weight: 400;
font-size: 20px;
color: var(--black);
}

body {
	margin: 0;
	font-family: var(--font-family);
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

.container {
	max-width: 1360px;
	margin: 0 auto;
	padding: 0 10px;
	box-sizing: border-box;
}

.site-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	padding: 14px 24px;
	box-sizing: border-box;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;

	margin: 0 auto;
}

.site-header__left {
	display: flex;
	align-items: center;
	gap: 48px;
}

.site-header__logo img {
	max-height: 40px;
	width: auto;
}

.site-header__menu {
	display: flex;
	align-items: center;
	gap: 32px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-header__menu a {
	color: #ffffff;
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
}

.site-header__right {
	display: flex;
	align-items: center;
	gap: 24px;
}

.site-header__phone {
	color: #ffffff;
	text-decoration: none;
	font-size: 18px;
	font-weight: 700;
	white-space: nowrap;
}

.site-header__callback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 0 28px;
	border-radius: 16px;
	background: #ffffff;
	color: #1f1f1f;
	text-decoration: none;
	font-size: 16px;
	font-weight: 600;
	white-space: nowrap;
}

.hero-home {
	position: relative;
	min-height: 100vh;
	padding: 130px 56px 48px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	box-sizing: border-box;
	color: #ffffff;
}

.hero-home__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.35);
}

.hero-home__container {
	position: relative;
	z-index: 2;
	max-width: 1720px;
	margin: 0 auto;
}

.hero-home__top-card {
	max-width: 640px;
	margin-bottom: 48px;
}

.hero-home__content {
	max-width: 760px;
}

.hero-home__title {
	margin: 0 0 24px;
	font-size: 82px;
	line-height: 1.05;
	font-weight: 700;
}

.hero-home__text {
	max-width: 720px;
	margin-bottom: 32px;
	font-size: 28px;
	line-height: 1.3;
}

.hero-home__buttons {
	display: flex;
	gap: 20px;
	margin-top: 32px;
}

.hero-home__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 72px;
	padding: 0 36px;
	border-radius: 20px;
	text-decoration: none;
	font-size: 22px;
	font-weight: 600;
}

.hero-home__button--primary {
	background: #2db45d;
	color: #ffffff;
}

.hero-home__button--secondary {
	background: rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(12px);
	color: #ffffff;
}

.hero-home__features {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	max-width: 540px;
	margin-top: 40px;
	padding: 20px;
	border-radius: 24px;
	background: rgba(50, 50, 50, 0.28);
	backdrop-filter: blur(14px);
}

.hero-home__feature {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.hero-home__feature-icon {
	flex: 0 0 48px;
	width: 48px;
}

.hero-home__feature-title {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
}

.hero-home__feature-text {
	font-size: 16px;
	line-height: 1.3;
	opacity: 0.95;
}

.hero-home__object-card {
	position: absolute;
	right: 0;
	bottom: 40px;
	display: flex;
	gap: 20px;
	width: 520px;
	padding: 18px;
	border-radius: 28px;
	background: rgba(25, 25, 25, 0.38);
	backdrop-filter: blur(16px);
}

.hero-home__object-slider {
	position: absolute;
	right: 0;
	bottom: 40px;
	width: 520px;
}

.hero-home__object-slider .hero-home__object-card {
	position: relative;
	right: auto;
	bottom: auto;
	width: 100%;
}

.hero-home__object-image {
	flex: 0 0 180px;
	overflow: hidden;
	border-radius: 20px;
}

.hero-home__object-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-home__object-title {
	margin-bottom: 8px;
	font-size: 22px;
	font-weight: 700;
}

.hero-home__object-area {
	margin-bottom: 14px;
	font-size: 18px;
}

.hero-home__object-prices {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.hero-home__object-old-price {
	font-size: 18px;
	text-decoration: line-through;
	opacity: 0.75;
}

.hero-home__object-price {
	font-size: 24px;
	font-weight: 700;
	color: #2db45d;
}

.hero-home__object-link {
	color: #ffffff;
	text-decoration: none;
	font-size: 20px;
	font-weight: 600;
}

.site-footer {
	padding: 40px 24px;
	background: #111;
	color: #fff;
}

.popup {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	box-sizing: border-box;
}

.popup.is-open {
	display: flex;
}

.popup__overlay {
	position: absolute;
	inset: 0;
	background: rgba(10, 17, 28, 0.62);
	backdrop-filter: blur(14px);
}

.popup__dialog {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 654px;
	margin: 0;
	box-sizing: border-box;
	border-radius: 32px;
	padding: 32px;
	background: var(--light-gray);
}

.popup__close {
	position: absolute;
	top: 14px;
	right: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 50%;
	background: rgba(39, 174, 96, 0.12);
	font-size: 40px;
	line-height: 1;
	cursor: pointer;
	color: #1d7f46;
	transition: background 0.2s ease, transform 0.2s ease;
}

.popup__close:hover {
	background: rgba(39, 174, 96, 0.2);
	transform: rotate(90deg);
}

.popup__title {
	line-height: 1.1;
	font-weight: 600;
	font-size: 40px;
	color: var(--dark-green);
	margin-bottom: 24px;
}

.popup__form {
	margin-bottom: 14px;
}

.popup__field,
.popup__actions {
	margin: 0;
}

.popup__form {
	display: grid;
	gap: 24px;
}

.popup__input,
.popup__input:focus {
	width: 100%;
	font-family: inherit;
	outline: none;
	border-radius: 12px;
	padding: 24px 32px;
	box-sizing: border-box;
	border: none;
	font-weight: 400;
	font-size: 16px;
	color: var(--gray-txt);
}

.popup__input::placeholder {
	color: #9aa6b2;
}

.popup__submit {
	width: 100%;
	border: none;
	font-family: inherit;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	border-radius: 16px;
	padding: 24px 32px;
	background: var(--green);
	font-weight: 600;
	font-size: 16px;
	text-align: center;
	color: var(--white);
}

.popup__submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 18px 34px rgba(45, 180, 93, 0.28);
}

body.popup-open {
	overflow: hidden;
}


.hero-home__object-slider .hero-home__slider-prev,
.hero-home__object-slider .hero-home__slider-next {
  position: absolute;
  /* top: 50%; */
  /* transform: translateY(-50%); */
  background: rgba(0,0,0,0.2);
  border: none;
  color: transparent;
  font-size: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 2;
}
.hero-home__object-slider .hero-home__slider-prev img,
.hero-home__object-slider .hero-home__slider-next img {
  display: block;
}
.hero-home__object-slider .hero-home__slider-prev {right: 45px;}
.hero-home__object-slider .hero-home__slider-prev img { transform: rotate(180deg); }
.hero-home__object-slider .hero-home__slider-next { right: 10px; }
.hero-home__top-card {
    position: relative;
    border: 0;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(14px);
}

.hero-home__top-card::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    background: linear-gradient(
        240deg,
        #00b2ff 0%,
        #1350f3 52%,
        #ad44e1 100%
    );
    pointer-events: none;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}

/* Moved from assets/css/main.css */
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

:root {
    --unilikon-green: #1f864a;
    --unilikon-green-light: #27ae60;
    --unilikon-text: #1f1f1f;
    --unilikon-muted: #9aa0a8;
    --unilikon-section: #f5f6f7;
    --unilikon-card: #ffffff;
}

body {
    background: #ffffff;
    color: var(--unilikon-text);
}


.site-header {
    position: absolute;
    inset: 0 0 auto;
    z-index: 100;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(8, 38, 56, 0.38);
    box-sizing: border-box;
}


.site-header__logo img {
    max-height: 34px;
}

.site-header__menu {
    gap: 16px;
}

.site-header__menu a,
.site-header__phone {
    color: #ffffff;
    letter-spacing: 0;
}

.site-header__menu a {
    font-size: 14px;
    font-weight: 500;
}

.site-header__phone {
    font-size: 18px;
    font-weight: 700;
}

.site-header__callback {
    min-height: 40px;
    border-radius: 8px;
    padding: 0 18px;
    background: #ffffff;
    color: #1f1f1f;
    font-size: 13px;
    font-weight: 700;
}

.front-page {
    overflow: hidden;
}

.hero-home {
    position: relative;
    min-height: 805px;
    padding: 112px 0 92px;
    background-position: center;
    background-size: cover;
    color: #ffffff;
    box-sizing: border-box;
}

.hero-home::before {
    content: "";
    position: absolute;
    inset: 0;
}

.hero-home > .container {
    position: relative;
    z-index: 2;
}

.hero-home__inner {
    position: relative;
    min-height: 600px;
}

.hero-home__top-card {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 24px;
    border: 1px solid rgba(66, 148, 255, 0.8);
    border-radius: 20px;
    padding: 6px 12px 6px 6px;
    backdrop-filter: blur(5px);
    background: rgba(255, 255, 255, 0.1);
}

.hero-home__manager-avatar {
    overflow: hidden;
    border-radius: 50%;
    flex: 0 0 76px;
    width: 80px;
    height: 80px;
}

.hero-home__manager-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-home__manager-name {
    font-weight: 600;
    font-size: 18px;
    color: var(--white);
}

.hero-home__manager-position {
    font-weight: 400;
    font-size: 14px;
    color: var(--white);
    margin-top: 3px;
}

.hero-home__manager-socials {
    display: flex;
    gap: 12px;
    margin-left: 24px;
}

.hero-home__manager-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
}

.hero-home__title {
    max-width: 780px;
    margin: 0 0 24px;
    font-size: 50px;
    line-height: 1.18;
    font-weight: 600;
}

.hero-home__text {
    max-width: 670px;
    margin: 0 0 40px;
    font-size: 23px;
    line-height: 1.35;
}

.hero-home__features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 26px;
    width: 460px;
    margin: 0 0 38px;
    border-radius: 10px;
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 12px;
    padding: 12px;
}

.hero-home__feature {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 10px;
    align-items: center;
}

.hero-home__feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #ffffff;
}

.hero-home__feature-icon img {
    object-fit: contain;
}

.hero-home__feature-title {
    font-size: 17px;
    line-height: 1.15;
    font-weight: 700;
}

.hero-home__feature-text {
    margin-top: 3px;
    font-size: 12px;
    line-height: 1.25;
    color: rgba(255, 255, 255, 0.86);
}

.hero-home__buttons {
    display: grid;
    grid-template-columns: 320px 320px;
    gap: 8px;
    margin: 0;
}

.hero-home__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 66px;
    border: 0;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    border-radius: 16px;
}

.hero-home__button--primary {
    background: var(--unilikon-green-light);
    color: #ffffff;
}

.hero-home__button--secondary {
    color: #ffffff;
    backdrop-filter: blur(5px);
    background: rgba(255, 255, 255, 0.3);
}

.hero-home__object-slider,
.hero-home__object-card {
    position: absolute;
    right: 0;
    bottom: 18px;
    width: 483px;
}

.hero-home__object-slider .hero-home__object-card,
.hero-home__object-card {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 22px;
    padding: 14px;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 24px;
    backdrop-filter: blur(10px);
    background: rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: flex-end;
}

.hero-home__object-slider .hero-home__object-card {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
}

.hero-home__object-image {
    min-height: 160px;
    overflow: hidden;
    border-radius: 14px;
    width: 160px;
    border-radius: 12px;
}

.hero-home__object-image img {
    width: 100%;
    height: 160px;
    object-fit: cover;
}

.hero-home__object-info {
}

.hero-home__object-title {
    margin: 0 0 6px;
    line-height: 1.15;
    font-weight: 600;
    font-size: 24px;
    color: var(--white);
}

.hero-home__object-area {
    margin-bottom: 6px;
    font-weight: 600;
    font-size: 24px;
    color: var(--white);
}

.hero-home__object-prices {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 12px;
}

.hero-home__object-old-price {
    font-weight: 400;
    font-size: 14px;
    text-decoration: line-through;
    color: var(--gray-txt);
}

.hero-home__object-price {
    font-weight: 600;
    font-size: 24px;
    color: var(--green);
}

.hero-home__object-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: 0;
    background: transparent;
    font-family: inherit;
    letter-spacing: 0.04em;
    text-decoration: none;
    cursor: pointer;
    font-weight: 400;
    font-size: 16px;
    text-transform: uppercase;
    text-align: center;
    color: var(--white);
}

.hero-home__object-link svg {
    flex: 0 0 12px;
}

.hero-home__object-slider .slick-arrow {
}

.hero-home__object-slider .slick-prev {
    left: auto;
    right: 50px;
    top: auto;
    bottom: 14px;
    transform: none;
}

.hero-home__object-slider .slick-next {
    right: 12px;
    top: auto;
    bottom: 14px;
    transform: none;
}

.advantages-section,
.work-steps,
.reviews-section,
.consultation-section {
    background: var(--light-gray);
}

.advantages-section,
.hot-offers,
.work-steps,
.developers-section,
.reviews-section,
.consultation-section {
    padding: 80px 0;
}

.advantages-section__title,
.hot-offers__title,
.work-steps__title,
.developers-section__title,
.reviews-section__title,
.consultation-section__title {
    margin: 0 0 24px;
    line-height: normal;
    font-weight: 600;
    font-size: 50px;
    color: var(--dark-green);
}

.hot-offers__title {
    text-align: center;
}

.advantages-section__text,
.hot-offers__text,
.work-steps__text,
.developers-section__text,
.reviews-section__text,
.consultation-section__text {
    margin: 0 0 40px;
    line-height: 1.4;
    font-weight: 400;
    font-size: 20px;
    color: var(--black);
}

.hot-offers__text {
    text-align: center;
}

.advantages-section__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.advantages-section__item,
.work-steps__item,
.reviews-section__item,
.reviews-section__stat,
.consultation-section__inner {
    border-radius: 24px;
    background: var(--white);
}

.advantages-section__item {
    box-sizing: border-box;
    border-radius: 24px;
    padding: 32px;
}

.advantages-section__item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    margin-bottom: 24px;
}

.advantages-section__item-icon img {
    object-fit: contain;
}

.advantages-section__item-title,
.work-steps__item-title {
    margin-bottom: 16px;
    line-height: 1.15;
    font-weight: 600;
    font-size: 24px;
    color: var(--black);
}

.advantages-section__item-text,
.work-steps__item-text,
.developers-section__card-desc,
.reviews-section__item-text,
.reviews-section__stat-label {
    line-height: 1.35;
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}

.hot-offers {
    background: #ffffff;
}

.hot-offers__grid,
.reviews-section__items {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.hot-offers__card {
    overflow: hidden;
    border-radius: 18px;
    background: #eef1f3;
}

.hot-offers__card-image {
    height: 176px;
}

.hot-offers__card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hot-offers__card-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 24px 12px;
    justify-content: space-between;
}

.hot-offers__card-content {
    border-radius: 16px;
    padding: 12px;
    background: var(--white);
    display: flex;
    flex-direction: column;
    gap: 12px;
    height: 100%;
}

.hot-offers__card-title {
    line-height: 1.15;
    font-weight: 700;
    font-size: 18px;
    color: var(--black);
}

.hot-offers__card-meta,
.hot-offers__card-location {
    line-height: 1.3;
    font-weight: 400;
    font-size: 14px;
    color: var(--black);
}

.hot-offers__card-location {
    display: flex;
    align-items: center;
    gap: 6px;
}

.hot-offers__card-location-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
}

.hot-offers__card-location-icon img,
.hot-offers__card-location-icon svg {
    display: block;
    width: 16px;
    height: 16px;
    object-fit: contain;
}

.hot-offers__card-prices {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-top: 24px;
}

.hot-offers__card-old-price {
    color: var(--unilikon-muted);
    text-decoration: line-through;
}

.hot-offers__card-price {
    font-weight: 600;
    font-size: 24px;
    color: var(--green);
}

.hot-offers__card-btn,
.developers-section__card-btn {
    display: none;
}

.work-steps__items {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.work-steps__item {
    position: relative;
    box-sizing: border-box;
    border-radius: 24px;
    padding: 32px;
}

.work-steps__item:not(:last-child)::after {
    content: "›";
    position: absolute;
    right: -18px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--unilikon-green-light);
    font-size: 30px;
    line-height: 1;
}

.work-steps__item-number {
    margin-bottom: 24px;
    line-height: 1;
    font-weight: 800;
    font-weight: 600;
    font-size: 64px;
    color: #d4efdf;
}

.developers-section {
    background: #ffffff;
}

.developers-section__header {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 24px;
    margin-bottom: 36px;
}

.developers-section__header .developers-section__title,
.developers-section__header .developers-section__text {
    grid-column: 1;
    margin-bottom: 0;
}

.developers-section__btn {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: end;
    padding: 11px 20px;
    border: 1px solid var(--unilikon-green-light);
    border-radius: 8px;
    background: #ffffff;
    color: var(--unilikon-green);
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

.developers-section__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.developers-section__card {
    padding: 24px;
    border-radius: 24px;
    box-sizing: border-box;
    background: var(--gray);
}

.developers-section__card-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    margin-bottom: 24px;
    border-radius: 16px;
    background: #ffffff;
}

.developers-section__card-logo img {
    object-fit: cover;
    height: 100%;
    border-radius: 16px;
}

.developers-section__card-name {
    margin-bottom: 12px;
    font-weight: 600;
    font-size: 20px;
    color: var(--dark-green);
}

.developers-section__card-projects,
.developers-section__card-stat-num {
    display: block;
    margin-bottom: 10px;
    font-size: 17px;
    font-weight: 800;
}

.developers-section__card-stats,
.developers-section__card-badges {
    margin-bottom: 10px;
}

.developers-section__card-stat-label,
.developers-section__card-badge {
    font-weight: 400;
    font-size: 14px;
    color: var(--black);
}

.developers-section__cta {
    margin-top: 40px;
    padding: 48px 50px;
    border-radius: 22px;
    background-position: center;
    background-size: cover;
    overflow: hidden;
    box-sizing: border-box;
}

.developers-section__cta-content {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.developers-section__cta-title {
    margin-bottom: 24px;
    font-weight: 600;
    font-size: 40px;
    text-align: center;
    color: var(--green);
}

.developers-section__cta-text {
    margin-bottom: 40px;
    font-weight: 400;
    font-size: 18px;
    text-align: center;
    color: var(--white);
}

.developers-section__cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 196px;
    min-height: 58px;
    border: 0;
    border-radius: 10px;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--white);
    background: var(--green);
}

.service-cards-section {
    padding: 70px 0;
    background: #ffffff;
}

.service-cards-section__title {
    margin: 0 0 14px;
    color: var(--dark-green);
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
}

.service-cards-section__text {
    max-width: 760px;
    margin: 0 0 36px;
    color: #2b2b2b;
    font-size: 18px;
    line-height: 1.4;
}

.service-cards-section__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}

.service-cards-section__item {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #f1f3f4;
    box-sizing: border-box;
    border-radius: 24px;
    padding: 32px;
}

.service-cards-section__item-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.service-cards-section__item-title {
    line-height: 1.15;
    font-weight: 600;
    font-size: 24px;
    color: var(--black);
}

.service-cards-section__item-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--white);
    border-radius: 8px;
    padding: 12px 16px;
    background: var(--green);
}

.service-cards-section__item-text {
    margin: 0px 0 24px;
    color: #9ca3ad;
    font-size: 17px;
    line-height: 1.35;
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}

.service-cards-section__item-list {
    display: grid;
    gap: 12px;
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
}

.service-cards-section__item-list li {
    position: relative;
    padding-left: 34px;
    line-height: 1.25;
    font-weight: 400;
    font-size: 16px;
    color: var(--black);
}

.service-cards-section__item-list li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 2px;
    width: 14px;
    height: 8px;
    border-left: 2px solid #27ae60;
    border-bottom: 2px solid #27ae60;
    transform: rotate(-45deg);
}

.service-cards-section__item-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: auto;
    background: transparent;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--green);
    border: 1px solid var(--green);
    border-radius: 16px;
    padding: 24px 32px;
}

.reviews-section__item {
    padding: 12px;
    box-sizing: border-box;
}

.reviews-section__item-avatar {
    float: left;
    width: 64px;
    height: 64px;
    margin: 0 8px 24px 0;
    overflow: hidden;
    border-radius: 50%;
}

.reviews-section__item-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reviews-section__item-name {
    font-weight: 600;
    font-size: 18px;
    color: var(--black);
}

.reviews-section__item-subtitle {
    margin-top: 4px;
    font-weight: 400;
    font-size: 14px;
    color: var(--gray-txt);
}

.reviews-section__item-rating {
    clear: both;
    margin-bottom: 24px;
    font-size: 20px;
}

.reviews-section__item-rating span {
    color: #d8d8d8;
}

.reviews-section__item-rating span.filled {
    color: #e5b117;
}

.reviews-section__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    margin-top: 40px;
}

.reviews-section__stat {
    text-align: center;
    padding: 32px;
}

.reviews-section__stat-number {
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 48px;
    text-align: center;
    color: var(--dark-green);
}

.consultation-section__inner {
    display: flex;
    gap: 40px;
    background: #f1f3f4;
    border-radius: 32px;
    padding: 48px 50px;
}

.consultation-section__title {
    max-width: 430px;
    font-weight: 600;
    font-size: 40px;
    color: var(--dark-green);
}

.consultation-section__contacts {
    display: grid;
    gap: 24px;
}

.consultation-section__contact {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 16px;
    align-items: center;
}

.consultation-section__contact-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.consultation-section__contact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    /* background: var(--unilikon-green-light); */
}

.consultation-section__contact-icon img {
    object-fit: contain;
}

.consultation-section__contact-label {
    font-weight: 400;
    font-size: 16px;
    color: var(--black);
}

.consultation-section__contact-value {
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    color: var(--green);
}

.consultation-section__form {
    padding-top: 10px;
}

.consultation-section__form,
.contacts-section__form {
    display: block;
}

.consultation-section__form form,
.contacts-section__form form {
    display: grid;
    gap: 8px;
}

.consultation-section__input,
.contacts-section__input {
    width: 100%;
    border: 0;
    box-sizing: border-box;
    font: inherit;
    outline: none;
    border-radius: 12px;
    padding: 24px 32px;
    background: var(--white);
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}

.consultation-section__textarea,
.contacts-section__textarea {
    min-height: 132px;
    padding-top: 22px;
    resize: vertical;
}

.consultation-section__input::placeholder,
.contacts-section__input::placeholder {
    color: #9ca3ad;
}

.consultation-section__submit,
.contacts-section__submit {
    margin-top: 24px;
    border: 0;
    background: var(--unilikon-green-light);
    font: inherit;
    cursor: pointer;
    border-radius: 16px;
    padding: 24px 32px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--white);
}

.consultation-section__privacy,
.contacts-section__privacy {
    margin-top: 8px;
    font-weight: 400;
    font-size: 14px;
    text-align: center;
    color: var(--gray-txt);
}

.consultation-section__privacy a,
.contacts-section__privacy a {
    color: var(--unilikon-green);
    text-decoration: none;
}

.site-footer {
    border-radius: 0;
    padding: 64px 0 28px;
    background: #101010;
    color: #ffffff;
}


.site-footer__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 60px;
    margin: 0 0 40px;
}

.site-footer__brand {
    margin: 0;
    line-height: 1.2;
}

.site-footer__logo {
    display: inline-flex;
    align-items: center;
    margin-bottom: 24px;
    color: #ffffff;
    font-size: 34px;
    font-weight: 800;
    text-decoration: none;
    /* width: 292px; */
}

.site-footer__logo img {
    display: block;
    width: 292px;
    height: auto;
    object-fit: contain;
}

.site-footer__text {
    line-height: 1.35;
    font-weight: 400;
    font-size: 14px;
    color: var(--gray-txt);
}

.site-footer__contacts {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    margin: 0;
}

.site-footer__location {
    display: inline-flex;
    align-items: center;
    gap: 19px;
    line-height: 1.25;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    color: var(--gray-txt);
}

.site-footer__location-icon,
.site-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.site-footer__location-icon img,
.site-footer__social-link img {
    display: block;
    object-fit: contain;
}

.site-footer__location-icon img {
}

.site-footer__socials {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.site-footer__social-link {
}

.site-footer__address {
    color: rgba(255, 255, 255, 0.72);
}

.site-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding-top: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.site-footer__copyright {
    font-weight: 400;
    font-size: 14px;
    color: var(--light-gray);
}

.site-footer__legal {
    display: flex;
    align-items: center;
    gap: 24px;
}

.site-footer__legal a {
    text-underline-offset: 3px;
    font-weight: 400;
    font-size: 14px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--light-gray);
}

.hot-offers__grid {
    position: relative;
}

.hot-offers__grid.slick-initialized {
    display: block;
    --slider-visible-width: calc(min(1324px, calc(100vw - 100px)) - 124px);
}

.hot-offers__grid.slick-initialized .slick-list {
    margin: 0 62px;
    overflow: hidden;
}

.hot-offers__grid.slick-initialized .slick-track {
    display: flex;
}

.hot-offers__grid.slick-initialized .slick-slide {
    height: auto;
    width: calc(var(--slider-visible-width) / 3.8 - 14px);
    margin: 0 7px;
}

.hot-offers__grid.slick-initialized .hot-offers__card {
    display: flex;
    flex-direction: column;
}

.hot-offers__slider-prev,
.hot-offers__slider-next {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: #111111;
    color: transparent;
    font-size: 0;
    cursor: pointer;
    transform: translateY(-50%);
}

.hot-offers__slider-prev {
    left: 0;
}

.hot-offers__slider-next {
    right: 0;
}

.hot-offers__slider-prev::before,
.hot-offers__slider-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 9px;
    height: 9px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

.hot-offers__slider-prev::before {
    transform: translate(-35%, -50%) rotate(-135deg);
}

.hot-offers__slider-next::before {
    transform: translate(-65%, -50%) rotate(45deg);
}

.reviews-section__items {
    position: relative;
}

.reviews-section__items.slick-initialized {
    display: block;
    --slider-visible-width: calc(min(1324px, calc(100vw - 100px)) - 124px);
}

.reviews-section__items.slick-initialized .slick-list {
    margin: 0 62px;
    overflow: hidden;
}

.reviews-section__items.slick-initialized .slick-track {
    display: flex;
}

.reviews-section__items.slick-initialized .slick-slide {
    height: auto;
    width: calc(var(--slider-visible-width) / 3.8 - 14px);
    margin: 0 7px;
}

/* .reviews-section__items.slick-initialized .reviews-section__item {
    height: 100%;
} */
section.consultation-section {
    background: var(--white);
}

.reviews-section__slider-prev,
.reviews-section__slider-next {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: #111111;
    color: transparent;
    font-size: 0;
    cursor: pointer;
    transform: translateY(-50%);
}

.reviews-section__slider-prev {
    left: 0;
}

.reviews-section__slider-next {
    right: 0;
}

.reviews-section__slider-prev::before,
.reviews-section__slider-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 9px;
    height: 9px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

.reviews-section__slider-prev::before {
    transform: translate(-35%, -50%) rotate(-135deg);
}

.reviews-section__slider-next::before {
    transform: translate(-65%, -50%) rotate(45deg);
}

/* Inner page templates: Services, Developers, Contacts. */
.page-template-flexible {
    background: #ffffff;
}

.page-template-flexible .inner-hero {
    position: relative;
    padding: 113px 0 80px;
    background-position: center;
    background-size: cover;
    color: #ffffff;
    box-sizing: border-box;
}
button.inner-hero__btn {
    width: 336px;
}
main.site-main.page-template-flexible.page-template-services .inner-hero__text {
    max-width: 670px;
}
button.service-cards-section__item-btn:hover {
    background: var(--green);
    color: #fff;
}
/* .page-template-flexible .inner-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(10, 20, 28, 0.62);
} */

.page-template-flexible .inner-hero__overlay {
    display: none;
}

.page-template-flexible .inner-hero .container {
    position: relative;
    z-index: 2;
}

.page-template-flexible .inner-hero__content {
    max-width: 760px;
}

.page-template-flexible .inner-hero__title {
    margin: 0 0 24px;
    line-height: 1.12;
    font-weight: 600;
    font-size: 60px;
    color: var(--white);
}

.page-template-flexible .inner-hero__text {
    max-width: 780px;
    line-height: 1.28;
    font-weight: 400;
    font-size: 24px;
    color: var(--white);
}

.page-template-flexible .inner-hero__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
    border: 0;
    background: #27ae60;
    text-decoration: none;
    cursor: pointer;
    border-radius: 16px;
    padding: 24px 32px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--white);
}

.page-template-services .services-section {
    padding: 72px 0 96px;
    background: #ffffff;
}

.page-template-services .services-section__title,
.page-template-services .services-section__text {
    display: none;
}

.page-template-services .services-section__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.page-template-services .services-section__item {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 308px;
    padding: 34px 30px 28px;
    border-radius: 16px;
    background: #f0f2f3;
    box-sizing: border-box;
}

.page-template-services .services-section__item-title {
    max-width: calc(100% - 120px);
    margin: 0 0 26px;
    color: #232323;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 800;
}

.page-template-services .services-section__item-badge {
    position: absolute;
    top: 28px;
    right: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 7px;
    background: #27ae60;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.page-template-services .services-section__item-text {
    margin: 0 0 24px;
    color: #9ca3ad;
    font-size: 17px;
    line-height: 1.35;
}

.page-template-services .services-section__item-list {
    display: grid;
    gap: 13px;
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}

.page-template-services .services-section__item-list li {
    position: relative;
    padding-left: 28px;
    color: #2b2b2b;
    font-size: 16px;
    line-height: 1.25;
}

.page-template-services .services-section__item-list li::before {
    content: "âœ“";
    position: absolute;
    left: 0;
    top: -1px;
    color: #27ae60;
    font-weight: 800;
}

.page-template-services .services-section__item-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 58px;
    margin-top: auto;
    border: 1px solid #27ae60;
    border-radius: 10px;
    background: transparent;
    color: #27ae60;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.page-template-services .services-section__cta,
.page-template-developers .developers-section__cta {
    position: relative;
    min-height: 232px;
    margin-top: 92px;
    padding: 50px 40px;
    overflow: hidden;
    border-radius: 18px;
    background-color: #0f2230;
    background-position: center;
    background-size: cover;
    box-sizing: border-box;
}

/* .page-template-services .services-section__cta::before,
.page-template-developers .developers-section__cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 16, 28, 0.68);
} */

.page-template-services .services-section__cta-content,
.page-template-developers .developers-section__cta-content {
    position: relative;
    z-index: 2;
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
}

.page-template-services .services-section__cta-title,
.page-template-developers .developers-section__cta-title {
    margin-bottom: 18px;
    color: #27ae60;
    font-size: 34px;
    line-height: 1.15;
    font-weight: 800;
}

.page-template-services .services-section__cta-text,
.page-template-developers .developers-section__cta-text {
    margin-bottom: 30px;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.35;
}

.page-template-services .services-section__cta-btn,
.page-template-developers .developers-section__cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 224px;
    min-height: 58px;
    border: 0;
    border-radius: 8px;
    background: #27ae60;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.page-template-developers .inner-hero {
}

.page-template-developers .inner-hero__stats {
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: 24px;
    margin-top: 40px;
}

.page-template-developers .inner-hero__stat {
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 24px;
    padding: 24px;
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.1);
}

.page-template-developers .inner-hero__stat-number {
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 40px;
    color: var(--green);
    max-width: max-content;
}

.page-template-developers .inner-hero__stat-label {
    font-weight: 400;
    font-size: 16px;
    color: var(--white);
    max-width: max-content;
}

.page-template-developers .developers-section {
    padding: 80px 0 80px;
    background: #ffffff;
}

.page-template-developers .developers-section__header {
    display: none;
}

.page-template-developers .developers-section__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.page-template-developers .developers-section__card {
    background: var(--gray);
    border-radius: 24px;
    padding: 12px;
}

.page-template-developers .developers-section__card-logo {
    height: 160px;
    margin-bottom: 24px;
    border-radius: 16px;
    overflow: hidden;
}

.page-template-developers .developers-section__card-name {
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 20px;
    color: var(--dark-green);
}

.page-template-developers .developers-section__card-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.page-template-developers .developers-section__card-stat,
.page-template-developers .developers-section__card-projects {
    text-align: center;
    border-radius: 12px;
    padding: 8px 16px;
    background: var(--white);
}

.page-template-developers .developers-section__card-stat-num,
.page-template-developers .developers-section__card-projects {
    font-weight: 600;
    font-size: 32px;
    text-align: center;
    color: var(--dark-green);
    margin: 0;
}

.page-template-developers .developers-section__card-stat-label {
    display: block;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    color: var(--gray-txt);
}

.page-template-developers .developers-section__card-desc {
    margin-bottom: 16px;
    font-weight: 400;
    font-size: 14px;
    color: var(--black);
}

.page-template-developers .developers-section__card-advantages {
    display: grid;
    gap: 12px;
    margin-bottom: 24px;
}

.page-template-developers .developers-section__card-advantage {
    display: flex;
    align-items: center;
    gap: 8px;
    \: 14px;
    line-height: 1.35;
    font-weight: 400;
    font-size: 16px;
    color: var(--black);
}

.page-template-developers .developers-section__card-advantage-icon {
    position: relative;
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin-top: 2px;
}

.page-template-developers .developers-section__card-advantage-icon::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 2px;
    width: 10px;
    height: 6px;
    border-left: 1.5px solid #27ae60;
    border-bottom: 1.5px solid #27ae60;
    transform: rotate(-45deg);
}

.page-template-developers .developers-section__card-advantage-icon img {
    width: 16px;
    height: 16px;
    object-fit: contain;
}

.page-template-developers .developers-section__card-advantage-icon:has(img)::before {
    content: none;
}

.page-template-developers .developers-section__card-badges {
    display: grid;
    gap: 10px;
    margin-bottom: 18px;
}

.page-template-developers .developers-section__card-badge {
    position: relative;
    padding-left: 22px;
    color: #2b2b2b;
    font-size: 14px;
}

.page-template-developers .developers-section__card-badge::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 10px;
    height: 6px;
    border-left: 1.5px solid #27ae60;
    border-bottom: 1.5px solid #27ae60;
    transform: rotate(-45deg);
}

.page-template-developers .developers-section__card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: auto;
    text-decoration: none;
    border: 1px solid var(--green);
    border-radius: 16px;
    padding: 24px 32px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: var(--green);
}

.page-template-contacts {
    background: #f5f6f7;
}

.page-template-contacts .advantages-section {
    padding: 70px 0;
    background: #f5f6f7;
}

.page-template-contacts .advantages-section__title,
.page-template-contacts .advantages-section__text {
    display: none;
}

.page-template-contacts .advantages-section__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.page-template-contacts .advantages-section__item {
    min-height: 210px;
    padding: 30px;
    border-radius: 16px;
    background: #ffffff;
}

.page-template-contacts .advantages-section__item-icon {
    width: 72px;
    height: 72px;
    margin-bottom: 28px;
    border-radius: 12px;
    background: #27ae60;
}

.page-template-contacts .advantages-section__item-icon img {
    filter: brightness(0) invert(1);
}

.page-template-contacts .advantages-section__item-title {
    margin-bottom: 16px;
    font-size: 18px;
}

.page-template-contacts .advantages-section__item-text {
    color: #27ae60;
    font-size: 22px;
    font-weight: 800;
}

.page-template-contacts .contacts-section {
    padding: 80px 0;
    background: #ffffff;
}

.contacts-info-section {
    padding: 80px 0px;
    background: var(--light-gray);
}

.contacts-info-section__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.contacts-info-section__card {
    box-sizing: border-box;
    border-radius: 24px;
    padding: 32px;
    background: var(--white);
}

.contacts-info-section__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    margin-bottom: 24px;
}

.contacts-info-section__icon img {
    object-fit: contain;
}

.contacts-info-section__label {
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 18px;
    color: var(--black);
}

.contacts-info-section__value {
    display: block;
    line-height: 1.25;
    text-decoration: none;
    font-weight: 600;
    font-size: 24px;
    color: var(--green);
}

.contacts-info-section__hint {
    margin-top: 16px;
    line-height: 1.3;
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}

.page-template-contacts .contacts-section__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    background: transparent;
}

.page-template-contacts .contacts-section__left,
.page-template-contacts .contacts-section__right {
    box-sizing: border-box;
    border-radius: 32px;
    padding: 40px;
    background: var(--light-gray);
}

.page-template-contacts .contacts-section__title,
.page-template-contacts .contacts-section__right-title {
    margin: 0 0 40px;
    line-height: 1.15;
    font-weight: 600;
    font-size: 40px;
    color: var(--dark-green);
}

.page-template-contacts .contacts-section__input {
    border-radius: 12px;
    padding: 24px 32px;
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}

.page-template-contacts .contacts-section__textarea {
    min-height: 112px;
}

.page-template-contacts .contacts-section__messengers {
    display: flex;
    gap: 12px;
    margin: 40px 0;
}

.page-template-contacts .contacts-section__messenger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
}

.page-template-contacts .contacts-section__find-title {
    margin-bottom: 24px;
    font-weight: 600;
    font-size: 24px;
    color: var(--black);
}

.page-template-contacts .contacts-section__find-text,
.page-template-contacts .contacts-section__right-text {
    line-height: 1.45;
    font-weight: 400;
    font-size: 18px;
    color: var(--black);
}

.page-template-contacts .contacts-section__bottom {
    display: block;
}

.page-template-contacts .contacts-section__map {
    margin-top: 50px;
    overflow: hidden;
    height: 181px;
    border-radius: 24px;
}

.page-template-contacts .contacts-section__map img,
.page-template-contacts .contacts-section__map iframe {
    width: 100%;
    min-height: 150px;
    object-fit: cover;
}

.page-template-contacts .faq-section {
    padding: 80px 0;
    background: var(--light-gray);
}

.page-template-contacts .faq-section__title {
    font-weight: 600;
    font-size: 50px;
    text-align: center;
    color: var(--dark-green);
    margin-bottom: 24px;
}

.page-template-contacts .faq-section__text {
    margin-bottom: 40px;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    color: var(--black);
}

.page-template-contacts .faq-section__items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.page-template-contacts .faq-section__item {
    box-sizing: border-box;
    border-radius: 24px;
    padding: 32px;
    background: var(--white);
}

.page-template-contacts .faq-section__item-question {
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 24px;
    color: var(--black);
}

.page-template-contacts .faq-section__item-answer {
    line-height: 1.35;
    font-weight: 400;
    font-size: 16px;
    color: var(--gray-txt);
}


.site-footer p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
}

/* Hero Home Object Slider */
.hero-home__object-slider .slick-arrow {
    position: absolute;
    /* top: 50%; */
    /* transform: translateY(-50%); */
    z-index: 10;
    width: 24px;
    height: 24px;
    border: none;
    color: transparent;
    font-size: 0;
    cursor: pointer;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    bottom: 12px;
}
.hero-home__object-slider .slick-arrow img {
    display: block;
    height: 40px;
}
.hero-home__object-slider .slick-prev { left: 10px; }
.hero-home__object-slider .slick-prev img { transform: rotate(180deg); }
.hero-home__object-slider .slick-next { right: 10px; }
.hero-home__object-slider .slick-arrow:hover {
    background: rgba(0,0,0,0.5);
}

.site {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.site-main {
    flex: 1;
}

.site-breadcrumbs {
    margin: -24px 0 24px;
}

.site-breadcrumbs__nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    line-height: 1.3;
    font-weight: normal;
    font-size: 14px;
    color: #828282;
}

.site-breadcrumbs__nav a {
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    color: #828282;
}

.site-breadcrumbs__nav a:hover {
    text-decoration: underline;
}

.site-breadcrumbs__nav .breadcrumb_last {
    color: var(--chernyy);
}

.site-header,
.site-footer {
    padding: 24px 0;
}

.site-header {
    padding-top: 0;
}

.site-header__notice {
    padding: 6px 0;
    color: var(--belyy);
    background: linear-gradient(90deg, #43b5da 0%, #4c77ed 100%);
}

.site-header__notice-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.site-header__notice-message,
.site-header__notice-button,
.site-header__notice-close,
.site-header__badge,
.site-header__promo,
.site-header__social-link,
.site-header__phone,
.site-header__menu-toggle,
.site-header__meta-icon,
.site-header__notice-icon,
.site-header__phone-icon,
.site-header__menu-toggle-icon,
.site-header__promo-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.site-header__notice-message {
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.1;
}

.site-header__notice-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 12px;
    padding: 6px 12px;
    background: var(--belyy);
    font-weight: 500;
    font-size: 14px;
    color: #1d1e32;
    cursor: pointer;
}

.site-header__notice-close {
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    background: transparent;
    flex-shrink: 0;
    cursor: pointer;
}

.site-header__notice-close svg {
    display: block;
    width: 24px;
    height: 24px;
}

.site-header__notice-icon svg,
.site-header__meta-icon svg,
.site-header__social-link svg,
.site-header__phone-icon svg,
.site-header__menu-toggle-icon svg,
.site-header__promo-icon svg {
    width: 1em;
    height: 1em;
}

.site-header__icon-image {
    display: block;
    width: 100%;
    object-fit: contain;
}

.site-header__icon-image--mobile {
    display: none;
}

.site-header__head {
    display: flex;
    align-items: center;
    gap: 18px;
    justify-content: space-between;
    border-radius: 20px;
    padding: 6px;
    background: var(--svetlo-seryy);
    margin: 12px 0;
}

.site-header__meta-item {
    line-height: 1.25;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.site-header__meta-icon {
    color: rgba(0, 0, 0, 0.45);
    font-size: 13px;
    white-space: nowrap;
}

.site-header__meta-item--location {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    white-space: normal;
    min-width: 0;
}

.site-header__location-row {
    display: flex;
    align-items: center;
    gap: 6px;
}

.site-header__location-row--metro {
}

.site-header__location-metro {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 400;
}

.site-header__meta-item--hours {
    display: flex;
    flex-shrink: 0;
}

.site-header__hours {
    display: flex;
    flex-direction: column;
    gap: 6px;
    white-space: normal;
}

.site-header__hours-head {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.site-header__hours-label {
    color: var(--chernyy);
}

.site-header__hours-value {
    font-weight: 400;
    color: var(--chernyy);
}

.site-logo {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.site-logo img,
.site-logo__image {
    width: 100%;
    max-width: 134px;
}

.site-logo .custom-logo-link {
    display: inline-flex;
}

.site-logo__text {
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
}

.site-header__socials {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 14px;
    padding: 6px;
    background: var(--belyy);
}

.site-header__phones {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.site-header__social-link {
    width: 36px;
    height: 36px;
    transition: transform 0.2s ease, background 0.2s ease;
}

.site-header__social-link:hover,
.site-header__social-link:focus-visible {
    transform: translateY(-1px);

}

.site-header__phone {
    gap: 8px;
    border-radius: 14px;
    padding: 6px 24px;
    background: var(--belyy);
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
    height: 48px;
}

.site-header__phone-icon {width: 18px;height: 18px;}

.site-header__menu-toggle {
    display: none;
    position: relative;
    width: 64px;
    height: 64px;
    padding: 0;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.96);
    color: #cc2fd1;
}

.site-header__menu-toggle-icon {
    position: absolute;
    font-size: 34px;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.site-header__menu-toggle-icon--close {
    opacity: 0;
    transform: scale(0.7);
}

.site-header__nav-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    padding-bottom: 8px;
}

.site-header.is-nav-fixed {
    padding-bottom: calc(24px + var(--site-header-nav-height, 0px));
}

.site-header.is-nav-fixed .site-header__nav-wrap {
    position: fixed;
    top: 0;
    left: var(--site-header-nav-left, 10px);
    width: var(--site-header-nav-width, calc(100% - 20px));
    z-index: 30;
    padding: 8px 0;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    box-shadow: 0 6px 18px rgba(10, 74, 84, 0.04);
}

.site-header__badge {
    flex-shrink: 0;
    border-radius: 12px;
    padding: 12px;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    font-weight: 500;
    font-size: 15px;
    color: var(--belyy);
}

.site-navigation {
    min-width: 0;
    flex: 1;
}

.site-menu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-menu a {
    line-height: 1.2;
    transition: color 0.2s ease;
    font-weight: 500;
    font-size: 15px;
    color: var(--chernyy);
}

.site-menu__count {
    display: inline-block;
    line-height: 1;
    white-space: nowrap;
    font-weight: 500;
    font-size: 12px;
    color: var(--krasnyy);
}

.site-menu__count--promo {
    color: var(--belyy);
    border-radius: 500px;
    padding: 5px;
    width: 18px;
    height: 18px;
    background: var(--krasnyy);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    font-size: 12px;
    color: var(--belyy);
}

.site-menu a:hover,
.site-menu a:focus-visible {
    color: var(--krasnyy);
}

.site-menu .sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-header__promo {
    gap: 6px;
    flex-shrink: 0;
    white-space: nowrap;
    margin-left: auto;
    padding: 12px;
    font-weight: 500;
    font-size: 15px;
    color: var(--chernyy);
}
.site-menu li {
    border-radius: 12px;
    padding: 12px;
}
.site-header__promo-icon {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}

.site-header__promo-image {
    display: block;
    width: 12px;
    height: 12px;
    object-fit: contain;
}

.site-header__mobile-notice,
.site-header__mobile-contact-card,
.site-header__mobile-submenu {
    display: none;
}

.site-header__mobile-submenu[hidden] {
    display: none !important;
}




.site-footer {
    border-radius: 48px 48px 0 0;
    padding: 60px 0 0 0;
    background: var(--chernyy);
}

.site-footer__inner {
    color: #fff;
}

.site-footer__top {
    margin-bottom: 40px;
}

.site-footer__top-main {
    display: flex;
    align-items: flex-start;
    gap: 34px;
    flex-wrap: wrap;
    justify-content: space-between;
}

.site-footer__info-cards {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.site-footer__phones,
.site-footer__socials {
    display: flex;
    align-items: center;
    gap: 6px;
}

.site-footer__chip,
.site-footer__socials,
.site-footer__info-card {
    border-radius: 18px;
}

.site-footer__chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 24px;
    padding: 20px 24px;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
    background: var(--belyy);
}

.site-footer__socials {
    gap: 12px;
}

.site-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
}

.site-footer__email {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 400;
    font-size: 16px;
    color: var(--belyy);
}

.site-footer__info-card {
    line-height: 1.3;
    border-radius: 14px;
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.2);
    font-weight: 500;
    font-size: 16px;
    color: var(--belyy);
}

.site-footer__info-row {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}

.site-footer__info-row--metro {
    gap: 24px;
}

.site-footer__metro-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.site-footer__chip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.site-footer__icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-footer__hours-block {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.site-footer__hours-head {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.site-footer__hours-label {
}



.site-footer__contacts {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

.site-footer__links-wrap {
    width: 100%;
}

.site-footer__links {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 40px;
    width: 100%;
}

.site-footer__links-col {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.site-footer__links-col--right {
}

.site-footer__links a,
.site-footer__company {
    line-height: 1.35;
    text-underline-offset: 2px;
    font-weight: 500;
    font-size: 16px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--seryy);
}

.site-footer__company {
    max-width: max-content;
    text-decoration: none;
    line-height: 1.25;
    font-weight: 500;
    font-size: 16px;
    color: var(--belyy);
}

.site-footer__disclaimer {
    margin-top: 36px;
    line-height: 1.45;
    max-width: 100%;
    font-weight: 400;
    font-size: 12px;
    color: var(--seryy);
}

.site-footer__brand {
    line-height: 0;
}

.site-footer__brand-image {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
}

.page-section {
    position: relative;
    padding: 0 0 60px 0;
}

.page-section__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 14px;
    border: 1px solid rgba(18, 33, 51, 0.6);
    border-radius: 999px;
    color: #111;
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
}

.hero-screen {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.category-hero {
    display: flex;
    align-items: stretch;
    gap: 20px;
    min-height: 396px;
    padding: 28px 28px 0;
    border-radius: 30px;
    overflow: hidden;
    background: linear-gradient(90deg, #bfdcff 0%, #d8f5ef 100%);
}

.category-hero__content {
    display: flex;
    flex: 0 1 48%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 8px 0 46px;
}

.category-hero__title {
    margin: 0;
    max-width: 560px;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 34px;
    line-height: 1.08;
}

.category-hero__description {
    margin-top: 26px;
    max-width: 520px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.25;
}

.category-hero__button {
    margin-top: 34px;
}

.category-hero__media {
    display: flex;
    flex: 0 1 52%;
    align-items: flex-end;
    justify-content: center;
}

.category-hero__image {
    display: block;
    width: 100%;
    max-width: 430px;
    height: auto;
    object-fit: contain;
    object-position: center bottom;
}

.category-anchor-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.category-anchor-links__item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 16px;
    border-radius: 10px;
    background: #f0f0f0;
    color: #30353a;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    text-decoration: none;
}

.category-about-procedure {
    display: flex;
    align-items: stretch;
    gap: 18px;
    padding: 28px;
    border-radius: 30px;
    background: #f8f8f8;
}

.category-about-procedure__content {
    display: flex;
    flex: 1 1 58%;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.category-about-procedure__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 34px;
    line-height: 1.08;
}

.category-about-procedure__text {
    margin-top: 22px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
}

.category-about-procedure__text > :first-child {
    margin-top: 0;
}

.category-about-procedure__text > :last-child {
    margin-bottom: 0;
}

.category-about-procedure__media {
    display: flex;
    flex: 0 1 40%;
    min-width: 0;
}

.category-about-procedure__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 214px;
    border-radius: 24px;
    object-fit: cover;
}

.category-reasons-grid__title {
    margin: 0 0 20px;
    max-width: 780px;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 34px;
    line-height: 1.08;
}

.category-reasons-grid__items {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.category-reason-card {
    display: flex;
    align-items: stretch;
    flex: 0 0 calc(50% - 9px);
    min-width: 0;
    gap: 16px;
    padding: 14px;
    border-radius: 30px;
    background: linear-gradient(90deg, #d2faf0 0%, #bfdcff 100%);
}

.category-reason-card__media {
    flex: 0 0 48%;
    min-width: 0;
}

.category-reason-card__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 246px;
    border-radius: 24px;
    object-fit: cover;
}

.category-reason-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 10px 6px 10px 0;
}

.category-reason-card__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 24px;
    line-height: 1.08;
}

.category-reason-card__text {
    margin-top: 18px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.28;
}

.category-reason-card__text > :first-child {
    margin-top: 0;
}

.category-reason-card__text > :last-child {
    margin-bottom: 0;
}

.category-cases-and-contras {
    display: flex;
    gap: 18px;
}

.category-info-card {
    flex: 1 1 0;
    min-width: 0;
    padding: 28px 26px;
    border-radius: 30px;
    background: #f8f8f8;
}

.category-info-card__head {
    display: flex;
    align-items: center;
    gap: 16px;
}

.category-info-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 2px solid #1f2a31;
    border-radius: 50%;
}

.category-info-card__icon-image {
    display: block;
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.category-info-card__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.15;
}

.category-info-card__text {
    margin-top: 22px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
}

.category-info-card__text > :first-child {
    margin-top: 0;
}

.category-info-card__text > :last-child {
    margin-bottom: 0;
}

.category-recommendations {
    padding: 28px 28px 30px;
    border-radius: 30px;
    background: #f8f8f8;
}

.category-recommendations__badge,
.category-steps__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 6px 12px;
    border: 1px solid rgba(18, 33, 51, 0.7);
    border-radius: 999px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
}

.category-recommendations__body {
    display: flex;
    align-items: center;
    gap: 26px;
    margin-top: 24px;
}

.category-recommendations__content {
    flex: 1 1 58%;
    min-width: 0;
}

.category-recommendations__title,
.category-steps__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 34px;
    line-height: 1.08;
}

.category-recommendations__text {
    margin-top: 24px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.28;
}

.category-recommendations__text > :first-child {
    margin-top: 0;
}

.category-recommendations__text > :last-child {
    margin-bottom: 0;
}

.category-recommendations__media {
    display: flex;
    flex: 0 1 40%;
    min-width: 0;
}

.category-recommendations__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 230px;
    border-radius: 22px;
    object-fit: cover;
}

.category-steps {
    padding: 28px 28px 30px;
    border-radius: 34px;
    background: linear-gradient(90deg, #bfdcff 0%, #d8f5ef 100%);
}

.category-steps__title {
    margin-top: 22px;
}

.category-steps__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

.category-step-card {
    display: flex;
    flex: 0 0 calc(50% - 7px);
    flex-direction: column;
    min-width: 0;
    min-height: 212px;
    padding: 16px 16px 14px;
    border-radius: 16px;
    background: var(--belyy);
}

.category-step-card:last-child:nth-child(odd) {
    flex-basis: 100%;
    min-height: 0;
}

.category-step-card__head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.category-step-card__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border-radius: 8px;
    background: #b8fd8f;
    color: #16361a;
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
}

.category-step-card__title {
    margin: 0;
    color: #1f2a31;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.15;
}

.category-step-card__text {
    margin-top: 14px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 13px;
    line-height: 1.28;
}

.category-step-card__text > :first-child {
    margin-top: 0;
}

.category-step-card__text > :last-child {
    margin-bottom: 0;
}

.category-step-card__result {
    margin-top: auto;
    padding: 12px 14px;
    border-radius: 10px;
    background: #f3f3f3;
    color: #1f2a31;
    font-weight: 500;
    font-size: 13px;
    line-height: 1.22;
}

.category-step-card__result > :first-child {
    margin-top: 0;
}

.category-step-card__result > :last-child {
    margin-bottom: 0;
}

.category-steps__button {
    margin-top: 20px;
}

.subcategory-intro-text {
    padding: 24px 28px;
    border-radius: 30px;
    background: #f8f8f8;
    color: #1f2a31;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.3;
}

.subcategory-intro-text > :first-child,
.subcategory-feature-card__text > :first-child,
.subcategory-implant-types__text > :first-child,
.subcategory-implant-type-card__text > :first-child,
.subcategory-classification-card__text > :first-child,
.subcategory-text-card__text > :first-child,
.subcategory-classification-card__content > :first-child {
    margin-top: 0;
}

.subcategory-intro-text > :last-child,
.subcategory-feature-card__text > :last-child,
.subcategory-implant-types__text > :last-child,
.subcategory-implant-type-card__text > :last-child,
.subcategory-classification-card__text > :last-child,
.subcategory-text-card__text > :last-child,
.subcategory-classification-card__content > :last-child {
    margin-bottom: 0;
}

.subcategory-feature-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.subcategory-feature-card {
    flex: 1 1 calc(33.333% - 12px);
    min-width: 0;
    min-height: 146px;
    padding: 20px 22px;
    border-radius: 28px;
    background: #d9d9d9;
}

.subcategory-feature-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.subcategory-feature-card__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.08;
}

.subcategory-feature-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    border: 2px solid rgba(255, 255, 255, 0.95);
    border-radius: 50%;
}

.subcategory-feature-card__icon::before {
    content: "";
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 12.5L10.5 16L17.5 8.5' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.subcategory-feature-card__text {
    margin-top: 18px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.28;
}

.subcategory-implant-types,
.subcategory-classification,
.subcategory-text-cards {
    padding: 28px;
    border-radius: 30px;
    background: #f8f8f8;
}

.subcategory-implant-types__title,
.subcategory-classification__title,
.subcategory-text-cards__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 34px;
    line-height: 1.08;
}

.subcategory-implant-types__text {
    margin-top: 16px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
}

.subcategory-implant-types__items,
.subcategory-classification__items,
.subcategory-text-cards__items {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

.subcategory-implant-type-card {
    flex: 0 0 calc(50% - 7px);
    min-width: 0;
    padding: 18px 20px;
    border-radius: 22px;
    background: var(--belyy);
}

.subcategory-implant-type-card.is-wide,
.subcategory-classification-card.is-wide {
    flex-basis: 100%;
}

.subcategory-implant-type-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.subcategory-implant-type-card__title {
    margin: 0;
    color: #eb2f72;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.15;
}

.subcategory-implant-type-card__title-link {
    color: inherit;
    text-decoration: none;
}

.subcategory-implant-type-card__title-link:hover .subcategory-implant-type-card__title {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.subcategory-implant-type-card__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    border-radius: 50%;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
}

.subcategory-implant-type-card__arrow::before {
    content: "";
    width: 10px;
    height: 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 8L8 2M8 2H3.8M8 2V6.2' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.subcategory-implant-type-card__text {
    margin-top: 14px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.3;
}

.subcategory-classification__title,
.subcategory-text-cards__title {
    margin-top: 16px;
}

.subcategory-classification-card,
.subcategory-text-card {
    flex: 0 0 calc(50% - 7px);
    min-width: 0;
    padding: 18px;
    border-radius: 22px;
    background: var(--belyy);
}

.subcategory-classification-card__title,
.subcategory-text-card__title {
    margin: 0;
    color: #1f2a31;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.12;
}

.subcategory-classification-card__media {
    margin-top: 14px;
}

.subcategory-classification-card__image {
    display: block;
    width: 100%;
    height: 220px;
    border-radius: 18px;
    object-fit: cover;
}

.subcategory-classification-card__text,
.subcategory-text-card__text {
    margin-top: 16px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.3;
}

.subcategory-classification-card__text ol,
.subcategory-classification-card__text ul,
.subcategory-text-card__text ol,
.subcategory-text-card__text ul {
    padding-left: 20px;
}

.subcategory-classification-card.is-alt-layout {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 18px 24px;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__title {
    flex: 0 0 100%;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__main {
    flex: 0 0 min(48%, 390px);
    width: min(48%, 390px);
    min-width: 0;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__media {
    margin-top: 0;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__content {
    flex: 1 1 280px;
    min-width: 0;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__main .subcategory-classification-card__text {
    margin-top: 14px;
}

.subcategory-classification-card.is-alt-layout .subcategory-classification-card__text {
    margin-top: 0;
}

.subcategory-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.subcategory-tags__item {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 56px;
    padding: 12px 18px;
    border-radius: 18px;
    background: #f5f5f5;
    color: #111;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.subcategory-tags__item:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.subcategory-tags__item.is-dark {
    background: #000;
    color: #fff;
}

.subcategory-tags__item-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.1;
}

.subcategory-tags__item-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.subcategory-tags__item-arrow::before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.33337 12.6663L12.6667 3.33301M12.6667 3.33301H6.13337M12.6667 3.33301V9.86634' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.service-hero {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 32px;
    overflow: hidden;
    border-radius: 42px;
    padding: 36px 36px 0;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.service-hero__content {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 36px;
}

.service-hero__title {
    margin: 0;
    max-width: 620px;
    line-height: 1.06;
    font-weight: 600;
    font-size: 56px;
    color: var(--temno-zelenyy);
}

.service-hero__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 28px;
}

.service-hero__list-item {
    position: relative;
    padding-left: 34px;
    line-height: 1.3;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.service-hero__list-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_681_30975' style='mask-type:luminance' maskUnits='userSpaceOnUse' x='1' y='1' width='22' height='22'%3E%3Cpath d='M11.9998 2L14.6263 3.916L17.8778 3.91L18.8763 7.004L21.5103 8.91L20.4998 12L21.5103 15.09L18.8763 16.996L17.8778 20.09L14.6263 20.084L11.9998 22L9.37326 20.084L6.12176 20.09L5.12326 16.996L2.48926 15.09L3.49976 12L2.48926 8.91L5.12326 7.004L6.12176 3.91L9.37326 3.916L11.9998 2Z' fill='white' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.5 12L11 14.5L16 9.5' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_681_30975)'%3E%3Cpath d='M0 0H24V24H0V0Z' fill='white'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.service-hero__button {
    margin-top: 28px;
}

.service-hero__media {
    display: flex;
    align-items: flex-end;
    flex: 0 0 340px;
    max-width: 340px;
}

.service-hero__image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.service-operations,
.service-process,
.service-features-mosaic,
.service-info-cards,
.service-standards-slider,
.service-quality-control {
    border-radius: 40px;
    padding: 28px;
}

.service-operations,
.service-info-cards,
.service-quality-control {
    background: #f7f7f7;
}

.service-process,
.service-standards-slider {
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.service-features-mosaic {
    background: #f7f7f7;
}

.service-operations {
    display: flex;
    gap: 28px;
}

.service-operations__intro {
    display: flex;
    flex: 0 0 420px;
    min-width: 0;
    flex-direction: column;
}

.service-operations__title,
.service-process__title,
.service-features-mosaic__title,
.service-info-cards__title,
.service-standards-slider__title,
.service-quality-control__title {
    margin: 16px 0 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 40px;
    color: var(--temno-zelenyy);
}

.service-operations__text,
.service-process__text,
.service-features-mosaic__text,
.service-info-cards__text,
.service-quality-control__text {
    margin-top: 24px;
    line-height: 1.28;
    font-size: 16px;
    color: var(--chernyy);
}

.service-operations__items {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.service-operation {
    overflow: hidden;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.06);
}

.service-operation__toggle,
.service-info-cards__toggle {
    position: relative;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border: 0;
    border-radius: 50%;
    background: #dbf7f4;
    cursor: pointer;
}

.service-info-cards__toggle::before,
.service-info-cards__toggle::after {
    content: "";
    position: absolute;
    top: 25px;
    left: 18px;
    width: 16px;
    height: 2px;
    border-radius: 999px;
    background: var(--chernyy);
    transition: transform 0.2s ease;
}

.service-info-cards__toggle::after {
    transform: rotate(90deg);
}

.service-info-cards.is-open .service-info-cards__toggle::after {
    transform: rotate(0deg);
}

.service-operation__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    min-height: 86px;
    padding: 18px 22px;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.service-operation__toggle-title {
    line-height: 1.1;
    font-weight: 600;
    font-size: 22px;
    color: var(--temno-zelenyy);
}

.service-operation__toggle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='url(%23paint0_linear_681_31173)'/%3E%3Cpath d='M7 10L12 15L17 10' stroke='black' stroke-linecap='round'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_681_31173' x1='16.6526' y1='4.37241e-06' x2='2.39484' y2='3.43335' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23C9E1FD'/%3E%3Cstop offset='1' stop-color='%23CEF0ED'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.2s ease;
}

.service-operation:not(.is-open) .service-operation__toggle-icon {
    transform: rotate(180deg);
}

.service-operation__panel,
.service-info-cards__panel {
    display: none;
}

.service-operation.is-open .service-operation__panel,
.service-info-cards.is-open .service-info-cards__panel {
    display: block;
}

.service-operation__text {
    padding: 0 22px 22px;
    line-height: 1.28;
    font-size: 16px;
}

.service-process__body {
    display: flex;
    gap: 24px;
    margin-top: 26px;
}

.service-process__side {
    flex: 0 0 220px;
}

.service-process__side-label {
    line-height: 1.1;
    font-weight: 600;
    font-size: 26px;
    color: var(--temno-zelenyy);
}

.service-process__side-text {
    margin-top: 16px;
    line-height: 1.28;
    font-size: 16px;
}

.service-process__items {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    gap: 14px;
}

.service-process-card {
    border-radius: 24px;
    background: #fff;
    padding: 18px 20px;
}

.service-process-card__header {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.service-process-card__number,
.service-standards-slide__number,
.service-quality-control__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 30px;
    border-radius: 10px;
    background: #b8f76c;
    line-height: 1;
    font-weight: 700;
    font-size: 16px;
    color: var(--temno-zelenyy);
}

.service-process-card__title,
.service-features-mosaic__card-title,
.service-info-cards__item-title,
.service-standards-slide__title,
.service-quality-control__card-title {
    margin: 0;
    line-height: 1.14;
    font-weight: 600;
    font-size: 19px;
    color: var(--temno-zelenyy);
}

.service-process-card__text,
.service-features-mosaic__card-text,
.service-info-cards__item-text,
.service-standards-slide__text,
.service-quality-control__card-text {
    margin-top: 12px;
    line-height: 1.28;
    font-size: 15px;
    color: var(--chernyy);
}

.service-process-card__result,
.service-info-cards__accent,
.service-quality-control__accent {
    margin-top: 14px;
    border-radius: 14px;
    background: #f3f3f3;
    padding: 12px 14px;
    line-height: 1.25;
    font-size: 15px;
}

.service-process__footer {
    margin-top: 24px;
}

.service-features-mosaic__grid {
    display: flex;
    gap: 16px;
    margin-top: 24px;
}

.service-features-mosaic__grid--top .service-features-mosaic__card,
.service-features-mosaic__grid--bottom .service-features-mosaic__card {
    flex: 1 1 0;
}

.service-features-mosaic__card {
    border-radius: 24px;
    background: #fff;
    padding: 20px;
}

.service-features-mosaic__media {
    margin-top: 16px;
}

.service-features-mosaic__image {
    display: block;
    width: 100%;
    border-radius: 26px;
    object-fit: cover;
}

.service-info-cards__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.service-info-cards__panel {
    padding-top: 16px;
}

.service-info-cards__items {
    display: flex;
    gap: 16px;
    margin-top: 22px;
}

.service-info-cards__item {
    flex: 1 1 0;
    border-radius: 22px;
    background: #fff;
    padding: 18px;
}

.service-standards-slider__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
}

.service-standards-slider__nav {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 500px;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
}

.service-standards-slider__counter {
    min-width: 34px;
    text-align: center;
    line-height: 1;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.service-standards-slider__arrow {
    position: relative;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border: 0;
    border-radius: 50%;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    cursor: pointer;
}

.service-standards-slider__arrow::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
}

.service-standards-slider__arrow--prev::before {
    transform: rotate(180deg);
}

.service-standards-slider__arrow:disabled {
    opacity: 0.35;
    cursor: default;
}

.service-standards-slider__viewport {
    overflow: auto hidden;
    margin-top: 28px;
    scrollbar-width: none;
}

.service-standards-slider__viewport::-webkit-scrollbar {
    display: none;
}

.service-standards-slider__track {
    display: flex;
    gap: 18px;
}

.service-standards-slide {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex: 0 0 100%;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 30px;
    padding: 28px 18px 18px;
}

.service-standards-slide__content {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
}

.service-standards-slide__media {
    flex: 0 0 42%;
}

.service-standards-slide__image {
    display: block;
    width: 100%;
    border-radius: 24px;
    object-fit: cover;
}

.service-standards-slider__progress {
    width: 100%;
    height: 2px;
    margin-top: 16px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.18);
}

.service-standards-slider__progress-bar {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: #111;
}

.service-quality-control__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
}

.service-quality-control__card {
    flex: 1 1 calc(50% - 8px);
    min-width: 0;
    border-radius: 24px;
    background: #f7f7f7;
    padding: 20px;
}

.service-quality-control__card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.service-quality-control__icon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
}

.service-quality-control__icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.company-team-story,
.company-advantages,
.company-care-grid {
    border-radius: 40px;
    background: #f7f7f7;
    padding: 28px;
}

.company-smart-prices,
.company-philosophy,
.company-quality-hero {
    border-radius: 40px;
    padding: 28px;
}

.company-smart-prices,
.company-philosophy,
.company-quality-hero {
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.company-team-story__body,
.company-smart-prices__body,
.company-quality-hero {
    display: flex;
    gap: 28px;
}

.company-team-story__badge,
.company-smart-prices__badge,
.company-care-grid__badge {
    margin-bottom: 24px;
}

.company-team-story__gallery {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    flex: 0 0 260px;
}

.company-team-story__gallery-item {
    overflow: hidden;
    min-height: 120px;
    border-radius: 34px;
    background: #e9eef4;
}

.company-team-story__gallery-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.company-team-story__content {
    flex: 1 1 0;
    min-width: 0;
}

.company-team-story__title,
.company-smart-prices__title,
.company-advantages__title,
.company-care-grid__title,
.company-philosophy__title,
.company-quality-hero__title {
    margin: 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 40px;
    color: var(--temno-zelenyy);
}

.company-team-story__lead,
.company-smart-prices__text,
.company-advantages__text,
.company-philosophy__text,
.company-quality-hero__text {
    margin-top: 22px;
    line-height: 1.28;
    font-size: 16px;
    color: var(--chernyy);
}

.company-team-story__items {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-top: 22px;
}

.company-team-story__item-title,
.company-smart-prices__item-title,
.company-advantages__card-title,
.company-care-grid__item-title,
.company-philosophy__item-title {
    margin: 0;
    line-height: 1.12;
    font-weight: 600;
    font-size: 19px;
    color: var(--temno-zelenyy);
}

.company-team-story__item-text,
.company-smart-prices__item-text,
.company-advantages__card-text,
.company-care-grid__item-text,
.company-philosophy__item-text,
.company-icon-strip__item-text {
    margin-top: 12px;
    line-height: 1.28;
    font-size: 15px;
    color: var(--chernyy);
}

.company-smart-prices__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.company-smart-prices__toggle {
    position: relative;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border: 0;
    border-radius: 50%;
    background: #dbf7f4;
    cursor: pointer;
}

.company-smart-prices__toggle::before,
.company-smart-prices__toggle::after {
    content: "";
    position: absolute;
    top: 25px;
    left: 18px;
    width: 16px;
    height: 2px;
    border-radius: 999px;
    background: var(--chernyy);
    transition: transform 0.2s ease;
}

.company-smart-prices__toggle::after {
    transform: rotate(90deg);
}

.company-smart-prices.is-open .company-smart-prices__toggle::after {
    transform: rotate(0deg);
}

.company-smart-prices__panel {
    display: none;
    padding-top: 16px;
}

.company-smart-prices.is-open .company-smart-prices__panel {
    display: block;
}

.company-smart-prices__content {
    display: flex;
    flex: 0 0 360px;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.company-smart-prices__button {
    margin-top: 28px;
}

.company-smart-prices__items {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.company-smart-prices__item,
.company-care-grid__item,
.company-philosophy__item {
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.06);
}

.company-smart-prices__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 22px;
}

.company-smart-prices__item-main {
    flex: 1 1 0;
    min-width: 0;
}

.company-smart-prices__item-icon,
.company-care-grid__item-icon,
.company-icon-strip__item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #eef5ff;
}

.company-smart-prices__item-icon-image,
.company-care-grid__item-icon-image,
.company-icon-strip__item-icon-image {
    display: block;
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.company-advantages__text {
    max-width: 980px;
}

.company-advantages__grid,
.company-care-grid__items,
.company-philosophy__items {
    display: grid;
    gap: 16px;
    margin-top: 24px;
}

.company-advantages__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.company-care-grid__items,
.company-philosophy__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.company-advantages__card {
    border-radius: 24px;
    background: #f7f7f7;
    padding: 18px 18px 16px;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.03);
}

.company-advantages__card-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.company-advantages__card-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 30px;
    border-radius: 10px;
    background: #b8f76c;
    line-height: 1;
    font-weight: 700;
    font-size: 16px;
    color: var(--temno-zelenyy);
}

.company-advantages__card-text {
    margin-top: 16px;
    border-radius: 14px;
    background: #fff;
    padding: 12px 14px;
}

.company-advantages__footer,
.company-care-grid__footer {
    margin-top: 24px;
}

.company-care-grid__item {
    padding: 18px;
}

.company-care-grid__item-title {
    margin-top: 18px;
}

.company-philosophy__intro {
    display: grid;
    grid-template-columns: minmax(0, 260px) minmax(0, 1fr);
    gap: 28px;
}

.company-philosophy__item {
    padding: 20px;
}

.company-icon-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    padding: 0 32px;
}

.company-icon-strip__item {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.company-icon-strip__item-text {
    margin-top: 0;
    font-size: 17px;
    color: var(--temno-zelenyy);
}

.company-quality-hero {
    overflow: hidden;
    align-items: stretch;
}

.company-quality-hero__content {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 16px 0;
}

.company-quality-hero__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 24px;
}

.company-quality-hero__list-item {
    position: relative;
    padding-left: 30px;
    line-height: 1.3;
    font-weight: 500;
    font-size: 18px;
}

.company-quality-hero__list-item::before {
    content: "";
    position: absolute;
    top: 1px;
    left: 0;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_681_30975' style='mask-type:luminance' maskUnits='userSpaceOnUse' x='1' y='1' width='22' height='22'%3E%3Cpath d='M11.9998 2L14.6263 3.916L17.8778 3.91L18.8763 7.004L21.5103 8.91L20.4998 12L21.5103 15.09L18.8763 16.996L17.8778 20.09L14.6263 20.084L11.9998 22L9.37326 20.084L6.12176 20.09L5.12326 16.996L2.48926 15.09L3.49976 12L2.48926 8.91L5.12326 7.004L6.12176 3.91L9.37326 3.916L11.9998 2Z' fill='white' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.5 12L11 14.5L16 9.5' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_681_30975)'%3E%3Cpath d='M0 0H24V24H0V0Z' fill='white'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.company-quality-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.company-quality-hero__button--secondary {
    background: rgba(255, 255, 255, 0.3);
}

.company-quality-hero__button--secondary.btn,
.company-quality-hero__button--secondary.btn:hover {
    color: #b725e2;
    box-shadow: inset 0 0 0 1px #b725e2;
}

.company-quality-hero__media {
    display: flex;
    align-items: flex-end;
    flex: 0 0 360px;
    max-width: 360px;
}

.company-quality-hero__image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.price-row__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #e3255c;
    line-height: 1;
    font-weight: 600;
    font-size: 13px;
    color: #fff;
    white-space: nowrap;
}

.page-section--price-service .price-row__service-side {
    gap: 14px;
}

.page-section--price-service .price-row__service-description {
    color: var(--temno-zelenyy);
    font-weight: 600;
}

.hero-screen--empty {
    min-height: 240px;
}

.hero-screen__main {
    overflow: hidden;
    border-radius: 48px;
    padding: 24px;
    background: linear-gradient(201deg, #cef0ed 0%, #c9e1fd 100%);
    position: relative;
}

.hero-screen__content {
    padding-bottom: 28px;
    max-width: 800px;
}

.hero-screen__title {
    margin: 0 0 24px;
    line-height: 1.12;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.hero-screen__advantages {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 36px;
    max-width: 528px;
}

.hero-screen__advantage {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.hero-screen__advantage-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-top: 1px;
    flex-shrink: 0;
}

.hero-screen__advantage-icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hero-screen__actions {
    display: flex;
    align-items: stretch;
    gap: 10px;
    flex-wrap: wrap;
}

.hero-screen__button {
    cursor: pointer;
}

.hero-screen__booking {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-image: url("data:image/svg+xml,%3Csvg width='390' height='70' viewBox='0 0 390 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M389.5 24L389.5 46C389.5 58.9787 378.979 69.5 366 69.5L26.5439 69.5C18.7877 69.5 12.5 63.2123 12.5 55.456C12.5 49.2255 8.35601 44.063 3.68555 40.2217C1.79802 38.6693 0.499998 36.9606 0.499998 35.25C0.500002 33.5878 1.72537 31.9263 3.5332 30.4053C8.24896 26.4377 12.5 21.1945 12.5 14.8408C12.5 6.92059 18.9206 0.499984 26.8408 0.499984L366 0.499999C378.979 0.5 389.5 11.0213 389.5 24Z' fill='white' fill-opacity='0.3' stroke='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    padding: 10px 24px;
}

.hero-screen__booking-label {
    line-height: 1.15;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.hero-screen__booking-value {
    margin-top: 6px;
    font-weight: 600;
    font-size: 22px;
    color: var(--chernyy);
}

.hero-screen__media {
    display: flex;
    position: absolute;
    top: 0;
    right: 36px;
}

.hero-screen__image {
    display: block;
    width: 100%;
    max-width: 430px;
    height: auto;
    object-fit: contain;
}

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

.hero-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    overflow: hidden;
    border-radius: 48px;
    padding: 24px;
}

.hero-card__badge {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    max-width: max-content;
    background: var(--krasnyy);
    border-radius: 12px;
    padding: 6px 12px;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    color: var(--belyy);
}

.hero-card__badge.is-dark {
    background: #050505;
        gap: 8px;
    padding-right: 10px;
}


.hero-card__badge.is-dark::after {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_681_28007)'%3E%3Cmask id='path-2-inside-1_681_28007' fill='white'%3E%3Cpath d='M0.0795066 9.65987C0.306332 11.3066 1.01102 12.8507 2.10636 14.101C3.2017 15.3514 4.63962 16.2531 6.24218 16.6946C7.84474 17.1362 9.54159 17.0982 11.1227 16.5852C12.7039 16.0723 14.1 15.1071 15.1382 13.8089C16.1764 12.5107 16.8112 10.9366 16.964 9.28138C17.1168 7.62615 16.7809 5.96244 15.9979 4.49613C15.2149 3.02983 14.0192 1.82528 12.5586 1.03157C11.0981 0.237858 9.4369 -0.11019 7.78059 0.0304989L7.94926 2.01618C9.21724 1.90848 10.489 2.17493 11.6071 2.78255C12.7252 3.39018 13.6406 4.31231 14.24 5.43484C14.8395 6.55737 15.0966 7.83103 14.9796 9.09819C14.8626 10.3653 14.3767 11.5704 13.5819 12.5642C12.7871 13.558 11.7183 14.297 10.5078 14.6896C9.29739 15.0823 7.99836 15.1114 6.77153 14.7734C5.54469 14.4354 4.44389 13.7451 3.60536 12.7879C2.76682 11.8306 2.22735 10.6486 2.0537 9.38793L0.0795066 9.65987Z'/%3E%3C/mask%3E%3Cpath d='M0.0795066 9.65987C0.306332 11.3066 1.01102 12.8507 2.10636 14.101C3.2017 15.3514 4.63962 16.2531 6.24218 16.6946C7.84474 17.1362 9.54159 17.0982 11.1227 16.5852C12.7039 16.0723 14.1 15.1071 15.1382 13.8089C16.1764 12.5107 16.8112 10.9366 16.964 9.28138C17.1168 7.62615 16.7809 5.96244 15.9979 4.49613C15.2149 3.02983 14.0192 1.82528 12.5586 1.03157C11.0981 0.237858 9.4369 -0.11019 7.78059 0.0304989L7.94926 2.01618C9.21724 1.90848 10.489 2.17493 11.6071 2.78255C12.7252 3.39018 13.6406 4.31231 14.24 5.43484C14.8395 6.55737 15.0966 7.83103 14.9796 9.09819C14.8626 10.3653 14.3767 11.5704 13.5819 12.5642C12.7871 13.558 11.7183 14.297 10.5078 14.6896C9.29739 15.0823 7.99836 15.1114 6.77153 14.7734C5.54469 14.4354 4.44389 13.7451 3.60536 12.7879C2.76682 11.8306 2.22735 10.6486 2.0537 9.38793L0.0795066 9.65987Z' fill='white' stroke='%23E3255C' stroke-width='2' mask='url(%23path-2-inside-1_681_28007)'/%3E%3Cpath d='M8.5 8.73771V3H7V9.55738L12.25 13L13 11.6557L8.5 8.73771Z' fill='%23E3255C'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_681_28007'%3E%3Crect width='17' height='17' rx='8.5' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.benefits-cards {
    display: flex;
    gap: 25px;
    align-items: stretch;
}

.benefits-card {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    border-radius: 48px;
    padding: 24px;
}

.benefits-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.benefits-card__title {
    margin: 0;
    line-height: 1.1;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.benefits-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    flex-shrink: 0;
}

.benefits-card__icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.benefits-card__text {
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.benefits-card__accent {
    padding-top: 18px;
    font-weight: 600;
    font-size: 18px;
    color: var(--temno-zelenyy);
}

.benefits-card__accent ul {
    margin: 0;
    padding-left: 18px;
}

.benefits-card__accent p {
    margin: 0;
}

.about-clinic {
    overflow: hidden;
    border-radius: 48px;
    background: var(--svetlo-seryy);
}

.about-clinic__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 36px;
}

.about-clinic__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    line-height: 1;
    font-weight: 600;
    font-size: 14px;
    color: var(--chernyy);
    border: 1px solid var(--chernyy);
    border-radius: 12px;
    padding: 6px 12px;
}

.about-clinic__toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    flex-shrink: 0;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.about-clinic__toggle::before,
.about-clinic__toggle::after {
    content: "";
    position: absolute;
    width: 14px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.about-clinic__toggle::before {
    transform: translateX(-4px) rotate(45deg);
}

.about-clinic__toggle::after {
    transform: translateX(4px) rotate(-45deg);
}

.about-clinic.is-open .about-clinic__toggle::before {
    transform: translateX(-4px) rotate(-45deg);
}

.about-clinic.is-open .about-clinic__toggle::after {
    transform: translateX(4px) rotate(45deg);
}

.about-clinic__panel {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    transition: grid-template-rows 0.28s ease;
}

.about-clinic.is-open .about-clinic__panel {
    grid-template-rows: 1fr;
    padding-bottom: 36px;
}

.about-clinic__body {
    /* min-height: 0; */
    overflow: hidden;
    display: flex;
    gap: 36px;
    border-radius: 48px;
    padding: 0 36px;
}

.about-clinic__content {
    display: flex;
    flex: 0 1 48%;
    flex-direction: column;
    align-items: flex-start;
}

.about-clinic__stats {
    display: flex;
    flex: 0 1 56%;
    flex-direction: column;
    gap: 12px;
}

.about-clinic__title {
    margin: 0;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
    line-height: normal;
}

.about-clinic__description {
    margin-top: 36px;
    line-height: normal;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.about-clinic__description p {
    margin: 0 0 28px;
}

.about-clinic__description p:last-child {
    margin-bottom: 0;
}

.about-clinic__button {
    margin-top: 36px;
    border: 0;
    line-height: 1;
    cursor: pointer;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    border-radius: 24px;
    padding: 24px 36px;
    font-weight: 600;
    font-size: 18px;
    color: var(--belyy);
}

.about-clinic__stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-radius: 24px;
    padding: 36px 24px;
    box-shadow: 0 10px 30px 0 rgba(193, 188, 188, 0.2);
    background: var(--belyy);
}

.about-clinic__stat-main {
    min-width: 0;
}

.about-clinic__stat-value {
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
    line-height: normal;
}

.about-clinic__stat-text {
    margin-top: 12px;
    line-height: 1.24;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.about-clinic__stat-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #e5effb;
}

.about-clinic__stat-icon-image {
    display: block;
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.promotions-slider {
    border-radius: 48px;
    padding: 60px 36px;
    background: var(--svetlo-seryy);
}

.promotions-slider__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.promotions-slider__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 16px 0 24px;
}

.promotions-slider__count {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 6px 10px;
    border: 1px solid rgba(18, 33, 51, 0.55);
    border-radius: 999px;
    color: #1f2a31;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
}

.promotions-slider__count-value {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--krasnyy);
    color: var(--belyy);
    font-size: 12px;
}

.promotions-slider__controls {
    display: inline-flex;
    align-items: center;
    gap: 23px;
}

.promotions-slider__counter {
    line-height: 1;
    font-weight: 600;
    font-size: 14px;
    color: var(--chernyy);
}

.promotions-slider__arrow {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.promotions-slider__arrow:disabled {
    opacity: 0.45;
    cursor: default;
}

.promotions-slider__arrow span {
    display: block;
    width: 36px;
    height: 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='url(%23paint0_linear_681_28444)'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_681_28444' x1='20.7185' y1='-1.52687e-06' x2='3.13776' y2='7.48791' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.promotions-slider__arrow--prev span {
    transform: rotate(180deg);
}

.promotions-slider__arrow--next span {
    transform: none;
}

.promotions-slider__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 28px;
    line-height: 1.08;
}

.promotions-slider__viewport {
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
}

.promotions-slider__viewport::-webkit-scrollbar {
    display: none;
}

.promotions-slider__track {
    display: flex;
    gap: 24px;
}

.promotion-card {
    display: flex;
    flex: 0 0 calc((100% - 32px) / 2.8);
    min-width: calc((100% - 32px) / 2.8);
    flex-direction: column;
    border-radius: 28px;
    overflow: hidden;
    scroll-snap-align: start;
    background: #000;
}

.promotion-card__image-link {
    display: block;
    color: inherit;
}

.promotion-card__image-wrap {
    position: relative;
    min-height: 260px;
    background: #fff;
}

.promotion-card__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    line-height: 1;
    font-weight: 600;
    font-size: 14px;
    color: var(--chernyy);
    border: 1px solid var(--chernyy);
    border-radius: 12px;
    padding: 6px 12px;
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.1);
}

.promotion-card__badge.is-light {color: var(--belyy);border: 1px solid var(--belyy);}

.promotion-card__image {
    display: block;
    width: 100%;
    height: 260px;
    object-fit: cover;
}

.promotion-card__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    background: #000;
}

.promotion-card__title {
    margin: 0;
    line-height: 1.12;
    font-weight: 600;
    font-size: 25px;
    color: var(--belyy);
}

.promotion-card__title a {
    color: var(--belyy);
}

.promotion-card__text {
    margin-top: 12px;
    line-height: 1.25;
    font-weight: 500;
    font-size: 16px;
    color: var(--belyy);
}

.promotion-card__prices {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin: 24px 0;
    font-weight: 600;
    font-size: 25px;
    color: var(--belyy);
}

.promotion-card__price {
    color: var(--belyy);
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
}

.promotion-card__old-price {
    color: rgba(255, 255, 255, 0.42);
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    text-decoration: line-through;
}

.promotion-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    border: 1px solid transparent;
    background:
        linear-gradient(var(--chernyy), var(--chernyy)) padding-box,
        linear-gradient(189deg, #e2245c 0%, #b725e2 100%) border-box;
    color: var(--belyy);
    line-height: 1;
    border-radius: 16px;
    padding: 12px 36px;
    font-weight: 600;
    font-size: 18px;
}

.promotion-card__button span {
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.promotion-card__button--link {
    color: #ef58c0;
}

.page-section--doctors-slider {
    margin-top: 24px;
}

.doctors-slider {
    border-radius: 48px;
    background: var(--svetlo-seryy);
}

.doctors-slider__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 36px;
}

.doctors-slider__top-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex: 1;
}



.doctors-slider__toggle {
    position: relative;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    background: #d8f8f7;
    padding: 0;
}

.doctors-slider__toggle::before,
.doctors-slider__toggle::after {
    content: "";
    position: absolute;
    top: 24px;
    left: 11px;
    width: 16px;
    height: 2px;
    border-radius: 999px;
    background: #0f1825;
    transition: transform 0.2s ease;
}

.doctors-slider__toggle::before {
    transform: rotate(45deg);
}

.doctors-slider__toggle::after {
    left: 22px;
    transform: rotate(-45deg);
}

.doctors-slider.is-open .doctors-slider__toggle::before {
    transform: rotate(-45deg);
}

.doctors-slider.is-open .doctors-slider__toggle::after {
    transform: rotate(45deg);
}

.doctors-slider__controls {
    display: flex;
    align-items: center;
    gap: 12px;
}

.doctors-slider__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 26px;
}

.doctors-slider__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.doctors-slider__arrow:disabled {
    opacity: 0.45;
    cursor: default;
}

.doctors-slider__arrow span {
    display: block;
    width: 36px;
    height: 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='url(%23paint0_linear_681_28444)'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_681_28444' x1='20.7185' y1='-1.52687e-06' x2='3.13776' y2='7.48791' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.doctors-slider__arrow--prev span {
    transform: rotate(180deg);
}

.doctors-slider__arrow--next span {
    transform: none;
}

.doctors-slider__counter {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #3b3b3b;
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
}

.doctors-slider__panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.doctors-slider.is-open .doctors-slider__panel {
    max-height: 2200px;
}

.doctors-slider__panel-inner {padding: 0 36px 36px;}

.doctors-slider__title {
    margin: 0;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.doctors-slider__viewport {
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
}

.doctors-slider__viewport::-webkit-scrollbar {
    display: none;
}

.doctors-slider__track {
    display: flex;
    gap: 24px;
}

.doctor-card {
    display: flex;
    flex: 0 0 calc((100% - 32px) / 2.8);
    flex-direction: column;
    overflow: hidden;
    scroll-snap-align: start;
}

.doctor-card__image-wrap {
    position: relative;
    border-radius: 36px;
    overflow: hidden;
}

.doctor-card__badge {
    position: absolute;
    top: 24px;
    left: 24px;
    z-index: 2;
    line-height: 1;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--chernyy);
    border-radius: 16px;
    padding: 6px 12px;
    font-weight: 400;
    font-size: 14px;
    color: var(--chernyy);
}

.doctor-card__profile-link {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #111;
    padding: 0;
}

.doctor-card__profile-link span {
    width: 0;
    height: 0;
    margin-left: 2px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 8px solid #fff;
}

.doctor-card__image {
    display: block;
    width: 100%;
    object-fit: cover;
}

.doctor-card__name-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 12px 24px;
    backdrop-filter: blur(20px);
    background: rgba(0, 0, 0, 0.5);
    font-weight: 600;
    font-size: 22px;
    color: var(--belyy);
}

.doctor-card__name {
    margin: 0;
    font-weight: 600;
    font-size: 17px;
    line-height: 1.14;
}

.doctor-card__name a {
    color: var(--belyy);
}

.doctor-card__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px 24px 12px;
}

.doctor-card__position {
    line-height: 1.22;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.doctor-card__location {
    position: relative;
    margin: 12px 0 24px;
    padding-left: 24px;
    line-height: 1.2;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.doctor-card__location::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.5516 4L9.07844 9.57631L4.50918 4.12972L2 13.2494H5.39557L6.01767 10.3327L9.02316 14L12.013 10.4131L12.6144 13.2655H16L13.5516 4Z' fill='%230C8210'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.doctor-card__button {
    width: 100%;
    margin-top: auto;
    border: 0;
    line-height: 1;
    border-radius: 24px;
    padding: 24px 36px;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    font-weight: 600;
    font-size: 18px;
    color: var(--belyy);
}

.doctors-slider__progress {
    margin-top: 14px;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: rgba(18, 33, 51, 0.2);
    overflow: hidden;
    display: none;
}

.doctors-slider__progress-bar {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: #111;
}

.doctors-slider__button {
    margin-top: 36px;
}

.content-area--doctor,
.content-area--doctors-archive {
    padding: 24px 0 0;
}

.doctor-single {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.doctor-single__hero {
    display: flex;
    align-items: stretch;
    gap: 24px;
    padding: 24px;
    border-radius: 32px;
    background: #f7f7f7;
}

.doctor-single__media,
.doctor-single__content {
    width: 100%;
}

.doctor-single__media {
    position: relative;
    flex: 0 1 46%;
    min-height: 460px;
    border-radius: 28px;
    overflow: hidden;
    background: linear-gradient(90deg, #d9f6f2 0%, #cfe4ff 100%);
}

.doctor-single__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.doctor-single__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 6px 12px;
    border: 1px solid rgba(18, 33, 51, 0.55);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #111;
    font-weight: 500;
    font-size: 12px;
    line-height: 1;
}

.doctor-single__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.doctor-single__back {
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 14px;
}

.doctor-single__title {
    margin: 16px 0 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 42px;
    line-height: 1.04;
}

.doctor-single__position {
    margin-top: 18px;
    color: #1f2834;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.25;
}

.doctor-single__location {
    position: relative;
    margin-top: 14px;
    padding-left: 14px;
    color: #00a539;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
}

.doctor-single__location::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.doctor-single__excerpt {
    margin-top: 20px;
    color: #34414f;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.45;
}

.doctor-single__button {
    margin-top: 24px;
}

.doctor-single__body {
    padding: 28px;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(10, 21, 36, 0.06);
}

.doctors-archive__header {
    margin-bottom: 24px;
}

.doctors-archive__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 42px;
    line-height: 1.04;
}

.doctors-archive__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.doctors-catalog {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.doctors-catalog__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
}

.doctors-catalog__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 48px;
    line-height: 1.04;
}

.doctors-catalog__description {
    max-width: 920px;
    color: var(--chernyy);
    font-size: 18px;
    line-height: 1.5;
}

.doctors-catalog__description > *:first-child {
    margin-top: 0;
}

.doctors-catalog__description > *:last-child {
    margin-bottom: 0;
}

.doctors-catalog__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.doctors-catalog__tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 14px 22px;
    border: 0;
    border-radius: 999px;
    background: #f3f3f3;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.1;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.doctors-catalog__tab:hover {
    transform: translateY(-1px);
}

.doctors-catalog__tab.is-active {
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    color: var(--belyy);
}

.doctors-catalog__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.doctor-card--catalog {
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: calc((100% - 40px) / 3);
}

.doctor-card.is-hidden {
    display: none !important;
}

.promotion-card.is-hidden,
.blog-card.is-hidden {
    display: none !important;
}

.doctors-catalog__empty {
    margin: 0;
    color: var(--chernyy);
    font-size: 18px;
    line-height: 1.45;
}

.doctor-card--archive {
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: calc((100% - 40px) / 3);
}

.content-area--promotion,
.content-area--promotions-archive {
    padding: 24px 0 0;
}

.promotion-single {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.promotion-single__hero {
    display: flex;
    gap: 24px;
    align-items: stretch;
    padding: 0;
    border-radius: 32px;
    background: transparent;
}

.promotion-single__hero-main,
.promotion-single__media {
    width: 100%;
}

.promotion-single__hero-main {
    position: relative;
    display: flex;
    flex: 0 1 61%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 34px 34px 40px;
    border-radius: 32px;
    background: #050505;
    color: #fff;
    min-height: 320px;
}

.promotion-single__media {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex: 0 1 39%;
    border: 1px solid rgba(17, 17, 17, 0.12);
    border-radius: 32px;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 52%, rgba(242, 242, 242, 0.92) 0, rgba(242, 242, 242, 0.92) 28%, rgba(242, 242, 242, 0) 29%),
        linear-gradient(180deg, #fff 0%, #fbfbfb 100%);
    min-height: 320px;
}

.promotion-single__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.promotion-single__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 6px 12px;
    margin-top: 24px;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-weight: 500;
    font-size: 12px;
    line-height: 1;
}

.promotion-single__badge.is-light {
    background: rgba(255, 255, 255, 0.16);
}

.promotion-single__back {
    color: rgba(255, 255, 255, 0.72);
    font-weight: 500;
    font-size: 14px;
    line-height: 1.2;
}

.promotion-single__title {
    max-width: 700px;
    margin: 18px 0 0;
    color: #fff;
    font-weight: 700;
    font-size: 52px;
    line-height: 1.06;
}

.promotion-single__excerpt {
    max-width: 640px;
    margin-top: 18px;
    color: rgba(255, 255, 255, 0.74);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.3;
}

.promotion-single__prices {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 12px;
    margin-top: 22px;
}

.promotion-single__price {
    color: #fff;
    font-weight: 700;
    font-size: 56px;
    line-height: 1;
}

.promotion-single__old-price {
    color: rgba(255, 255, 255, 0.42);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    text-decoration: line-through;
}

.promotion-single__button {
    margin-top: 28px;
}

.promotion-single__body {
    padding: 28px 30px 34px;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(10, 74, 84, 0.08);
    color: #1f2a31;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.45;
}

.promotion-single__cta {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 24px;
    overflow: hidden;
    padding: 28px 28px 0;
    border-radius: 32px;
    background: #050505;
    color: #fff;
}

.promotion-single__cta::after {
    content: "";
    position: absolute;
    right: 120px;
    top: 18px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    pointer-events: none;
}

.promotion-single__cta-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 1 58%;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 28px;
}

.promotion-single__cta-title {
    margin: 0;
    max-width: 580px;
    color: #fff;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.08;
}

.promotion-single__cta-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-top: 28px;
}

.promotion-single__cta-button {
    margin: 0;
}

.promotion-single__cta-phone {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-weight: 500;
    font-size: 28px;
    line-height: 1.2;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.promotion-single__cta-phone::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.7257 12.4587L12.8911 10.6242C12.2358 9.96917 11.1218 10.2312 10.8597 11.083L10.7287 11.4763C10.5975 11.8696 10.2042 12.0662 9.81085 12.0007C8.95905 11.8041 7.84511 10.8208 7.64852 9.90305C7.51745 9.50974 7.77951 9.11644 8.10719 8.98532L8.50044 8.85431C9.35226 8.59225 9.61429 7.47824 8.95905 6.82307L7.1245 4.98854C6.60031 4.52971 5.81406 4.52971 5.35522 4.98854L4.11028 6.23347C2.86534 7.544 4.2414 11.0175 7.32108 14.0972C10.4007 17.1769 13.8741 18.6184 15.1845 17.3077L16.4294 16.0627C16.8883 15.5385 16.8883 14.7523 16.4294 14.2935L14.7257 12.4587Z' fill='white'/%3E%3C/svg%3E");
}

.promotion-single__cta-features {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 24px;
}

.promotion-single__cta-feature {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    max-width: 560px;
    color: rgba(255, 255, 255, 0.82);
    font-weight: 500;
    font-size: 15px;
    line-height: 1.35;
}

.promotion-single__cta-feature-icon {
    position: relative;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin-top: 1px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
}

.promotion-single__cta-feature-icon::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 4px;
    width: 8px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
}

.promotion-single__cta-media {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 1 42%;
    align-items: flex-end;
    justify-content: center;
    min-height: 280px;
}

.promotion-single__cta-image {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.promotion-single__body > :first-child {
    margin-top: 0;
}

.promotion-single__body > :last-child {
    margin-bottom: 0;
}

.promotions-archive__header {
    margin-bottom: 24px;
}

.promotions-archive__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 42px;
    line-height: 1.06;
}

.promotions-archive__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.promotions-catalog {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.promotions-catalog__header {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.promotions-catalog__tabs {
    margin-top: -8px;
}

.promotions-catalog__description {
    max-width: 980px;
    line-height: 1.4;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.promotions-catalog__description > *:first-child {
    margin-top: 0;
}

.promotions-catalog__description > *:last-child {
    margin-bottom: 0;
}

.promotions-catalog__empty {
    margin: 0;
    font-size: 18px;
    color: rgba(18, 33, 51, 0.72);
}

.promotion-card--archive {
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: calc((100% - 40px) / 3);
}

.promotions-slider__progress {
    height: 2px;
    margin-top: 16px;
    border-radius: 999px;
    background: rgba(18, 33, 51, 0.14);
    overflow: hidden;
    display: none;
}

.promotions-slider__progress-bar {
    display: block;
    width: 33.33%;
    height: 100%;
    background: #222;
    transition: width 0.2s ease;
}

.promotions-slider__button {
    margin-top: 36px;
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    border-radius: 24px;
    padding: 24px 36px;
    font-weight: 600;
    font-size: 18px;
    color: var(--belyy);
    display: inline-flex;
}

.blog-slider {
    border-radius: 48px;
    background: var(--svetlo-seryy);
}

.blog-slider__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 36px;
}

.blog-slider__top-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}



.blog-slider__toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #d8f5ef;
    cursor: pointer;
    flex-shrink: 0;
}

.blog-slider__toggle::before,
.blog-slider__toggle::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.blog-slider__toggle::before {
    transform: translateX(-4px) rotate(45deg);
}

.blog-slider__toggle::after {
    transform: translateX(4px) rotate(-45deg);
}

.blog-slider.is-open .blog-slider__toggle::before {
    transform: translateX(-4px) rotate(-45deg);
}

.blog-slider.is-open .blog-slider__toggle::after {
    transform: translateX(4px) rotate(45deg);
}

.blog-slider__controls {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
}

.blog-slider__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 36px;
}

.blog-slider__arrow {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.blog-slider__arrow:disabled {
    opacity: 0.45;
    cursor: default;
}

.blog-slider__arrow span {
    display: block;
    width: 36px;
    height: 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='url(%23paint0_linear_681_28444)'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_681_28444' x1='20.7185' y1='-1.52687e-06' x2='3.13776' y2='7.48791' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.blog-slider__arrow--prev span {
    transform: rotate(180deg);
}

.blog-slider__arrow--next span {
    transform: none;
}

.blog-slider__counter {
    color: #1f2a31;
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
}

.blog-slider__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
    padding: 0 36px;
}

.blog-slider.is-open .blog-slider__panel {
    grid-template-rows: 1fr;
}

.blog-slider__panel-inner {
    min-height: 0;
    overflow: hidden;
}

.blog-slider__title {
    margin: 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.blog-slider__viewport {
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
}

.blog-slider__viewport::-webkit-scrollbar {
    display: none;
}

.blog-slider__track {
    display: flex;
    gap: 24px;
}

.blog-card {
    display: flex;
    flex: 0 0 calc((100% - 32px) / 2.8);
    flex-direction: column;
    scroll-snap-align: start;
}

.blog-card__image-link {
    display: block;
    color: inherit;
}

.blog-card__image-wrap {
    position: relative;
    overflow: hidden;
    border-radius: 36px;
}

.blog-card__image {
    display: block;
    width: 100%;
    height: 430px;
    object-fit: cover;
}

.blog-card__title-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    backdrop-filter: blur(20px);
    background: rgba(0, 0, 0, 0.5);
    padding: 12px 24px;
}

.blog-card__title {
    margin: 0;
    color: var(--belyy);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.16;
}

.blog-card__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 24px;
}

.blog-card__excerpt {
    line-height: 1.28;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.blog-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 24px;
}

.blog-card__date {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    line-height: 1;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.blog-card__date-icon {
    display: inline-flex;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.74998 2.5C7.74998 2.30109 7.67096 2.11032 7.53031 1.96967C7.38966 1.82902 7.19889 1.75 6.99998 1.75C6.80107 1.75 6.6103 1.82902 6.46965 1.96967C6.329 2.11032 6.24998 2.30109 6.24998 2.5V4.08C4.80998 4.195 3.86598 4.477 3.17198 5.172C2.47698 5.866 2.19498 6.811 2.07898 8.25H21.921C21.805 6.81 21.523 5.866 20.828 5.172C20.134 4.477 19.189 4.195 17.75 4.079V2.5C17.75 2.30109 17.671 2.11032 17.5303 1.96967C17.3897 1.82902 17.1989 1.75 17 1.75C16.8011 1.75 16.6103 1.82902 16.4696 1.96967C16.329 2.11032 16.25 2.30109 16.25 2.5V4.013C15.585 4 14.839 4 14 4H9.99998C9.16098 4 8.41498 4 7.74998 4.013V2.5Z' fill='%23D3D3D3'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2 12C2 11.161 2 10.415 2.013 9.75H21.987C22 10.415 22 11.161 22 12V14C22 17.771 22 19.657 20.828 20.828C19.656 21.999 17.771 22 14 22H10C6.229 22 4.343 22 3.172 20.828C2.001 19.656 2 17.771 2 14V12ZM17 14C17.2652 14 17.5196 13.8946 17.7071 13.7071C17.8946 13.5196 18 13.2652 18 13C18 12.7348 17.8946 12.4804 17.7071 12.2929C17.5196 12.1054 17.2652 12 17 12C16.7348 12 16.4804 12.1054 16.2929 12.2929C16.1054 12.4804 16 12.7348 16 13C16 13.2652 16.1054 13.5196 16.2929 13.7071C16.4804 13.8946 16.7348 14 17 14ZM17 18C17.2652 18 17.5196 17.8946 17.7071 17.7071C17.8946 17.5196 18 17.2652 18 17C18 16.7348 17.8946 16.4804 17.7071 16.2929C17.5196 16.1054 17.2652 16 17 16C16.7348 16 16.4804 16.1054 16.2929 16.2929C16.1054 16.4804 16 16.7348 16 17C16 17.2652 16.1054 17.5196 16.2929 17.7071C16.4804 17.8946 16.7348 18 17 18ZM13 13C13 13.2652 12.8946 13.5196 12.7071 13.7071C12.5196 13.8946 12.2652 14 12 14C11.7348 14 11.4804 13.8946 11.2929 13.7071C11.1054 13.5196 11 13.2652 11 13C11 12.7348 11.1054 12.4804 11.2929 12.2929C11.4804 12.1054 11.7348 12 12 12C12.2652 12 12.5196 12.1054 12.7071 12.2929C12.8946 12.4804 13 12.7348 13 13ZM13 17C13 17.2652 12.8946 17.5196 12.7071 17.7071C12.5196 17.8946 12.2652 18 12 18C11.7348 18 11.4804 17.8946 11.2929 17.7071C11.1054 17.5196 11 17.2652 11 17C11 16.7348 11.1054 16.4804 11.2929 16.2929C11.4804 16.1054 11.7348 16 12 16C12.2652 16 12.5196 16.1054 12.7071 16.2929C12.8946 16.4804 13 16.7348 13 17ZM7 14C7.26522 14 7.51957 13.8946 7.70711 13.7071C7.89464 13.5196 8 13.2652 8 13C8 12.7348 7.89464 12.4804 7.70711 12.2929C7.51957 12.1054 7.26522 12 7 12C6.73478 12 6.48043 12.1054 6.29289 12.2929C6.10536 12.4804 6 12.7348 6 13C6 13.2652 6.10536 13.5196 6.29289 13.7071C6.48043 13.8946 6.73478 14 7 14ZM7 18C7.26522 18 7.51957 17.8946 7.70711 17.7071C7.89464 17.5196 8 17.2652 8 17C8 16.7348 7.89464 16.4804 7.70711 16.2929C7.51957 16.1054 7.26522 16 7 16C6.73478 16 6.48043 16.1054 6.29289 16.2929C6.10536 16.4804 6 16.7348 6 17C6 17.2652 6.10536 17.5196 6.29289 17.7071C6.48043 17.8946 6.73478 18 7 18Z' fill='%23D3D3D3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.blog-card__date-icon::before {
    content: none;
}

.blog-card__read {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    line-height: 1;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.blog-card__read-arrow {
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='url(%23paint0_linear_2002_1004)'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_2002_1004' x1='20.7185' y1='-1.52687e-06' x2='3.13776' y2='7.48791' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.blog-card__read-arrow::before {
    content: none;
}

.blog-slider__progress {
    height: 2px;
    margin-top: 16px;
    border-radius: 999px;
    background: rgba(18, 33, 51, 0.14);
    overflow: hidden;
    display: none;
}

.blog-slider__progress-bar {
    display: block;
    width: 33.33%;
    height: 100%;
    background: #222;
    transition: width 0.2s ease;
}

.blog-slider__button {
    margin: 36px 0;
}

.blog-catalog {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.blog-catalog__header {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.blog-catalog__tabs {
    margin-top: -8px;
}

.blog-catalog__title {
    margin: 0;
    color: var(--sinij);
    font-weight: 700;
    font-size: clamp(32px, 4vw, 56px);
    line-height: 1;
}

.blog-catalog__description {
    max-width: 980px;
    line-height: 1.4;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.blog-catalog__description > *:first-child {
    margin-top: 0;
}

.blog-catalog__description > *:last-child {
    margin-bottom: 0;
}

.blog-catalog__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.blog-card--catalog {
    flex: 0 0 calc((100% - 48px) / 3);
    min-width: 0;
    border-radius: 36px;
    background: var(--belyy);
}

.blog-catalog__empty {
    margin: 0;
    font-size: 18px;
    color: rgba(18, 33, 51, 0.72);
}

.content-area--blog-single {
    padding-top: 24px;
}

.blog-single {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.blog-single__hero {
    display: flex;
    gap: 18px;
    align-items: stretch;
}

.blog-single__content {
    display: flex;
    flex: 0 1 60%;
    flex-direction: column;
    justify-content: flex-start;
    padding: 40px 32px;
    border-radius: 32px;
    background: #f5f5f3;
}

.blog-single__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.blog-single__category {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 16px;
    border-radius: 12px;
    background: #fff;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
}

.blog-single__date {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(31, 42, 49, 0.78);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.2;
}

.blog-single__date-icon {
    position: relative;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}

.blog-single__date-icon::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 4px;
    border: 2px solid rgba(31, 42, 49, 0.28);
}

.blog-single__date-icon::after {
    content: "";
    position: absolute;
    left: 4px;
    right: 4px;
    top: 3px;
    height: 2px;
    background: rgba(31, 42, 49, 0.28);
}

.blog-single__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 60px;
    line-height: 1.04;
}

.blog-single__excerpt {
    max-width: 760px;
    margin-top: 30px;
    color: var(--chernyy);
    font-weight: 600;
    font-size: 22px;
    line-height: 1.24;
}

.blog-single__meta {
    margin-top: 30px;
}

.blog-single__media {
    flex: 0 1 40%;
}

.blog-single__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    border-radius: 32px;
}

.blog-single__body {
    padding: 28px 30px 34px;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(10, 74, 84, 0.08);
    color: #1f2a31;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.6;
}

.blog-single__body > :first-child {
    margin-top: 0;
}

.blog-single__body > :last-child {
    margin-bottom: 0;
}

.contents-block {
    padding: 30px 28px;
    border-radius: 32px;
    background: #f5f5f3;
}

.contents-block__title {
    margin: 0 0 18px;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 42px;
    line-height: 1.08;
}

.contents-block__links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
}

.contents-block__link {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding-left: 14px;
    color: #5d1d3c;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.contents-block__link::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #e3255c;
}

.blog-highlight {
    display: flex;
    gap: 28px;
    align-items: stretch;
    padding: 38px 38px 36px;
    border-radius: 40px;
    background: linear-gradient(90deg, #cef0ed 0%, #c9defc 100%);
}

.blog-highlight__content {
    display: flex;
    flex: 0 1 60%;
    flex-direction: column;
}

.blog-highlight__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.blog-highlight__text {
    margin-top: 26px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-highlight__media {
    display: flex;
    flex: 0 1 40%;
    align-items: center;
}

.blog-highlight__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    border-radius: 28px;
}

.blog-dual-cards-note {
    padding: 38px 38px 36px;
    border-radius: 40px;
    background: #f5f5f3;
}

.page-section--blog-dual-cards-note-gradient .blog-dual-cards-note {
    background: linear-gradient(90deg, #cef0ed 0%, #c9defc 100%);
}

.blog-dual-cards-note__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.blog-dual-cards-note__description {
    margin-top: 20px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-dual-cards-note__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 26px;
}

.blog-dual-cards-note__card {
    min-width: 0;
    padding: 24px 24px 22px;
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.72);
}

.blog-dual-cards-note__card-title {
    margin: 0 0 18px;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 26px;
    line-height: 1.18;
}

.blog-dual-cards-note__list {
    margin: 0;
    padding-left: 18px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.4;
}

.blog-dual-cards-note__list li + li {
    margin-top: 6px;
}

.blog-dual-cards-note__bottom {
    margin-top: 28px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-pain-types-grid__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.blog-pain-types-grid__description {
    max-width: 760px;
    margin-top: 18px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-pain-types-grid__items {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 26px;
}

.blog-pain-types-grid__card {
    flex: 0 0 calc((100% - 22px) / 2);
    min-width: 0;
    padding: 20px 20px 18px;
    border: 1px solid rgba(18, 33, 51, 0.16);
    border-radius: 18px;
    background: #f8f8f7;
}

.blog-pain-types-grid__card:nth-child(n + 3) {
    flex-basis: calc((100% - 44px) / 3);
}

.blog-pain-types-grid__card-title {
    margin: 0 0 12px;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 24px;
    line-height: 1.18;
}

.blog-pain-types-grid__card-text {
    color: var(--chernyy);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
}

.blog-dark-cta-banner {
    display: flex;
    gap: 26px;
    align-items: stretch;
    padding: 28px 36px;
    border-radius: 40px;
    background: #050505;
    color: #fff;
}

.blog-dark-cta-banner__content {
    display: flex;
    flex: 0 1 52%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.blog-dark-cta-banner__title {
    margin: 0;
    color: #fff;
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.blog-dark-cta-banner__text {
    margin-top: 24px;
    color: rgba(255, 255, 255, 0.86);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-dark-cta-banner__button {
    margin-top: 34px;
}

.blog-dark-cta-banner__media {
    display: flex;
    flex: 0 1 48%;
    align-items: center;
}

.blog-dark-cta-banner__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 280px;
    object-fit: cover;
    border-radius: 28px;
}

.blog-symptoms-chips__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.blog-symptoms-chips__description {
    margin-top: 18px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.blog-symptoms-chips__label {
    margin-top: 24px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.3;
}

.blog-symptoms-chips__items {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}

.blog-symptoms-chips__item {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    padding: 10px 16px 10px 12px;
    border-radius: 14px;
    background: #f5f5f3;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
}

.blog-symptoms-chips__dot {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    border-radius: 50%;
    background: #b7f58d;
}

.blog-symptoms-chips__bottom {
    margin-top: 26px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.patient-tax-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 50%);
    gap: 28px;
    align-items: stretch;
    padding: 30px 36px;
    border-radius: 40px;
    background: linear-gradient(90deg, #cef0ed 0%, #c9defc 100%);
}

.patient-tax-hero__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.patient-tax-hero__title,
.patient-text-section__title,
.patient-info-cards__title,
.patient-documents-columns__title,
.patient-downloads__title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.06;
}

.patient-tax-hero__text,
.patient-text-section__text,
.patient-info-cards__description,
.patient-info-cards__card,
.patient-info-cards__bottom,
.patient-documents-columns__item-text,
.patient-downloads__notice-text,
.patient-downloads__bottom {
    color: var(--chernyy);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
}

.patient-tax-hero__text {
    max-width: 540px;
    margin-top: 28px;
}

.patient-tax-hero__button {
    margin-top: 46px;
}

.patient-tax-hero__media {
    display: flex;
    align-items: center;
}

.patient-tax-hero__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 370px;
    object-fit: cover;
    border-radius: 32px;
}

.patient-text-section__text {
    margin-top: 20px;
}

.patient-info-cards {
    padding: 38px 38px 36px;
    border-radius: 40px;
    background: #f5f5f3;
}

.patient-info-cards__description {
    margin-top: 22px;
}

.patient-info-cards__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 28px;
}

.patient-info-cards__card {
    min-width: 0;
    padding: 20px 22px;
    border: 1px solid rgba(18, 33, 51, 0.16);
    border-radius: 18px;
    background: #f8f8f7;
}

.patient-info-cards__bottom {
    margin-top: 24px;
    padding: 18px 22px;
    border: 1px solid rgba(18, 33, 51, 0.16);
    border-radius: 18px;
    background: #f8f8f7;
}

.patient-documents-columns {
    padding: 34px 32px 36px;
    border-radius: 40px;
    background: linear-gradient(90deg, #cef0ed 0%, #c9defc 100%);
}

.patient-documents-columns__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    margin-top: 34px;
}

.patient-documents-columns__column {
    min-width: 0;
    padding: 20px 20px 22px;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.12);
}

.patient-documents-columns__column-title {
    margin: 0;
    color: var(--chernyy);
    font-weight: 600;
    font-size: 26px;
    line-height: 1.18;
}

.patient-documents-columns__items {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
}

.patient-documents-columns__item {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
}

.patient-documents-columns__item-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    border-radius: 50%;
    background: #b7f58d;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 12px;
    line-height: 1;
}

.patient-documents-columns__item-text {
    font-size: 16px;
}

.patient-downloads {
    border-radius: 40px;
    padding: 36px;
    background: #f5f5f3;
}

.patient-downloads__top {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.patient-downloads__top-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.patient-downloads__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 30px;
    padding: 6px 14px;
    border: 1px solid var(--chernyy);
    border-radius: 999px;
    color: var(--chernyy);
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
}

.patient-downloads__toggle {
    position: relative;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    padding: 0;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    cursor: pointer;
    flex-shrink: 0;
}

.patient-downloads__toggle::before,
.patient-downloads__toggle::after {
    content: "";
    position: absolute;
    top: 23px;
    width: 12px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.patient-downloads__toggle::before {
    left: 14px;
    transform: rotate(45deg);
}

.patient-downloads__toggle::after {
    left: 22px;
    transform: rotate(-45deg);
}

.patient-downloads.is-open .patient-downloads__toggle::before {
    transform: rotate(-45deg);
}

.patient-downloads.is-open .patient-downloads__toggle::after {
    transform: rotate(45deg);
}

.patient-downloads__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
}

.patient-downloads.is-open .patient-downloads__panel {
    grid-template-rows: 1fr;
}

.patient-downloads__panel-inner {
    min-height: 0;
    overflow: hidden;
    padding-top: 28px;
}

.patient-downloads__links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 26px;
}

.patient-downloads__link-item {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
}

.patient-downloads__link-dot {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: #e3255c;
}

.patient-downloads__link,
.patient-downloads__link:visited {
    color: #1f1f1f;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.patient-downloads__link-meta {
    color: #1f1f1f;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
}

.patient-downloads__notice {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
    margin-top: 36px;
    padding: 24px 28px;
    border-radius: 32px;
    background: #fff;
}

.patient-downloads__notice-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #dce9fa;
    color: #111;
    font-weight: 700;
    font-size: 28px;
    line-height: 1;
}

.patient-downloads__bottom {
    margin-top: 34px;
    color: #111;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.2;
}

.expertise-grid {
    border-radius: 48px;
    padding: 60px 36px;
    background: var(--svetlo-seryy);
}

.expertise-grid__title {
    margin: 0 0 36px;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.expertise-grid__items {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}

.expertise-card {
    display: flex;
    flex: 0 0 calc((100% - 50px) / 3);
    flex-direction: column;
    justify-content: space-between;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 10px 30px 0 rgba(193, 188, 188, 0.2);
    background: var(--belyy);
}

.expertise-card__title {
    margin: 0;
    line-height: 1.18;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.expertise-card__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 24px;
}

.expertise-card__link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    \: #1f2a31;
    \: 500;
    \: 12px;
    line-height: 1;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.expertise-card__link-arrow {
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='url(%23paint0_linear_681_28616)'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='white'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_681_28616' x1='20.7185' y1='-1.52687e-06' x2='3.13776' y2='7.48791' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.expertise-card__link-arrow::before {
    content: none;
}

.expertise-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50%;
}

.expertise-card__icon-image {
    display: block;
    object-fit: contain;
}

.why-zarya__title {
    margin: 0 0 36px;
    line-height: 1.1;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.why-zarya__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.why-zarya-card {
    display: flex;
    flex: 0 0 calc((100% - 24px) / 2);
    gap: 23px;
    align-items: stretch;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    border-radius: 48px;
    padding: 24px;
}

.why-zarya-card__media {
    flex: 0 0 48%;
    border-radius: 24px;
    overflow: hidden;
}

.why-zarya-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.why-zarya-card__content {
    display: flex;
    flex: 0 1 52%;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
}

.why-zarya-card__title {
    margin: 0;
    line-height: 1.18;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.why-zarya-card__text {
    line-height: 1.24;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.reviews-embed {
    border-radius: 48px;
    padding: 60px 36px;
    background: var(--svetlo-seryy);
}


.reviews-embed__title {
    margin: 36px 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.reviews-embed__frame {
    overflow: hidden;
    background: var(--belyy);
    padding: 24px;
    border-radius: 36px;
}

.reviews-embed__frame > div {
    width: 100%;
    min-height: 350px;
}

.reviews-embed__frame iframe {
    display: block;
    width: 100% !important;
    /* height: 660px !important; */
    min-height: 600px;
    border: 0 !important;
    border-radius: 28px;
    box-sizing: border-box;
}

.reviews-embed__frame a {
    width: 100%;
    max-width: 100%;
    display: none !important;
}

.independent-ratings {
    border-radius: 48px;
    padding: 60px 36px;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.independent-ratings__title {
    margin: 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.independent-ratings__description {
    margin: 24px 0 36px;
    line-height: 1.25;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.independent-ratings__items {
    display: flex;
    gap: 25px;
}

.independent-ratings__item {
    flex: 1 1 0;
    min-width: 0;
    box-shadow: 0 10px 30px 0 rgba(0, 0, 0, 0.1);
    border-radius: 12px;
}

.independent-ratings__image-link {
    display: block;
    overflow: hidden;
    border-radius: 14px;
}

.independent-ratings__image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
}

.contacts-overview__title {
    margin: 0 0 28px;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 58px;
    line-height: 1.04;
}

.contacts-overview__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.contact-info-card {
    min-width: 0;
    padding: 18px 18px 20px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(12, 45, 71, 0.08);
}

.contact-info-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #e9f2ff;
    color: #101820;
}

.contact-info-card__icon svg {
    display: block;
    width: 20px;
    height: 20px;
}

.contact-info-card__body {
    margin-top: 18px;
}

.contact-info-card__phones {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.contact-info-card__phone,
.contact-info-card__email,
.contact-info-card__messenger-phone,
.contact-info-card__address {
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 18px;
    line-height: 1.35;
    text-decoration: none;
}

.contact-info-card__meta {
    margin-top: 10px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 15px;
    line-height: 1.3;
}

.contact-info-card__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.contact-info-card__social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    text-decoration: none;
}

.contact-info-card__social-icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.contact-info-card__metros {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 14px;
}

.contact-info-card__metro {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--chernyy);
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
}

.contact-info-card__metro-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
}

.contact-info-card__metro-icon svg {
    display: block;
    width: 18px;
    height: 18px;
}

.contacts-route-info {
    display: flex;
    align-items: stretch;
    gap: 42px;
    padding: 32px 36px;
    border-radius: 34px;
    background: linear-gradient(90deg, #cef0ed 0%, #c9defc 100%);
}

.contacts-route-info__content {
    display: flex;
    flex: 0 1 48%;
    flex-direction: column;
    align-items: flex-start;
}

.contacts-route-info__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 6px 12px;
    border: 1px solid rgba(16, 24, 32, 0.65);
    border-radius: 999px;
    color: #101820;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
}

.contacts-route-info__title {
    margin: 24px 0 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 52px;
    line-height: 1.06;
}

.contacts-route-info__section {
    margin-top: 28px;
}

.contacts-route-info__section-title {
    margin: 0 0 12px;
    color: #101820;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.2;
}

.contacts-route-info__text {
    color: #101820;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.45;
}

.contacts-route-info__list {
    margin: 0;
    padding-left: 18px;
    color: #101820;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.45;
}

.contacts-route-info__list li + li {
    margin-top: 8px;
}

.contacts-route-info__media {
    display: flex;
    flex: 0 1 52%;
    align-items: center;
}

.contacts-route-info__embed {
    width: 100%;
    overflow: hidden;
    border-radius: 24px;
}

.contacts-route-info__embed iframe {
    display: block;
    width: 100%;
    min-height: 360px;
    border: 0;
}

.contacts-route-info__image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 24px;
}

.clinic-contact-card {
    border-radius: 48px;
    padding: 60px 36px;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.clinic-contact-card__title {
    margin: 0 0 36px;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.clinic-contact-card__inner {
    display: flex;
    flex-direction: column;
    gap: 24px;
    border: 1px solid var(--belyy);
    border-radius: 36px;
    padding: 36px;
    background: rgba(255, 255, 255, 0.3);
}

.clinic-contact-card__main {
    display: flex;
    gap: 36px;
}

.clinic-contact-card__content {
    display: flex;
    flex: 0 1 46%;
    flex-direction: column;
}

.clinic-contact-card__media {
    flex: 0 1 54%;
}

.clinic-contact-card__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    border-radius: 24px;
}

.clinic-contact-card__meta {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.clinic-contact-card__meta-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.clinic-contact-card__meta-icon svg {
    display: block;
    width: 18px;
    height: 18px;
}

.clinic-contact-card__meta-icon-image {
    display: block;
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.clinic-contact-card__address {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #22333f;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
}

.clinic-contact-card__metros {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.clinic-contact-card__metro {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #2c5b3a;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.2;
}

.clinic-contact-card__phones {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 36px;
}

.clinic-contact-card__phone {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    gap: 6px;
    background: var(--belyy);
    line-height: 1;
    text-decoration: none;
    border-radius: 14px;
    padding: 12px 24px;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.clinic-contact-card__advantages-wrap {
    margin-top: 36px;
}

.clinic-contact-card__advantages-title {
    margin-bottom: 24px;
    line-height: 1.3;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.clinic-contact-card__advantages {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.clinic-contact-card__advantage {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.clinic-contact-card__advantage-icon {
    width: 24px;
    height: 24px;
}

.clinic-contact-card__advantage-icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.clinic-contact-card__advantage-text {
    line-height: 1.3;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.clinic-contact-card__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
}

.clinic-contact-card__button {
}

.clinic-contact-card__messengers {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.clinic-contact-card__messenger {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    line-height: 1.2;
    text-decoration: none;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.clinic-contact-card__messenger-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 48px;
    height: 48px;
}

.clinic-contact-card__messenger-icon-image {
    display: block;
    object-fit: contain;
}

.clinic-contact-card__routes {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.clinic-contact-card__route {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    border: 1px solid transparent;
    line-height: 1.1;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    border-radius: 16px;
    padding: 12px;
    background: linear-gradient(#ddf4f3, #ddf4f3) padding-box, linear-gradient(189deg, #e2245c 0%, #b725e2 100%) border-box;
}

.clinic-contact-card__route-text {
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.clinic-contact-card__route-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.clinic-contact-card__route-icon svg {
    display: block;
    width: 24px;
    height: 24px;
}

.clinic-contact-card__route-logo-image {
    display: block;
    width: auto;
    height: 18px;
    object-fit: contain;
}

.clinic-map {
    overflow: hidden;
    border-radius: 26px;
}

.clinic-map__title {
    margin: 0 0 24px;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 42px;
    line-height: 1.08;
}

.clinic-map iframe {
    display: block;
    width: 100%;
    min-height: 420px;
    border: 0;
}

.question-form-block {
    border-radius: 48px;
    padding: 60px 36px;
    background: var(--svetlo-seryy);
}

.cta-banner {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 24px;
    overflow: hidden;
    padding: 28px 28px 0;
    border-radius: 32px;
    background: #050505;
    color: #fff;
}

.cta-banner::after {
    content: "";
    position: absolute;
    right: 120px;
    top: 18px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    pointer-events: none;
}

.cta-banner__content {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 1 58%;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 28px;
}

.cta-banner__title {
    margin: 0;
    max-width: 580px;
    color: #fff;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.08;
}

.cta-banner__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-top: 28px;
}

.cta-banner__phone {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-weight: 500;
    font-size: 28px;
    line-height: 1.2;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.cta-banner__phone::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.7257 12.4587L12.8911 10.6242C12.2358 9.96917 11.1218 10.2312 10.8597 11.083L10.7287 11.4763C10.5975 11.8696 10.2042 12.0662 9.81085 12.0007C8.95905 11.8041 7.84511 10.8208 7.64852 9.90305C7.51745 9.50974 7.77951 9.11644 8.10719 8.98532L8.50044 8.85431C9.35226 8.59225 9.61429 7.47824 8.95905 6.82307L7.1245 4.98854C6.60031 4.52971 5.81406 4.52971 5.35522 4.98854L4.11028 6.23347C2.86534 7.544 4.2414 11.0175 7.32108 14.0972C10.4007 17.1769 13.8741 18.6184 15.1845 17.3077L16.4294 16.0627C16.8883 15.5385 16.8883 14.7523 16.4294 14.2935L14.7257 12.4587Z' fill='white'/%3E%3C/svg%3E");
}

.cta-banner__features {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 24px;
}

.cta-banner__feature {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    max-width: 560px;
    color: rgba(255, 255, 255, 0.82);
    font-weight: 500;
    font-size: 15px;
    line-height: 1.35;
}

.cta-banner__feature-icon {
    position: relative;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin-top: 1px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
}

.cta-banner__feature-icon::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 4px;
    width: 8px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
}

.cta-banner__media {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 1 42%;
    align-items: flex-end;
    justify-content: center;
    min-height: 280px;
}

.cta-banner__image {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.question-form-block__title {
    margin: 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.question-form-block__description {
    margin-top: 24px;
    line-height: 1.35;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.question-form-block__form,
.question-form-block__shortcode {
    margin-top: 36px;
}

.question-form-block__fields {
    display: flex;
    gap: 12px;
}

.question-form-block__input {
    flex: 1 1 0;
    min-width: 0;
    height: 54px;
    padding: 0 20px;
    border: 0;
    border-radius: 16px;
    background: var(--belyy);
    color: var(--chernyy);
    font: inherit;
}

.question-form-block__button {
    min-width: 250px;
}

.question-form-block__consent {
    margin-top: 14px;
    align-items: flex-start;
}

.collapsible-block {
    padding: 0;
}

.collapsible-block__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.collapsible-block__title {
    margin: 0;
    line-height: 1.08;
    text-underline-offset: 3px;
    font-weight: 600;
    font-size: 45px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--temno-zelenyy);
}

.collapsible-block__toggle {
    position: relative;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 50%;
    min-width: 24px;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    cursor: pointer;
    padding: 0;
}

.collapsible-block__toggle::before,
.collapsible-block__toggle::after {
    content: "";
    position: absolute;
    top: 12px;
    width: 10px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.collapsible-block__toggle::before {
    left: 4px;
    transform: rotate(45deg);
}

.collapsible-block__toggle::after {
    left: 10px;
    transform: rotate(-45deg);
}

.collapsible-block.is-open .collapsible-block__toggle::before {
    transform: rotate(-45deg);
}

.collapsible-block.is-open .collapsible-block__toggle::after {
    transform: rotate(45deg);
}

.collapsible-block__panel {
    display: none;
}

.collapsible-block.is-open .collapsible-block__panel {
    display: block;
}

.collapsible-block__panel-inner {
    padding-top: 36px;
}

.collapsible-block__intro,
.collapsible-block__bottom-text {
    line-height: 1.35;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.collapsible-block__intro p,
.collapsible-block__bottom-text p {
    margin: 0 0 10px;
}

.collapsible-block__intro p:last-child,
.collapsible-block__bottom-text p:last-child {
    margin-bottom: 0;
}

.note-block__section + .note-block__section {
    margin-top: 36px;
}

.note-block__cards {
    display: flex;
    gap: 24px;
    margin-top: 36px;
}

.note-block__card {
    flex: 1 1 0;
    line-height: 1.35;
    border: 1px solid var(--seryy);
    border-radius: 12px;
    padding: 12px;
    background: var(--svetlo-seryy);
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.collapsible-block__bottom-text {
    margin-top: 16px;
}

.queries-block__columns {
    display: flex;
    gap: 10px;
}

.queries-block__column {
    flex: 1 1 0;
    line-height: 1.45;
    border-radius: 48px;
    padding: 24px;
    background: var(--svetlo-seryy);
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.queries-block__link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.queries-block__link + .queries-block__link {
    margin-top: 2px;
}

.faq-block {
    background: #f8f8f8;
    border-radius: 48px;
    padding: 60px 36px;
}


.faq-block__title {
    margin: 36px 0;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.faq-block__items {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.faq-item {
    overflow: hidden;
    border-radius: 24px;
    background: var(--belyy);
}

.faq-item__button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 24px;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.faq-item__question {
    line-height: 1.3;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.faq-item__icon {
    position: relative;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    min-width: 24px;
}

.faq-item__icon::before,
.faq-item__icon::after {
    content: "";
    position: absolute;
    top: 12px;
    width: 10px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.faq-item__icon::before {
    left: 4px;
    transform: rotate(45deg);
}

.faq-item__icon::after {
    left: 10px;
    transform: rotate(-45deg);
}

.faq-item.is-open .faq-item__icon::before {
    transform: rotate(-45deg);
}

.faq-item.is-open .faq-item__icon::after {
    transform: rotate(45deg);
}

.faq-item__panel {
    display: none;
    padding: 0 24px 24px;
}

.faq-item.is-open .faq-item__panel {
    display: block;
}

.faq-item__answer {
    line-height: 1.35;
    font-weight: 500;
    font-size: 16px;
    color: #242424;
}

.faq-item__answer p {
    margin: 0 0 10px;
}

.faq-item__answer p:last-child {
    margin-bottom: 0;
}

.faq-item__answer ol,
.faq-item__answer ul {
    margin: 0 0 10px 20px;
    padding: 0;
}

.faq-item__answer li + li {
    margin-top: 4px;
}

.clinic-documents {
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
    border-radius: 48px;
    padding: 60px 36px;
}

.clinic-documents__title {
    margin: 0 0 36px;
    line-height: 1.08;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.clinic-documents__viewport {
    overflow: visible;
}

.clinic-documents__track {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.clinic-document {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.clinic-document__image-link {
    display: block;
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.46);
}

.clinic-document__image {
    display: block;
    width: 100%;
    object-fit: cover;
}

.clinic-document__content {
}

.clinic-document__title {
    display: block;
    line-height: 1.16;
    font-weight: 600;
    font-size: 16px;
    color: var(--temno-zelenyy);
    margin: 0 0 6px 0;
}

.clinic-document__text {
    line-height: 1.22;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.clinic-documents__progress {
    display: none;
}

.clinic-documents__progress-bar {
    display: block;
    width: 25%;
    height: 100%;
    background: #222;
    transition: width 0.2s ease;
}

.price-section {
    border-radius: 48px;
    background: linear-gradient(201deg, #cef0ed 0%, #c9e1fd 100%);
}

.price-section__top {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 36px;
}

.price-section__top-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.price-section__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-weight: 600;
    font-size: 14px;
    color: var(--chernyy);
    border: 1px solid var(--chernyy);
    border-radius: 12px;
    padding: 6px 12px;
}

.price-section__toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.35);
    cursor: pointer;
    flex-shrink: 0;
    background: linear-gradient(201deg, #c9e1fd 0%, #cef0ed 100%);
}

.price-section__toggle::before,
.price-section__toggle::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 2px;
    border-radius: 2px;
    background: #111;
    transition: transform 0.22s ease;
}

.price-section__toggle::before {
    transform: translateX(-4px) rotate(45deg);
}

.price-section__toggle::after {
    transform: translateX(4px) rotate(-45deg);
}

.price-section.is-open .price-section__toggle::before {
    transform: translateX(-4px) rotate(-45deg);
}

.price-section.is-open .price-section__toggle::after {
    transform: translateX(4px) rotate(45deg);
}

.price-section__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
    padding: 0 36px;
}

.price-section.is-open .price-section__panel {
    grid-template-rows: 1fr;
}

.price-section__panel-inner {
    min-height: 0;
    overflow: hidden;
    /* padding-top: 36px; */
}

.price-section__title {
    margin: 0 0 24px 0;
    line-height: 1.02;
    font-weight: 600;
    font-size: 45px;
    color: var(--temno-zelenyy);
}

.price-section__description {
    line-height: 1.25;
    font-weight: 500;
    font-size: 18px;
    color: var(--chernyy);
}

.price-section__rows {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 28px;
}

.price-section__category-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-top: 8px;
}

.price-section__category-title {
    min-width: 210px;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.1;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.price-section__columns-head {
    display: flex;
    align-items: center;
    gap: 24px;
    width: calc(100% - 234px);
}

.price-section__columns-label {
    line-height: 1.2;
    font-weight: 400;
    font-size: 16px;
    color: var(--chernyy);
}

.price-section__columns-label:first-child {
    flex: 1 1 auto;
}

.price-section__columns-label:nth-child(2) {
    width: 140px;
}

.price-section__columns-label:last-child {
    width: 240px;
}

.price-row {
    display: flex;
    gap: 24px;
    align-items: stretch;
}

.price-row__service {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: var(--belyy);
    border-radius: 16px;
    padding: 12px 24px;
}

.price-row__service-main {
    flex: 1 1 auto;
    min-width: 0;
}

.price-row__service-title {
    color: #1f2a31;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.2;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.price-row__service-description {
    margin-top: 4px;
    color: rgba(31, 42, 49, 0.82);
    font-weight: 500;
    font-size: 14px;
    line-height: 1.25;
}

.price-row__service-side {
    display: flex;
    flex-shrink: 0;
}

.price-row__price-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.price-row__price {
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.1;
    white-space: nowrap;
}

.price-row__old-price {
    color: rgba(31, 42, 49, 0.45);
    font-weight: 500;
    font-size: 14px;
    line-height: 1.1;
    text-decoration: line-through;
    white-space: nowrap;
}

.price-row__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 0;
    
    radient(90deg, #b72cff 0%, #f02a68 100%);
    line-height: 1;
    cursor: pointer;
    border-radius: 18px;
    padding: 10px 12px;
    font-weight: 600;
    font-size: 14px;
    color: var(--belyy);
    width: 175px;
    text-align: start;
}

.price-row__button::after {
    content: "";
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='36' height='36' rx='18' fill='white'/%3E%3Cpath d='M27.6684 16.6896C27.8807 16.9009 28 17.1874 28 17.4862C28 17.7849 27.8807 18.0714 27.6684 18.2827L21.2606 24.6561C21.1561 24.7637 21.0311 24.8495 20.893 24.9085C20.7548 24.9676 20.6061 24.9987 20.4557 25C20.3053 25.0013 20.1562 24.9728 20.017 24.9161C19.8778 24.8595 19.7513 24.7758 19.6449 24.67C19.5386 24.5642 19.4545 24.4384 19.3975 24.3C19.3406 24.1615 19.3119 24.0132 19.3132 23.8636C19.3145 23.714 19.3458 23.5661 19.4051 23.4287C19.4645 23.2912 19.5508 23.1669 19.659 23.063L24.1332 18.6128L9.13271 18.6128C8.83229 18.6128 8.54419 18.4941 8.33176 18.2828C8.11934 18.0715 8 17.785 8 17.4862C8 17.1874 8.11934 16.9008 8.33176 16.6895C8.54419 16.4782 8.83229 16.3595 9.13271 16.3595L24.1332 16.3595L19.659 11.9093C19.4526 11.6968 19.3385 11.4122 19.3411 11.1168C19.3436 10.8214 19.4628 10.5389 19.6728 10.33C19.8828 10.1211 20.1669 10.0026 20.4639 10C20.7609 9.99747 21.047 10.111 21.2606 10.3163L27.6684 16.6896Z' fill='url(%23price-row-button-arrow-gradient)'/%3E%3Cdefs%3E%3ClinearGradient id='price-row-button-arrow-gradient' x1='28' y1='16.3673' x2='25.4915' y2='24.2201' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23E2245C'/%3E%3Cstop offset='1' stop-color='%23B725E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 36px 36px;
}

.price-row__market {
    display: flex;
    width: 240px;
    min-width: 240px;
    flex-direction: column;
    justify-content: center;
    min-height: 74px;
    padding: 14px 18px;
    border-radius: 18px;
    background: var(--belyy);
}

.price-row__market-price {
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.1;
}

.price-row__market-saving {
    margin-top: 4px;
    color: rgba(31, 42, 49, 0.8);
    font-weight: 500;
    font-size: 14px;
    line-height: 1.2;
}

.price-promo {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    background: #050505;
    border-radius: 48px;
}

.price-promo__media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 480px;
    background: var(--belyy);
    height: 202px;
}

.price-promo__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.price-promo__badge {
    position: absolute;
    top: 24px;
    left: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-weight: 600;
    font-size: 14px;
    color: var(--belyy);
    backdrop-filter: blur(10px);
    background: var(--krasnyy);
    border-radius: 12px;
    padding: 6px 12px;
}

.price-promo__badge.is-light {
    background: rgba(255, 255, 255, 0.92);
    color: var(--chernyy);
    border: 1px solid var(--chernyy);
}

.price-promo__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    padding: 35px 24px;
}

.price-promo__title {
    line-height: 1.15;
    font-weight: 600;
    font-size: 25px;
    color: var(--belyy);
}

.price-promo__subtitle {
    margin-top: 12px;
    line-height: 1.2;
    font-weight: 500;
    font-size: 16px;
    color: var(--belyy);
}

.price-promo__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    margin-top: 24px;
    border: 1px solid transparent;
    background:
        linear-gradient(var(--chernyy), var(--chernyy)) padding-box,
        linear-gradient(189deg, #e2245c 0%, #b725e2 100%) border-box;
    color: var(--belyy);
    line-height: 1;
    cursor: pointer;
    font-weight: 600;
    font-size: 18px;
    border-radius: 16px;
    padding: 12px 36px;
}

.price-promo__button span {
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.price-section__bottom {
    display: flex;
    flex-direction: column;
    gap: 36px;
    margin: 36px 0 36px 223px;
}

.price-section__bottom-note {
    line-height: 1.25;
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.price-section__bottom-button {
    align-self: flex-start;
}

.page-section--price-category .price-section,
.page-section--price-subcategory .price-section,
.page-section--price-service .price-section {
    padding: 22px 32px 30px;
    border-radius: 36px;
}

.page-section--price-category .price-section__top,
.page-section--price-subcategory .price-section__top,
.page-section--price-service .price-section__top {
    gap: 0;
}

.page-section--price-category .price-section__panel,
.page-section--price-subcategory .price-section__panel,
.page-section--price-service .price-section__panel {
    display: block;
}

.page-section--price-category .price-section__panel-inner,
.page-section--price-subcategory .price-section__panel-inner,
.page-section--price-service .price-section__panel-inner {
    overflow: visible;
}

.page-section--price-category .price-section__title,
.page-section--price-subcategory .price-section__title,
.page-section--price-service .price-section__title {
    margin-top: 18px;
    font-size: 34px;
    line-height: 1.06;
}

.page-section--price-category .price-section__description,
.page-section--price-subcategory .price-section__description,
.page-section--price-service .price-section__description {
    max-width: 860px;
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.22;
}

.page-section--price-category .price-section__rows,
.page-section--price-subcategory .price-section__rows,
.page-section--price-service .price-section__rows {
    margin-top: 22px;
    gap: 10px;
}

.page-section--price-category .price-section__category-row,
.page-section--price-subcategory .price-section__category-row,
.page-section--price-service .price-section__category-row {
    align-items: flex-start;
    gap: 28px;
    margin-top: 0;
}

.page-section--price-category .price-section__category-title,
.page-section--price-subcategory .price-section__category-title,
.page-section--price-service .price-section__category-title {
    min-width: 132px;
    font-size: 18px;
    line-height: 1.05;
}

.page-section--price-category .price-section__columns-head,
.page-section--price-subcategory .price-section__columns-head,
.page-section--price-service .price-section__columns-head {
    width: calc(100% - 160px);
    gap: 18px;
}

.page-section--price-category .price-section__columns-label,
.page-section--price-subcategory .price-section__columns-label,
.page-section--price-service .price-section__columns-label {
    font-size: 13px;
}

.page-section--price-category .price-section__columns-label:nth-child(2),
.page-section--price-subcategory .price-section__columns-label:nth-child(2),
.page-section--price-service .price-section__columns-label:nth-child(2) {
    width: 160px;
}

.page-section--price-category .price-section__columns-label:last-child,
.page-section--price-subcategory .price-section__columns-label:last-child,
.page-section--price-service .price-section__columns-label:last-child {
    width: 220px;
}

.page-section--price-category .price-row,
.page-section--price-subcategory .price-row,
.page-section--price-service .price-row {
    gap: 14px;
}

.page-section--price-category .price-row__service,
.page-section--price-subcategory .price-row__service,
.page-section--price-service .price-row__service {
    min-height: 62px;
    padding: 10px 18px;
    border-radius: 16px;
}

.page-section--price-category .price-row__service-title,
.page-section--price-subcategory .price-row__service-title,
.page-section--price-service .price-row__service-title {
    font-size: 16px;
}

.page-section--price-category .price-row__service-description,
.page-section--price-subcategory .price-row__service-description,
.page-section--price-service .price-row__service-description {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.18;
}

.page-section--price-category .price-row__service-side,
.page-section--price-subcategory .price-row__service-side,
.page-section--price-service .price-row__service-side {
    gap: 18px;
}

.page-section--price-category .price-row__price,
.page-section--price-subcategory .price-row__price,
.page-section--price-service .price-row__price {
    font-size: 18px;
}

.page-section--price-category .price-row__old-price,
.page-section--price-subcategory .price-row__old-price,
.page-section--price-service .price-row__old-price {
    font-size: 13px;
}

.page-section--price-category .price-row__button,
.page-section--price-subcategory .price-row__button,
.page-section--price-service .price-row__button {
    min-height: 58px;
    padding: 10px 24px;
    border-radius: 18px;
    font-size: 14px;
}

.page-section--price-category .price-row__market,
.page-section--price-subcategory .price-row__market,
.page-section--price-service .price-row__market {
    width: 220px;
    min-width: 220px;
    min-height: 62px;
    padding: 10px 18px;
    border-radius: 16px;
}

.page-section--price-category .price-row__market-price,
.page-section--price-subcategory .price-row__market-price,
.page-section--price-service .price-row__market-price {
    font-size: 18px;
}

.page-section--price-category .price-row__market-saving,
.page-section--price-subcategory .price-row__market-saving,
.page-section--price-service .price-row__market-saving {
    margin-top: 3px;
    font-size: 13px;
}

.page-section--price-category .price-section__bottom,
.page-section--price-subcategory .price-section__bottom,
.page-section--price-service .price-section__bottom {
    margin-top: 18px;
}

.page-section--price-category .price-section__bottom-button,
.page-section--price-subcategory .price-section__bottom-button,
.page-section--price-service .price-section__bottom-button {
    min-width: 0;
    padding: 18px 30px;
}

.page-section--price-homepage_plus .price-home-group__global-head {
    display: grid;
    grid-template-columns: 187px minmax(0, 1fr);
    gap: 36px;
}

.page-section--price-homepage_plus .price-home-group__global-columns {
    display: flex;
    align-items: flex-end;
    gap: 24px;
}

.page-section--price-homepage_plus .price-home-group__global-columns .price-section__columns-label:first-child {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 548px;
}

.page-section--price-homepage_plus .price-home-group__global-columns .price-section__columns-label:nth-child(2) {
    text-align: end;
}

.page-section--price-homepage_plus .price-home-group__global-columns .price-section__columns-label:nth-child(3) {
    width: 210px;
    min-width: 305px;
}



.page-section--price-homepage_plus .price-home-group {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.page-section--price-homepage_plus .price-home-group__main {
    display: grid;
    grid-template-columns: 187px minmax(0, 1fr);
    gap: 36px;
}

.page-section--price-homepage_plus .price-home-group__title {
    line-height: 1.1;
    text-underline-offset: 4px;
    font-weight: 600;
    font-size: 25px;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--temno-zelenyy);
}

.page-section--price-homepage_plus .price-home-group__rows {
    grid-column: 2;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.page-section--price-homepage_plus .price-row--homepage-plus {
    gap: 24px;
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__service {
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__service-title {
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__service-description {
    margin-top: 3px;
    line-height: 1.2;
    font-weight: 600;
    font-size: 14px;
    color: var(--temno-zelenyy);
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__service-side {
    gap: 36px;
    align-items: center;
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__price {
    font-weight: 600;
    font-size: 20px;
    color: var(--temno-zelenyy);
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__old-price {
    font-weight: 600;
    font-size: 14px;
    text-decoration: line-through;
    text-align: right;
    color: #919191;
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__button {
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__market {
    min-width: 305px;
    border-radius: 16px;
    padding: 12px 24px;
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__market-price {
    font-weight: 600;
    font-size: 18px;
    color: var(--temno-zelenyy);
}

.page-section--price-homepage_plus .price-row--homepage-plus .price-row__market-saving {
    margin-top: 3px;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.page-section--price-prices_page .price-section {
    padding: 22px 32px 34px;
    border-radius: 36px;
}

.page-section--price-prices_page .price-section__top {
    gap: 0;
}

.page-section--price-prices_page .price-section__panel {
    display: block;
}

.page-section--price-prices_page .price-section__panel-inner {
    overflow: visible;
}

.page-section--price-prices_page .price-section__title {
    margin-top: 18px;
    font-size: 34px;
    line-height: 1.06;
}

.page-section--price-prices_page .price-section__description {
    max-width: 860px;
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.22;
}

.page-section--price-prices_page .price-section__rows {
    margin-top: 22px;
    gap: 14px;
}

.page-section--price-prices_page .price-section__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

.page-section--price-prices_page .price-home-group {
    display: block;
    margin-top: 8px;
}

.page-section--price-prices_page .price-home-group__main {
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr);
    gap: 28px;
}

.page-section--price-prices_page .price-home-group__title {
    padding-top: 10px;
    line-height: 1.05;
    text-decoration: underline;
    text-underline-offset: 4px;
    font-weight: 600;
    font-size: 18px;
    color: var(--temno-zelenyy);
}

.page-section--price-prices_page .price-home-group__rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.page-section--price-prices_page .price-row--homepage-plus {
    gap: 14px;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__service {
    min-height: 52px;
    padding: 8px 14px;
    border-radius: 14px;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__service-title {
    font-weight: 500;
    font-size: 13px;
    color: var(--chernyy);
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__service-description {
    margin-top: 3px;
    line-height: 1.2;
    font-weight: 500;
    font-size: 13px;
    color: var(--chernyy);
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__service-side {
    gap: 18px;
    align-items: center;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__badge {
    flex-shrink: 0;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__price {
    font-weight: 600;
    font-size: 18px;
    color: var(--temno-zelenyy);
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__old-price {
    font-weight: 500;
    font-size: 12px;
    text-decoration: line-through;
    text-align: right;
    color: #919191;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__button {
    width: 122px;
    min-width: 122px;
    padding: 8px 10px 8px 12px;
    border-radius: 14px;
    font-size: 11px;
    gap: 8px;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__button::after {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
    background-size: 28px 28px;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__market {
    width: 240px;
    min-width: 240px;
    min-height: 52px;
    padding: 10px 18px;
    border-radius: 14px;
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__market-price {
    font-weight: 600;
    font-size: 18px;
    color: var(--temno-zelenyy);
}

.page-section--price-prices_page .price-row--homepage-plus .price-row__market-saving {
    margin-top: 3px;
    font-weight: 500;
    font-size: 13px;
    color: var(--chernyy);
}

.page-section--price-prices_page .price-section__bottom {
    gap: 20px;
    margin: 28px 0 0 0;
}

.price-section__payment {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-top: 18px;
    padding: 24px 28px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.18);
}

.price-section__payment-title {
    margin: 0;
    color: var(--temno-zelenyy);
    font-weight: 600;
    font-size: 28px;
    line-height: 1.05;
}

.price-section__payment-text {
    color: var(--chernyy);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.22;
}

.price-section__payment-items {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.price-section__payment-item {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 54px;
    min-width: 0;
    padding: 12px 20px;
    border-radius: 999px;
    background: var(--belyy);
    color: var(--chernyy);
    text-decoration: none;
}

.price-section__payment-item-icon {
    display: inline-flex;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
}

.price-section__payment-item-icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.price-section__payment-item-text {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.1;
}

.price-page-group.is-hidden {
    display: none !important;
}

.prices-intro-cards__title {
    margin: 0 0 24px;
    color: var(--temno-zelenyy);
    font-weight: 700;
    font-size: 56px;
    line-height: 1.04;
}

.prices-intro-cards__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.prices-intro-card {
    display: flex;
    flex: 0 0 calc((100% - 40px) / 3);
    flex-direction: column;
    gap: 12px;
    min-width: 0;
    border-radius: 24px;
    padding: 18px 20px;
    background: #f7f7f7;
}

.prices-intro-card__head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.prices-intro-card__icon {
    display: inline-flex;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}

.prices-intro-card__icon-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.prices-intro-card__title {
    margin: 0;
    color: var(--chernyy);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.05;
}

.prices-intro-card__text {
    color: var(--chernyy);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
}

.page-section--price-homepage_plus .price-promo--homepage-plus {
    width: 100%;
}

.hero-card__inner {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 14px;
    align-items: stretch;
    margin-top: 24px;
}

.hero-card__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 350px;
}

.hero-card__title {
    margin: 0 0 24px;
    line-height: 1.18;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.hero-card__text {
    font-weight: 500;
    font-size: 16px;
    color: var(--chernyy);
}

.hero-card__accent {
    margin-top: 24px;
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.hero-card__prices {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-top: auto;
    padding-top: 24px;
}

.hero-card__price-current {
    font-weight: 600;
    font-size: 25px;
    color: var(--temno-zelenyy);
}

.hero-card__price-old {
    font-weight: 600;
    font-size: 18px;
    text-decoration: line-through;
    color: #919191;
}

.hero-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: auto;
    border: 1px solid transparent;
    background: linear-gradient(#ffffff, #ffffff) padding-box, linear-gradient(189deg, #e2245c 0%, #b725e2 100%) border-box;
    color: transparent;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    cursor: pointer;
    border-radius: 16px;
    padding: 12px 12px;
}

.hero-card__button span {
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.hero-card.is-photo-card {
    background: linear-gradient(135deg, #c8d6ff 0%, #ecb5a5 100%);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.hero-card.is-photo-card .hero-card__inner {
    grid-template-columns: minmax(0, 1fr);
}

.hero-card.is-photo-card .hero-card__content {
    max-width: 362px;
    padding: 14px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.74);
    backdrop-filter: blur(8px);
}
.hero-card__text p {
    margin: 0;
}
.hero-card__text ul {
    margin: 0 0 12px;
}
.site-menu {
    position: relative;
    overflow: visible;
}

.site-navigation {
    overflow: visible;
}

.site-menu > li {
    position: relative;
    padding: 0;
}

.site-menu > li.menu-item-has-children {
    position: relative;
}

.site-menu > li.menu-item-has-children::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 18px;
}

.site-menu > li > a {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    transition: color 0.2s ease, background 0.2s ease;
    border-radius: 12px;
    padding: 12px;
}

.site-menu > li.menu-item-has-children:hover > a,
.site-menu > li.menu-item-has-children:focus-within > a {
    color: var(--belyy);
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
}

.site-menu > li.menu-item-has-children > a::after {
    content: "";
    width: 7px;
    height: 7px;
    margin-top: -2px;
    border-right: 1.8px solid currentColor;
    border-bottom: 1.8px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
}

.site-menu > li.menu-item-has-children:hover > a::after,
.site-menu > li.menu-item-has-children:focus-within > a::after {
    transform: rotate(225deg);
    margin-top: 2px;
}

.site-menu > li > .sub-menu {
    --menu-col-1: 232px;
    --menu-col-2: 180px;
    --menu-col-3: 278px;
    --menu-col-gap: 14px;
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    display: block;
    width: calc(var(--menu-col-1) + (14px * 2));
    min-height: 250px;
    overflow: visible;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(0);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    z-index: 25;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.4);
    background: var(--belyy);
    border-radius: 12px;
    padding: 24px 12px;
}

.site-menu > li:hover > .sub-menu,
.site-menu > li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.site-menu > li > .sub-menu > li {
    position: static;
    width: var(--menu-col-1);
    min-width: var(--menu-col-1);
    padding: 0;
}

.site-menu > li > .sub-menu > li > .sub-menu > li,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li {
    position: static;
    padding: 0;
}

.site-menu > li > .sub-menu > li > a,
.site-menu > li > .sub-menu > li > .sub-menu > li > a,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #f5f5f5;
    color: var(--chernyy);
    line-height: 1.2;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 14px;
    border-radius: 12px;
    padding: 6px 12px;
    height: 36px;
    transition: color 0.2s ease, background 0.2s ease;
}

.site-menu > li > .sub-menu > li > a {
    width: var(--menu-col-1);
}

.site-menu > li > .sub-menu > li > .sub-menu > li > a,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > a {
    background: var(--belyy);
}

.site-menu > li > .sub-menu > li + li,
.site-menu > li > .sub-menu > li > .sub-menu > li + li,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li + li {
    margin-top: 6px;
}

.site-menu > li > .sub-menu > li.menu-item-has-children > a::after,
.site-menu > li > .sub-menu > li > .sub-menu > li.menu-item-has-children > a::after {
    content: "";
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='%23E5EFFB'/%3E%3Cpath d='M9 17L15 12L9 7' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px 24px;
    transition: background-image 0.2s ease;
}

.site-menu > li > .sub-menu > li.menu-item-has-children > a::before,
.site-menu > li > .sub-menu > li > .sub-menu > li.menu-item-has-children > a::before {
    content: none;
}

.site-menu > li > .sub-menu > li > .sub-menu,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu {
    position: absolute;
    top: 14px;
    left: calc(14px + var(--menu-col-1) + var(--menu-col-gap));
    width: var(--menu-col-2);
    min-height: calc(100% - 28px);
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 1;
    background: var(--svetlo-seryy);
    border-radius: 12px;
    padding: 12px;
}

.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu {
    top: 0;
    left: calc(100% + 14px);
    width: var(--menu-col-3);
    min-height: 100%;
    background: #f6f6f6;
}

.site-menu > li > .sub-menu:has(> li:hover > .sub-menu),
.site-menu > li > .sub-menu:has(> li:focus-within > .sub-menu) {
    width: calc(var(--menu-col-1) + var(--menu-col-gap) + var(--menu-col-2) + 24px);
}

.site-menu > li > .sub-menu:has(> li > .sub-menu > li:hover > .sub-menu),
.site-menu > li > .sub-menu:has(> li > .sub-menu > li:focus-within > .sub-menu) {
    width: calc(var(--menu-col-1) + var(--menu-col-gap) + var(--menu-col-2) + var(--menu-col-gap) + var(--menu-col-3) + 24px);
}

.site-menu > li > .sub-menu > li:hover > .sub-menu,
.site-menu > li > .sub-menu > li:focus-within > .sub-menu,
.site-menu > li > .sub-menu > li > .sub-menu > li:hover > .sub-menu,
.site-menu > li > .sub-menu > li > .sub-menu > li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.site-menu > li > .sub-menu > li > .sub-menu::before,
.site-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu::before {
    content: "";
    position: absolute;
    top: 0;
    left: -10px;
    width: 10px;
    height: 100%;
}

.site-menu > li > .sub-menu > li:hover > a,
.site-menu > li > .sub-menu > li:focus-within > a,
.site-menu > li > .sub-menu > li > .sub-menu > li:hover > a,
.site-menu > li > .sub-menu > li > .sub-menu > li:focus-within > a {
    color: var(--belyy);
    background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
}

.site-menu > li > .sub-menu > li:hover > a::after,
.site-menu > li > .sub-menu > li:focus-within > a::after,
.site-menu > li > .sub-menu > li > .sub-menu > li:hover > a::after,
.site-menu > li > .sub-menu > li > .sub-menu > li:focus-within > a::after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='white' fill-opacity='0.92'/%3E%3Cpath d='M9 17L15 12L9 7' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}






.site-modal {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

body.is-modal-open {
    overflow: hidden;
}

.site-modal.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.site-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(8, 14, 28, 0.45);
    backdrop-filter: blur(3px);
}

.site-modal__dialog {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 680px;
    max-height: 80vh;
    border-radius: 28px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(183, 37, 226, 0.38) rgba(12, 12, 12, 0.06);
    background: var(--belyy);
    box-shadow: 0 30px 80px rgba(10, 16, 30, 0.28);
}

.site-modal__dialog::-webkit-scrollbar {
    width: 8px;
}

.site-modal__dialog::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(12, 12, 12, 0.06);
}

.site-modal__dialog::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 999px;
    background: linear-gradient(189deg, rgba(226, 36, 92, 0.7) 0%, rgba(183, 37, 226, 0.7) 100%);
    background-clip: padding-box;
}

.site-modal__dialog::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(189deg, rgba(226, 36, 92, 0.9) 0%, rgba(183, 37, 226, 0.9) 100%);
    background-clip: padding-box;
}

.site-modal__close {
    position: absolute;
    top: 24px;
    right: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.96);
    cursor: pointer;
    z-index: 3;
}

.site-modal__close span {
    position: absolute;
    width: 14px;
    height: 2px;
    border-radius: 2px;
    background: #101010;
}

.site-modal__close span:first-child {
    transform: rotate(45deg);
}

.site-modal__close span:last-child {
    transform: rotate(-45deg);
}

.site-modal__hero {
    position: relative;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    min-height: 238px;
    padding: 28px 28px 0;
    background: linear-gradient(180deg, #171c2b 0%, #0d101a 100%);
}

.site-modal__hero-content {
    position: relative;
    z-index: 2;
    max-width: 280px;
    padding-bottom: 28px;
}

.site-modal__eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 8px 14px;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 999px;
    color: var(--belyy);
    font-weight: 500;
    font-size: 15px;
    line-height: 1;
}

.site-modal__title {
    margin: 22px 0 14px;
    color: var(--belyy);
    font-weight: 700;
    font-size: 32px;
    line-height: 1.02;
}

.site-modal__subtitle {
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.28;
}

.site-modal__hero-media {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    flex: 1;
    min-width: 260px;
}

.site-modal__logo {
    position: absolute;
    right: 8px;
    bottom: 34px;
    width: 240px;
    max-width: 60%;
    opacity: 0.26;
}

.site-modal__doctor-image {
    position: relative;
    z-index: 2;
    display: block;
    width: 290px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.site-modal__body {
    padding: 24px 28px 28px;
}

.site-modal__booking {
    margin-bottom: 18px;
}

.site-modal__booking-label {
    display: block;
    color: #393939;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.25;
}

.site-modal__booking-value {
    display: block;
    margin-top: 4px;
    color: #161616;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.2;
}

.site-modal__form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.site-modal__field {
    width: 100%;
}

.site-modal__input {
    width: 100%;
    height: 64px;
    padding: 0 24px;
    border: 0;
    border-radius: 20px;
    background: #f4f4f4;
    color: #181818;
    font-weight: 500;
    font-size: 18px;
}

.site-modal__input::placeholder {
    color: rgba(24, 24, 24, 0.56);
}

.site-modal__input.is-invalid,
.question-form-block__input.is-invalid {
    box-shadow: inset 0 0 0 2px rgba(227, 37, 92, 0.45);
}

.site-modal__submit {
    min-height: 68px;
    border: 0;
    border-radius: 20px;
    background: linear-gradient(90deg, #b72cff 0%, #f02a68 100%);
    color: var(--belyy);
    font-weight: 700;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.site-modal__submit:disabled,
.question-form-block__button:disabled {
    opacity: 0.7;
    cursor: wait;
}

.site-modal__consent {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 2px;
    cursor: pointer;
}

.site-modal__consent-input {
    position: absolute;
    opacity: 0;
    width: 24px;
    height: 24px;
    margin: 0;
}

.site-modal__consent-mark {
    position: relative;
    width: 24px;
    height: 24px;
    margin-top: 2px;
    background: #F6F6F6;
    border-radius: 8px;
    min-width: 24px;
}

.site-modal__consent-mark::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 8px;
    width: 8px;
    height: 14px;
    border-right: 2px solid #E3255C;
    border-bottom: 2px solid #E3255C;
    transform: rotate(45deg);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.site-modal__consent-input:checked + .site-modal__consent-mark::after {
    opacity: 1;
}

.site-modal__consent-text {
    line-height: 1.35;
    font-weight: 500;
    font-size: 12px;
    color: var(--chernyy);
}

.site-modal__consent-text a {
    text-decoration: underline;
    font-weight: 600;
    color: var(--krasnyy);
}

.site-form__status {
    min-height: 20px;
    line-height: 1.35;
    font-weight: 500;
    font-size: 13px;
}

.site-form__status.is-error {
    color: #e3255c;
}

.site-form__status.is-success {
    color: #0c8210;
}

.site-toast-stack {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 220;
    display: flex;
    flex-direction: column;
    gap: 12px;
    pointer-events: none;
}

.site-toast {
    max-width: min(420px, calc(100vw - 32px));
    padding: 14px 18px;
    border-radius: 18px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18);
    background: #ffffff;
    color: var(--chernyy);
    line-height: 1.35;
    font-weight: 600;
    font-size: 14px;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.site-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.site-toast.is-success {
    border: 1px solid rgba(12, 130, 16, 0.18);
}

.site-toast.is-error {
    border: 1px solid rgba(227, 37, 92, 0.18);
}

.site-floating-badge {
    position: fixed;
    right: 28px;
    bottom: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 150px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    z-index: 120;
    background: #000000;
    padding: 10px;
    border: 10px solid #000000;
    border-radius: 500px;
}

.site-floating-badge__ring {
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='141' height='141' viewBox='0 0 141 141' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M127.698 76.8821C127.81 75.9223 128.071 75.0569 128.48 74.2859C128.89 73.5149 129.411 72.8636 130.042 72.3318C130.685 71.8015 131.406 71.4166 132.205 71.1772C133.015 70.9392 133.877 70.8732 134.79 70.9793C135.703 71.0853 136.521 71.3464 137.244 71.7625C137.978 72.18 138.592 72.7199 139.084 73.3821C139.588 74.0457 139.951 74.7997 140.174 75.6441C140.396 76.4885 140.452 77.3848 140.342 78.3329C140.23 79.2928 139.97 80.1524 139.562 80.9116C139.152 81.6826 138.626 82.3333 137.983 82.8636C137.352 83.3954 136.631 83.7802 135.82 84.0183C135.021 84.2576 134.165 84.3243 133.252 84.2183C132.339 84.1122 131.516 83.8504 130.781 83.433C130.047 83.0155 129.433 82.4756 128.941 81.8134C128.448 81.1511 128.091 80.3978 127.869 79.5534C127.645 78.7207 127.588 77.8303 127.698 76.8821ZM129.702 77.0971C129.63 77.7175 129.669 78.3033 129.818 78.8545C129.968 79.4057 130.213 79.8969 130.555 80.3281C130.908 80.7606 131.329 81.1121 131.82 81.3826C132.321 81.6662 132.887 81.8447 133.519 81.9181C134.152 81.9915 134.738 81.947 135.279 81.7844C135.83 81.6348 136.321 81.3894 136.752 81.048C137.195 80.7079 137.553 80.2867 137.824 79.7845C138.096 79.2822 138.268 78.7208 138.34 78.1004C138.412 77.4801 138.374 76.8942 138.224 76.343C138.073 75.8035 137.822 75.3116 137.47 74.8674C137.129 74.4363 136.708 74.0789 136.207 73.7953C135.716 73.5248 135.155 73.3528 134.523 73.2794C133.902 73.2073 133.317 73.2461 132.765 73.3956C132.213 73.5568 131.715 73.8075 131.272 74.1475C130.841 74.4889 130.49 74.9108 130.218 75.4131C129.946 75.9153 129.774 76.4767 129.702 77.0971Z' fill='white'/%3E%3Cpath d='M125.633 87.5803L136.052 91.0923L135.341 91.4309L136.82 87.0423L138.662 87.6634L135.32 97.5796L133.477 96.9585L134.957 92.5699L135.323 93.2531L124.905 89.7411L125.633 87.5803Z' fill='white'/%3E%3Cpath d='M123.098 94.7113L133.819 100.887L131.058 105.681C130.364 106.886 129.583 107.687 128.715 108.085C127.857 108.488 126.984 108.434 126.096 107.923C125.218 107.417 124.724 106.704 124.614 105.784C124.515 104.87 124.768 103.887 125.374 102.836L125.767 103.429C125.079 104.624 124.307 105.41 123.45 105.787C122.594 106.164 121.711 106.091 120.803 105.567C119.873 105.032 119.34 104.27 119.203 103.28C119.077 102.295 119.398 101.135 120.169 99.7968L123.098 94.7113ZM123.5 97.5542L121.736 100.618C121.336 101.312 121.161 101.912 121.21 102.416C121.27 102.926 121.57 103.337 122.111 103.649C122.653 103.961 123.149 104.008 123.599 103.792C124.061 103.582 124.491 103.129 124.891 102.435L126.655 99.3715L123.5 97.5542ZM128.11 100.21L126.575 102.875C126.205 103.518 126.05 104.082 126.112 104.566C126.183 105.056 126.464 105.442 126.954 105.724C127.464 106.018 127.944 106.07 128.394 105.88C128.843 105.69 129.253 105.274 129.624 104.63L131.158 101.965L128.11 100.21Z' fill='white'/%3E%3Cpath d='M120.625 111.719L116.552 116.329L115.135 115.077L119.207 110.467L120.625 111.719ZM116.534 108.34L111.911 113.573L110.467 112.297L116.611 105.343L125.884 113.535L119.904 120.304L118.46 119.029L122.919 113.982L116.534 108.34Z' fill='white'/%3E%3Cpath d='M107.134 114.978L113.953 123.603L113.172 123.499L116.805 120.626L118.011 122.152L109.802 128.642L108.596 127.117L112.229 124.244L112.164 125.017L105.345 116.392L107.134 114.978Z' fill='white'/%3E%3Cpath d='M101.228 119.572L106.718 130.661L104.69 131.665L100.793 123.792L98.7341 134.614L96.8173 135.563L91.3278 124.474L93.3554 123.47L97.2451 131.327L99.3115 120.521L101.228 119.572Z' fill='white'/%3E%3Cpath d='M88.8235 125.567L91.2808 137.694L89.4445 138.066L82.3324 130.291L83.3198 130.091L79.882 140.004L78.0457 140.376L75.5537 128.256L77.7018 127.821L79.499 136.601L79.0485 136.692L81.9844 128.396L82.9892 128.192L88.9922 134.677L88.4725 134.782L86.6927 125.999L88.8235 125.567Z' fill='white'/%3E%3Cpath d='M69.2337 129.547L68.3148 131.136C67.827 130.716 67.2834 130.373 66.6841 130.106C66.0718 129.85 65.4558 129.683 64.8362 129.604C64.2165 129.525 63.6466 129.534 63.1263 129.632C62.5943 129.728 62.1596 129.912 61.822 130.184C61.4844 130.455 61.2908 130.82 61.2413 131.277C61.1816 131.827 61.3657 132.262 61.7933 132.581C62.208 132.91 62.802 133.117 63.5752 133.201L66.4396 133.511L66.2453 135.304L63.5567 135.012C62.8655 134.937 62.3172 135.02 61.9119 135.261C61.4948 135.5 61.2603 135.86 61.2082 136.34C61.165 136.739 61.2584 137.081 61.4882 137.366C61.7063 137.651 62.0251 137.881 62.4446 138.057C62.8523 138.231 63.3263 138.342 63.8665 138.389C64.3937 138.446 64.9532 138.423 65.545 138.321C66.1355 138.231 66.705 138.062 67.2535 137.813L67.774 139.737C66.9564 140.063 66.117 140.262 65.2557 140.335C64.3827 140.406 63.5517 140.364 62.7627 140.207C61.9737 140.05 61.2787 139.791 60.6779 139.43C60.0653 139.067 59.5917 138.625 59.2571 138.102C58.9213 137.592 58.7883 137.014 58.8581 136.37C58.9216 135.784 59.1363 135.28 59.5021 134.857C59.8549 134.445 60.3141 134.145 60.8797 133.958C61.4452 133.77 62.0853 133.715 62.7999 133.792L62.6511 134.345C61.8428 134.258 61.1551 134.041 60.5881 133.695C60.0081 133.359 59.5801 132.934 59.3042 132.418C59.0165 131.901 58.9069 131.326 58.9755 130.693C59.0402 130.096 59.2503 129.579 59.6056 129.144C59.9597 128.72 60.4175 128.378 60.979 128.119C61.5392 127.871 62.1672 127.708 62.8632 127.63C63.5579 127.563 64.2783 127.587 65.0242 127.704C65.7702 127.82 66.506 128.03 67.2317 128.334C67.9456 128.637 68.6129 129.041 69.2337 129.547Z' fill='white'/%3E%3Cpath d='M58.9161 127.383L49.763 137.399L47.6136 136.692L46.1712 123.193L48.4549 123.944L49.5225 136.036L48.6494 135.749L56.666 126.643L58.9161 127.383ZM55.5871 129.303L54.4364 130.822L48.0892 128.736L48.0645 126.83L55.5871 129.303Z' fill='white'/%3E%3Cpath d='M38.7864 118.475C39.5116 118.959 40.1535 119.537 40.7119 120.207C41.254 120.881 41.6359 121.561 41.8577 122.247L40.0432 123.183C39.8736 122.63 39.5864 122.084 39.1815 121.544C38.7766 121.005 38.285 120.542 37.7068 120.156C37.0208 119.698 36.395 119.479 35.8296 119.498C35.2577 119.527 34.8114 119.782 34.4908 120.262C34.1767 120.732 34.1045 121.222 34.2741 121.732C34.4437 122.242 34.9206 122.759 35.7046 123.283L36.6454 123.911L35.772 125.219L30.496 126.755L30.727 125.868L36.2544 129.558L35.1847 131.161L28.1725 126.479L29.0264 125.2L34.3023 123.664L34.9093 124.92L34.336 124.537C33.0718 123.693 32.3158 122.777 32.068 121.79C31.804 120.806 31.9664 119.873 32.5552 118.991C32.9412 118.413 33.4448 117.977 34.066 117.683C34.6871 117.389 35.4029 117.293 36.2134 117.395C37.0075 117.5 37.8652 117.86 38.7864 118.475Z' fill='white'/%3E%3Cpath d='M30.4836 111.841C31.1876 112.52 31.652 113.311 31.8768 114.216C32.0931 115.112 32.0352 116.055 31.7031 117.044C31.3629 118.042 30.7225 119.029 29.7818 120.004C28.8412 120.98 27.8825 121.651 26.9058 122.019C25.9209 122.395 24.9768 122.492 24.0734 122.308C23.1616 122.116 22.3536 121.681 21.6496 121.002C20.9371 120.315 20.4727 119.523 20.2564 118.627C20.0401 117.731 20.102 116.784 20.4423 115.786C20.7658 114.788 21.3979 113.802 22.3386 112.826C23.2792 111.851 24.2463 111.179 25.2396 110.811C26.2163 110.443 27.1563 110.351 28.0597 110.535C28.9631 110.718 29.771 111.154 30.4836 111.841ZM29.0971 113.278C28.6815 112.878 28.2147 112.64 27.6966 112.566C27.1704 112.501 26.5975 112.62 25.978 112.923C25.35 113.217 24.6925 113.721 24.0054 114.434C23.3101 115.155 22.8307 115.83 22.5671 116.46C22.2869 117.09 22.1931 117.663 22.2858 118.178C22.3703 118.701 22.6204 119.163 23.036 119.564C23.4347 119.949 23.9014 120.178 24.4361 120.251C24.9541 120.325 25.5271 120.215 26.1551 119.92C26.7665 119.626 27.4198 119.118 28.1151 118.397C28.8021 117.684 29.2858 117.013 29.566 116.383C29.8378 115.744 29.9314 115.163 29.8469 114.64C29.7457 114.117 29.4958 113.663 29.0971 113.278Z' fill='white'/%3E%3Cpath d='M20.3072 98.7907C20.7896 99.6006 21.1073 100.433 21.2602 101.289C21.397 102.14 21.3762 102.968 21.1978 103.774C21.0033 104.576 20.6564 105.318 20.1571 105.999C19.6578 106.681 19.0134 107.257 18.2237 107.727C17.4341 108.197 16.6208 108.49 15.7837 108.605C14.9467 108.719 14.1315 108.663 13.338 108.436C12.5344 108.215 11.7959 107.839 11.1226 107.308C10.4392 106.782 9.8532 106.109 9.36471 105.289C8.84606 104.418 8.5245 103.533 8.40002 102.633C8.26542 101.74 8.34395 100.87 8.63561 100.024L10.5951 100.585C10.4092 101.217 10.3568 101.831 10.4377 102.428C10.5086 103.03 10.7099 103.61 11.0416 104.167C11.3733 104.723 11.7689 105.18 12.2286 105.538C12.6822 105.885 13.1785 106.131 13.7176 106.276C14.2507 106.411 14.8024 106.439 15.3725 106.36C15.9366 106.271 16.492 106.063 17.0387 105.738C17.5854 105.412 18.0322 105.022 18.3792 104.569C18.7202 104.105 18.9582 103.607 19.0932 103.073C19.2223 102.53 19.2422 101.976 19.1531 101.412C19.0579 100.838 18.8444 100.273 18.5127 99.7157C18.181 99.1589 17.7722 98.7029 17.2863 98.3477C16.7903 97.9985 16.2151 97.7582 15.5607 97.6268L16.0157 95.6275C16.8882 95.7798 17.6904 96.1249 18.4223 96.6627C19.1542 97.2006 19.7825 97.9099 20.3072 98.7907Z' fill='white'/%3E%3Cpath d='M9.80496 94.0006L7.75258 88.2017L9.53549 87.5706L11.5879 93.3695L9.80496 94.0006ZM14.7448 92.0646L12.4152 85.4825L14.2314 84.8397L17.3277 93.588L5.66384 97.7165L2.65015 89.2015L4.46638 88.5586L6.71338 94.9074L14.7448 92.0646Z' fill='white'/%3E%3Cpath d='M12.7071 75.119L7.33581 80.1219L5.93494 78.4479L12.338 72.5469L12.7071 75.119ZM13.8695 83.2202L1.62198 84.9776L1.30064 82.738L13.5481 80.9805L13.8695 83.2202ZM8.48458 82.4036L6.52499 82.6848L5.93251 78.5554L7.8921 78.2742L8.48458 82.4036ZM7.14706 78.0597L7.16587 80.182L0.459614 76.8764L0.113164 74.4618L7.14706 78.0597Z' fill='white'/%3E%3Cpath d='M10.5093 71.2962C10.7703 70.6621 10.8622 70.0949 10.7849 69.5947C10.7077 69.0944 10.3744 68.6324 9.7852 68.2088L8.88472 67.5546L8.65097 67.3109L0.57154 62.5224L0.702411 60.2636L10.3616 66.206C11.1716 66.6897 11.7769 67.2441 12.1774 67.8693C12.5779 68.4945 12.7815 69.1556 12.7884 69.8524C12.8077 70.5381 12.637 71.2424 12.2765 71.9652L10.5093 71.2962ZM10.6243 67.4783L0 72.387L0.142118 69.9341L8.93225 66.1232L10.6243 67.4783Z' fill='white'/%3E%3Cpath d='M3.72497 48.2194L4.35954 46.0108L16.2513 49.4279L15.6167 51.6365L3.72497 48.2194ZM13.8497 57.7865L13.2151 59.9951L1.32336 56.578L1.95793 54.3694L13.8497 57.7865ZM10.5691 50.0021L8.69952 56.5089L6.81383 55.9671L8.68337 49.4603L10.5691 50.0021Z' fill='white'/%3E%3Cpath d='M20.4806 38.9861L12.3284 34.3705L9.94235 38.5852L11.8061 39.742C12.5065 40.1792 13.1623 40.6114 13.7735 41.0387C14.3802 41.4499 14.9102 41.8651 15.3635 42.2843C15.8227 42.6932 16.1685 43.0989 16.401 43.5014C16.6335 43.9039 16.722 44.2857 16.6665 44.647L15.1397 46.6263C15.3808 46.2483 15.4275 45.8549 15.2797 45.4462C15.1377 45.0273 14.851 44.6009 14.4195 44.167C13.9881 43.7332 13.4492 43.2858 12.8028 42.8251C12.1461 42.3585 11.4215 41.8805 10.6288 41.3911L7.28375 39.3347L11.7511 31.4436L21.5953 37.0172L20.4806 38.9861ZM18.9145 49.2511L14.9394 46.9801L21.7058 35.0281L25.6896 37.2837L24.6446 39.1296L22.3527 37.832L17.6763 46.0922L19.9682 47.3898L18.9145 49.2511Z' fill='white'/%3E%3Cpath d='M25.1125 29.0581C24.8407 29.3525 24.5094 29.5117 24.1184 29.5357C23.7274 29.5597 23.3674 29.4198 23.0384 29.1161C22.718 28.8203 22.5542 28.4766 22.5469 28.085C22.5395 27.6933 22.6717 27.3503 22.9435 27.0559C23.2312 26.7441 23.5666 26.5806 23.9496 26.5653C24.3326 26.55 24.6842 26.6902 25.0046 26.9859C25.3336 27.2897 25.5058 27.6331 25.5211 28.0161C25.5364 28.399 25.4002 28.7464 25.1125 29.0581Z' fill='white'/%3E%3Cpath d='M33.4147 25.3005L26.7727 14.861L28.3535 13.8552L37.7804 18.5629L36.9304 19.1038L36.5854 8.61728L38.1662 7.61145L44.838 18.0319L42.9888 19.2086L38.1632 11.6569L38.5509 11.4102L38.7848 20.2075L37.9199 20.7578L29.9909 16.8569L30.4383 16.5722L35.249 24.1334L33.4147 25.3005Z' fill='white'/%3E%3Cpath d='M50.0628 7.45615C51.477 7.044 52.661 7.0426 53.6149 7.45195C54.5688 7.8613 55.2304 8.69953 55.5997 9.96665C55.9888 11.3017 55.8596 12.4379 55.2123 13.3753C54.5729 14.2981 53.5009 14.9788 51.9963 15.4173L46.8884 16.906L43.4265 5.02673L45.5986 4.39366L46.7707 8.41564L50.0628 7.45615ZM51.3999 13.7499C52.2484 13.5026 52.8468 13.1134 53.1953 12.5823C53.555 12.0478 53.6245 11.4016 53.4035 10.6436C53.1859 9.89686 52.7958 9.4214 52.233 9.21718C51.667 9.00164 50.9541 9.01917 50.0943 9.26976L47.2603 10.0957L48.566 14.5759L51.3999 13.7499ZM58.4956 13.523L55.0337 1.64378L57.2058 1.01071L60.6677 12.89L58.4956 13.523Z' fill='white'/%3E%3Cpath d='M73.4587 12.7208C72.494 12.6649 71.6151 12.4546 70.8217 12.0899C70.0284 11.7252 69.3482 11.2432 68.7809 10.6437C68.2143 10.0325 67.7885 9.33496 67.5034 8.55118C67.219 7.75563 67.1034 6.89904 67.1566 5.98141C67.2097 5.06378 67.4232 4.23215 67.7969 3.48655C68.1712 2.72917 68.6748 2.08552 69.3075 1.55559C69.9408 1.01389 70.6726 0.607735 71.5027 0.337127C72.3328 0.0665183 73.2243 -0.0411791 74.1772 0.0140348C75.1418 0.0699303 76.0149 0.279876 76.7965 0.643871C77.5898 1.00855 78.2697 1.4965 78.8363 2.10772C79.4035 2.70719 79.8294 3.40469 80.1138 4.20024C80.3988 4.98402 80.5148 5.83472 80.4616 6.75236C80.4085 7.66999 80.1947 8.50749 79.8203 9.26487C79.446 10.0222 78.9424 10.6659 78.3097 11.1958C77.6771 11.7258 76.9457 12.126 76.1155 12.3966C75.2972 12.6679 74.4116 12.776 73.4587 12.7208ZM73.5576 10.708C74.1811 10.7441 74.7636 10.6716 75.3053 10.4906C75.8469 10.3095 76.3231 10.0361 76.7338 9.67032C77.1452 9.29282 77.4718 8.85139 77.7135 8.34602C77.9677 7.82957 78.1132 7.2537 78.15 6.61841C78.1868 5.98313 78.1085 5.40019 77.9149 4.8696C77.7339 4.32793 77.4605 3.85173 77.0947 3.441C76.7297 3.01851 76.2886 2.68605 75.7715 2.44362C75.2544 2.20118 74.6841 2.0619 74.0606 2.02577C73.4371 1.98964 72.8546 2.06212 72.3129 2.24321C71.783 2.42498 71.3065 2.70427 70.8834 3.08109C70.4727 3.44683 70.1402 3.88792 69.886 4.40437C69.6443 4.90974 69.505 5.48007 69.4682 6.11535C69.4321 6.73887 69.5045 7.32147 69.6856 7.86314C69.8785 8.4055 70.1574 8.88792 70.5224 9.31041C70.8882 9.72114 71.3296 10.0477 71.8467 10.2902C72.3638 10.5326 72.9341 10.6719 73.5576 10.708Z' fill='white'/%3E%3Cpath d='M93.6621 3.97665L95.8582 4.65291L92.217 16.4784L90.0209 15.8022L93.6621 3.97665ZM83.9057 13.9191L81.7096 13.2428L85.3509 1.41726L87.5469 2.09352L83.9057 13.9191ZM91.7504 10.7861L85.2804 8.79375L85.8578 6.91855L92.3278 8.91092L91.7504 10.7861Z' fill='white'/%3E%3Cpath d='M94.7091 17.6683C94.5366 17.5664 94.3731 17.4493 94.2186 17.317C94.0641 17.1847 93.8974 17.0383 93.7185 16.8778L94.8713 15.2389C94.9894 15.3634 95.1296 15.4736 95.2919 15.5695C95.718 15.8213 96.1598 15.8496 96.6172 15.6545C97.0807 15.4492 97.5689 15.0396 98.0821 14.4258C98.5953 13.8119 99.1658 13.0198 99.7938 12.0495L102.553 7.7258L110.391 12.356L104.097 23.0094L102.15 21.8586L107.741 12.3923L107.91 13.149L102.843 10.1551L103.565 9.90462L101.589 13.0073C100.935 14.0445 100.316 14.9309 99.7306 15.6665C99.1455 16.4021 98.5744 16.975 98.0175 17.385C97.4766 17.7909 96.9346 18.025 96.3913 18.0873C95.8481 18.1496 95.2874 18.01 94.7091 17.6683Z' fill='white'/%3E%3Cpath d='M105.107 23.4766L117.666 18.3434L119.306 19.902L114.831 32.7191L113.089 31.063L117.3 19.678L117.967 20.3112L106.824 25.1083L105.107 23.4766ZM108.937 23.1666L110.628 22.2859L115.471 26.8888L114.677 28.622L108.937 23.1666Z' fill='white'/%3E%3Cpath d='M115.505 33.5816L125.845 26.7868L127.087 28.6777L119.746 33.502L130.737 34.2323L131.911 36.0198L121.571 42.8145L120.329 40.9236L127.656 36.1091L116.679 35.3691L115.505 33.5816ZM129.558 30.9249C128.976 30.0386 128.723 29.2459 128.799 28.547C128.882 27.8579 129.26 27.2852 129.933 26.8288L130.817 28.1731C130.459 28.4224 130.256 28.725 130.208 29.081C130.166 29.4468 130.284 29.8414 130.562 30.2649C130.841 30.6884 131.156 30.9536 131.508 31.0605C131.867 31.1773 132.232 31.1209 132.603 30.8913L133.476 32.2209C132.79 32.6575 132.111 32.7723 131.439 32.5652C130.768 32.358 130.14 31.8113 129.558 30.9249Z' fill='white'/%3E%3Cpath d='M137.536 49.4632L138.303 51.6294L126.639 55.758L125.872 53.5917L137.536 49.4632ZM123.737 47.5596L122.971 45.3933L134.635 41.2648L135.401 43.431L123.737 47.5596ZM130.93 51.989L128.671 45.6069L130.521 44.9522L132.78 51.3343L130.93 51.989Z' fill='white'/%3E%3Cpath d='M131.353 63.765C131.313 63.3664 131.413 63.0128 131.655 62.7042C131.896 62.3957 132.239 62.219 132.685 62.1742C133.119 62.1306 133.485 62.2359 133.783 62.4902C134.081 62.7445 134.25 63.0709 134.29 63.4696C134.332 63.8917 134.232 64.2511 133.99 64.5479C133.747 64.8447 133.409 65.015 132.975 65.0586C132.53 65.1034 132.158 65.0045 131.862 64.762C131.565 64.5194 131.395 64.1871 131.353 63.765Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    animation: site-floating-badge-spin 14s linear infinite;
    /* padding: 10px !important; */
}

.site-floating-badge__center {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    width: 80px;
    height: 80px;
}

.site-floating-badge__icon {
    position: absolute;
    inset: 50% auto auto 50%;
    object-fit: contain;
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.88);
    transition: opacity 0.45s ease, transform 0.45s ease;
}

.site-floating-badge__icon.is-active {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.site-floating-badge:hover .site-floating-badge__center {
    transform: scale(1.03);
}

.site-floating-badge__center {
    transition: transform 0.25s ease;
}

.site-floating-badge--large {
    position: relative;
    right: auto;
    bottom: auto;
    width: 320px;
    height: 320px;
}

.site-floating-badge--large .site-floating-badge__center {
    width: 198px;
    height: 198px;
}

.site-floating-badge--large .site-floating-badge__icon {
    width: 126px;
    height: 126px;
}

.site-modal__dialog--badge {
    width: min(560px, calc(100vw - 32px));
    padding: 24px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.4);
    background: var(--svetlo-seryy);
    border-radius: 36px;
}

.site-modal__dialog--notice-estimate {
    width: min(640px, calc(100vw - 32px));
    padding: 0;
    overflow: auto;
    border-radius: 32px;
    background: #f5f5f5;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.24);
}

.site-notice-modal {
    display: flex;
    flex-direction: column;
}

.site-notice-modal__hero {
    display: flex;
    align-items: stretch;
    gap: 20px;
    min-height: 246px;
    padding: 28px 28px 0;
    background: linear-gradient(180deg, #191d31 0%, #141727 100%);
}

.site-notice-modal__hero-content {
    position: relative;
    z-index: 2;
    flex: 1;
    max-width: 310px;
    padding-bottom: 26px;
}

.site-notice-modal__eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 8px 14px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 999px;
    color: var(--belyy);
    font-weight: 500;
    font-size: 15px;
    line-height: 1;
}

.site-notice-modal__title {
    margin: 20px 0 14px;
    color: var(--belyy);
    font-weight: 700;
    font-size: 32px;
    line-height: 1.02;
}

.site-notice-modal__subtitle {
    margin: 0;
    max-width: 300px;
    color: rgba(255, 255, 255, 0.92);
    font-weight: 500;
    font-size: 18px;
    line-height: 1.25;
}

.site-notice-modal__hero-media {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    flex: 1;
    min-width: 240px;
}

.site-notice-modal__doctor-image {
    display: block;
    width: 280px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.site-notice-modal__body {
    padding: 28px;
}

.site-notice-modal__list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.site-notice-modal__item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 18px;
    border-radius: 18px;
    background: var(--belyy);
    box-shadow: 0 14px 32px rgba(17, 17, 17, 0.08);
    text-decoration: none;
}

.site-notice-modal__item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    border-radius: 50%;
    background: #edf5ff;
}

.site-notice-modal__item-icon-image {
    display: block;
    width: 36px;
    height: 36px;
    object-fit: contain;
}

.site-notice-modal__item-icon-fallback {
    color: #111;
    font-weight: 700;
    font-size: 26px;
    line-height: 1;
}

.site-notice-modal__item-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.site-notice-modal__item-title {
    color: var(--chernyy);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.2;
}

.site-notice-modal__item-text {
    color: #828282;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.25;
}

a.site-notice-modal__item:hover {
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.15);
    background: var(--belyy);
}

.site-badge-modal {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.site-badge-modal__title {
    margin: 0;
    font-weight: 600;
    font-size: 22px;
    color: var(--chernyy);
}

.site-badge-modal__subtitle {
    margin: 6px 0 24px;
    line-height: 1.3;
    font-weight: 500;
    font-size: 14px;
    color: var(--chernyy);
}

.site-badge-modal__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.site-badge-modal__item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: all 0.25s ease;
    border-radius: 14px;
    padding: 12px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0);
    background: var(--belyy);
}

.site-badge-modal__item-status {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #65e56b;
}

.site-badge-modal__item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
}

.site-badge-modal__item-icon-image {
    display: block;
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.site-badge-modal__item-content {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.site-badge-modal__item-title {
    line-height: 1.2;
    font-weight: 700;
    font-size: 16px;
    color: var(--chernyy);
}

.site-badge-modal__item-text {
    line-height: 1.25;
    font-weight: 500;
    font-size: 14px;
    color: #828282;
}

.site-modal__dialog--video {
    width: min(960px, calc(100vw - 32px));
    padding: 18px;
    border-radius: 28px;
    background: #111;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.24);
}

.site-video-modal__content {
    width: 100%;
}

.site-video-modal__embed,
.site-video-modal__embed iframe {
    width: 100%;
}

.site-video-modal__embed iframe {
    display: block;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
    border-radius: 18px;
}
.badge {
    max-width: none !important;
}
.site-video-modal__player {
    display: block;
    width: 100%;
    max-height: 78vh;
    border-radius: 18px;
    background: #000;
}

.promotions-slider__color .promotions-slider {
    background: linear-gradient(201deg, #cef0ed 0%, #c9e1fd 100%);
}
a.site-badge-modal__item:hover {
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.15);
    background: var(--belyy);
}
form.question-form-block__form span.site-modal__consent-mark {
    background: var(--belyy);
}
.note-block__card p {
    margin: 0;
}
@keyframes site-floating-badge-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}



.site-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 100;
    padding: 12px 0;
    box-sizing: border-box;
    backdrop-filter: blur(30px);
    background: rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.site-header__menu a,
.site-header__phone {
    color: #ffffff;
}

.site-header__phone {
    height: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    text-decoration: none;
    font-weight: 700;
    font-size: 18px;
    color: var(--white);
}

.site-header__callback {
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: var(--black);
    border-radius: 10px;
    padding: 12px;
    background: var(--white);
    border: none;
}

.hero-home__object-slider .slick-prev {
    left: auto;
    right: 50px;
    top: auto;
    bottom: 14px;
    transform: none;
}

.hero-home__top-card:empty {
    display: none;
}

.hero-home__object-slider .slick-next {
    right: 12px;
    top: auto;
    bottom: 14px;
    transform: none;
}

.site-footer {
    border-radius: 0;
    color: #ffffff;
    padding: 80px 0px;
    background: var(--black);
}
section.section-cta.section-cta--developers {
    background: var(--light-gray);
    padding: 80px 0;
}
iframe {
    border: none;
}
.developers-section__card-badges {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0;
}

span.developers-section__card-badge:nth-child(1) {
    font-weight: 600;
    font-size: 18px;
    color: var(--black);
}
section.section-cta.section-cta--developers.section-cta--home-developers {
    padding: 0 0 80px;
    background: unset;
}
section#section-cta-home {
    padding-bottom: 0;
}
.consultation-section__right {
    width: 100%;
    max-width: 600px;
}

.consultation-section__inner {
    justify-content: space-between;
}

input#consultation-section-field_4 {
    height: 120px;
}
.developers-section__card--11 {
    display: flex;
    flex-direction: column;
}

.developers-section__card.developers-section__card--9 .developers-section__card-logo {
    background: #bf0625;
}
.site-footer__locations {
    gap: 16px;
    align-items: center;
}

.site-footer__address {
    font-weight: 600;
    font-size: 14px;
    color: var(--white);
}

.site-footer__address-label {
    font-weight: 600;
    font-size: 12px;
    color: var(--gray-txt);
    margin-bottom: 3px;
}

.site-footer__location.site-footer__location--legal {
    max-width: 316px;
}
.contacts-info-section__card--addresses .contacts-info-section__label {
    font-weight: 600;
    font-size: 18px;
    color: var(--black);
    margin-bottom: 3px;
}

.contacts-info-section__card--addresses .contacts-info-section__icon {
    width: 80px;
    height: 80px;
}

.contacts-info-section__icon {
    width: 80px;
    height: 80px;
}

.contacts-info-section__icon img {
    width: 100%;
}

.contacts-info-section__card--addresses .contacts-info-section__value {
    font-weight: 600;
    font-size: 16px;
    color: var(--green);
}

.contacts-info-section__card--addresses {
    min-width: 400px;
}

.contacts-info-section__grid {
    display: flex;
}

.contacts-info-section__card {
    flex: 1;
}

.contacts-info-section__address-item + .contacts-info-section__address-item {
    margin-top: 16px;
}
span.site-footer__location-icon {
    width: 36px;
    height: 36px;
}
.reviews-section__item-text {
    font-weight: 400;
    font-size: 14px;
    color: var(--black);
}
@media (max-width: 1160px) {
    .site-header {
        padding-bottom: 16px;
    }
.hero-home__object-slider.slick-initialized.slick-slider {
    position: relative;
    bottom: 0;
    top: 40px;
}

.advantages-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.work-steps__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.work-steps__item:not(:last-child)::after {
    display: none;
}

.developers-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hot-offers__grid.slick-initialized .slick-slide {
    width: calc(var(--slider-visible-width) / 2.6 - 14px);
}
    .site-header__meta-item--hours,
    .site-header__phones {
        display: none;
    }

    .site-header__notice {
        display: none;
    }

    .site-header__head {
        flex-wrap: wrap;
        gap: 12px 14px;
        align-items: center;
        padding: 0 0 6px;
        margin: 0;
        background: var(--belyy);
        border-radius: 0;
        overflow: hidden;
        position: relative;
    }

    .site-header__meta-item {
        color: var(--belyy);
        font-size: 15px;
        white-space: normal;
    }

    .site-header__meta-item--location {
        order: -2;
        width: 100%;
        flex: 0 0 100%;
        margin: 0;
        padding: 12px 16px;
        background: linear-gradient(90deg, #43b5da 0%, #4c77ed 100%);
    }

    .site-header__meta-icon {
        color: rgba(255, 255, 255, 0.88);
    }

    .site-logo {
        order: 0;
        padding-left: 16px;
        z-index: 2;
    }

    .site-logo img,
    .site-logo__image {
        max-width: 140px;
    }

    .site-header__socials {
        order: 1;
        z-index: 1;
    }

    .site-header__menu-toggle {
        display: inline-flex;
        flex-shrink: 0;
        order: 2;
        width: 48px;
        height: 48px;
        margin-right: 6px;
        color: #e3255c;
        background: transparent;
    }

    .site-header__nav-wrap {
        position: fixed;
        top: 158px;
        left: 10px;
        right: 10px;
        width: auto;
        height: calc(100vh - 158px);
        background: rgb(255 255 255);
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        justify-content: flex-start;
        align-content: flex-start;
        transform: translateY(12px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
        overflow-y: auto;
        z-index: 34;
        gap: 24px;
    }

    .site-header.is-menu-open .site-header__nav-wrap {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .site-header.is-menu-open .site-header__menu-toggle {
        color: #e3255c;
    }

    .site-header.is-menu-open .site-header__menu-toggle-icon--menu {
        opacity: 0;
        transform: scale(0.7);
    }

    .site-header.is-menu-open .site-header__menu-toggle-icon--close {
        opacity: 1;
        transform: scale(1);
    }

    .site-header__mobile-notice,
    .site-header__mobile-contact-card {
        display: block;
        width: 100%;
    }

    .site-header__mobile-notice {
        order: 1;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        padding: 12px 14px;
        border-radius: 18px;
        color: var(--belyy);
        background: linear-gradient(90deg, #43b5da 0%, #4c77ed 100%);
    }

    .site-header__mobile-notice-message {
        display: flex;
        align-items: center;
        gap: 12px;
        min-width: 0;
        font-size: 16px;
        font-weight: 600;
        line-height: 1.15;
    }

    .site-header__mobile-notice-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        flex: 0 0 34px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: var(--belyy);
        position: relative;
        cursor: pointer;
    }

    .site-header__mobile-notice-button::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px;
        height: 10px;
        border-top: 2px solid #1d1e32;
        border-right: 2px solid #1d1e32;
        transform: translate(-60%, -50%) rotate(45deg);
    }

    .site-header__badge {
        order: 2;
        min-height: 44px;
        padding: 10px 18px;
        white-space: nowrap;
        margin-left: 0;
    }

    .site-navigation {
        order: 3;
        flex: 0 0 100%;
        width: 100%;
    }

    .site-menu {
        flex-wrap: wrap;
        align-items: stretch;
        gap: 10px;
    }

    .site-menu > li {
        flex: 0 0 auto;
        padding: 0;
    }

    .site-menu > li > a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        padding: 10px 16px;
        border-radius: 14px;
        background: var(--svetlo-seryy);
        font-size: 16px;
        line-height: 1.1;
    }

    .site-menu .sub-menu {
        display: none !important;
    }

    .site-menu > li.menu-item-has-children > a::after {
        content: "";
        display: inline-block;
        width: 24px;
        height: 24px;
        margin-left: 10px;
        border-radius: 50%;
        background: #e5effb url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='%23E5EFFB'/%3E%3Cpath d='M9 17L15 12L9 7' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/24px 24px no-repeat;
    }

    .site-header__promo {
        order: 4;
        width: 100%;
        justify-content: flex-start;
        min-height: 52px;
        padding: 12px 16px;
        border-radius: 18px;
        background: var(--svetlo-seryy);
        white-space: normal;
        margin-left: 0;
        font-size: 18px;
        font-weight: 500;
    }

    .site-header__mobile-contact-card {
        order: 5;
        padding: 16px;
        border-radius: 20px;
        background: linear-gradient(180deg, #ccecff 0%, #d8f6ef 100%);
    }

    .site-header__mobile-hours {
        display: flex;
        flex-direction: column;
        gap: 6px;
        color: var(--chernyy);
    }

    .site-header__mobile-hours .site-header__hours-head {
        gap: 10px;
        font-size: 15px;
        font-weight: 500;
    }

    .site-header__mobile-hours .site-header__hours-value {
        font-size: 16px;
        font-weight: 700;
    }

    .site-header__mobile-cta {
        width: 100%;
        margin-top: 14px;
        min-height: 54px;
        border-radius: 18px;
        padding: 14px 20px;
        font-size: 16px;
    }

    .site-header__mobile-phones {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-top: 12px;
    }

    .site-header__mobile-phone,
    .site-header__mobile-email {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-height: 48px;
        padding: 12px 16px;
        border-radius: 16px;
        background: linear-gradient(180deg, #c6ff86 0%, #b4f9b0 100%);
        font-size: 16px;
        font-weight: 700;
    }

    .site-header__mobile-email {
        margin-top: 10px;
    }

    .site-header__mobile-email-icon {
        width: 18px;
        height: 18px;
        filter: brightness(0);
    }

    .site-header__mobile-submenu:not([hidden]) {
        display: block;
        position: absolute;
        inset: 14px;
        z-index: 50;
        padding: 12px;
        /* border-radius: 20px; */
        background: #fff;
        /* box-shadow: 0 16px 40px rgba(0, 0, 0, 0.14); */
        overflow-y: auto;
        top: 84px;
        width: 100%;
        left: 0;
    }

    .site-header__mobile-submenu-head {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 18px;
    }

    .site-header__mobile-submenu-back {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 0;
        border: 0;
        background: transparent;
        font-size: 18px;
        font-weight: 500;
        color: var(--chernyy);
    }

    .site-header__mobile-submenu-back::before {
        content: "";
        width: 9px;
        height: 9px;
        border-left: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
    }

    .site-header__mobile-submenu-title {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        padding: 10px 18px;
        border-radius: 18px;
        background: linear-gradient(180deg, #d7ff8f 0%, #bdf17b 100%);
        font-size: 18px;
        font-weight: 500;
        color: var(--chernyy);
    }

    .site-header__mobile-submenu-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        position: relative;
        z-index: 1;
    }

    .site-header__mobile-submenu-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-height: 54px;
        padding: 12px 14px;
        border: 0;
        border-radius: 18px;
        background: var(--svetlo-seryy);
        font-size: 16px;
        font-weight: 500;
        line-height: 1.1;
        text-align: left;
        color: var(--chernyy);
        cursor: pointer;
    }

    .site-header__mobile-submenu-item::after {
        content: "";
        flex: 0 0 24px;
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: #e5effb url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='%23E5EFFB'/%3E%3Cpath d='M9 17L15 12L9 7' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/24px 24px no-repeat;
    }

    .site-header__mobile-submenu-item.is-active {
        color: var(--belyy);
        background: linear-gradient(189deg, #e2245c 0%, #b725e2 100%);
    }

    .site-header__mobile-submenu-item.is-active::after {
        background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='12' fill='white' fill-opacity='0.92'/%3E%3Cpath d='M9 17L15 12L9 7' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    }



    .site-header__head::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 10px;
        width: calc(100% - 20px);
        height: 60px;
        border-radius: 12px;
        background: var(--svetlo-seryy);
    }

    a.site-header__mobile-phone img {
        filter: brightness(0);
    }

    span.site-header__hours-head img {
        filter: brightness(0);
    }
    .hero-screen__content {
    max-width: 600px;
    padding-bottom: 0;
}

.hero-screen__actions {
    border: 1px solid var(--belyy);
    border-radius: 24px;
    padding: 12px;
    backdrop-filter: blur(30px);
    background: rgba(255, 255, 255, 0.3);
    justify-content: center;
    width: max-content;
    flex-direction: column;
    gap: 12px;
}

.hero-screen__booking {
    background-image: none;
    order: 1;
    padding: 0;
    text-align: center;
}

button.hero-screen__button.btn {
    order: 2;
}

.hero-screen__media {
    top: auto;
    bottom: 0;
    right: 0;
}

.benefits-cards {
    flex-wrap: wrap;
}

.page-section--price-homepage_plus .price-home-group__main {
    display: flex;
    flex-direction: column;
}

.page-section--price-homepage_plus .price-home-group__global-head {
    display: none;
}

.price-section__bottom {
    margin: 36px 0;
}
.contacts-info-section__grid {
    flex-wrap: wrap;
}

.site-footer__locations {
    flex-direction: column;
}
}
.site-header__burger,
.site-header__mobile-phone-button,
.site-header__mobile-panel {
    display: none;
}
.reviews-section__item-text {
    font-weight: 400;
    font-size: 14px;
    color: var(--black);
}
@media (max-width: 980px) {
    body.mobile-menu-open {
        overflow: hidden;
    }

    .site-header {
        position: fixed;
        inset: 0 0 auto;
        z-index: 300;
        padding: 0;
       
        border-bottom: 1px solid rgba(255, 255, 255, 0.35);
        padding: 6px 10px;
    }

    .site-header .container,
    .site-header__inner {
        width: 100%;
        max-width: none;
        padding: 0;
    }

    .site-header__inner {
        display: flex;
        align-items: center;
        gap: 0;
        /* padding: 6px 0; */
    }

    .site-header__left {
        order: 2;
    }

    .site-header__nav,
    .site-header__right {
        display: none;
    }

    .site-header__logo {
        grid-column: 2;
        justify-self: center;
        line-height: 0;
    }

    .site-header__logo img {
        max-width: 405px;
        max-height: 62px;
        width: auto;
        height: auto;
    }

    .site-header__burger,
    .site-header__mobile-phone-button,
    .site-header__mobile-close {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.14);
        cursor: pointer;
    }

    .site-header__burger {
        grid-column: 1;
        justify-self: center;
        flex-direction: column;
        gap: 3px;
        width: 30px;
        height: 30px;
        padding: 0;
        order: 1;
    }

    .site-header__burger span {
        display: block;
        width: 18px;
        height: 2px;
        border-radius: 999px;
        background: #ffffff;
    }

    .site-header__inner > .site-header__mobile-phone-button {
        grid-column: 3;
        justify-self: center;
        width: 30px;
        height: 30px;
        order: 3;
    }

    .site-header__mobile-panel {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 200;
        width: 100vw;
        max-width: none;
        min-height: 100dvh;
        padding: 0 14px 28px;
        overflow-y: auto;
        box-sizing: border-box;
        background: #101010;
        color: #ffffff;
        transform: translateX(-105%);
        transition: transform 0.25s ease;
    }

    .site-header.is-mobile-menu-open .site-header__mobile-panel {
        transform: translateX(0);
    }

    .site-header__mobile-panel-head {
        display: grid;
        grid-template-columns: 54px 1fr 54px;
        align-items: center;
        min-height: 50px;
        margin: 0 -14px 12px;
        padding: 0 10px;
        background: #234762;
    }

    .site-header__mobile-close,
    .site-header__mobile-panel-head .site-header__mobile-phone-button {
        width: 30px;
        height: 30px;
    }

    .site-header__mobile-close {
        position: relative;
        padding: 0;
    }

    .site-header__mobile-close span {
        position: absolute;
        width: 17px;
        height: 2px;
        border-radius: 999px;
        background: #ffffff;
    }

    .site-header__mobile-close span:first-child {
        transform: rotate(45deg);
    }

    .site-header__mobile-close span:last-child {
        transform: rotate(-45deg);
    }

    .site-header__mobile-logo {
        justify-self: center;
        line-height: 0;
    }

    .site-header__mobile-logo img {
        max-width: 160px;
        max-height: 30px;
    }

    .site-header__mobile-panel-head .site-header__mobile-phone-button {
        justify-self: end;
    }

    .site-header__mobile-manager {
        display: grid;
        grid-template-columns: 58px 1fr auto;
        align-items: center;
        gap: 10px;
        margin: 10px 10px 34px;
        padding: 8px;
        border: 1px solid #0d7df2;
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.04);
    }

    .site-header__mobile-manager-avatar {
        overflow: hidden;
        width: 54px;
        height: 54px;
        border-radius: 50%;
    }

    .site-header__mobile-manager-avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .site-header__mobile-manager-name {
        font-weight: 700;
        font-size: 15px;
        color: #ffffff;
    }

    .site-header__mobile-manager-position {
        margin-top: 3px;
        font-size: 13px;
        line-height: 1.25;
        color: rgba(255, 255, 255, 0.78);
    }

    .site-header__mobile-manager-socials,
    .site-header__mobile-socials {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .site-header__mobile-manager-socials a,
    .site-header__mobile-socials a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
    }

    .site-header__mobile-manager-socials img,
    .site-header__mobile-socials img {
        object-fit: contain;
    }

    .site-header__mobile-menu {
        display: flex;
        flex-direction: column;
        gap: 24px;
        margin: 0 10px 34px;
        padding: 0;
        list-style: none;
    }

    .site-header__mobile-menu a {
        color: #ffffff;
        font-size: 32px;
        line-height: 1.1;
        font-weight: 400;
        text-decoration: none;
    }

    .site-header__mobile-card {
        margin: 0 10px;
        padding: 14px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 22px;
        background: #262626;
    }

    .site-header__mobile-card-row {
        display: flex;
        align-items: center;
        gap: 14px;
        color: rgba(255, 255, 255, 0.72);
        font-size: 14px;
        line-height: 1.25;
        font-weight: 700;
        text-decoration: none;
    }

    .site-header__mobile-card-row + .site-header__mobile-card-row {
        margin-top: 20px;
    }

    .site-header__mobile-card-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 36px;
        height: 36px;
    }

    .site-header__mobile-card-icon img {
        object-fit: contain;
    }

    .site-header__mobile-card-phone {
        display: inline-flex;
        margin-top: 28px;
        color: #ffffff;
        font-size: 26px;
        line-height: 1.1;
        font-weight: 800;
        text-decoration: none;
    }

    .site-header__mobile-card-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-top: 26px;
    }

    .site-header__mobile-callback {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 42px;
        padding: 0 16px;
        border: 0;
        border-radius: 8px;
        background: #ffffff;
        color: #101010;
        font: inherit;
        font-size: 14px;
        font-weight: 700;
        text-decoration: none;
        cursor: pointer;
    }
.hot-offers__grid.slick-initialized .slick-slide {
        width: calc(var(--slider-visible-width) / 1.6 - 14px);
    }
    .reviews-section__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.consultation-section__inner {
    flex-direction: column;
}

.site-footer__top {
    flex-direction: column;
}
.service-cards-section__grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
button.developers-section__card-btn:hover {
    background: var(--green);
    color: #fff;
}

.page-template-developers .developers-section__grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
.contacts-info-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-template-contacts .contacts-section__inner {
    flex-direction: column;
    display: flex;
}

.page-template-contacts .faq-section__items {
    flex-direction: column;
    display: flex;
}
.contacts-info-section__grid {
    flex-direction: column;
}

.site-footer__contacts {
    flex-direction: column;
    align-items: flex-start;
}
}
@media (max-width: 680px) {
section.hero-home {
    padding: 0;
    min-height: auto;
}

.hero-home__object-slider.slick-initialized.slick-slider {
    top: 0;
}

.hero-home__inner {
    padding: 100px 0 60px;
}

.hero-home__top-card {
    margin-bottom: 16px;
}

h1.hero-home__title {
    font-size: 29px;
}

.hero-home__text {
    font-size: 20px;
}

.hero-home__features {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.hero-home__feature {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: calc(100%/2 - 36px);
}

.hero-home__feature-icon img {
    width: 100%;
    height: auto;
}

.hero-home__buttons {
    display: flex;
    flex-direction: row;
}

.hero-home__button {
    flex: 1;
    font-size: 14px;
}

.hero-home__object-slider.slick-initialized.slick-slider {
    margin-top: 56px;
    width: 100%;
}

.hero-home__object-image {
    min-height: 100px;
    width: 100px;
    flex: 0 0 100px;
}

.hero-home__object-image img {
    height: 100px;
}

.hero-home__object-title {
    font-size: 14px;
}

.hero-home__object-area {
    font-size: 12px;
}

span.hero-home__object-old-price {
    font-size: 12px;
}

span.hero-home__object-price {
    font-size: 14px;
}

.advantages-section__title, .hot-offers__title, .work-steps__title, .developers-section__title, .reviews-section__title, .consultation-section__title {
    font-size: 30px;
    margin-bottom: 8px;
}

.advantages-section__grid {
    flex-direction: column;
    display: flex;
}

.slick-arrow {
    display: none;
}

.hot-offers__grid.slick-initialized .slick-list {
    margin: 0;
}

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

.hot-offers__grid .hot-offers__slider-prev,
.hot-offers__grid .hot-offers__slider-next {
    display: none;
}
.hot-offers__card-title {
    font-size: 14px;
}

.hot-offers__card-meta {
    font-size: 12px;
}

span.hot-offers__card-location-icon {
    display: none;
}

.hot-offers__card-location {
    font-size: 12px;
}

span.hot-offers__card-old-price {
    font-size: 12px;
}

span.hot-offers__card-price {
    font-size: 14px;
}

.work-steps__item {
    border-radius: 20px;
    padding: 12px;
}

.work-steps__item-title {
    font-size: 18px;
}

.developers-section__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.developers-section__btn {
    align-self: flex-start;
}

.developers-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.slick-arrow {
    display: none !important;
}

.reviews-section__items.slick-initialized .slick-list {
    margin: 0;
}

.reviews-section__items.slick-initialized .slick-slide {
    width: calc(100vw - 76px);
    margin: 0 10px 0 0;
}

.hot-offers__grid.slick-initialized .slick-slide {
    width: calc(var(--slider-visible-width) / 0.8 - 0px);
}
.page-template-developers .inner-hero__stats {
    grid-template-columns: repeat(2, auto);
}
section.contacts-info-section {
    padding: 48px 0;
}

.contacts-info-section__grid {
    gap: 7px;
}

.contacts-info-section__card {
    border-radius: 20px;
    padding: 12px;
}

.contacts-info-section__icon {
    margin-bottom: 16px;
    width: 36px !important;
    height: 36px !important;
}

.contacts-info-section__label {
    font-size: 12px !important;
    margin-bottom: 8px;
}

a.contacts-info-section__value {
    font-size: 16px;
    margin-bottom: 8px;
}

.contacts-info-section__hint {
    font-size: 14px;
    margin-top: 8px;
}

.contacts-info-section__value {
    font-size: 16px;
}

.page-template-contacts .contacts-section {
    padding: 48px 0;
}

.page-template-contacts .contacts-section__inner {
    gap: 12px;
}

.page-template-contacts .contacts-section__left, .page-template-contacts .contacts-section__right {
    border-radius: 20px;
    padding: 24px 12px;
}

.page-template-contacts .contacts-section__title, .page-template-contacts .contacts-section__right-title {
    font-size: 20px;
    margin-bottom: 24px;
}

form.contacts-section__form {
    display: flex;
    flex-wrap: wrap;
}

.contacts-section__field {
    width: 100%;
}

.contacts-section__field:nth-child(2) {
    width: calc(100%/2 - 4px);
}
.contacts-section__field:nth-child(3) {
    width: calc(100%/2 - 4px);
}

button.contacts-section__submit {
    margin-top: 6px;
    width: 100%;
    border-radius: 16px;
    padding: 20px 32px;
    font-size: 12px;
}

.consultation-section__privacy, .contacts-section__privacy {
    font-size: 12px;
}

.contacts-section__right-title {
    margin-bottom: 8px !important;
}

.contacts-section__right-text {
    font-size: 12px !important;
    max-width: 300px;
}

.page-template-contacts .contacts-section__messengers {
    margin: 24px 0;
}

.page-template-contacts .contacts-section__messenger {
    width: 36px;
    height: 36px;
}

.page-template-contacts .contacts-section__find-title {
    font-size: 14px;
    margin-bottom: 16px;
}

.contacts-section__find-text {
    font-size: 12px !important;
}

.contacts-section__map {
    margin-top: 24px !important;
}

.page-template-contacts .faq-section {
    padding: 48px 0;
}

.page-template-contacts .faq-section__title {
    margin: 0 0 8px 0;
    font-size: 20px;
    text-align: start;
}

.page-template-contacts .faq-section__text {
    text-align: start;
    font-size: 12px;
    margin-bottom: 24px;
}

.page-template-contacts .faq-section__items {
    gap: 8px;
}

.page-template-contacts .faq-section__item {
    border-radius: 24px;
    padding: 12px;
}

.page-template-contacts .faq-section__item-question {
    font-size: 14px;
}

.page-template-contacts .faq-section__item-answer {
    font-size: 12px;
}
.reviews-section__slider-prev,
.reviews-section__slider-next {
    display: none;
}
}
@media (max-width: 460px) {
.hot-offers__card-title {
    font-size: 14px;
}

.hot-offers__card-meta {
    font-size: 12px;
}

span.hot-offers__card-location-icon {
    display: none;
}

.hot-offers__card-location {
    font-size: 12px;
}

span.hot-offers__card-old-price {
    font-size: 12px;
}

span.hot-offers__card-price {
    font-size: 14px;
}

.work-steps__item {
    border-radius: 20px;
    padding: 12px;
}

.work-steps__item-title {
    font-size: 18px;
}

.developers-section__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.developers-section__btn {
    align-self: flex-start;
}

.developers-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.slick-arrow {
    display: none !important;
}

.reviews-section__items.slick-initialized .slick-list {
    margin: 0;
}

.hot-offers__grid.slick-initialized .slick-slide {
    width: calc(var(--slider-visible-width) / 0.8 - 0px);
    height: auto;
}

footer.site-footer {
    padding: 48px 0px;
}

.site-footer__top {
    gap: 24px;
    margin-bottom: 32px;
}

.site-footer__logo img {
    width: 151px;
}

a.site-footer__logo {
    margin-bottom: 8px;
}

.site-footer__text {
    font-size: 12px;
}

.site-footer__contacts {
    flex-direction: column;
    gap: 24px;
    align-items: flex-start;
}

.site-footer__socials {
    order: 2;
}

a.site-footer__social-link {
    width: 36px;
    height: 36px;
}

.site-footer__location {
    order: 1;
    font-size: 14px;
}

span.site-footer__location-icon {
    width: 36px;
    height: 36px;
}

.site-footer__bottom {
    padding-top: 32px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.site-footer__copyright {
    font-size: 12px;
}

.site-footer__legal {
    gap: 8px;
    flex-direction: column;
    align-items: flex-start;
}

.site-footer__legal a {
    font-size: 12px;
}

.site-header__mobile-manager {
    margin: 0;
    gap: 6px;
    padding: 6px 12px 6px 6px;
    border-radius: 16px;
    position: relative;
    border: none;
    display: flex;
}

.site-header__mobile-manager::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    background: linear-gradient(240deg, #00b2ff 0%, #1350f3 52%, #ad44e1 100%);
    pointer-events: none;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}

.site-header__mobile-manager-avatar {
    width: 48px !important;
    height: 48px;
    min-width: 48px;
}

.site-header__mobile-manager-avatar img {
    min-width: 48px;
    height: 48px;
}

.site-header__mobile-manager-name {
    font-size: 14px;
}

.site-header__mobile-manager-position {
    font-size: 12px;
}

.site-header__mobile-manager-socials {
    gap: 12px;
}

nav.site-header__mobile-nav {
    margin: 32px 0;
}

.site-header__mobile-menu {
    margin: 0;
}

.site-header__mobile-menu ul li {
    font-weight: 400;
    font-size: 32px;
    color: var(--white);
}

.site-header__mobile-card {
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 24px;
    padding: 12px;
}

.site-header__mobile-card-row + .site-header__mobile-card-row {
    margin-top: 24px;
}

.site-header__mobile-card-bottom {
    margin-top: 24px;
    gap: 24px;
}

a.site-header__mobile-card-phone {
    font-weight: 700;
    font-size: 24px;
    color: var(--white);
}

button.site-header__mobile-callback {}

button.site-header__mobile-callback {
    min-height: auto;
    border-radius: 10px;
    padding: 12px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: var(--black);
}

.hero-home__top-card {
    border: none;
    border-radius: 16px;
    padding: 6px 12px 6px 6px;
}

.hero-home__manager-avatar {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
}

.hero-home__manager-name {
    font-size: 14px;
}

.hero-home__manager-position {
    font-size: 12px;
}

h1.hero-home__title {
    font-size: 23px;
    margin-bottom: 16px;
}

.hero-home__text {
    font-size: 16px;
    margin-bottom: 24px;
}

.hero-home__features {
    max-width: fit-content;
    margin-bottom: 24px;
}

.hero-home__feature-icon {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
}

.hero-home__feature {
    gap: 6px;
    width: calc(100% / 2 - 23px);
}

.hero-home__feature-title {
    font-size: 14px;
}

.hero-home__button {
    border-radius: 16px;
    padding: 20px 22px;
    font-size: 12px;
    min-height: auto;
}

.hero-home__object-link {
    gap: 6px;
    font-size: 12px;
}

.hero-home__object-link svg {
    flex: 0 0 10px;
}

.hero-home__object-slider .slick-arrow {
    display: block !important;
    bottom: 12px;
}

.hero-home__object-slider .slick-arrow img {
    height: auto;
}

.advantages-section, .hot-offers, .work-steps, .developers-section, .reviews-section, .consultation-section {
    padding: 48px 0;
}

.advantages-section__title, .hot-offers__title, .work-steps__title, .developers-section__title, .reviews-section__title, .consultation-section__title {
    font-size: 20px;
    margin-bottom: 8px;
}

.advantages-section__text, .hot-offers__text, .work-steps__text, .developers-section__text, .reviews-section__text, .consultation-section__text {
    font-size: 14px;
    margin-bottom: 24px;
}

.advantages-section__grid {
    gap: 7px;
    flex-direction: row;
    flex-wrap: wrap;
}

.advantages-section__item {
    border-radius: 20px;
    padding: 12px;
    width: calc(100%/2 - 4px);
}

.advantages-section__item-icon {
    width: 36px;
    height: 36px;
    margin-bottom: 16px;
}

.advantages-section__item-title {
    font-size: 14px;
    margin-bottom: 8px;
}

.advantages-section__item-text, .work-steps__item-text, .developers-section__card-desc, .reviews-section__item-text, .reviews-section__stat-label {
    font-size: 12px;
    line-height: normal;
}

h2.hot-offers__title {
    text-align: start;
}

.hot-offers__text {
    text-align: start;
}

.hot-offers__grid {
    gap: 7px;
}

.hot-offers__card-image {
    height: 120px;
}

.hot-offers__card-body {
    padding: 12px 6px;
}

.hot-offers__card-content {
    gap: 8px;
    border-radius: 8px;
    padding: 8px;
}

.hot-offers__card-title {}

.hot-offers__card-prices {
    margin-top: 12px;
}

span.hot-offers__card-price {
    font-size: 16px;
}

.hot-offers__card {
    border-radius: 12px;
}

.work-steps__items {
    gap: 7px;
}

.work-steps__item-number {
    font-size: 48px;
    margin-bottom: 16px;
}

.work-steps__item-title {
    font-size: 14px;
    margin-bottom: 8px;
}

.developers-section__header {
    gap: 0;
}

.developers-section__text {
    margin: 8px 0 16px !important;
}

button.developers-section__btn {
}

.developers-section__grid {
    gap: 7px;
}

.developers-section__card {
    border-radius: 20px;
    padding: 12px;
}

.developers-section__card-logo {
    height: 60px;
    border-radius: 16px;
    margin-bottom: 16px;
    overflow: hidden;
}

.developers-section__card-name {
    font-size: 16px;
    margin-bottom: 8px;
}

span.developers-section__card-badge:nth-child(1) {
    font-weight: 600;
    font-size: 14px;
    color: var(--black);
    margin-bottom: 8px !important;
}

.developers-section__card-badges {
    margin: 0;
    display: flex;
    flex-direction: column;
}

span.developers-section__card-badge {
    font-size: 12px;
}

.developers-section__cta {
    border-radius: 24px;
    padding: 40px 10px;
    margin-top: 24px;
}

.developers-section__cta-title {
    font-size: 20px;
}

.developers-section__cta-text {
    margin-bottom: 24px;
    font-size: 14px;
}

button.developers-section__cta-btn {
    border-radius: 16px;
    padding: 20px 32px;
    font-size: 12px;
    min-width: auto;
    min-height: auto;
}

.reviews-section__item.slick-slide.slick-current.slick-active {
    border-radius: 20px;
    padding: 12px;
}

.reviews-section__item-avatar {
    width: 48px;
    height: 48px;
    margin: 0 8px 8px 0;
}

.reviews-section__item-name {
    font-size: 14px;
}

.reviews-section__item-subtitle {
    font-size: 12px;
}

.hot-offers__card:last-of-type {
    display: none;
}
.reviews-section__item-rating {
    margin-bottom: 12px;
}

.reviews-section__stats {
    gap: 7px;
    margin-top: 24px;
}

.reviews-section__stat {
    border-radius: 20px;
    padding: 12px;
}

.reviews-section__stat-number {
    font-size: 40px;
    margin-bottom: 8px;
}
.consultation-section__inner {
    border-radius: 20px;
    padding: 24px 12px;
    gap: 24px;
}

.consultation-section__contact-icon {
    width: 36px;
    height: 36px;
}

.consultation-section__contact {
    grid-template-columns: 36px 1fr;
}

.consultation-section__contact-label.consultation-section__contact-content-label {
    font-size: 12px;
}

a.consultation-section__contact-value.consultation-section__contact-content-value {
    font-size: 16px;
}

.consultation-section__contact-value {
    font-size: 16px;
}

.consultation-section__contacts {
    gap: 12px;
}

.consultation-section__inner {}

form.consultation-section__form {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.consultation-section__input, .contacts-section__input {
    flex: 1;
    width: 100%;
}

.consultation-section__field {
    width: 100%;
    display: flex;
}



.consultation-section__field:nth-child(2) {
    width: calc(100%/2 - 2px);
}
.consultation-section__field:nth-child(3) {
    width: calc(100%/2 - 2px);
}

button.consultation-section__submit {
    margin-top: 12px;
    width: 100%;
}
.consultation-section__inner {
    border-radius: 20px;
    padding: 24px 12px;
    gap: 24px;
}

.consultation-section__contact-icon {
    width: 36px;
    height: 36px;
}

.consultation-section__contact {
    grid-template-columns: 36px 1fr;
}

.consultation-section__contact-label.consultation-section__contact-content-label {
    font-size: 12px;
}

a.consultation-section__contact-value.consultation-section__contact-content-value {
    font-size: 16px;
}

.consultation-section__contact-value {
    font-size: 16px;
}

.consultation-section__contacts {
    gap: 12px;
}

.consultation-section__inner {}

form.consultation-section__form {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.consultation-section__input, .contacts-section__input {
    flex: 1;
    width: 100%;
}

.consultation-section__field {
    width: 100%;
    display: flex;
}



.consultation-section__field:nth-child(2) {
    width: calc(100%/2 - 2px);
}
.consultation-section__field:nth-child(3) {
    width: calc(100%/2 - 2px);
}

button.consultation-section__submit {
    margin-top: 12px;
    width: 100%;
}

section.consultation-section {}

.popup__dialog {
    border-radius: 20px;
    padding: 24px 12px;
}

.popup__title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 24px;
    padding: 0;
}

button.popup__close.js-close-popup {
    width: 24px;
    height: 24px;
    top: 12px;
    right: 12px;
}

button.popup__submit {
    border-radius: 16px;
    padding: 20px 32px;
    font-size: 12px;
}

div#callback-popup {
    padding: 10px;
}
section.inner-hero.inner-hero--services {
    padding: 90px 0 48px;
}

h1.inner-hero__title {
    font-size: 30px;
    margin-bottom: 16px !important;
}

.inner-hero__text {
    font-size: 16px !important;
}

.page-template-flexible .inner-hero__btn {
    width: 100%;
    margin-top: 24px;
    border-radius: 16px;
    padding: 20px 32px;
    font-weight: 600;
    font-size: 12px;
    text-align: center;
    color: var(--white);
}

.service-cards-section__grid {
    gap: 8px;
}

section.service-cards-section {
    padding: 48px 0;
}

.service-cards-section__item {
    border-radius: 24px;
    padding: 24px;
}

.service-cards-section__item-head {
    margin-bottom: 12px;
}

.service-cards-section__item-title {
    font-size: 14px;
}

.service-cards-section__item-badge {
    font-size: 12px;
    border-radius: 8px;
    padding: 8px 12px;
}

.service-cards-section__item-text {
    font-size: 12px;
    margin-bottom: 12px;
}

ul.service-cards-section__item-list {
    gap: 4px;
    margin-bottom: 12px;
}

.service-cards-section__item-list li {
    font-size: 12px;
    padding-left: 20px;
}

.service-cards-section__item-list li::before {
    width: 10px;
    height: 3px;
}

button.service-cards-section__item-btn {
    border-radius: 16px;
    padding: 20px 32px;
    font-size: 12px;
}
section.section-cta.section-cta--developers.section-cta--page-developers {
    padding: 48px 0px;
}
.page-template-flexible .inner-hero {
    padding: 90px 0 48px;
}

h1.inner-hero__title {
    font-size: 30px !important;
    margin-bottom: 16px !important;
}


.page-template-developers .inner-hero__stats {
    margin-top: 24px;
    gap: 7px;
}

.page-template-developers .inner-hero__stat {
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 20px;
    padding: 12px;
}

.page-template-developers .inner-hero__stat-number {
    font-size: 32px;
    margin-bottom: 8px;
}

.page-template-developers .inner-hero__stat-label {
    font-size: 12px;
}

span.developers-section__card-stat-num {
    font-size: 24px !important;
}

span.developers-section__card-stat-label {
    font-size: 12px !important;
}

.page-template-developers .developers-section__card-btn {
    border-radius: 16px;
    padding: 20px 32px;
    font-size: 12px;
}
}

.btn:hover,
.popup__submit:hover,
.hero-home__button--primary:hover,
.developers-section__btn:hover,
.developers-section__cta-btn:hover,
.services-section__cta-btn:hover,
.consultation-section__submit:hover,
.contacts-section__submit:hover,
.inner-hero__btn:hover,
.site-modal__submit:hover,
.question-form-block__button:hover {
    background: var(--dark-green);
}

.btn,
.popup__submit,
.hero-home__button--primary,
.developers-section__btn,
.developers-section__cta-btn,
.services-section__cta-btn,
.consultation-section__submit,
.contacts-section__submit,
.inner-hero__btn,
.site-modal__submit,
.question-form-block__button {
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.site-header {
    transition: background 0.3s ease, border-color 0.3s ease, backdrop-filter 0.3s ease;
}

.site-header.is-scrolled {
    background: #234762;
}

.site-header__menu a,
.site-header__mobile-menu a {
    transition: color 0.3s ease;
}

.site-header__menu a:hover,
.site-header__menu a:focus-visible,
.site-header__mobile-menu a:hover,
.site-header__mobile-menu a:focus-visible {
    color: var(--green);
}
button.developers-section__btn:hover {
    color: #fff;
}a.site-header__mobile-phone-button svg {
    width: 22px;
    height: 22px;
}
.developers-section__card-logo {
    padding: 0 10px;
}

.developers-section__card.developers-section__card--4 .developers-section__card-logo {
    background: #1f4554;
}
.developers-section__card.developers-section__card--5 .developers-section__card-logo {
    background: #e10019;
}

.form-consent {
    position: relative;
    display: grid;
    grid-template-columns: 20px 1fr;
    gap: 10px;
    align-items: flex-start;
    margin-top: 2px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.35;
    color: var(--gray-txt);
    cursor: pointer;
}

.form-consent__input {
    position: absolute;
    width: 20px;
    height: 20px;
    margin: 0;
    opacity: 0;
}

.form-consent__box {
    position: relative;
    width: 20px;
    height: 20px;
    box-sizing: border-box;
    border: 1px solid #cfd6dc;
    border-radius: 6px;
    background: var(--white);
    transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.form-consent__box::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 6px;
    width: 5px;
    height: 10px;
    border-right: 2px solid var(--white);
    border-bottom: 2px solid var(--white);
    opacity: 0;
    transform: rotate(45deg);
    transition: opacity 0.2s ease;
}

.form-consent__input:checked + .form-consent__box {
    border-color: var(--green);
    background: var(--green);
}

.form-consent__input:checked + .form-consent__box::after {
    opacity: 1;
}

.form-consent__input:focus-visible + .form-consent__box {
    box-shadow: 0 0 0 3px rgba(39, 174, 96, 0.2);
}

.form-consent__text a {
    color: var(--dark-green);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.consultation-section__consent,
.contacts-section__consent {
    margin-top: 4px;
}

.popup__consent {
    font-size: 12px;
}

.legal-page__hero,
.error-page__section {
    padding: 160px 0 80px;
    background: #234762;
}

.legal-page__title,
.error-page__title {
    max-width: 920px;
    margin: 0;
    font-weight: 600;
    font-size: 56px;
    line-height: 1.1;
    color: var(--white);
}

.legal-page__lead,
.error-page__text {
    max-width: 760px;
    margin: 24px 0 0;
    font-size: 20px;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.82);
}

.legal-page__section {
    padding: 80px 0;
    background: var(--light-gray);
}

.legal-page__card {
    border-radius: 32px;
    padding: 56px;
    background: var(--white);
}

.legal-page__card h2 {
    margin: 36px 0 14px;
    font-weight: 600;
    font-size: 28px;
    line-height: 1.2;
    color: var(--black);
}

.legal-page__card h2:first-child {
    margin-top: 0;
}

.legal-page__card p {
    margin: 0;
    font-size: 18px;
    line-height: 1.55;
    color: #535b64;
}

.error-page__section {
    min-height: 620px;
    display: flex;
    align-items: center;
}

.error-page__content {
    max-width: 760px;
}

.error-page__code {
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 120px;
    line-height: 0.9;
    color: var(--green);
}

.error-page__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 36px;
    text-decoration: none;
}

.form-status {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.35;
    text-align: center;
}

.form-status--success {
    color: var(--dark-green);
}

.form-status--error {
    color: #c93838;
}

form.is-sending button[type="submit"] {
    opacity: 0.7;
    cursor: wait;
}

.form-notice {
    position: fixed;
    top: 96px;
    right: 24px;
    z-index: 10000;
    max-width: 420px;
    transform: translateY(-12px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.form-notice.is-visible {
    transform: translateY(0);
    opacity: 1;
}

.form-notice__text {
    border-radius: 16px;
    padding: 18px 22px;
    background: var(--white);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.16);
    font-weight: 600;
    font-size: 15px;
    line-height: 1.35;
    color: var(--black);
}

.form-notice--success .form-notice__text {
    border-left: 4px solid var(--green);
}

.form-notice--error .form-notice__text {
    border-left: 4px solid #c93838;
}

.site-header__mobile-card-content {
    min-width: 0;
}

.site-header__mobile-card-label,
.site-footer__address-label {
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.48);
    font-weight: 600;
}

.site-header__mobile-card-label {
    font-size: 14px;
}

.site-footer__locations {
    display: flex;
    align-items: flex-start;
    gap: 36px;
}

.site-footer__address-label {
    font-size: 14px;
    line-height: 1.2;
}

.contacts-info-section__card--addresses {
    grid-column: span 2;
}





@media (max-width: 980px) {
    .site-footer__locations {
        flex-direction: column;
        gap: 18px;
    }
}

@media (max-width: 680px) {
    .contacts-info-section__card--addresses {
        grid-column: 1 / -1;
    }
.page-template-developers .developers-section {
    padding: 48px 0 !important;
}
.site-footer__locations {
    align-items: flex-start !important;
}
.contacts-info-section__value {
    max-width: 300px !important;
}
.contacts-info-section__card.contacts-info-section__card--addresses {
    min-width: auto;
}
.site-footer__address-label {
    font-size: 12px;
    margin-bottom: 3px;
}
.site-header__mobile-card-label {
    font-weight: 600;
    font-size: 12px;
    color: var(--gray-txt);
}
a.inner-hero__btn {
    max-width: stretch;
}
.developers-section__cta-title {
    font-size: 20px !important;
}

.developers-section__cta-text {
    font-size: 14px !important;
}
   
}

section.section-cta.section-cta--developers.section-cta--page-developers .developers-section__cta.section-cta__box {
    margin: 0;
}
h2.faq-section__title {
    margin-top: 0;
}
.developers-section__header {
    margin-bottom: 24px;
}
.site-footer__locations {
    align-items: center;
}
.site-header__mobile-card-row {
    color: #fff;
}
a.inner-hero__btn {
    width: 336px;
}