/* Сброс и базовые стили */
*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: 'Open Sans', sans-serif;
	font-weight: 400;
    line-height: 1.1;
    color: #5B72CB;
    background: #fff;
}

img {
    height: auto;
    display: block;
    -webkit-touch-callout: none;                 /* iOS Safari */
    -webkit-user-select: none;                   /* Safari */
    -khtml-user-select: none;                    /* Konqueror HTML */
    -moz-user-select: none;                      /* Firefox */
    -ms-user-select: none;                       /* Internet Explorer/Edge */
    user-select: none;                           /* Все современные */
    pointer-events: none;                        /* полностью отключаем любые события мыши на картинке (hover, контекстное меню и т.д.) */
}

.width_100 {
	width: 100%;
}

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
	/* margin-left: 360px; */
    padding: 0;
}

/* Header */
.header {
	height: 124px;
    position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
	display: flex;
    align-items: center;
	overflow: hidden;
	background-color: #fff;
}

.header_container {
    position: relative;
    top: -1px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.logo {
	text-decoration: none;
}

.logo:focus {
	outline: none;
}

.logo img {
    height: 48px;
	width: 304.69px;
}

.header_info {
    display: flex;
    align-items: center;
    gap: 20px;
}

.header_buttons_group_horizontal {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header_btn_tel {
    display: flex;
	position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	height: 56px;
	line-height: 1;
    transition: all 0.3s ease-out;
	background-color: #5B72CB;
    color: #fff;
	padding: 0 25px;
	border: none;
	font-weight: 400;
	cursor: pointer;
}

.header_btn_tel:hover {
    background-color: #495ba2;
}

.header_btn_zakaz {
    display: flex;
	position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	height: 56px;
	line-height: 1;
    transition: all 0.3s ease-out;
	background-color: transparent;
    color: #5B72CB;
	padding: 0 23px 0 25px;
	border: none;
	outline: 1px solid #5B72CB;
	outline-offset: -1px;
	font-weight: 400;
	cursor: pointer;
}

.header_btn_zakaz:hover {
    background-color: rgba(230, 235, 255, 0.57);
}

.header_btn_schedule {
    display: flex;
	position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	height: 56px;
	line-height: 1;
    transition: all 0.3s ease-out;
	padding-left: 15px;
	padding-right: 25px;
    white-space: nowrap;
}

.schedule_text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.4;
	color: #202020;
}

.schedule_days {
    font-weight: 600;           /* жирный текст для дней */
    font-size: 18px;
}

.schedule_time {
    font-weight: 400;           /* лёгкий для времени */
    font-size: 18px;
}

/* Иконка часов */
.clock_icon_big {
    width: 27px;
    height: 27px;
    flex-shrink: 0;
}

.phone_icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.arrow_right_icon {
    width: 9px;
    height: 14px;
    flex-shrink: 0;
}

.link {
    position: relative;
    top: -1px; /* вот оно — то самое смещение вверх на 1px */
    /* или можно использовать transform: translateY(-1px); */
}

.btn_text{
    position: relative;
    top: -1px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
}

.mobile_toggle {
    display: none; /* скрыт на десктопе */
}

/* Hero */
.hero {
    height: 780px;
	position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
	display: flex;
    align-items: center;
	overflow: hidden;
}

.hero_container {
    position: relative;
}

.hero_content {
    position: relative;
    top: -7px;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 180px;
}

.hero_upper_part {
    position: relative;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 17px;
}

.hero_title {
    font-size: 48px;
    color: #5B72CB;
	margin: 0;
	font-weight: 400;
}

.hero_title strong {
    font-weight: 700;
}

.btn_hero {
    display: flex;
	position: relative;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    align-items: center;
    gap: 15px;
    border-radius: 50px;
	padding: 0 20px;
    text-decoration: none;
    font-size: 18px;
	height: 43px;
/* 	line-height: 1; */
/* 	letter-spacing: 0.5px; */
}

.btn_hero strong {
    font-weight: 400;
}

.btn_hero--light {
	background-color: transparent;
    color: #5B72CB;
	border: none;
	outline: 1px solid #5B72CB;
	outline-offset: -1px;
	font-weight: 400;
}

.btn_hero--dark {
	background-color: #5B72CB;
    color: #fff;
	border: none;
	font-weight: 400;
}

.header_btn_podbor {
    display: flex;
	position: relative;
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	height: 56px;
	line-height: 1;
    transition: all 0.3s ease-out;
	background-color: transparent;
    color: #5B72CB;
	padding: 0 23px 0 25px;
	border: none;
	outline: 1px solid #5B72CB;
	outline-offset: -1px;
	font-weight: 400;
	cursor: pointer;
}

.header_btn_podbor:hover {
    background-color: rgba(230, 235, 255, 0.57);
}

/* .hero_image {
    flex: 1 1 500px;
    text-align: center;
} */

/* .hero_image-wrapper {
    overflow: hidden;
} */

/* Отключаем стандартные действия браузера на изображении (дополнительная страховка) */
.hero_image {
	position: absolute;
}

.hero_image img {
	position: absolute;
    top: -434px;
    left: clamp(518px, calc(518px + (100vw - 1200px) * (83 / 252)), 601px);
    width: 959px;
    z-index: -1;
}


.discount {
    height: 62px;
    position: relative;
	z-index: -1;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Полосы слева */
.discount::before {
	z-index: -2;
    content: '';
    position: absolute;
    right: calc(50% + 298px);
    top: 0;
    height: 100%;
    width: 10000px; /* займёт всё пространство слева от центра */
    background: repeating-linear-gradient(
        71.9deg,
        transparent 0px,
        transparent 16px,
        #5B72CB 17px,
        #5B72CB 92px,
        transparent 93px,
        transparent 109px
    );
    background-position: right center;
}

/* Полосы справа */
.discount::after {
	z-index: -2;
    content: '';
    position: absolute;
    left: calc(50% + 298px);
    top: 0;
    height: 100%;
    width: 10000px;
    background: repeating-linear-gradient(
        251.9deg,
        transparent 0px,
        transparent 16px,
        #5B72CB 17px,
        #5B72CB 92px,
        transparent 93px,
        transparent 109px
    );
    background-position: left center;
}

.discount_container {
    position: relative;
    width: 599px;
    height: 62px;
    background: #5B72CB;
    display: flex;
    align-items: center;
    justify-content: center;
}

.discount_text {
    color: #fff;
    margin: 0;
    font-size: 28px;
    font-weight: 400;
    text-align: center;
}

.discount_text strong{
    font-weight: 600;
}

/* Catalog preview */
.catalog {
    padding-top: 126px;
	position: relative;
	z-index: 2;
	background-color: white;
}

.catalog_container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 29px;
}

.section_title {
	font-size: 40px;
    color: #202020;
    margin: 0;
    font-weight: 700;
}

.products_grid {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;                /* КЛЮЧЕВОЕ: разрешаем перенос на следующую строку */
    width: 100%;                    /* Наследуем полную ширину от родителя (.catalog_container) */
}

.product_card {
    background: #fff;
	display: flex;
    flex-direction: column;
    align-items: center;
	gap: 39px;
    border-radius: 50px;
    padding: 20px;
    transition: all 0.3s ease-out;
}

.product_card:hover {
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
}

.product_card_upper_part {
    display: flex;
    align-items: center;
	flex-direction: column;
	gap: 20px;
}

.product_card_image{
	position: relative;
	width: 340px;
	height: 300px;
	border-radius: 50px;
	overflow: hidden;
}

.product_card_image img{
	position: relative;
	top: -20px;
	width: 340px;
	z-index: 1;
}

.btn_product_card {
    display: flex;
	position: absolute;
    align-items: center;
    border-radius: 10px;
	padding: 0 10px;
    font-size: 14px;
	height: 39px;
	font-weight: 700;
    color: #5B72CB;
	border: none;
	outline: 1px solid #5B72CB;
	background-color: transparent;
	outline-offset: -1px;
	transition: all 0.3s ease-out;
	z-index: 2;
/* 	line-height: 1; */
/* 	letter-spacing: 0.5px; */
}

.magnit_mark {
	top: 20px;
	left: 20px;
}

.magnit_strength {
	top: 20px;
	right: 20px;
}

.product_card:hover .btn_product_card{
	background-color: #5B72CB;
	color: #fff;
	border: none;
	outline: none;
	
}

.product_card_title {
	text-align: center;
	font-size: 24px;
    color: #202020;
    margin: 0;
    font-weight: 600;
	line-height: 1.39;
}

.product_card_title strong{
	font-weight: 600;
}

.product_card_bottom_part {
    display: flex;
    align-items: center;
	flex-direction: row;
	gap: 10px;
}

.product_card_price_block{
    display: flex;
    align-items: center;
	flex-direction: column;
	position: relative;
}

.btn_product_card_discount_price{
	position: absolute;
	width: 76px;
	text-align: center;
    z-index: 1;
    top: -25px;
    border-radius: 10px;
	padding: 6px 0 0 0;
	height: 60px;
	font-size: 14px;
	font-weight: 700;
    color: #5B72CB;
	border: none;
	outline: 1px solid #5B72CB;
	background-color: transparent;
	outline-offset: -1px;
}

.del {
    opacity: 50%;
	text-decoration: line-through;
}

.btn_product_card_final_price{
	z-index: 2;
    display: flex;
    align-items: center;
    border-radius: 25px;
	padding: 0 20px;
	height: 47px;
	font-size: 24px;
	font-weight: 600;
    color: #fff;
	border: none;
	outline: none;
	background-color: #5B72CB;
}

.catalog_btn_more {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 47px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: transparent;
    color: #5B72CB;
    padding: 0 23px 0 25px;
    border: none;
    outline: 1px solid #5B72CB;
    outline-offset: -1px;
    font-weight: 400;
    cursor: pointer;
}

.catalog_btn_more:hover {
    background-color: rgba(230, 235, 255, 0.57);
}

.arrow_down_icon{
    width: 14px;
    height: 9px;
    flex-shrink: 0;
	transform: scaleY(-1) translateY(2px);
	transition: all 0.3s ease-out;
}

.catalog_btn_more.active .arrow_down_icon {
	transform: scaleY(1) translateY(0);
}

.detailed_section {
    margin-bottom: 120px;
    position: relative;
	z-index: 1;
	transition: all 0.3s ease-out;
}

.detailed_card {
    display: flex;
	position: absolute;
    top: -100px;
    transform: translateY(-100%);
    left: 0;
    right: 0;
    flex-direction: column;
	background-color: white;
    align-items: flex-start;
    gap: 25px;
	transition: top 0.3s ease-out, transform 0.3s ease-out;
}

.detailed_card.active {
    top: 100px;
    transform: translateY(0);
}

.detailed_card.hidden {
	opacity: 0;
}

.detailed_card_upper_part {
    display: flex;
    align-items: center;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
}

.detailed_card_left_upper_part{
    display: flex;
    align-items: center;
	flex-direction: row;
	gap: 15px;
}

.water_drop_icon{
    width: 24px;
    height: 31px;
    flex-shrink: 0;
}

.water_drop_wrapper {
	height: 31px;
}

.water_drop_wrapper:hover .btn_80_degrees_indicator {
	opacity: 25%;
}

.btn_80_degrees_indicator {
	display: flex;
	position: absolute;
    top: -28px;
    align-items: center;
    border-radius: 10px;
	padding: 0 15px;
    font-size: 12px;
	height: 28px;
	font-weight: 300;
	color: #fff;
	border: none;
	background-color: #FF0000;
	opacity: 0%;
	transition: all 0.3s ease-out;
/* 	line-height: 1; */
/* 	letter-spacing: 0.5px; */
}

.detailed_card_title {
	font-size: 32px;
    color: #202020;
    margin: 0;
    font-weight: 600;
	line-height: 1.39;
}

.btn_availability_indicator {
    display: flex;
    align-items: center;
    border-radius: 50px;
	padding: 0 25px;
    font-size: 18px;
	height: 45px;
	font-weight: 300;
	color: #fff;
	border: none;
	background-color: #5BCB75;
/* 	line-height: 1; */
/* 	letter-spacing: 0.5px; */
}

.product_gallery{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
}




/* Десктоп (fade + кроп сверху) */
.product_gallery_main {
    position: relative;
    width: 620px;
    height: 370px;
    border-radius: 25px;
    overflow: hidden;
    background-color: #EEEEEE;
	cursor: pointer;
}

.product_gallery_thumbs{
	width: 100%;
}

.empty_thumbs_wrapper {
	display: flex;
	flex-direction: row;
	gap: 20px;
	width: 100%;
}

.product_gallery_empty_thumb{
	overflow: hidden;
	border-radius: 20px;
    width: 140px;
    height: 140px;
	background-color: #EEEEEE;
}

/* Общие для Swiper */
.gallery-main-swiper,
.gallery-thumbs-swiper {
    width: 100%;
	height: 100%;
}

.gallery-main-swiper .swiper-slide,
.gallery-thumbs-swiper .swiper-slide {
    background-color: #EEEEEE;
}

.gallery-thumbs-swiper .swiper-slide {
	overflow: hidden;
	border-radius: 20px;
    width: 140px;
    height: 140px;
    cursor: pointer;
	outline-offset: -2px;
	outline: 2px solid transparent;
    transition: outline 0.1s ease-out;
}

.gallery-thumbs-swiper .swiper-slide-thumb-active {
    outline: 2px solid #5B72CB;
}


.gallery-main-swiper .swiper-slide img,
.gallery-thumbs-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}











.btn_detailed_card{
    display: flex;
    position: absolute;
    align-items: center;
    border-radius: 10px;
    padding: 0 10px;
    font-size: 14px;
    height: 39px;
    font-weight: 700;
    color: #fff;
	border: none;
	outline: none;
    background-color: #5B72CB;
    z-index: 2;
}

.detailed_magnit_mark{
    top: 20px;
    left: 20px;
}

.detailed_magnit_strength{
    top: 20px;
    right: 20px;
}

.detailed_card_bottom_part{
    display: flex;
    align-items: flex-start;
	flex-direction: row;
	gap: 25px;
	width: 100%;
}

.detailed_card_bottom_right_part{
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 532px;
}

.detailed_info{
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 25px;
	width: 100%;
}

.detailed_info_description{
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 15px;
	width: 100%;
}

.detailed_info_description p{
	font-size: 18px;
    color: #202020;
    margin: 0;
    font-weight: 400;
	line-height: 1.39;
}

.detailed_info_characteristics{
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.detailed_info_title {
	font-size: 24px;
    color: #202020;
    margin: 0;
    font-weight: 600;
	line-height: 1.39;
}

.characteristics_list {
    display: flex;
    flex-direction: column;
    gap: 3px;
    width: 100%;
	margin: 0;
}

.characteristic_item{
    display: flex;
    align-items: flex-start;
	justify-content: space-between;
    /* align-items: baseline; */
    position: relative;
	z-index: 0;
}

.characteristic_item dt {
	font-size: 18px;
    color: #202020;
	background-color: white;
    margin: 0;
    font-weight: 400;
	line-height: 1.39;
    white-space: nowrap; /* Не переносить ключ на новую строку */
}

.characteristic_item dd {
	font-size: 18px;
    color: #202020;
	background-color: white;
	margin: 0;
	font-weight: 500; /* Жирный для значений, чтобы визуально выделялись */
	line-height: 1.39;
	white-space: nowrap; /* Не переносить значение */
    text-align: right; /* Выравнивание по правому краю */
}

/* Заполнитель точками (leader) */
.characteristic_item::before {
    content: "";
    flex-grow: 1; /* Растягивает на всё пространство между dt и dd */
    border-bottom: 2px dotted #dfdfdf; /* Точки (dotted) для заполнения, цвет как у текста */
    position: absolute;
    bottom: 0.3em; /* Выравнивание по нижней части текста */
    left: 0;
    right: 0;
    z-index: -1; /* Под текстом, чтобы не перекрывать */
}

.detailed_buttons_group_horizontal{
    display: flex;
    align-items: center;
    gap: 10px;
}

.detailed_btn_suit_me {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: transparent;
    color: #5B72CB;
    padding: 0 25px;
    border: none;
    outline: 1px solid #5B72CB;
    outline-offset: -1px;
    font-weight: 400;
    cursor: pointer;
}

.detailed_btn_suit_me:hover {
    background-color: rgba(230, 235, 255, 0.57);
}

.detailed_btn_buy {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: #5B72CB;
    color: #fff;
    padding: 0 23px 0 25px;
    border: none;
    font-weight: 400;
    cursor: pointer;
}

.detailed_btn_buy:hover {
	background-color: #495ba2;
}

.contacts {
    height: 600px;
	position: relative;
	box-shadow:
		0 86px 34px rgba(0, 0, 0, 0.01),
		0 48px 29px rgba(0, 0, 0, 0.02),
		0 21px 21px rgba(0, 0, 0, 0.03),
		0 5px 12px rgba(0, 0, 0, 0.04);
	display: flex;
    align-items: center;
	overflow: hidden;
	background-color: #5B72CB;
}

.contacts_container {
    position: relative;
}

.contacts_content {
	z-index: 2;
    position: relative;
    top: -2px;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	justify-content: space-between;
	height: 446px;
}

.contacts_upper_part {
    position: relative;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 11px;
}

.contacts_title {
    position: relative;
    left: -2px;
    font-size: 40px;
    color: #fff;
	margin: 0;
	font-weight: 400;
}

.contacts_title strong {
    font-weight: 400;
}

.contacts_upper_part p {
    font-size: 20px;
    color: #fff;
    margin: 0;
    font-weight: 400;
    line-height: 1.35;
}

.contacts_upper_part p strong {
    font-weight: 600;
}

.contacts_bottom_part {
    position: relative;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 10px;
	width: 492px;
}

.buttons_hero_group_horizontal {
    display: flex;
    align-items: center;
    gap: 10px;
}

.buttons_group_horizontal {
    display: flex;
    align-items: center;
    gap: 10px;
}

.contacts_btn_tel {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
	width: 100%;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: #fff;
    color: #5B72CB;
    padding: 0 25px;
    border: none;
    font-weight: 400;
    cursor: pointer;
}

.contacts_btn_tel:hover {
	background-color: #f1f4ff;
}

.contacts_btn_zakaz {
    display: flex;
    position: relative;
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	width: 100%;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
	background-color: transparent;
    color: #fff;
    padding: 0 23px 0 25px;
    border: none;
    outline: 1px solid #fff;
    outline-offset: -1px;
    font-weight: 400;
    cursor: pointer;
}

.contacts_btn_zakaz:hover {
	background-color: rgba(230, 235, 255, 0.57);
}

.contacts_btn_telegram {
	display: flex;
    position: relative;
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	width: 100%;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
	background-color: transparent;
    color: #fff;
    padding: 0 25px;
    border: none;
    outline: 1px solid #fff;
    outline-offset: -1px;
    font-weight: 400;
    cursor: pointer;
}

.contacts_btn_telegram:hover {
	background-color: #269DDF;
}

.telegram_icon {
    width: 21px;
    height: 18px;
    flex-shrink: 0;
}

.contacts_btn_whatsapp {
	display: flex;
    position: relative;
    align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
	width: 100%;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
	background-color: transparent;
    color: #fff;
    padding: 0 25px;
    border: none;
    outline: 1px solid #fff;
    outline-offset: -1px;
    font-weight: 400;
    cursor: pointer;
}

.contacts_btn_whatsapp:hover {
	background-color: #2ED34C;
}

.whatsapp_icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.contacts_btn_schedule {
	display: flex;
    position: relative;
    width: 100%;
	height: 38px;
	align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
	opacity: 25%;
    text-decoration: none;
    font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
    transition: all 0.3s ease-out;
	background-color: transparent;
	color: #fff;
    border: none;
    outline: 1px solid #fff;
    outline-offset: -1px;
    padding-left: 15px;
    padding-right: 25px;
    white-space: nowrap;
}

.contacts_btn_schedule strong{
	font-weight: 600;
}

.contacts_btn_schedule:hover {
	opacity: 100%;
}

.clock_icon_little {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.contacts_image img {
	z-index: 1;
	position: absolute;
    top: -11px;
    left: clamp(509px, calc(509px + (100vw - 1200px) * (22 / 32)), 531px);
	width: 812px;
}

.advantages {
    height: 558px;
	position: relative;
/* 	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03); */
	display: flex;
    align-items: center;
}

.advantages_container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 29px;
	position: relative;
    top: 3px;
}

.advantages_grid {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.advantage_card {
    background: #5B72CB;
	position: relative;
	display: flex;
    flex-direction: column;
	gap: 12px;
    border-radius: 25px;
    padding: 18px;
	width: 288px;
	height: 239px;
	overflow: hidden;
}

.advantage_card_upper_part {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 10px;
}

.protection_icon{
    width: 30px;
    height: 30px;
    flex-shrink: 0;
}

.advantage_card_title {
    font-size: 18px;
    color: #fff;
    margin: 0;
    font-weight: 600;
    line-height: 1.1;
}

.advantage_card_text {
    font-size: 14px;
    color: #fff;
    margin: 0;
    font-weight: 400;
    line-height: 1.1;
}

.advantage_card_text strong {
    font-weight: 400;
}

.advantage_card_img_protection img{
	position: absolute;
    top: 148px;
    left: 60px;
	width: 175px;
}

.heat_resistance_icon{
    width: 30px;
    height: 30px;
    flex-shrink: 0;
}

.advantage_card_img_heat_resistance img{
	position: absolute;
    top: 113px;
    left: 89px;
	width: 110px;
}

.durability_icon{
    width: 33px;
    height: 31px;
    flex-shrink: 0;
}

.advantage_card_img_durability img{
	position: absolute;
    top: 133px;
    left: 52px;
	width: 187px;
}

.quality_control_icon{
    width: 30px;
    height: 30px;
    flex-shrink: 0;
}

.advantage_card_img_quality_control img{
	position: absolute;
    top: 103px;
    left: 1px;
	width: 267px;
}

.delivery {
    height: 600px;
	position: relative;
	display: flex;
    align-items: center;
	overflow: hidden;
	background-color: #5B72CB;
}

.delivery_container {
    position: relative;
}

.delivery_content {
    position: relative;
    top: -2px;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	justify-content: space-between;
	height: 436px;
}

.delivery_title {
    font-size: 64px;
    color: #fff;
    margin: 0;
    font-weight: 400;
}

.delivery_title strong {
    font-weight: 400;
}

.delivery_btn_find_more {
	display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: #fff;
    color: #5B72CB;
    padding: 0 23px 0 25px;
    border: none;
    font-weight: 400;
    cursor: pointer;
}

.delivery_btn_find_more:hover {
	background-color: #f1f4ff;
}

.delivery_image img {
	position: absolute;
    top: 5px;
    left: clamp(761px, calc(761px + (100vw - 1200px) * (40 / 71)), 801px);
	width: 444px;
}

.ending {
    height: 600px;
	position: relative;
	overflow: hidden;
	background-color: #fff;
}

.ending_container {
    position: relative;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
}

.ending_content {
    position: relative;
    top: 74px;
	right: 0px;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	justify-content: space-between;
	width: 492px;
	height: 452px;
}

.ending_upper_part {
    position: relative;
    display: flex;
    align-items: flex-start;
	flex-direction: column;
	gap: 11px;
}

.ending_title {
    position: relative;
    left: -2px;
    font-size: 40px;
    color: #5B72CB;
	margin: 0;
	font-weight: 400;
}

.ending_title strong {
    font-weight: 700;
}

.ending_upper_part p {
    font-size: 20px;
    color: #5B72CB;
    margin: 0;
    font-weight: 400;
    line-height: 1.35;
}

.ending_upper_part p strong {
    font-weight: 700;
}

.ending_bottom_part {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}

.ending_btn_zakaz {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    width: 100%;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: transparent;
    color: #5B72CB;
    padding: 0 23px 0 25px;
    border: none;
    outline: 1px solid #5B72CB;
    outline-offset: -1px;
    font-weight: 300;
    cursor: pointer;
}

.ending_btn_zakaz:hover {
	background-color: rgba(230, 235, 255, 0.57);
}

.ending_btn_schedule {
	display: flex;
    position: relative;
    width: 100%;
	height: 38px;
	align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
	opacity: 25%;
    text-decoration: none;
    font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
    transition: all 0.3s ease-out;
	background-color: transparent;
	color: #202020;
    padding-left: 15px;
    padding-right: 25px;
    white-space: nowrap;
}

.ending_btn_schedule strong{
	font-weight: 600;
}

.ending_btn_schedule:hover {
	opacity: 100%;
}

.ending_image img {
	position: absolute;
    top: 66px;
    left: -252px;
	width: 795px;
}

.footer {
	padding: 75px 0 76px 0;
	background-color: #33437E;
	text-wrap: nowrap;
}

.footer_container {
	width: clamp(
        1123px,
        calc(1123px + (100vw - 1200px) * (542 / 720)),
        1665px
    );
    min-width: 1123px;        /* страховка на случай очень узких экранов */
    max-width: none;          /* убираем старое ограничение, теперь clamp всё контролирует */
    margin: 0 auto;           /* центрирование */
    box-sizing: border-box;
}

.footer p {
	margin: 0;
}

.footer a {
	justify-self: center;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.25);
	transition: all 0.3s ease-out;
}

.footer a:hover {
	color: rgba(255, 255, 255, 1);
}

.footer a path {
	transition: all 0.3s ease-out;
}

.footer a:hover path{
	fill-opacity: 1;
}

.footer_main_part {
	display: grid;
    grid-template-columns: 408fr 1072fr 185fr;
    align-items: flex-end;
    margin: 0;
    padding-bottom: 21px;
    overflow: hidden;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.25);
    font-weight: 400;
    line-height: 1.65;
}

.footer_main_left_part {
    justify-self: start;
	display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 26px;
    width: 350px;
}

.footer_logo {
	height: 39px;
	text-decoration: none;
}

.footer_logo_icon {
    height: 39px;
	width: auto;
    flex-shrink: 0;
}

p.footer_copyright_left{
	margin-top: -3px;
}

.footer_main_left_part p a {
	text-decoration: underline;
}

.footer_center_part {
    display: grid;
    grid-template-columns: 749fr 323fr;
    margin: 0;
}

.footer_nav_part {
    display: grid;
    grid-template-columns: 372fr 377fr;
    margin: 0;
}

.footer_nav_first {
    display: grid;
    grid-template-columns: 170fr 202fr;
    align-items: flex-end;
    margin: 0;
}

.footer_nav_second {
    display: grid;
    grid-template-columns: 198fr 179fr;
    align-items: flex-end;
    margin: 0;
}

.schedule_wrapper {
	margin: auto;
}

.btn_schedule--transparent--white--without_border {
	display: flex;
    position: relative;
	height: 38px;
	align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
	opacity: 25%;
    text-decoration: none;
    font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    transition: all 0.3s ease-out;
	background-color: transparent;
	color: #fff;
    padding-left: 15px;
    padding-right: 25px;
    white-space: nowrap;
}

.btn_schedule--transparent--white--without_border strong{
	font-weight: 600;
}

.btn_schedule--transparent--white--without_border:hover {
	opacity: 100%;
}

.footer_contacts_wrapper {
	justify-self: end;
	display: flex;
	font-style: normal;
    flex-direction: column;
    align-items: flex-end;
	gap: 11px;
}

.footer_contacts {
	justify-self: end;
	display: flex;
	font-style: normal;
    flex-direction: column;
    align-items: flex-end;
	gap: 11px;
}

.social_links {
	display: flex;
    flex-direction: row;
	gap: 15px;
}

.social_links a {
    height: 14px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.telegram_icon_little {
    width: 12px;
    height: 10px;
    flex-shrink: 0;
}

.whatsapp_icon_little {
    width: 10px;
    height: 10px;
    flex-shrink: 0;
}

.vk_icon_little {
    width: 17px;
    height: 10px;
    flex-shrink: 0;
}

.footer_copyright_center {
    margin: 0;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    font-size: 14px;
    color: rgba(255, 255, 255, 0.25);
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
}

/* Общий оверлей */
.header_overlay {
    position: fixed;
    inset: 0; /* top:0; right:0; bottom:0; left:0; */
    background: rgba(0, 0, 0, 0.25);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
    z-index: 1000;
}

.header_overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Общий оверлей */
.modal_overlay {
    position: fixed;
    inset: 0; /* top:0; right:0; bottom:0; left:0; */
    background: rgba(0, 0, 0, 0.25);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
    z-index: 1002;
}

.modal_overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Общий стиль модального окна */
.modal {
    position: fixed;
	overflow: hidden;
	top: 0;                    /* растягиваем на весь экран */
    left: 0;
    right: 0;
    bottom: 0;
	margin: auto;              /* ← вот это центрирует по вертикали и горизонтали */
    border-radius: 50px; /* как на скриншоте */
	box-shadow: 
		0 62px 37px rgba(0, 0, 0, 0.02),
		0 28px 28px rgba(0, 0, 0, 0.03),
		0 7px 15px rgba(0, 0, 0, 0.03);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
    z-index: 1003;
}

.modal.active {
    opacity: 1;
    visibility: visible;
}

.order_call {
	background: #fff;
	max-width: 1200px;
	height: 501px;
    padding: 0 50px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.order_call_image img {
	width: 487px;
}

.modal_close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal_close_icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.order_call_phone_icon {
	display: none;
}

.order_call_content {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
	padding: 42px 0 50px 0;
    width: 492px;
    height: 100%;
}

.order_call_upper_part {
    position: relative;
}

.order_call_title {
    position: relative;
    left: -2px;
	font-family: 'Montserrat';
    font-size: 40px;
    color: #5B72CB;
    margin: 0;
    font-weight: 500;
}

.order_call_upper_part p {
    font-size: 20px;
    color: #5B72CB;
    margin: 0;
    font-weight: 400;
    line-height: 1.35;
}

.order_call_upper_part p strong {
    font-weight: 600;
}

.popup_form {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}

.form_error {
	margin: 0;
	font-size: 18px;
	color: #FF0000;
	opacity: 50%;
	display: none;
}

.popup_form input {
    display: flex;
    position: relative;
    align-items: center;
    border-radius: 25px;
    font-family: 'Open Sans';
	font-size: 18px;
    width: 100%;
    height: 56px;
    line-height: 1;
    background-color: transparent;
    color: #202020;
    padding: 0 25px;
    border: none;
    outline: 1px solid #202020;
    outline-offset: -1px;
}

.popup_form input:focus {
    outline: 2px solid #5B72CB;          /* толще и синяя */
    outline-offset: -2px;               /* чуть дальше от края */
}

.popup_form input::placeholder {
    color: #202020;
	opacity: 50%;
}

.form_field {
    display: flex;
    flex-direction: column;
	align-items: center;
    gap: 7px;
	width: 100%;
}

.form_field label {
    font-size: 14px;
    color: #202020;
    font-weight: 400;
    opacity: 0.8;
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.form_hint {
    font-size: 12px;
    color: #5B72CB;
}

.order_call_buttons_group {
    display: flex;
    align-items: center;
    gap: 10px;
	margin-top: 5px;
	width: 100%;
}

.order_call_btn_schedule {
	display: flex;
    position: relative;
    width: 100%;
	height: 38px;
	align-items: center;
	justify-content: center;
    gap: 15px;
    border-radius: 25px;
	opacity: 25%;
    text-decoration: none;
    font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
    transition: all 0.3s ease-out;
	background-color: transparent;
	color: #202020;
    padding-left: 15px;
    padding-right: 25px;
    white-space: nowrap;
}

.order_call_btn_schedule strong{
	font-weight: 600;
}

.order_call_btn_schedule:hover {
	opacity: 100%;
}

.order_call_clock_icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.new_order {
	background: #fff;
	max-width: 1282px;
	height: 545px;
    padding-right: 50px;
    padding-left: clamp(50px, calc(50px + (100vw - 1200px) * (39 / 82)), 89px);
	display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.new_order_image img {
	width: 554px;
}

.new_order_box_icon {
	display: none;
}

.new_order_content {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
	padding: 42px 0 50px 0;
    width: 492px;
	height: 100%;
}

.new_order_title {
	font-family: 'Montserrat';
    font-size: 40px;
    color: #5B72CB;
    margin: 0;
    font-weight: 600;
}

.new_order_buttons_group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.new_order_btn_buy {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
	width: 100%;
    line-height: 1;
    transition: all 0.3s ease-out;
	background-color: #5B72CB;
    color: #fff;
    padding: 0 23px 0 25px;
    border: none;
    font-weight: 400;
    cursor: pointer;
}

.new_order_btn_buy:hover {
	background-color: #495ba2;
}

.notification {
	background: #5B72CB;
	width: 592px;
	height: 352px;
    padding: 42px 50px 50px 50px;
}

.notification_image{
	position: absolute;
    top: 134px;
    left: 274px;
	width: 371px;
}

.notification_content {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
	height: 100%;
}

.notification_upper_part {
    position: relative;
}

.notification_title {
	font-family: 'Montserrat';
    font-size: 40px;
    color: #fff;
    margin: 0;
    font-weight: 500;
}

.notification_upper_part p {
    font-size: 20px;
    color: #fff;
    margin: 0;
    font-weight: 400;
    line-height: 1.35;
}

.notification_upper_part p strong {
    font-weight: 600;
}

.notification_btn_ok {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 18px;
    height: 56px;
    line-height: 1;
    transition: all 0.3s ease-out;
    background-color: #fff;
    color: #5B72CB;
    padding: 0 25px;
    border: none;
    font-weight: 400;
    cursor: pointer;
}

.notification_btn_ok:hover {
    background-color: #f1f4ff;
}




/* Полноэкранная модалка галереи (расширяет твои .modal стили) */
.fullscreen_modal {
    position: fixed; /* Полноэкранный, поверх всего */
    top: 0;
    left: 0;
    width: 100vw;
    height: 100dvh;
    background: #fff; /* Белый фон, как просил */
    z-index: 1000; /* Выше оверлея и других модалок */
    display: flex;
    flex-direction: column;
	justify-content: center;
    align-items: center;
    overflow: hidden;
    opacity: 0;
    pointer-events: none; /* Скрыта по умолчанию */
    transition: opacity 0.3s ease-out;
}

.fullscreen_modal.active {
    opacity: 1;
    pointer-events: auto; /* Активна при .active */
}


/* Крестик (расширяем твой .modal_close для этой модалки) */
.fullscreen_modal .modal_close {
	z-index: 2;
    top: 18px;
    right: 18px;
}

/* Крестик (расширяем твой .modal_close для этой модалки) */
.fullscreen_modal .modal_close path {
    fill: #202020;
	opacity: 31%;
	transition: opacity 0.3s ease-out;
}

/* Крестик (расширяем твой .modal_close для этой модалки) */
.fullscreen_modal .modal_close:hover path {
    fill: #202020;
	opacity: 72%;
}


/* Галерея внутри модалки (почти как .product_gallery, но полноэкранная) */
.fullscreen_gallery {
    /* height: 100%; */
	width: 100%;
	position: relative;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(20px, calc(100dvh * 26px / 934px), 26px);
}

/* Основное изображение (Swiper) — по центру */
.fullscreen_gallery_main {
	position: relative;
    width: clamp(1042px, calc(100vw - 158px), 1200px);
    max-width: clamp(672px, calc(100dvh * 1200px / 934px), 1200px);
    height: clamp(400px, calc(100dvh * 714px / 934px), 714px);
    border-radius: 25px;
    overflow: hidden;
    background-color: #EEEEEE;
}

.fs-gallery-main-swiper {
    width: 100%;
    height: 100%;
}

.fs-gallery-thumbs-swiper {
    width: auto;
    height: 100%;
	left: 10px;
}

.fs-gallery-main-swiper .swiper-slide,
.fs-gallery-thumbs-swiper .swiper-slide {
    background-color: #EEEEEE;
}

.fs-gallery-main-swiper .swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
}

.fs-gallery-thumbs-swiper .swiper-slide {
	overflow: hidden;
	border-radius: 20px;
    width: clamp(78px, calc(100dvh * 140px / 934px), 140px);
    height: clamp(78px, calc(100dvh * 140px / 934px), 140px);
    cursor: pointer;
	outline-offset: -2px;
	outline: 2px solid transparent;
    transition: outline 0.1s ease-out;
}

.fs-gallery-thumbs-swiper .swiper-slide-thumb-active {
    outline: 2px solid #5B72CB;
}

.fs-gallery-main-swiper .swiper-slide picture {
    width: 100%;
}

.fs-gallery-main-swiper .swiper-slide img,
.fs-gallery-thumbs-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Thumbs снизу по центру */
.fullscreen_gallery_thumbs {
    width: 100%;
    display: flex;
    justify-content: center;
}

/* Стрелки влево/вправо (absolute по краям модалки) */
.fs-nav-prev,
.fs-nav-next {
    position: absolute;
    top: clamp(184px, calc(100dvh * 714px / 934px / 2 - 16px), 341px);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    width: 36px;
    height: 36px;
}

.fs-nav-prev {
    left: 21px; /* Слева */
}

.fs-nav-next {
    right: 21px; /* Справа */
}

.fs-nav-prev path,
.fs-nav-next path {
	transition: stroke 0.3s ease-out;
    stroke: #5B72CB; /* Hover-эффект для usability */
}

.fs-nav-prev:hover path,
.fs-nav-next:hover path {
    stroke: #495ba2; /* Hover-эффект для usability */
}

.privacy-policy {
	color: #202020;
}

















/* ==================== АДАПТИВ ==================== */

/* Tablet: 768px — 1199px */
@media (max-width: 1199px) {
    .container {
        padding: 0 50px;
    }

    /* Header */
    .header {
        height: 100px;
        overflow: visible;
        z-index: 1001;
        position: relative;
    }
	
	.logo {
		text-decoration: none;
	}

    .logo img {
        height: 38px;
		width: 241.18px;
    }

    .header_info {
        position: fixed;
        top: 100px;
        right: 0px;
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 355px;
        padding: 40px 50px;
        border-radius: 0 0 30px 30px;
        background-color: #fff;
        box-shadow: 
            0 62px 37px rgba(0, 0, 0, 0.02),
            0 28px 28px rgba(0, 0, 0, 0.03),
            0 7px 15px rgba(0, 0, 0, 0.03);
        gap: 20px;
        
        /* Начальное состояние: маленький и сдвинут вверх */
        transform: translateX(73%) scale(0.37);
        transform-origin: top center;
        opacity: 0;
        visibility: hidden;

        /* Анимация 800ms с overshoot (gentle + небольшой «отскок» в конце) */
        transition: transform 0.3s ease-out,
                    opacity 0.3s ease-out;
    }

    .header_info.active {
        transform: translateX(0) scale(1);
        opacity: 1;
        visibility: visible;
    }

    .header_buttons_group_horizontal {
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }

    .header_btn_tel {
        box-shadow: none;
        gap: 15px;
        border-radius: 25px;
        font-size: 18px;
        height: 56px;
        width: 100%;
        padding: 0 25px;
    }
	
	.header_btn_tel:hover {
		background-color: #5B72CB;
	}

    .header_btn_zakaz {
        box-shadow: none;
        gap: 15px;
        border-radius: 25px;
        font-size: 18px;
        height: 56px;
        width: 100%;
        padding: 0 23px 0 25px;
    }
	
	.header_btn_zakaz:hover {
		background-color: transparent;
	}

    .header_btn_schedule {
        border-radius: 25px;
        font-size: 18px;
        height: 56px;
    }

    .schedule_text {
        line-height: 1.4;
    }

    .schedule_days {
        font-size: 18px;
    }

    .schedule_time {
        font-size: 18px;
    }

    /* Иконка часов */
    .clock_icon_big {
        width: 27px;
        height: 27px;
    }

    .phone_icon {
        width: 18px;
        height: 18px;
    }

    .arrow_right_icon {
        width: 9px;
        height: 14px;
    }

    .link {
        top: -1px;
    }

    .btn_text{
        top: -1px;
    }

	.mobile_toggle {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 7px;
		width: 34px;
		height: 26px;
		background: none;
		border: none;
		cursor: pointer;
		padding: 0;
	}

	.mobile_toggle_line {
		width: 34px;
		height: 4px;
		background: #5B72CB;
		border-radius: 50px;
		transition: transform 0.3s ease-out;
	}

	/* Анимация бургер → крестик */
	.mobile_toggle.active .mobile_toggle_line:nth-child(1) {
		transform: translateY(11px) rotate(-45deg);
	}
	.mobile_toggle.active .mobile_toggle_line:nth-child(2) {
		opacity: 0;
	}
	.mobile_toggle.active .mobile_toggle_line:nth-child(3) {
		transform: translateY(-11px) rotate(45deg);
	}
    
	.hero {
		z-index:2;
		background-color: #fff;
		height: 600px;
		box-shadow: none;
	}
	
	.hero_content {
		height: 500px;
        top: 0px;
        gap: initial;
        justify-content: space-between;
	}
	
	.hero_upper_part {
		gap: 30px;
	}
    
    .hero_title {
		order: 2;
        font-size: 48px;
		width: clamp(410px, calc(410px + (100vw - 720px) * (280 / 714)), 828px);
    }
	
	.buttons_hero_group_horizontal{
		order: 1;
		gap: 10px;
	}
	
	.buttons_group_horizontal {
		gap: 10px;
	}
	
	.btn_hero {
		padding: 0 20px;
		font-size: 18px;
		height: 43px;
		/* line-height: 1; */
		/* letter-spacing: 0.5px; */
	}
	
	.btn_hero--dark {
		order: 1;
	}
	
	.btn_hero--light {
		order: 2;
	}
	
	.header_btn_podbor {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		padding: 0 23px 0 25px;
	}
	
	.header_btn_podbor:hover {
		background-color: transparent;
	}
	
	.hero_image img {
        top: -186px;
        left: clamp(104px, calc(104px + (100vw - 720px) * (674 / 814)), 778px);
        width: 712px;
        z-index: -1;
	}
	
	.discount {
		z-index:2;
		height: 66px;
	}
	
	/* Полосы слева */
	.discount::before {
		right: calc(50% + 144px);
		width: 10000px; /* займёт всё пространство слева от центра */
		background: repeating-linear-gradient(
			71.9deg,
			white 0px,
			white 14px,
			#5B72CB 16px,
			#5B72CB 58px,
			white 60px,
			white 72px
		);
	}

	/* Полосы справа */
	.discount::after {
		left: calc(50% + 136px);
		background: repeating-linear-gradient(
			251.9deg,
			white 0px,
			white 14px,
			#5B72CB 16px,
			#5B72CB 58px,
			white 60px,
			white 72px
		);
	}
	
	.discount_container {
		width: 376px;
		height: 80px;
	}
    
    .discount_text {
        font-size: 28px;
    }
    
	.catalog {
		padding-top: 58px;
	}

	.catalog_container {
		gap: 36px;
	}
	
	.section_title {
		font-size: 40px;
	}
	
	.product_card {
		gap: 38px;
		border-radius: 40px;
		padding: 20px;
		margin-bottom: 30px;
		box-shadow: 
			0 62px 37px rgba(0, 0, 0, 0.02),
			0 28px 28px rgba(0, 0, 0, 0.03),
			0 7px 15px rgba(0, 0, 0, 0.03);
	}
	
	.product_card_upper_part {
		gap: 17px;
	}

	.product_card_image{
		width: 288px;
		height: 254px;
		border-radius: 40px;
	}

	.product_card_image img{
		top: -17px;
		width: 288px;
	}
	
	.btn_product_card {
		border-radius: 10px;
		padding: 0 10px;
		font-size: 14px;
		height: 39px;
		color: #fff;
		border: none;
		outline: none;
		background-color: #5B72CB;
		opacity: 50%;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.magnit_mark {
		top: 20px;
		left: 20px;
	}

	.magnit_strength {
		top: 20px;
		right: 20px;
	}
	
	.product_card_title {
		font-size: 24px;
	}

	.product_card_bottom_part {
		gap: 9px;
		width: 100%;
	}

	.btn_product_card_discount_price{
		width: 70px;
		top: -25px;
		border-radius: 10px;
		padding: 6px 0 0 0;
		height: 60px;
		font-size: 14px;
	}
	
	.btn_product_card_final_price{
		justify-content: center;
		border-radius: 25px;
		padding: 0 15px;
		height: 47px;
		width: auto;
		font-size: 24px;
	}

	.catalog_btn_more {
		gap: 10px;
		border-radius: 25px;
		font-size: 18px;
		height: 47px;
		width: auto;
		padding: 0 17px 0 19px;
	}
	
	.catalog_btn_more:hover {
		background-color: transparent;
	}

	.arrow_down_icon{
		width: 14px;
		height: 9px;
		flex-shrink: 0;
		transform: scaleY(-1) translateY(2px);
	}

	.catalog_btn_more.active .arrow_down_icon {
		transform: scaleY(1) translateY(0);
	}
	
	.detailed_section {
		margin-bottom: 20px;
	}
		
	.detailed_card {
		top: -80px;
		gap: 20px;
	}

	.detailed_card.active {
		top: 14px;
	}

	.detailed_card_left_upper_part{
		display: flex;
		align-items: center;
		flex-direction: row;
		gap: 0px;
	}

	.water_drop_icon{
		display: none;
	}

	.water_drop_wrapper:hover .btn_80_degrees_indicator {
		opacity: 50%;
	}

	.btn_80_degrees_indicator {
		z-index: 2;
        top: clamp(626px, calc(100vw - 84px), 100000px);
        left: 70px;
		padding: 0 15px;
		font-size: 12px;
		height: 28px;
		font-weight: 300;
		opacity: 50%;
		transition: none;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.detailed_card_title {
		font-size: 32px;
		font-weight: 600;
		line-height: 1.39;
	}

	.btn_availability_indicator {
		z-index: 2;
		position: absolute;
        top: clamp(626px, calc(100vw - 84px), 100000px);
        left: 240px;
		border-radius: 10px;
		padding: 0 15px;
		font-size: 12px;
		height: 28px;
		font-weight: 300;
		opacity: 50%;
		background-color: #1CCA4D;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.product_gallery{
		width: 100%;
		gap: 22px;
	}

	.product_gallery_main {
		width: 100%;
		height: auto;
		border-radius: 25px;
	}
	
	.empty_thumbs_wrapper {
		gap: 20px;
	}
	
	.product_gallery_empty_thumb{
		border-radius: 20px;
		width: 100%;
		height: auto;
	}

	.gallery-thumbs-swiper .swiper-slide {
		border-radius: 20px;
		width: 100%;
		height: auto;
		outline-offset: -2px;
		outline: 2px solid transparent;
		transition: outline 0.1s ease-out;
	}

	.gallery-thumbs-swiper .swiper-slide-thumb-active {
		outline: 2px solid #5B72CB;
	}

	.btn_detailed_card{
		font-size: 14px;
		height: 39px;
		font-weight: 700;
		z-index: 2;
	}

	.detailed_card_bottom_part{
		flex-direction: column;
		gap: 34px;
		width: 100%;
	}

	.detailed_card_bottom_right_part{
		justify-content: flex-start;
		gap: 30px;
		width: 100%;
		height: auto;
	}

	.detailed_info{
		gap: 25px;
		width: 100%;
	}

	.detailed_info_description{
		gap: 15px;
		width: 100%;
	}

	.detailed_info_description p{
		font-size: 18px;
		font-weight: 400;
		line-height: 1.39;
	}

	.detailed_info_characteristics{
		gap: 8px;
		width: 100%;
	}

	.detailed_info_title {
		font-size: 24px;
		font-weight: 600;
		line-height: 1.39;
	}

	.characteristics_list {
		gap: 3px;
		width: 100%;
	}

	.characteristic_item{
		margin-top: 0px;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		/* align-items: baseline; */
		position: relative;
		z-index: 0;
	}

	.characteristic_item dt {
		font-size: 18px;
		margin: 0;
		font-weight: 400;
		line-height: 1.39;
		white-space: nowrap; /* Не переносить ключ на новую строку */
	}

	.characteristic_item dd {
		font-size: 18px;
		margin: 0;
		font-weight: 500; /* Жирный для значений, чтобы визуально выделялись */
		line-height: 1.39;
		white-space: nowrap; /* Не переносить значение */
		text-align: right; /* Выравнивание по правому краю */
	}

	/* Заполнитель точками (leader) */
	.characteristic_item::before {
		content: "";
		flex-grow: 1; /* Растягивает на всё пространство между dt и dd */
		border-bottom: 2px dotted #dfdfdf; /* Точки (dotted) для заполнения, цвет как у текста */
		position: absolute;
		bottom: 0.3em; /* Выравнивание по нижней части текста */
		left: 0;
		right: 0;
		z-index: -1; /* Под текстом, чтобы не перекрывать */
	}

	.detailed_buttons_group_horizontal{
		display: flex;
		width: 100%;
		align-items: center;
		gap: 10px;
	}

	.detailed_btn_suit_me {
		font-size: 18px;
		height: 56px;
		width: 100%;
		line-height: 1;
		padding: 0 25px;
		font-weight: 400;
		cursor: pointer;
	}

	.detailed_btn_suit_me:hover {
		background-color: transparent;
	}

	.detailed_btn_buy {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		line-height: 1;
		padding: 0 23px 0 25px;
		font-weight: 400;
		cursor: pointer;
	}

	.detailed_btn_buy:hover {
		background-color: #5B72CB;
	}

	.contacts {
		height: 590px;
		box-shadow: none;
		background: none;
	}

	.contacts::before {
		content: '';
		position: absolute;
		inset: 0;
		background: #5B72CB;
		z-index: 1;
	}

	.contacts::after {
		content: '';
		position: absolute;
		inset: 0;
		background: linear-gradient(to bottom, rgba(83, 103, 181, 0) 0%, #5B72CB 100%);
		z-index: 3;
		pointer-events: none;
	}

	.contacts_container {
		position: relative;
		padding: 50px;
        height: 100%;
	}

	.contacts_content {
        top: 0px;
        height: 100%;
		z-index: 4;
	}

	.contacts_title {
		left: 0px;
		font-size: 40px;
        position: relative;
        top: -7px;
		width: 460px;
	}

	.contacts_title strong {
		font-weight: 400;
	}

	.contacts_upper_part p {
		display: none;
	}

	.contacts_bottom_part {
		width: 100%;
	}

	.contacts_btn_tel {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		padding: 0 25px;
	}

	.contacts_btn_tel:hover {
		background-color: #fff;
	}

	.contacts_btn_zakaz {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		padding: 0 23px 0 25px;
	}

	.contacts_btn_zakaz:hover {
		background-color: transparent;
	}

	.contacts_btn_telegram {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		background-color: #269DDF;
		padding: 0 25px;
		outline: none;
	}

	.contacts_btn_telegram:hover {
		background-color: #269DDF;
	}

	.telegram_icon {
		width: 21px;
		height: 18px;
	}

	.contacts_btn_whatsapp {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		background-color: #2ED34C;
		padding: 0 25px;
		outline: none;
	}

	.contacts_btn_whatsapp:hover {
		background-color: #2ED34C;
	}

	.whatsapp_icon {
		width: 20px;
		height: 20px;
	}

	.contacts_btn_schedule {
		height: 38px;
		opacity: 100%;
		font-size: 14px;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		border: none;
		outline: none;
		padding-left: 15px;
		padding-right: 25px;
	}

	.contacts_btn_schedule strong{
		font-weight: 600;
	}

	.contacts_btn_schedule:hover {
		opacity: 100%;
	}

	.clock_icon_little {
		width: 18px;
		height: 18px;
	}
	
	.clock_icon_little path {
		fill: #5B72CB;
	}

	.contacts_image img {
		position: absolute;
		top: 69px;
		left: calc(100vw / 2 - 564px);
		width: 1058px;
		z-index: 2;
	}

	.advantages {
		height: auto;
	}

	.advantages_container {
		gap: 29px;
		top: 0px;
		padding: 58px 50px;
	}

	.advantages_grid {
		flex-direction: column;
		gap: 10px;
		width: 100%;
	}

	.advantage_card {
		gap: 12px;
		padding: 23px 25px;
		width: 100%;
		height: 150px;
		overflow: hidden;
	}

	.advantage_card:nth-child(4) {
		order: 1;
	}

	.advantage_card:nth-child(1) {
		order: 2;
	}

	.advantage_card:nth-child(2) {
		order: 3;
	}

	.advantage_card:nth-child(3) {
		order: 4;
	}

	.advantage_card_upper_part {
		gap: 10px;
		margin-bottom: 0px;
	}

	.protection_icon{
		padding: 0;
	}

	.advantage_card_title {
		font-size: 18px;
		font-weight: 600;
		line-height: 1.1;
	}

	.advantage_card_text {
		font-size: 14px;
		font-weight: 400;
		line-height: 1.1;
		width: calc(100% - 75px);
	}

	.advantage_card_text strong {
		font-weight: 400;
	}

	.advantage_card_img_protection img{
		position: absolute;
		top: 48px;
		left: auto;
        right: 9px;
		width: 64px;
	}

	.heat_resistance_icon{
		padding: 0;
	}

	.advantage_card_img_heat_resistance img{
		position: absolute;
		top: 49px;
        left: auto;
        right: 9px;
		width: 81px;
	}

	.durability_icon{
		padding: 0;
	}

	.advantage_card_img_durability img{
		position: absolute;
		top: 21px;
        left: auto;
        right: 10px;
		width: 63px;
	}

	.quality_control_icon{
		padding: 0;
	}

	.advantage_card_img_quality_control img{
		position: absolute;
		top: 37px;
		left: auto;
        right: 9px;
		width: 82px;
	}

	.delivery {
		height: 600px;
	}

	.delivery_container {
		position: relative;
		height: 100%;
		padding: 50px;
	}

	.delivery_content {
		top: 0px;
		z-index: 2;
		height: 100%;
	}

	.delivery_title {
		position: relative;
		top: -14px;
		font-size: 54px;
		font-weight: 400;
	}

	.delivery_title strong {
		font-weight: 600;
	}

	.delivery_btn_find_more {
		gap: 15px;
		font-size: 18px;
		width: auto;
		height: 58px;
		padding: 0 25px;
	}

	.delivery_btn_find_more:hover {
		background-color: #fff;
	}
	
	.delivery_image {
		position: absolute;
	}

	.delivery_image img {
		position: absolute;
		z-index: -1;
        top: -8px;
        left: clamp(312px, calc(312px + (100vw - 854px) * (450 / 680)), 762px);
		width: 464px;
	}

	.ending {
		height: 550px;
	}
	
	.ending_container {
		padding: 0 50px;
	}

	.ending_content {
		top: 90px;
		right: clamp(0px, calc(0px + (100vw - 720px) * (258 / 814)), 258px);
		width: 330px;
		height: 410px;
	}

	.ending_upper_part {
		gap: 11px;
	}

	.ending_title {
		left: -2px;
		font-size: 40px;
		font-weight: 400;
	}

	.ending_title strong {
		font-weight: 700;
	}

	.ending_upper_part p {
		width: 350px;
		position: relative;
		left: 0;
		font-size: 20px;
		font-weight: 400;
		line-height: 1.35;
	}

	.ending_upper_part p strong {
		font-weight: 700;
	}

	.ending_bottom_part {
		gap: 10px;
		width: 100%;
	}

	.ending_btn_zakaz {
		gap: 15px;
		font-size: 18px;
		width: 100%;
		height: 56px;
		background-color: #5B72CB;
		color: #fff;
		padding: 0 23px 0 25px;
		border: none;
		outline: none;
	}

	.ending_btn_zakaz path{
		stroke: #fff;
	}

	.ending_btn_zakaz:hover {
		background-color: #5B72CB;
	}

	.ending_btn_schedule {
		height: 38px;
		opacity: 100%;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		padding-left: 15px;
		padding-right: 25px;
		white-space: nowrap;
		box-shadow: 
			0 62px 37px rgba(0, 0, 0, 0.02),
			0 28px 28px rgba(0, 0, 0, 0.03),
			0 7px 15px rgba(0, 0, 0, 0.03);
	}

	.ending_btn_schedule strong{
		font-weight: 600;
	}

	.ending_btn_schedule:hover {
		opacity: 100%;
	}

	.ending_image img {
		position: absolute;
		top: 90px;
		margin-left: clamp(-6px, calc(-6px + (100vw - 640px) * (3 / 5)), 0px);
		left: clamp(-138px, calc(-138px + (100vw - 776px) * (18 / 42)), -102px);
		width: 462px;
	}

	.footer {
		padding: 50px;
	}

	.footer_container {
		width: 100%;
		min-width: 0px;        /* страховка на случай очень узких экранов */
		max-width: none;          /* убираем старое ограничение, теперь clamp всё контролирует */
	}

	.footer a:hover {
		color: rgba(255, 255, 255, 0.25);
	}

	.footer a:hover path{
		fill-opacity: 0.25;
	}

	.footer_main_part {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: flex-start;
		padding-bottom: 19px;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.65;
	}

	.footer_main_left_part {
		order: 1;
		gap: 16px;
		width: auto;
	}

	.footer_logo {
		height: 39px;
		text-decoration: none;
	}

	.footer_logo_icon {
		height: 39px;
	}

	p.footer_copyright_left{
		display: none;
	}

	.footer_center_part {
		order: 3;
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		margin-top: 18px;
	}

	.footer_nav_part {
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}

	.footer_nav_first {
		display: flex;
		gap: 30px;
	}

	.footer_nav_second {
		display: flex;
		gap: 30px;
	}

	.schedule_wrapper {
		margin: 0;
	}

	.btn_schedule--transparent--white--without_border {
		height: 38px;
		gap: 15px;
		opacity: 25%;
		font-size: 14px;
		padding-left: 10px;
		padding-right: 10px;
	}
	
    .footer .clock_icon_little path {
        fill: white;
    }

	.btn_schedule--transparent--white--without_border:hover {
		opacity: 25%;
	}

	.footer_contacts_wrapper {
		order: 2;
		gap: 14px;
	}

	.footer_contacts {
		gap: 12px;
	}

	.social_links {
		gap: 8px;
	}

	.social_links a {
		width: 36px;
		height: 36px;
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: 36px;
		justify-content: center;
		align-items: center;
	}

	.telegram_icon_little {
		width: 13px;
		height: 12px;
	}

	.whatsapp_icon_little {
		width: 13px;
		height: 13px;
	}

	.vk_icon_little {
		width: 16px;
		height: 10px;
	}

	.footer_copyright_center {
		padding-top: 12px;
		font-size: 14px;
	}

	.modal {
		border-radius: 50px; /* как на скриншоте */
	}

	.order_call {
		width: 620px;
		height: 560px;
		padding: 0 50px;
	}

	.order_call_image img {
		display: none;
	}

	.modal_close {
		z-index: 2;
		top: 20px;
		right: 20px;
	}

	.order_call_phone_icon {
		z-index: 1;
		display: block;
		position: absolute;
		top: 46px;
		right: 40px;
		width: 114px;
		height: 114px;
		flex-shrink: 0;
	}

	.order_call_content {
		padding: 42px 0 50px 0;
		width: 100%;
		height: 100%;
	}

	.order_call_title {
		position: relative;
		left: -2px;
		font-size: 40px;
		font-weight: 500;
	}

	.order_call_upper_part p {
		margin-top: 0px;
		font-size: 20px;
		font-weight: 400;
		line-height: 1.35;
	}

	.order_call_upper_part p strong {
		font-weight: 600;
	}

	.popup_form input {
		font-size: 18px;
		width: 100%;
		height: 56px;
		line-height: 1;
		padding: 0 25px;
	}

	.form_field {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 7px;
		width: 100%;
	}

	.form_hint {
		font-size: 12px;
	}

	.order_call_buttons_group {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		margin-top: 0px;
		width: 100%;
	}

	.order_call_btn_schedule {
		opacity: 25%;
		font-size: 14px;
		gap: 15px;
		font-weight: 400;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		padding-left: 25px;
		padding-right: 25px;
	}

	.order_call_btn_schedule:hover {
		opacity: 25%;
	}

	.new_order {
		width: 620px;
		height: 682px;
		padding: 0 50px;
	}

	.new_order_image img {
		display: none;
	}

	.new_order_box_icon {
		z-index: 1;
		display: block;
		position: absolute;
		top: -22px;
		right: -16px;
		width: 178px;
		height: 172px;
		flex-shrink: 0;
	}

	.new_order_content {
		padding: 42px 0 50px 0;
		width: 100%;
		height: 100%;
	}

	.new_order_title {
		font-size: 40px;
		font-weight: 600;
	}

	.new_order_buttons_group {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		width: 100%;
	}

	.new_order_btn_buy {
		gap: 15px;
		font-size: 18px;
		height: 56px;
		background-color: #5B72CB;
		color: #fff;
		padding: 0 23px 0 25px;
	}

	.new_order_btn_buy:hover {
		background-color: #5B72CB;
	}

	.notification {
		width: 620px;
		height: 454px;
		padding: 42px 50px 50px 50px;
	}

	.notification_image{
		top: 216px;
		left: 340px;
		width: 552px;
	}

	.notification_content {
		width: 408px;
		height: 100%;
	}

	.notification_upper_part {
		position: relative;
	}

	.notification_title {
		font-size: 40x;
		font-weight: 500;
	}

	.notification_upper_part p {
		margin-top: 2px;
		font-size: 20px;
		font-weight: 400;
		line-height: 1.35;
	}

	.notification_upper_part p strong {
		font-weight: 600;
	}

	.notification_btn_ok {
		font-size: 18px;
		height: 56px;
		background-color: #fff;
		padding: 0 25px;
	}

	.notification_btn_ok:hover {
		background-color: #fff;
	}
	
	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close {
		z-index: 2;
		top: 18px;
		right: 18px;
	}

	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close path {
		fill: #202020;
		opacity: 31%;
	}

	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close:hover path {
		fill: #202020;
		opacity: 31%;
	}


	/* Галерея внутри модалки (почти как .product_gallery, но полноэкранная) */
	.fullscreen_gallery {
		gap: 22px;
	}

	/* Основное изображение (Swiper) — по центру */
	.fullscreen_gallery_main {
		width: 100%;
		max-width: 100%;
		height: auto;
		border-radius: 0;
	}

	.fs-gallery-main-swiper {
		width: 100%;
		height: 100%;
	}

	.fs-gallery-thumbs-swiper {
		width: auto;
		height: 100%;
		left: 10px;
	}

	.fs-gallery-thumbs-swiper .swiper-slide {
		border-radius: 20px;
		width: 140px;
		height: 140px;
		outline-offset: -2px;
		outline: 2px solid transparent;
		transition: outline 0.1s ease-out;
	}

	.fs-gallery-thumbs-swiper .swiper-slide-thumb-active {
		outline: 2px solid #5B72CB;
	}

	/* Thumbs снизу по центру */
	.fullscreen_gallery_thumbs {
		width: 100%;
		display: flex;
		justify-content: center;
	}

	/* Стрелки влево/вправо (absolute по краям модалки) */
	.fs-nav-prev,
	.fs-nav-next {
		display: none;
	}
}

/* Mobile: ≤767px */
@media (max-width: 767px) {
    .container {
        padding: 0 clamp(0px, calc((100vw - 310px) / 2), 25px);
    }

    /* Header */
    .header {
        height: 50px;
        overflow: visible;
        z-index: 1001;
        position: relative;
    }
	
	.logo {
		text-decoration: none;
	}

    .logo img {
        height: 19px;
		width: 120.59px;
    }

    .header_info {
        position: fixed;
        top: 50px;
        right: 0px;
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 220px;
        padding: 20px 25px;
        border-radius: 0 0 15px 15px;
        background-color: #fff;
        box-shadow: 
            0 62px 37px rgba(0, 0, 0, 0.02),
            0 28px 28px rgba(0, 0, 0, 0.03),
            0 7px 15px rgba(0, 0, 0, 0.03);
        gap: 10px;
        
        /* Начальное состояние: маленький и сдвинут вверх */
        transform: translateX(73%) scale(0.37);
        transform-origin: top center;
        opacity: 0;
        visibility: hidden;

        /* Анимация 800ms с overshoot (gentle + небольшой «отскок» в конце) */
        transition: transform 0.3s ease-out,
                    opacity 0.3s ease-out;
    }

    .header_info.active {
        transform: translateX(0) scale(1);
        opacity: 1;
        visibility: visible;
    }

    .header_buttons_group_horizontal {
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: 5px;
        width: 100%;
    }

    .header_btn_tel {
        box-shadow: none;
        gap: 9px;
        border-radius: 15px;
        font-size: 12px;
        height: 36px;
        width: 100%;
        padding: 0 15px;
    }
	
	.header_btn_tel:hover {
		background-color: #5B72CB;
	}

    .header_btn_zakaz {
        box-shadow: none;
        gap: 9px;
        border-radius: 15px;
        font-size: 12px;
        height: 36px;
        width: 100%;
        padding: 0 13px 0 15px;
    }
	
	.header_btn_zakaz:hover {
		background-color: transparent;
	}

    .header_btn_schedule {
        border-radius: 15px;
        font-size: 12px;
        height: 55px;
    }

    .schedule_text {
        line-height: 1.3;
    }

    .schedule_days {
        font-size: 12px;
    }

    .schedule_time {
        font-size: 12px;
    }

    /* Иконка часов */
    .clock_icon_big {
        width: 17px;
        height: 17px;
    }

    .phone_icon {
        width: 12px;
        height: 12px;
    }

    .arrow_right_icon {
        width: 6px;
        height: 10px;
    }

    .link {
        top: 1px;
    }

    .btn_text{
        top: 1px;
    }

	.mobile_toggle {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 5px;
		width: 20px;
		height: 16px;
		background: none;
		border: none;
		cursor: pointer;
		padding: 0;
	}

	.mobile_toggle_line {
		width: 20px;
		height: 2px;
		background: #5B72CB;
		border-radius: 50px;
		transition: transform 0.3s ease-out;
	}

	/* Анимация бургер → крестик */
	.mobile_toggle.active .mobile_toggle_line:nth-child(1) {
		transform: translateY(7px) rotate(-45deg);
	}
	.mobile_toggle.active .mobile_toggle_line:nth-child(2) {
		opacity: 0;
	}
	.mobile_toggle.active .mobile_toggle_line:nth-child(3) {
		transform: translateY(-7px) rotate(45deg);
	}
    
	.hero {
		z-index:2;
		background-color: #fff;
		height: 300px;
		box-shadow: none;
	}
	
	.hero_content {
		height: 250px;
        top: 0px;
        gap: initial;
        justify-content: space-between;
	}
	
	.hero_upper_part {
		gap: 15px;
	}
    
    .hero_title {
		order: 2;
        font-size: 24px;
		width: clamp(205px, calc(205px + (100vw - 360px) * (140 / 407)), 414px);
    }
	
	.buttons_hero_group_horizontal{
		order: 1;
		gap: 5px;
	}
	
	.buttons_group_horizontal {
		gap: 5px;
	}
	
	.btn_hero {
		padding: 0 10px;
		font-size: 8px;
		height: 20px;
		/* line-height: 1; */
		/* letter-spacing: 0.5px; */
	}
	
	.btn_hero--dark {
		order: 1;
	}
	
	.btn_hero--light {
		order: 2;
	}
	
	.header_btn_podbor {
		gap: 15px;
		font-size: 12px;
		height: 36px;
		padding: 0 13px 0 15px;
	}
	
	.header_btn_podbor:hover {
		background-color: transparent;
	}
	
	.hero_image img {
        top: -94px;
        left: clamp(52px, calc(52px + (100vw - 360px) * (337 / 407)), 389px);
        width: 356px;
        z-index: -1;
	}
	
	.discount {
		z-index:2;
		height: 40px;
	}
	
	/* Полосы слева */
	.discount::before {
		right: calc(50% + 58px);
		width: 10000px; /* займёт всё пространство слева от центра */
		background: repeating-linear-gradient(
			71.9deg,
			white 0px,
			white 7px,
			#5B72CB 8px,
			#5B72CB 29px,
			white 30px,
			white 36px
		);
	}

	/* Полосы справа */
	.discount::after {
		left: calc(50% + 54px);
		background: repeating-linear-gradient(
			251.9deg,
			white 0px,
			white 7px,
			#5B72CB 8px,
			#5B72CB 29px,
			white 30px,
			white 36px
		);
	}
	
	.discount_container {
		width: 160px;
		height: 40px;
	}
    
    .discount_text {
        font-size: 12px;
    }
    
	.catalog {
		padding-top: 29px;
	}

	.catalog_container {
		gap: 18px;
	}
	
	.section_title {
		font-size: 24px;
	}
	
	.product_card {
		gap: 14px;
		border-radius: 20px;
		padding: 10px;
		margin-bottom: 15px;
		box-shadow: 
			0 62px 37px rgba(0, 0, 0, 0.02),
			0 28px 28px rgba(0, 0, 0, 0.03),
			0 7px 15px rgba(0, 0, 0, 0.03);
	}
	
	.product_card_upper_part {
		gap: 9px;
	}

	.product_card_image{
		width: 130px;
		height: 115px;
		border-radius: 20px;
	}

	.product_card_image img{
		top: -7px;
		width: 130px;
	}
	
	.btn_product_card {
		border-radius: 4px;
		padding: 0 3px;
		font-size: 6px;
		height: 14px;
		color: #fff;
		border: none;
		outline: none;
		background-color: #5B72CB;
		opacity: 50%;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.magnit_mark {
		top: 10px;
		left: 10px;
	}

	.magnit_strength {
		top: 10px;
		right: 10px;
	}
	
	.product_card_title {
		font-size: 10px;
	}

	.product_card_bottom_part {
		gap: 5px;
		width: 100%;
	}

	.btn_product_card_discount_price{
		width: 29px;
		top: -10px;
		border-radius: 5px;
		padding: 3px 0 0 0;
		height: 23px;
		font-size: 6px;
	}
	
	.btn_product_card_final_price{
		justify-content: center;
		border-radius: 10px;
		padding: 0;
		height: 30px;
		width: 45px;
		font-size: 10px;
	}

	.catalog_btn_more {
		gap: 5px;
		border-radius: 10px;
		font-size: 8px;
		height: 30px;
		width: 100%;
		padding: 0 7px;
	}
	
	.catalog_btn_more:hover {
		background-color: transparent;
	}

	.arrow_down_icon{
		width: 5px;
		height: 4px;
		flex-shrink: 0;
		transform: scaleY(-1) translateY(0px);
	}

	.catalog_btn_more.active .arrow_down_icon {
		transform: scaleY(1) translateY(1px);
	}
	
	.detailed_section {
		margin-bottom: 10px;
	}
		
	.detailed_card {
		top: -40px;
		gap: 7px;
	}

	.detailed_card.active {
		top: 7px;
	}

	.detailed_card_left_upper_part{
		display: flex;
		align-items: center;
		flex-direction: row;
		gap: 0px;
	}

	.water_drop_icon{
		display: none;
	}

	.water_drop_wrapper:hover .btn_80_degrees_indicator {
		opacity: 50%;
	}

	.btn_80_degrees_indicator {
		z-index: 2;
        top: clamp(323px, calc(100vw - 37px), 100000px);
        left: clamp(20px, calc((100vw - 310px) / 2 + 20px), 45px);
		padding: 0 6px;
		font-size: 8px;
		height: 15px;
		font-weight: 300;
		opacity: 50%;
		transition: none;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.detailed_card_title {
		font-size: 18px;
		font-weight: 600;
		line-height: 1.39;
	}

	.btn_availability_indicator {
		z-index: 2;
		position: absolute;
        top: clamp(323px, calc(100vw - 37px), 100000px);
        left: clamp(122px, calc((100vw - 310px) / 2 + 122px), 147px);
		border-radius: 10px;
		padding: 0 6px;
		font-size: 8px;
		height: 15px;
		font-weight: 300;
		opacity: 50%;
		background-color: #1CCA4D;
	/* 	line-height: 1; */
	/* 	letter-spacing: 0.5px; */
	}

	.product_gallery{
		width: 100%;
		gap: 10px;
	}

	.product_gallery_main {
		width: 100%;
		height: auto;
		border-radius: 20px;
	}
	
	.empty_thumbs_wrapper {
		gap: 10px;
	}
	
	.product_gallery_empty_thumb{
		border-radius: 10px;
		width: 100%;
		height: auto;
	}

	.gallery-thumbs-swiper .swiper-slide {
		border-radius: 10px;
		width: 100%;
		height: auto;
		outline-offset: -1px;
		outline: 1px solid transparent;
		transition: outline 0.1s ease-out;
	}

	.gallery-thumbs-swiper .swiper-slide-thumb-active {
		outline: 1px solid #5B72CB;
	}

	.btn_detailed_card{
		font-size: 12px;
		height: 36px;
		font-weight: 700;
		z-index: 2;
	}

	.detailed_card_bottom_part{
		flex-direction: column;
		gap: 20px;
		width: 100%;
	}

	.detailed_card_bottom_right_part{
		justify-content: flex-start;
		gap: 15px;
		width: 100%;
		height: auto;
	}

	.detailed_info{
		gap: 24px;
		width: 100%;
	}

	.detailed_info_description{
		gap: 6px;
		width: 100%;
	}

	.detailed_info_description p{
		font-size: 12px;
		font-weight: 400;
		line-height: 1.33;
	}

	.detailed_info_characteristics{
		gap: 4px;
		width: 100%;
	}

	.detailed_info_title {
		font-size: 18px;
		font-weight: 600;
		line-height: 1.39;
	}

	.characteristics_list {
		gap: 0px;
		width: 100%;
	}

	.characteristic_item{
		margin-top: -2px;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		/* align-items: baseline; */
		position: relative;
		z-index: 0;
	}

	.characteristic_item dt {
		font-size: 12px;
		margin: 0;
		font-weight: 400;
		line-height: 1.39;
		white-space: nowrap; /* Не переносить ключ на новую строку */
	}

	.characteristic_item dd {
		font-size: 12px;
		margin: 0;
		font-weight: 500; /* Жирный для значений, чтобы визуально выделялись */
		line-height: 1.39;
		white-space: nowrap; /* Не переносить значение */
		text-align: right; /* Выравнивание по правому краю */
	}

	/* Заполнитель точками (leader) */
	.characteristic_item::before {
		content: "";
		flex-grow: 1; /* Растягивает на всё пространство между dt и dd */
		border-bottom: 1px dotted #dfdfdf; /* Точки (dotted) для заполнения, цвет как у текста */
		position: absolute;
		bottom: 0.26em; /* Выравнивание по нижней части текста */
		left: 0;
		right: 0;
		z-index: -1; /* Под текстом, чтобы не перекрывать */
	}

	.detailed_buttons_group_horizontal{
		display: flex;
		width: 100%;
		align-items: center;
		gap: 5px;
	}

	.detailed_btn_suit_me {
		font-size: 12px;
		height: 36px;
		width: 100%;
		line-height: 1;
		padding: 0 15px;
		font-weight: 400;
		cursor: pointer;
	}

	.detailed_btn_suit_me:hover {
		background-color: transparent;
	}

	.detailed_btn_buy {
		gap: 15px;
		font-size: 12px;
		height: 36px;
		line-height: 1;
		padding: 0 23px 0 25px;
		font-weight: 400;
		cursor: pointer;
	}

	.detailed_btn_buy:hover {
		background-color: #5B72CB;
	}

	.contacts {
		height: 300px;
		box-shadow: none;
		background: none;
	}

	.contacts::before {
		content: '';
		position: absolute;
		inset: 0;
		background: #5B72CB;
		z-index: 1;
	}

	.contacts::after {
		content: '';
		position: absolute;
		inset: 0;
		background: linear-gradient(to bottom, rgba(83, 103, 181, 0) 0%, #5B72CB 100%);
		z-index: 3;
		pointer-events: none;
	}

	.contacts_container {
		position: relative;
		padding: 25px clamp(0px, calc((100vw - 320px) / 2), 25px);
        height: 100%;
	}

	.contacts_content {
        top: 0px;
        height: 100%;
		z-index: 4;
	}

	.contacts_title {
		left: 0px;
		font-size: 24px;
        position: relative;
        top: -7px;
		width: 230px;
	}

	.contacts_title strong {
		font-weight: 400;
	}

	.contacts_upper_part p {
		display: none;
	}

	.contacts_bottom_part {
		width: 100%;
	}

	.contacts_btn_tel {
		gap: 10px;
		font-size: 12px;
		height: 36px;
		padding: 0 15px;
	}

	.contacts_btn_tel:hover {
		background-color: #fff;
	}

	.contacts_btn_zakaz {
		gap: 10px;
		font-size: 12px;
		height: 36px;
		padding: 0 13px 0 15px;
	}

	.contacts_btn_zakaz:hover {
		background-color: transparent;
	}

	.contacts_btn_telegram {
		gap: 10px;
		font-size: 12px;
		height: 36px;
		background-color: #269DDF;
		padding: 0 15px;
		outline: none;
	}

	.contacts_btn_telegram:hover {
		background-color: #269DDF;
	}

	.telegram_icon {
		width: 12px;
		height: 11px;
	}

	.contacts_btn_whatsapp {
		gap: 10px;
		font-size: 12px;
		height: 36px;
		background-color: #2ED34C;
		padding: 0 15px;
		outline: none;
	}

	.contacts_btn_whatsapp:hover {
		background-color: #2ED34C;
	}

	.whatsapp_icon {
		width: 12px;
		height: 12px;
	}

	.contacts_btn_schedule {
		height: 38px;
		opacity: 100%;
		font-size: 12px;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		border: none;
		outline: none;
		padding-left: 15px;
		padding-right: 25px;
	}

	.contacts_btn_schedule strong{
		font-weight: 600;
	}

	.contacts_btn_schedule:hover {
		opacity: 100%;
	}

	.clock_icon_little {
		width: 12px;
		height: 12px;
	}
	
	.clock_icon_little path {
		fill: white;
	}

	.contacts_image img {
		position: absolute;
		top: 20px;
		left: calc(100vw / 2 - 282px);
		width: 529px;
		z-index: 2;
	}

	.advantages {
		height: auto;
	}

	.advantages_container {
		gap: 18px;
		top: 0px;
		padding: 29px clamp(0px, calc((100vw - 310px) / 2), 25px) 25px;
	}

	.advantages_grid {
		flex-direction: column;
		gap: 10px;
		width: 100%;
	}

	.advantage_card {
		gap: 12px;
		padding: 23px 25px;
		width: 100%;
		height: 150px;
		overflow: hidden;
	}

	.advantage_card:nth-child(4) {
		order: 1;
	}

	.advantage_card:nth-child(1) {
		order: 2;
	}

	.advantage_card:nth-child(2) {
		order: 3;
	}

	.advantage_card:nth-child(3) {
		order: 4;
	}

	.advantage_card_upper_part {
		gap: 10px;
		margin-bottom: -3px;
	}

	.protection_icon{
		padding: 0 2px;
	}

	.advantage_card_title {
		font-size: 16px;
		font-weight: 600;
		line-height: 1.1;
	}

	.advantage_card_text {
		font-size: 12px;
		font-weight: 400;
		line-height: 1.1;
		width: calc(100% - 75px);
	}

	.advantage_card_text strong {
		font-weight: 400;
	}

	.advantage_card_img_protection img{
		position: absolute;
		top: 48px;
		left: auto;
        right: 9px;
		width: 64px;
	}

	.heat_resistance_icon{
		padding: 0 2px;
	}

	.advantage_card_img_heat_resistance img{
		position: absolute;
		top: 49px;
        left: auto;
        right: 9px;
		width: 81px;
	}

	.durability_icon{
		padding: 0 2px;
	}

	.advantage_card_img_durability img{
		position: absolute;
		top: 21px;
        left: auto;
        right: 10px;
		width: 63px;
	}

	.quality_control_icon{
		padding: 0 2px;
	}

	.advantage_card_img_quality_control img{
		position: absolute;
		top: 37px;
		left: auto;
        right: 9px;
		width: 82px;
	}

	.delivery {
		height: 300px;
	}

	.delivery_container {
		position: relative;
		height: 100%;
		padding: 25px clamp(0px, calc((100vw - 310px) / 2), 25px);
	}

	.delivery_content {
		top: 0px;
		z-index: 2;
		height: 100%;
	}

	.delivery_title {
		position: relative;
		top: -7px;
		font-size: 24px;
		font-weight: 400;
	}

	.delivery_title strong {
		font-weight: 600;
	}

	.delivery_btn_find_more {
		gap: 10px;
		font-size: 12px;
		width: 157px;
		height: 36px;
		padding: 0 15px;
	}

	.delivery_btn_find_more:hover {
		background-color: #fff;
	}
	
	.delivery_image {
		position: absolute;
	}

	.delivery_image img {
		position: absolute;
		z-index: -1;
        top: -4px;
        left: clamp(156px, calc(156px + (100vw - 427px) * (225 / 340)), 381px);
		width: 232px;
	}

	.ending {
		height: 275px;
	}
	
	.ending_container {
		padding: 0 clamp(0px, calc(0px + (100vw - 320px) * (25 / 40)), 25px);
	}

	.ending_content {
		top: 45px;
		right: clamp(0px, calc(0px + (100vw - 360px) * (129 / 407)), 129px);
		width: 165px;
		height: 205px;
	}

	.ending_upper_part {
		gap: 7px;
	}

	.ending_title {
		left: 0px;
		font-size: 22px;
		font-weight: 400;
	}

	.ending_title strong {
		font-weight: 700;
	}

	.ending_upper_part p {
		width: 150px;
		position: relative;
		left: 2px;
		font-size: 12px;
		font-weight: 400;
		line-height: 1.35;
	}

	.ending_upper_part p strong {
		font-weight: 700;
	}

	.ending_bottom_part {
		gap: 8px;
		width: 100%;
	}

	.ending_btn_zakaz {
		gap: 10px;
		font-size: 12px;
		width: 100%;
		height: 36px;
		background-color: #5B72CB;
		color: #fff;
		padding: 0 15px;
		border: none;
		outline: none;
	}

	.ending_btn_zakaz path{
		stroke: #fff;
	}

	.ending_btn_zakaz:hover {
		background-color: #5B72CB;
	}

	.ending_btn_schedule {
		height: 38px;
		opacity: 100%;
		font-size: 10px;
		font-weight: 400;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		padding-left: 15px;
		padding-right: 25px;
		white-space: nowrap;
		box-shadow: 
			0 62px 37px rgba(0, 0, 0, 0.02),
			0 28px 28px rgba(0, 0, 0, 0.03),
			0 7px 15px rgba(0, 0, 0, 0.03);
	}

	.ending_btn_schedule strong{
		font-weight: 600;
	}

	.ending_btn_schedule:hover {
		opacity: 100%;
	}

	.ending_image img {
		position: absolute;
		top: 45px;
		margin-left: clamp(-3px, calc(-3px + (100vw - 320px) * (3 / 5)), 0px);
		left: clamp(-69px, calc(-69px + (100vw - 388px) * (18 / 42)), -51px);
		width: 231px;
	}

	.footer {
		padding: 25px clamp(0px, calc((100vw - 310px) / 2), 25px);
	}

	.footer_container {
		width: 100%;
		min-width: 0px;        /* страховка на случай очень узких экранов */
		max-width: none;          /* убираем старое ограничение, теперь clamp всё контролирует */
	}

	.footer a:hover {
		color: rgba(255, 255, 255, 0.25);
	}

	.footer a:hover path{
		fill-opacity: 0.25;
	}

	.footer_main_part {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: flex-start;
		padding-bottom: 7px;
		font-size: 8px;
		font-weight: 400;
		line-height: 1.85;
	}

	.footer_main_left_part {
		order: 1;
		gap: 8px;
		width: auto;
	}

	.footer_logo {
		height: 25px;
		text-decoration: none;
	}

	.footer_logo_icon {
		height: 25px;
	}

	p.footer_copyright_left{
		display: none;
	}

	.footer_center_part {
		order: 3;
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		margin-top: 9px;
	}

	.footer_nav_part {
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.footer_nav_first {
		display: flex;
		gap: 15px;
	}

	.footer_nav_second {
		display: flex;
		gap: 15px;
	}

	.schedule_wrapper {
		margin: 0;
	}

	.btn_schedule--transparent--white--without_border {
		height: 32px;
		gap: 5px;
		opacity: 25%;
		font-size: 8px;
		padding-left: 5px;
		padding-right: 5px;
	}

	.btn_schedule--transparent--white--without_border:hover {
		opacity: 25%;
	}

	.footer_contacts_wrapper {
		order: 2;
		gap: 7px;
	}

	.footer_contacts {
		gap: 6px;
	}

	.social_links {
		gap: 4px;
	}

	.social_links a {
		width: 26px;
		height: 26px;
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: 26px;
		justify-content: center;
		align-items: center;
	}

	.telegram_icon_little {
		width: 10px;
		height: 9px;
	}

	.whatsapp_icon_little {
		width: 10px;
		height: 10px;
	}

	.vk_icon_little {
		width: 10px;
		height: 6px;
	}

	.footer_copyright_center {
		padding-top: 10px;
		font-size: 8px;
	}

	.modal {
		border-radius: 25px; /* как на скриншоте */
	}

	.order_call {
		width: 310px;
		height: 312px;
		padding: 0 25px;
	}

	.order_call_image img {
		display: none;
	}

	.modal_close {
		z-index: 2;
		top: 10px;
		right: 10px;
	}

	.order_call_phone_icon {
		z-index: 1;
		display: block;
		position: absolute;
		top: 23px;
		right: 20px;
		width: 57px;
		height: 57px;
		flex-shrink: 0;
	}

	.order_call_content {
		padding: 21px 0 25px 0;
		width: 100%;
		height: 100%;
	}

	.order_call_title {
		position: relative;
		left: -2px;
		font-size: 24px;
		font-weight: 500;
	}

	.order_call_upper_part p {
		margin-top: 2px;
		font-size: 12px;
		font-weight: 400;
		line-height: 1.35;
	}

	.order_call_upper_part p strong {
		font-weight: 600;
	}
	
	.form_error {
		font-size: 12px;
	}

	.popup_form input {
		font-size: 12px;
		width: 100%;
		height: 36px;
		line-height: 1;
		padding: 0 15px;
	}

	.form_field {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 6px;
		width: 100%;
	}

	.form_hint {
		font-size: 10px;
	}

	.order_call_buttons_group {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		margin-top: 0px;
		width: 100%;
	}

	.order_call_btn_schedule {
		opacity: 25%;
		font-size: 12px;
		gap: 10px;
		font-weight: 400;
		line-height: 1.4;
		background-color: #fff;
		color: #202020;
		padding-left: 15px;
		padding-right: 15px;
	}

	.order_call_btn_schedule:hover {
		opacity: 25%;
	}

	.new_order {
		width: 310px;
		height: 447px;
		padding: 0 25px;
	}

	.new_order_image img {
		display: none;
	}

	.new_order_box_icon {
		z-index: 1;
		display: block;
		position: absolute;
		top: -11px;
		right: -8px;
		width: 89px;
		height: 86px;
		flex-shrink: 0;
	}

	.new_order_content {
		padding: 21px 0 25px 0;
		width: 100%;
		height: 100%;
	}

	.new_order_title {
		font-size: 24px;
		font-weight: 500;
	}

	.new_order_buttons_group {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		width: 100%;
	}

	.new_order_btn_buy {
		gap: 10px;
		font-size: 12px;
		height: 36px;
		background-color: #5B72CB;
		color: #fff;
		padding: 0 15px;
	}

	.new_order_btn_buy:hover {
		background-color: #5B72CB;
	}

	.notification {
		width: 310px;
		height: 237px;
		padding: 21px 25px 25px 25px;
	}

	.notification_image{
		top: 108px;
		left: 170px;
		width: 276px;
	}

	.notification_content {
		width: 204px;
		height: 100%;
	}

	.notification_upper_part {
		position: relative;
	}

	.notification_title {
		font-size: 24px;
		font-weight: 500;
	}

	.notification_upper_part p {
		margin-top: 2px;
		font-size: 12px;
		font-weight: 400;
		line-height: 1.35;
	}

	.notification_upper_part p strong {
		font-weight: 600;
	}

	.notification_btn_ok {
		font-size: 12px;
		height: 36px;
		background-color: #fff;
		padding: 0 15px;
	}

	.notification_btn_ok:hover {
		background-color: #fff;
	}
	
	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close {
		z-index: 2;
		top: 15px;
		right: 15px;
	}

	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close path {
		fill: #202020;
		opacity: 31%;
	}

	/* Крестик (расширяем твой .modal_close для этой модалки) */
	.fullscreen_modal .modal_close:hover path {
		fill: #202020;
		opacity: 31%;
	}


	/* Галерея внутри модалки (почти как .product_gallery, но полноэкранная) */
	.fullscreen_gallery {
		gap: 13px;
	}

	/* Основное изображение (Swiper) — по центру */
	.fullscreen_gallery_main {
		width: 100%;
		max-width: 100%;
		height: auto;
		border-radius: 0;
	}

	.fs-gallery-main-swiper {
		width: 100%;
		height: 100%;
	}

	.fs-gallery-thumbs-swiper {
		width: auto;
		height: 100%;
		left: 5px;
	}

	.fs-gallery-thumbs-swiper .swiper-slide {
		border-radius: 10px;
		width: 70px;
		height: 70px;
		outline-offset: -1px;
		outline: 1px solid transparent;
		transition: outline 0.1s ease-out;
	}

	.fs-gallery-thumbs-swiper .swiper-slide-thumb-active {
		outline: 1px solid #5B72CB;
	}

	/* Thumbs снизу по центру */
	.fullscreen_gallery_thumbs {
		width: 100%;
		display: flex;
		justify-content: center;
	}

	/* Стрелки влево/вправо (absolute по краям модалки) */
	.fs-nav-prev,
	.fs-nav-next {
		display: none;
	}
	
}