/*
Theme Name: Оптика
Template: Goodini
Theme URI: https://degorov.ru/
Description: Дочерняя тема для Goodini
Author: D.E.
Author URI: https://degorov.ru/
Version: 1.0
*/

@font-face {
	font-family: "Involve";
	src: url("assets/fonts/Involve-Regular.woff") format("woff");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Involve";
	src: url("assets/fonts/Involve-Medium.woff") format("woff");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "Involve";
	src: url("assets/fonts/Involve-SemiBold.woff") format("woff");
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

@font-face {
	font-family: "Involve";
	src: url("assets/fonts/Involve-Bold.woff") format("woff");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

.g-modules .container-fluid,
.g-hero .container-fluid,
.g-benefits .container-fluid,
#balls-cart .container-fluid,
#cases-hero .container-fluid,
#hero .container-fluid,
.container-fluid {
	max-width: 1920px;
	/* padding: 0 4.5rem; */
}
a[href^="tel:"].phone-content:hover,
a:hover {
  color: var(--dark);
}
.padding-bottom-none{
	padding-bottom:0 !important;
}
.padding-bottom-none .desc p:last-child{
	margin-bottom:0;
}
#blog .ya-share2 {
    display: none !important;
}
.gdn-item-wrap {
	padding: 2rem;
	background: #fff;
	border-radius: 5px;
}
.contacts-page { padding: 3rem 0 5rem; }
.contacts-page .gdn-header { margin-bottom: 2rem; }
.contacts-page .gdn-header h1,
.contacts-page .gdn-header h2 { margin-bottom: .75rem; }
.contacts-page .gdn-header p { margin: 0; }
.contacts-page__header { margin-bottom: 2rem; }
.contacts-page__sidebar-menu .calculator-page__sidebar-list { gap: .85rem; }
.contacts-page__sidebar-menu .calculator-page__sidebar-link { display: block; font-weight: 500; }
.contacts-page .contacts-page__content { flex: 1 1 0; display: grid; grid-template-columns: minmax(0, 1fr); max-width: 100%; gap: 3rem; }
.contacts-page__section { scroll-margin-top: 2rem; }
.contacts-page__office { margin-bottom: 2rem; }
.contacts-page__office-grid { display: grid; grid-template-columns: 450px minmax(0, 1fr); gap: 2rem; align-items: stretch; }
.contacts-page__office-grid--single { grid-template-columns: minmax(0, 1fr); }
.contacts-page__office-content { min-width: 0; }
.contacts-page__office-contacts { margin: 0 0 2rem; }
.contacts-page__office-contacts .contacts-copy-row { position: relative; }
.contacts-page__office-photo { position: relative; min-height: 0; overflow: hidden; border-radius: 5px; }
.contacts-page__office-photo img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: inherit; }
#contacts .contacts__map { height: 480px; min-height: 480px; overflow: hidden; border-radius: 5px; }
#contacts .contacts__map .map-wrapper { height: 100%; }
.contacts-page__route-buttons { margin-top: 0; }
.contacts-page__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr); gap: 2rem; align-items: start; }
.contacts-page__directory-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr); gap: 2rem; align-items: start; }
.contacts-page__requisites-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; align-items: start; }
.contacts-page__requisites-item { min-width: 0; }
.contacts-page__requisites-item .gdn-item-wrap { height: 100%; }
.contacts-page__requisites-banks { grid-column: 1 / -1; }
.contacts-page__banks-list { display: flex; gap: 2rem; align-items: stretch; }
.contacts-page__banks-list .contacts-page__bank { flex: 1 1 0; margin: 0; }
#contacts .contacts-page__block h2,
#contacts .contacts-page__partners h2 { margin-bottom: 1rem; margin-top: 0; padding-top: 0; }
.contacts-list { display: grid; gap: 1rem; margin: 0; }
.contacts-list__item { display: grid; grid-template-columns: minmax(6rem, .5fr) minmax(0, 1.5fr); gap: 1rem; align-items: start; font-size: .9rem; }
.contacts-list dt { margin-bottom: .2rem; color: #718096; font-size: .78rem; text-transform: uppercase; }
.contacts-list dd { margin: 0; overflow-wrap: anywhere; cursor: pointer; }
.contacts-list dt { margin-bottom: 0; }
.contacts-copy { display: none; width: 1.5rem; height: 1.5rem; padding: 0; align-items: center; justify-content: center; border: 0; background: transparent; color: #718096; cursor: pointer; transition: color .2s, opacity .2s; }
.contacts-copy svg { width: 1rem; height: 1rem; }
.contacts-copy.is-copied { color: var(--color); }
.contacts-requisites-spoiler { margin-top: 1.5rem; }
.contacts-requisites-spoiler + .contacts-requisites-spoiler { margin-top: 1.25rem; }
.contacts-requisites-spoiler summary { position: relative; padding-right: 2rem; font-weight: 600; cursor: pointer; list-style: none; }
.contacts-requisites-spoiler summary::-webkit-details-marker { display: none; }
.contacts-requisites-spoiler summary::after { content: ''; position: absolute; top: .35rem; right: .25rem; width: .55rem; height: .55rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s; }
.contacts-requisites-spoiler[open] summary::after { transform: rotate(225deg); }
.contacts-requisites-spoiler > .contacts-list,
.contacts-requisites-spoiler > .contacts-page__bank:first-of-type { margin-top: 1rem; }
@media (hover: hover) and (pointer: fine) {
	.no-touch .contacts-list__item { grid-template-columns: minmax(6rem, .5fr) minmax(0, 1.5fr) 1.5rem; }
	.no-touch .contacts-page__office-contacts .contacts-list__item { grid-template-columns: minmax(0, 1fr) 1.5rem; }
	.no-touch .contacts-copy { display: flex; opacity: 0; pointer-events: none; }
	.no-touch .contacts-list__item:hover .contacts-copy,
	.no-touch .contacts-copy:focus-visible { opacity: 1; pointer-events: auto; }
}
.contacts-page__social { margin-top: 1.25rem; }
.contacts-page__social > span { display: block; margin-bottom: .5rem; color: #718096; font-size: .78rem; text-transform: uppercase; }
.contacts-page__partners { margin-top: 0; }
@media (max-width: 1023px) {
	.contacts-page__office-grid { grid-template-columns: 1fr; }
	.contacts-page__office-photo { min-height: 400px; }
	.contacts-page__directory-grid { grid-template-columns: 1fr; }
	.contacts-page__requisites-grid { grid-template-columns: 1fr; }
	.contacts-page__requisites-banks { grid-column: auto; }
	.contacts-page__banks-list { flex-direction: column; }
}
@media (max-width: 767px) {
	.contacts-page { padding-top: 2rem; }
	.contacts-page__office-grid,
	.contacts-page__grid { grid-template-columns: 1fr; }
	.gdn-item-wrap { padding: 1.25rem; }
}
.blog-category-item{
    display:block;
    padding:0.8rem 1.5rem;
    transition:all 0.3s;
    border:1px solid var(--color);
    border-radius:2rem;
}
.blog-category-item.active{
    border-color:transparent;
        background: var(--color);
        color:#fff;
    
}
.page-id-4966 #blog .header-flex h2 {
    margin: 0 0 2.5rem;
}
.blog-categories-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin: 2rem 0;
}
.padding_bottom_section{
	padding-bottom:6rem;
}
span.letter {
    letter-spacing: 0.08em;
}
.banner-cart .gdn-section__header li br {
    display: block;
}
/* body,
button,
input,
textarea,
select {
  font-family: "Involve", sans-serif;
} */

:root {
	--zoom: 1;
	--h1: calc(
		18px + (120 - 18) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--h2: calc(
		24px + (40 - 24) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-56: calc(
		26px + (56 - 26) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-58: calc(
		26px + (58 - 26) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-24: calc(
		16px + (24 - 16) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--h1-text-color: calc(
		40px + (128 - 40) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-170: calc(
		80px + (170 - 80) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-500: calc(
		200px + (500 - 200) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-150: calc(
		40px + (150 - 40) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-210: calc(
		60px + (210 - 60) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-45: calc(
		20px + (45 - 20) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-48: calc(
		22px + (48 - 22) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-70: calc(
		24px + (70 - 24) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-50: calc(
		24px + (50 - 24) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-40: calc(
		18px + (40 - 18) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-60: calc(
		30px + (60 - 30) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-64: calc(
		26px + (64 - 26) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-36: calc(
		18px + (36 - 18) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-30: calc(
		16px + (30 - 16) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--p-350: calc(
		200px + (350 - 200) * (calc(100vw / var(--zoom)) - 360px) / (1920 - 360)
	);
	--primary-color: #0056b3;
	--primary-hover: #004494;
	--primary-light: #e6f0fa;
	--secondary-color: #6c757d;
	--secondary-hover: #5a6268;
	--success-color: #28a745;
	--success-bg: #d4edda;
	--warning-color: #ffc107;
	--warning-bg: #fff3cd;
	--error-color: #dc3545;
	--error-bg: #f8d7da;
	--bg-color: #f5f7fa;
	--card-bg: #ffffff;
	--text-color: #325ea7;
	--text-muted: #6c757d;
	--border-color: #dee2e6;
	--shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	--shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.15);
	--radius: 5px;
	--radius-lg: 8px;
	--transition: all 0.2s ease;
}

body.home,
body:not(.hero3) {
  background-color: var(--bg-color);
}


#menu .menu .menu-item.current-menu-item a{
	color:var(--color);
}
#menu .menu .current-menu-item a::after, #menu .menu .current-menu-parent a::after, #menu .menu .current-post-ancestor a::after,
.menu .menu-item::after, .menu .menu-item::before{
	display:none;
}

#hero3 {
	background-image: linear-gradient(180deg, #161a4b, #325fa8);
}
.hero3__slide.hero-white {
	background-size: contain;
  background-color: transparent;
}
.hero-white #breadcrumbs a {
	color: #fff;
}
/* ==========================================================================
   ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ И БАЗОВЫЕ ПЕРЕОПРЕДЕЛЕНИЯ
   ========================================================================== */
.manager__img-top {
	display: none;
}
button.cookie-ok-btn {
	align-self: center;
}
.oap__phone-value span {
	font-size: 1rem;
	font-weight: 400;
}
.bullets.color-head .item .head {
margin-top:1rem;
    color: var(--color);

}.hcs__stat-elems:has(> .hcs__stat-el:nth-child(5)) {
    grid-template-columns: repeat(3, 10px);
}
.banner-cart .cart .gdn-list ul{
	display:grid;
}
.banner-cart .cart .gdn-list ul li::after {
    position: absolute;
    left: 0;
    top: 0.6rem;
    content: "";
    width: 1rem;
    height: 2px;
    background-color: var(--color);
}

/* ==========================================================================
   КАЛЬКУЛЯТОР: страница, раскладка и боковая панель
   ========================================================================== */
.calculator-page__title {
	color: var(--color);
}
.calculator-page__title-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
}
.calculator-page__sidebar-toggle,
.calculator-page__sidebar-close,
.calculator-page__sidebar-overlay {
	display: none;
}
.calculator-page {
	padding: 2rem 0;
}
.calc-block.calc-step {
	/* color:#606D79; */
}
.calculator-page__sidebar-section {
	padding: 2rem;
	background: #e6edf5;
	border-radius: var(--radius-lg);
}
.calculator-page__sidebar-title {
	margin-bottom: 1rem;
	font-size: 1.25rem;
	font-weight: var(--f1wb);
}

.calculator-page__sidebar-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
}
.calculator-page__sidebar-item {
	width: 100%;
}
.calculator-page__sidebar-section--documents .calculator-page__sidebar-list {
	gap: 1rem;
}
.calculator-page__sidebar-section--documents .calculator-page__sidebar-link {
	display: grid;
	grid-template-columns: 1.5rem minmax(0, 1fr);
	align-items: center;
	gap: 1rem;
}
.calculator-page__sidebar-section--documents .calculator-page__sidebar-link--no-icon {
	grid-template-columns: minmax(0, 1fr);
}
.calculator-page__sidebar-icon {
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	color: var(--dark);
}
/* Калькулятор: сообщения и модальные окна */
.message-error {
	position: absolute;
	right: auto;
	top: -2.5rem;
	padding: 0.5rem 1rem;
	font-weight: 500;
	font-weight: var(--f1w);
	line-height: 1.2;
	background: #26;
	z-index: 100;
	color: #f5f6f8;
	font-size: 0.8rem;
	border-radius: 4px;
	box-shadow: 0 5px 20px rgb(0 0 0 / 30%);
	white-space: nowrap;
	transition: all 0.3s ease;
	left: -1rem;
	top: -2rem;
	z-index: 100;
	background: rgb(38, 38, 38);
}
.message-error:before {
	content: "";
	position: absolute;
	width: 1rem;
	height: 1rem;
	left: 1rem;
	bottom: 0;
	border-radius: 3px;
	transform: rotate(45deg) translate(50%);
	z-index: -1;
	background: rgb(38, 38, 38);
}
#modal-not-agreement button.modal-close {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	cursor: pointer;
	background: transparent;
	border: none;
}
#modal-not-agreement button.modal-close svg {
	width: 1rem;
	height: 1rem;
}
#modal-not-agreement button.modal-close svg path {
	stroke: var(--dark);
}
.hideLabels .form-group label.label-none {
	top: 0px;
	font-size: 12px;
}
/* Калькулятор: форма боковой панели */
.calculator-page__sidebar .form {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.calculator-page__sidebar-section--form .form .btn {
	background: #fff;
	color: var(--color);
}
.site-footer__col--brand-bottom {
	display: none;
}
.calculator-page__sidebar-section--form
	.agreement-check
	input:checked
	+ .agreement-label
	.check::before {
	border: 2px solid #fff;
	border-top-color: transparent;
	border-left-color: transparent;
}
.calculator-page__sidebar-section--form .form .btn span {
	padding: 1.3rem 2.5rem;
}
.calculator-page__sidebar-section--form .agreement-label,
.calculator-page__sidebar-section--form .agreement-label a,
.calculator-page__sidebar-section--form .form .form-head {
	color: #fff;
}
.calculator-page__sidebar-section--form {
	padding: 2rem;
	border-radius: var(--radius-lg);
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
}

.calculator {
	width: 100%;
}
.app-calc .calculator .form-group {
	margin: 0;
	background: transparent;
}

.calculator-page__layout {
	display: flex;
	align-items: flex-start;
	gap: 1.5rem 4rem;
}
.calculator-page__sidebar {
	flex: 0 0 30%;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	max-width: 340px;
}
.calculator-page__sidebar-link--current {
	color: var(--dark);
	pointer-events: none;
}
.calculator-page__content {
	flex: 1 1 auto;
	min-width: 0;
}
.calculator-panel[hidden] {
	display: none;
}
.gdn-switcher {
	display: inline-flex;
	flex-wrap: wrap;
	border-radius: 999px;
	background: #e6edf5;
}
.gdn-switcher__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem 1.5rem;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--dark);
	font: inherit;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
}
.gdn-switcher__item.is-active,
.gdn-switcher__item[aria-current="page"] {
	background: #325ea7;
	color: #fff;
}
.gdn-controls {
	display: flex;
	align-items: flex-end;
	gap: 1rem;
	margin-bottom: 2rem;
}
.gdn-controls--spread {
	justify-content: space-between;
}
.gdn-controls__end {
	margin-left: auto;
}
.gdn-controls__compact .gdn-select {
	width: 12rem;
}
@media (max-width: 640px) {
	.gdn-controls {
		flex-direction: column;
		align-items: stretch;
	}
	.gdn-switcher {
		display: flex;
		width: 100%;
		border-radius: 1.25rem;
	}
	.gdn-switcher__item {
		flex: 1 1 50%;
		padding: 0.75rem 0.75rem;
		font-size: 0.875rem;
	}
	.gdn-controls__end {
		margin-left: 0;
		width: 100%;
	}
	.gdn-controls__compact .gdn-select {
		width: 100%;
	}
}

/* ==========================================================================
   COOKIE И СОГЛАСИЯ
   ========================================================================== */
button.cookie-ok-btn {
	background: transparent;
	border: 1px solid #000;
	padding: 6px !important;
	font-size: 12px;
	line-height: 100%;
	cursor: pointer;
	border-radius: 0.3rem;
}
#cookie {
	align-items: stretch;
	flex-direction: column;
	gap: 0.75rem;
}
#cookie .text-wrap {
	padding-right: 0;
}
.cookie-buttons {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	width: 100%;
}
#cookie .cookie-buttons .btn {
	width: 100%;
	margin: 0;
}
#cookie .cookie-buttons .btn span {
	padding: 0.75rem 1rem;
	font-size: 0.875rem;
	white-space: nowrap;
}
@media (max-width: 480px) {
	.cookie-buttons {
		grid-template-columns: 1fr;
	}
}

.agreement-label {
	font-size: 0.875rem !important;
	color: var(--color);
}

.agreement-label a {
	font-size: 0.875rem;
	color: var(--color2);
}
/* ==========================================================================
   СТРАНИЦА 404 / ERROR HERO
   ========================================================================== */
#hero.error-hero {
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
}
#hero.error-hero .btn.btn-second span {
	padding: 2rem 2.5rem;
}
.error-hero-img {
	position: absolute;
	top: 0;
	right: 5%;
	height: 100%;
	overflow: hidden;
	width: 45%;
	border-radius: 0 0 4rem 0;
}
#hero.error-hero .wrap {
	color: #fff;
}
#hero.error-hero .intro {
	font-size: 1.5rem;
}
#hero.error-hero h1 {
	font-size: 2.5rem;
}
.error404 #header {
	padding-bottom: 0;
}
.error-hero-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#hero.error-hero .row {
	position: relative;
	min-height: 74vh;
}

/* ==========================================================================
   БАЗОВЫЕ СТИЛИ (без медиа-запросов), по секциям
   ========================================================================== */
#header-wrapper {
  z-index: 2;
  position: relative;
}
.site-header {
	background: #fff;
	padding-block: 1rem;
  color: var(--gray);
}

.site-header__container {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	align-items: stretch;
	gap: 2rem;
}

.site-header__brand {
	display: flex;
	align-items: center;
	width: 100px;
}

.site-header__brand-link,
.site-header__brand-image {
	display: block;
	width: 100%;
}

.site-header__brand-image {
	height: auto;
}

.site-header__content {
	display: grid;
	grid-template-rows: auto auto;
	min-width: 0;
}

.site-header__top,
.site-header__main {
	display: flex;
	align-items: center;
}

.site-header__top {
	justify-content: space-between;
	font-size: 0.9rem;
	padding-bottom: 1rem;
}

.site-header__top-navigation {
	min-width: 0;
}

.site-header__top-menu {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-header__top-menu a {
	color: var(--gray);
	text-decoration: none;
	white-space: nowrap;
}

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

.site-header--new .site-header__navigation .site-header__menu .menu-item:hover > a,
.site-header--new .site-header__navigation .site-header__menu .menu-item > a:hover,
.site-header--new .site-header__navigation .site-header__menu .menu-item > a:focus-visible {
	color: var(--color) !important;
}

.site-header__about,
.site-header__main,
.site-header__phone {
	display: flex;
	align-items: center;
}

.site-header__about {
	gap: 1rem;
}

.site-header__description p {
	margin: 0;
}

.site-header__partner-logo {
	display: block;
	width: 120px;
	height: auto;
}

.site-header__language-link {
	white-space: nowrap;
}
.site-header__language-link svg{
	width: 1rem;
  height: 1rem;
}

.site-header__main {
	justify-content: space-between;
	gap: 2rem;
}

#menu.site-header__navigation {
	position: relative;
	flex: 0 1 auto;
	min-width: 0;
	margin-left: 0;
}

.site-header__menu {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-header__menu > .menu-item > a,
.site-header__phone,
.site-header__phone a,
.site-header--new .site-header__phone .phone-content {
	color: var(--dark);
	font-size: 1.125rem;
	font-weight: 700;
	padding-block: 0;
}

.site-header--new .site-header__phone .phone-content {
	color: var(--dark) !important;
}

.site-header__menu > .menu-item:first-child > a {
	padding-left: 0;
}

.site-header__actions {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: flex-end;
	gap: 1rem 2rem;
	margin-left: auto;
	min-width: 0;
}

.site-header__mobile-icon {
	display: flex;
	position: relative;
	flex: 0 0 3rem;
	top: 0 !important;
	right: 0 !important;
	z-index: 1002;
}

.site-header__mobile-icon.active {
	visibility: hidden;
}

.type-header > .mobile-icon {
	display: none !important;
}

.type-header .mobile .mobile-menu-close {
	top: var(--mobile-menu-close-top, 1rem) !important;
	left: var(--mobile-menu-close-left, auto) !important;
	right: auto !important;
	z-index: 1001;
	border: 0;
	background: transparent;
}

@media (min-width: 1180px) {
	.site-header__mobile-icon {
		display: none;
	}
}

.site-header__mega-menu,
.site-header__sales-contacts {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 20;
}

.site-header__search {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 400px;
}

.site-header__search-field,
.site-header__search-form {
	width: 100%;
}

.site-header__search-form {
	position: relative;
}

.site-header__search-input {
width: 100%;
	margin: 0;
	padding: .75rem 3rem .75rem 1.5rem;
	border: 0;
	background: var(--light);
	border-radius: 6px;
}

.site-header__search-submit {
	position: absolute;
	top: 50%;
	right: .75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--gray);
	transform: translateY(-50%);
	cursor: pointer;
	width: 1.5rem;
	height: 1.5rem;
}

.site-header__search-toggle {
	display: none;
}

.site-header__phone {
	gap: .5rem;
	white-space: nowrap;
}

.site-header__contacts {
	position: relative;
}

.site-header__contacts-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	padding: .5rem;
	border: 0;
	background: transparent;
	color: var(--dark);
	cursor: pointer;
}

.site-header__contacts-toggle svg {
	transition: transform .2s ease;
}

.site-header__contacts-toggle--open svg {
	transform: rotate(180deg);
}

.site-header__sales-contacts {
	top: 100%;
	left: auto;
	right: 5%;
	width: min(600px, 90vw);
	padding: 2rem;
	background: #fff;
	border-radius: 0 0 5px 5px;
	box-shadow: 0 10px 30px -10px rgb(0 0 0 / 10%);
}

.site-header__sales-contacts[hidden] {
	display: none;
}

.site-header__sales-contacts-inner {
	display: grid;
	gap: 1.5rem;
}

.site-header__sales-primary-phone,
.site-header__sales-primary-phone a {
	color: var(--dark);
	font-size: 1.5rem;
	font-weight: 700;
}

.site-header--new .site-header__sales-primary-phone .phone-content {
	font-weight: 700;
}

.site-header__sales-primary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
}

.site-header__sales-primary-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.site-header__sales-actions {
	display: flex;
	align-items: center;
	align-self: center;
	gap: 1rem;
}

.site-header__sales-primary-note {
	margin-top: .25rem;
	color: var(--gray);
}

.site-header__departments {
	display: grid;
	grid-template-columns: repeat(3, max-content);
	justify-content: start;
	gap: 1rem 1.5rem;
	padding-block: 1.5rem;
	border-block: 1px solid #d7dee9;
}

.site-header__department {
	display: grid;
	grid-template-columns: subgrid;
	grid-column: 1 / -1;
	align-items: center;
	justify-items: start;
}

.site-header__department-name {
	color: var(--dark);
	font-weight: 400;
}

.site-header__department-contacts {
	display: contents;
}

.site-header__department-email {
	display: inline-flex;
	justify-self: start;
	width: max-content;
	max-width: 100%;
	text-align: left;
}

.site-header__department-phone,
.site-header__department-email {
	color: var(--dark);
	text-decoration: none;
}
a[href^="mailto:"].site-header__department-email {
	text-decoration: none;
  border-bottom: none;
}

.site-header__socials,
.site-header__socials .social {
	display: flex;
	align-items: center;
	gap: .75rem;
}

.site-header__socials > *,
.site-header__socials .social > * {
	align-self: center;
}

.site-header__all-contacts-link {
	flex: 0 0 auto;
	margin-left: auto;
}

.site-header__socials .social {
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-header__socials .soc,
.site-header__socials .soc a,
.site-header__socials .soc svg,
.site-header__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
}

.site-header__social-link--max {
	border-radius: 50%;
	background: var(--color);
	color: #fff;
	font-size: .625rem;
	font-weight: 700;
	text-decoration: none;
}




/* ---------------------------------------------------------------------- */
/* HCS — "Кабельные решения" (hero + полоса преимуществ)                   */
/* ---------------------------------------------------------------------- */

.hcs {
	--hcs-blue-dark: #0b1f66;
	--hcs-blue-mid: #1a53c8;
	--hcs-blue-light: #3d8bf0;
	--hcs-white: #ffffff;
	font-family: inherit;
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
}

.hcs__hero {
	color: var(--hcs-white);
	position: relative;
	overflow: hidden;
	padding: 3.625rem 0 6.125rem 0;
}

.hcs__hero-grid {
	display: grid;
	grid-template-columns: 1fr 1.3fr;
	gap: 4.6875rem;
}

.hcs__title-block h1 {
	font-weight: 600;
	font-size: 7.5rem;
	line-height: 90%;
	margin-bottom: 1.3rem;
}

.hcs__title-block strong {
	font-weight: 600;
	font-size: 3rem;
	line-height: 120%;
	margin-bottom: 2.5rem;
	color: #e6edf5;
	display: block;
}

.btn span ,
.btn.btn-second span {
	padding: 1.5rem 2.5rem;
	font-size: 1rem;
}

.hcs__title-block {
	font-size: 1.5rem;
	line-height: 160%;
}

.hcs__title-block ul li {
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 160%;
	padding: 0.5rem 1.875rem;
	color: #ffffff;
	border: 1px solid #a8b7c7;
	border-radius: 6.25rem;
}
.hcs__title-block ul li a {
	color: #fff;
}
.hcs__title-block ul li a:hover {
	opacity: 0.7;
}

.hcs__title-block ul {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	padding: 4.125rem 0 0 0;
}

.hcs__title-block p:last-child {
	margin-bottom: 0;
}

.hcs__tag {
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 999px;
	padding: 8px 20px;
	font-size: 14px;
}
.hero3__content .btn,
.hcs__btn {
	color: var(--color);
	background: #ffffff;
	margin-top: 2rem;
}

.hcs__hero-right {
	position: relative;
}

.hcs__photo-wrap {
	height: 100%;
	border-radius: 0.3125rem 0.3125rem 4rem 0.3125rem;
	overflow: hidden;
}

.hcs__photo-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home h2 {
	font-size: 2.5rem;
	line-height: 140%;
	margin-top: 0;
}

.hcs__photo {
	display: block;
	width: 100%;
	height: auto;
}

.hcs__grid-line {
	position: absolute;
	background: rgba(255, 255, 255, 0.6);
	pointer-events: none;
}

.hcs__grid-line--v {
	top: 0;
	bottom: 0;
	left: 50%;
	width: 1px;
}

.hcs__grid-line--h {
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
}

.hcs__stats {
	background: var(--hcs-white);
	padding: 4rem 0;
	position: relative;
}

.hcs__stats::before {
	content: "";
	position: absolute;
	top: 0;
	background-color: #fff;
	left: -20%;
	width: 140%;
	z-index: -1;
	height: 100%;
}

.hcs__stats-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.hcs__stat-icon {
	width: 24px;
	height: 24px;
	object-fit: contain;
	margin-bottom: 16px;
}

.hcs__stat-title {
	font-weight: 500;
	margin-top: 2.25rem;
	font-size: 2.5rem;
	line-height: 110%;
	color: var(--color);
	margin-bottom: 1rem;
}

.hcs__stat-elems {
	display: grid;
	grid-template-columns: repeat(2, 10px);
	gap: 5px;
}

.hcs__stat {
	display: flex;
	flex-direction: column;
	padding: 2rem;
	padding-right: 0;
	border-left: 1px solid #c5d0de;
}

.hcs__stat-el {
	width: 10px;
	background-color: #a8b7c7;
	height: 10px;
}

.hcs__stat-text {
	font-size: 1.5rem;
	line-height: 160%;
	color: #606d79;
}

.result-card footer {
	gap: 1rem;
}
/* ---------------------------------------------------------------------- */
/* KPD — "Ключевые направления производства"                               */
/* ---------------------------------------------------------------------- */

.kpd {
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
	padding: 6.25rem 0;
}

.wrapper {
	overflow: hidden;
}

.kpd__head {
	font-size: 1.5rem;
	line-height: 160%;
	color: #a8b7c7;
}

.kpd__head h2 {
	color: #fff;
	margin-bottom: 1.5rem;
}

.kpd__grid {
	display: grid;
	grid-template-columns: minmax(280px, 1fr) 2fr;
	margin-top: 3.375rem;
	gap: 2.25rem;
}

.kpd__photo-placeholder-text {
	font-size: 14px;
	line-height: 1.4;
}

.kpd__cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.25rem;
}

.kpd__card {
	background: #e6edf5;
	overflow: hidden;
	padding: 8.125rem 2rem 2.5rem 2rem;
	display: flex;
	position: relative;
	flex-direction: column;
}

.kpd__card-img {
	max-width: 80%;
	position: absolute;
	top: 1rem;
	right: 0;
}

.kpd__card-img img {
	width: 100%;
	height: 4rem;
	object-fit: contain;
	display: block;
}

.kpd__card-body {
	flex: 1;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.8125rem;
	position: relative;
	padding-right: 3.4375rem;
}

.kpd__card-title {
	font-weight: 600;
	font-size: 1.25rem;
	color: var(--dark);
	line-height: 120%;
	margin-top: 0;
	margin-bottom: 1.5rem;
}

.kpd__card-desc {
	line-height: 160%;
	color: #606d79;
	margin-right: -2rem;
}

.kpd__card-desc p {
	margin: 0;
}

.kpd__card-arrow {
	width: 3rem;
	height: 3rem;
	position: absolute;
	top: 0;
	right: 0;
	flex-shrink: 0;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid #a8b7c7;
	display: flex;
	align-items: center;
	justify-content: center;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease;
}
.kpd__card {
	transition: all 0.3s;
}
.kpd__card:hover {
	transform: scale(0.97);
}
a.dor__card.dor__card-contact:hover .cvs__card-arrow,
.ecn__card:hover .cvs__card-arrow,
.cvs__card:hover .cvs__card-arrow,
.cvs__card-link:hover .cvs__card-arrow,
.kpd__card:hover .kpd__card-arrow,
.kpd__card-arrow:hover {
	background: var(--kpd-blue-mid);
	color: var(--kpd-white);
	transform: translateX(2px);
}

/* ---------------------------------------------------------------------- */
/* CVS — "Выберите нужный сценарий работы"                                 */
/* ---------------------------------------------------------------------- */

.cvs {
	--cvs-blue: #1a53c8;
	--cvs-blue-dark: #14306e;
	--cvs-border: #e3e7ee;
	--cvs-gray: #6b7280;
	background: #ffffff;
	padding: 6.25rem 0;
}

.cvs__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-areas:
		"title card1 card2"
		"card3 card4 card5";
	gap: 24px;
}

.cvs__cell--title {
	grid-area: title;
}

.cvs__cell--card1 {
	grid-area: card1;
}

.cvs__cell--card2 {
	grid-area: card2;
}

.cvs__cell--card3 {
	grid-area: card3;
}

.cvs__cell--card4 {
	grid-area: card4;
}

.cvs__cell--card5 {
	grid-area: card5;
}

.cvs__title {
	display: flex;
	align-items: center;
}

.cvs__card {
	border: 1px solid #a8b7c7;
	border-radius: 0.3125rem;
	padding: 2rem;
	height: 100%;
	padding-left: 1.1875rem;
	display: flex;
	background-color: #fff;
	gap: 1.5rem;
}

.cvs__card-img {
	flex-shrink: 0;
	width: 9.375rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cvs .container-fluid {
	z-index: unset;
}

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

.cvs__card-body {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.cvs__card-title {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 120%;
	margin-bottom: 1.5rem;
	margin-top: 0;
	color: var(--dark);
}

.cvs__card-desc {
	line-height: 160%;
	color: #606d79;
	margin-bottom: 0.5rem;
}

.cvs__card-desc p {
	margin: 0;
}

.cvs__card-link {
	margin-top: auto;
	font-weight: 500;
	line-height: 140%;
	letter-spacing: 0.03em;
	color: var(--color);
	display: flex;
	align-items: center;
	gap: 1.3125rem;
}

.cvs-img {
	position: absolute;
	bottom: -29%;
	z-index: 2;
	left: 4%;
	width: 33%;
}

.cvs__container {
	position: relative;
	z-index: 10;
}

.cvs__card-arrow {
	flex-shrink: 0;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	border: 1px solid #a8b7c7;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s;
	background: #fff;
}

.man-svg svg {
	width: 100%;
	height: auto;
}

.man-svg {
	position: absolute;
	bottom: 0;
	width: 100%;
	left: 0;
}
.ecn__card,
.cvs__card {
	transition: all 0.3s;
}
.cvs .man-svg {
	bottom: -19%;
}
a.dor__card.dor__card-contact:hover,
.ecn__card:hover,
.cvs__card:hover {
	transform: scale(0.97);
}

/* ---------------------------------------------------------------------- */
/* ECN — "Инженерный центр: быстрый расчет и документация"                 */
/* ---------------------------------------------------------------------- */

.ecn {
	--ecn-blue: #1a53c8;
	--ecn-gray-text: #6b7280;
	--ecn-title-gray: #4b5563;
	--ecn-card-bg: #eef1f6;
	--ecn-preview-bg: #ffffff;
	--ecn-border: #dde2ea;
	background: #ffffff;
	padding: 5rem 0;
}

.ecn__head {
	text-align: center;
	margin-bottom: 40px;
}

.wcs__head h2,
.ecn__head h2 {
	font-weight: 600;
}
.ecn__head h2 {
	color: #606d79;
}


.ecn__head p,
.ecn__head strong {
	display: block;
	color: var(--ecn-blue);
	font-weight: 700;
	font-size: 34px;
	margin: 0;
}

.ecn__cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin: 0 auto;
	max-width: 1390px;
}

.ecn--documents {
	padding-top: 0;
}

.ecn__card--documents {
	transform: none;
}

.ecn .ecn__card--documents:hover {
	transform: none;
}

#engineering-documents .ecn__card--documents {
	cursor: default;
	transition: none;
}

#engineering-documents .ecn__card-title-accent {
	color: var(--dark);
}

.ecn__card--documents .ecn__card-title {
	margin-top: 0;
}

.ecn__documents-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ecn__documents-list li + li {
	margin-top: .65rem;
}

.ecn__card {
	background: #e6edf5;
	border-radius: 0.3125rem;
	padding: 1.75rem;
	display: flex;
	flex-direction: column;
}

.ecn__card-preview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ecn__card-title {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 120%;
	margin-bottom: 1rem;
	margin-top: 2rem;
}

.ecn__card-title-accent {
	color: var(--color);
}

.ecn__card-desc {
	line-height: 160%;
	color: #606d79;
	margin-bottom: 2rem;
}

.ecn__card-body {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.page-template-page-thanks #header {
	padding-bottom: 0;
}
.ecn__card-link {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	color: var(--ecn-blue);
	font-weight: 600;
	font-size: 16px;
}

.ecn__card-arrow {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--ecn-preview-bg);
	border: 1px solid var(--ecn-border);
	display: flex;
	align-items: center;
	justify-content: center;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

.ecn__card-link:hover .ecn__card-arrow {
	background: var(--ecn-blue);
	color: #ffffff;
	border-color: var(--ecn-blue);
}

/* ---------------------------------------------------------------------- */
/* DTS — "Документы и техподдержка"                                        */
/* ---------------------------------------------------------------------- */

.dts {
	--dts-blue: #2857b3;
	--dts-blue-dark: #1f4a9e;
	--dts-border: #dfe3ea;
	--dts-text: #1f2937;
	background: #ffffff;
	padding: 0 0 6.125rem 0;
	position: relative;
	overflow: hidden;
}

.dts__head h2 {
	color: var(--color);
	font-weight: 600;
}

.dts__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 2.5rem;
	width: 72%;
	justify-content: center;
	margin: 0 auto;
	margin-top: 2.625rem;
}
.dts__pill:hover {
	transform: scale(0.95);
}
.dts__pill {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	border: 1px solid #a8b7c7;
	border-radius: 3.125rem;
	padding: 1.5rem 2rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 120%;
	background: #ffffff;
	color: var(--dark);
	transition: all 0.3s;
}

.dts__pill-icon {
	width: 2.5rem;
	height: 2.8125rem;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dts__pill-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.dts__pill-text {
	font-size: 1.25rem;
	font-weight: 600;
}

.dts__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 2.5rem;
	margin-top: 3.125rem;
	justify-content: center;
}

.dts__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 20px 36px;
	border-radius: 999px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	min-width: 260px;
	box-sizing: border-box;
}

.dts__btn--filled {
	background: var(--dts-blue-dark);
	color: #ffffff;
	transition:
		background 0.2s ease,
		transform 0.2s ease;
}

.dts__btn--filled:hover {
	background: var(--dts-blue);
	transform: translateY(-1px);
}

.dts__btn--outline {
	border: 1px solid var(--dts-border);
	color: var(--dts-blue-dark);
	background: #ffffff;
	transition:
		border-color 0.2s ease,
		background 0.2s ease;
}

.dts__btn--outline:hover {
	border-color: var(--dts-blue);
	background: #f5f8ff;
}

/* ---------------------------------------------------------------------- */
/* WCS — "Почему в 9 из 10 сложных проектах выбирают СКО"                  */
/* ---------------------------------------------------------------------- */

.wcs {
	--wcs-navy: #0b1550;
	--wcs-blue-mid: #1c4fc0;
	--wcs-blue-light: #3d8bf0;
	--wcs-body-bg: #e9edf5;
	--wcs-title-blue: #1f4fb5;
	--wcs-text-gray: #4b5563;
	background-color: #fff;
	padding: 6.125rem 0;
}
a.dor__card.dor__card-contact {
	transition: all 0.3s;
}

.wcs::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 45%;
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
}

.wcs__head {
	margin-bottom: 40px;
	color: #fff;
}

.wcs__cards {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
}

.wcs__card {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
}

.wcs__card-img {
	aspect-ratio: 3 / 2.3;
	overflow: hidden;
	border-radius: 0.3125rem 0.3125rem 0px 0px;
}
.dts__actions .btn.btn-second span {
	padding: 0.625rem 2.5rem;
}
.wcs__card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.oap__phones .oap__phone:first-child .oap__phone-value,
.oap__phones .oap__phone:first-child .oap__phone-value a {
	font-size: 1.5rem;
}

.wcs__card-body {
	background: #e6edf5;
	padding: 1.75rem 2rem 2.2rem;
	flex: 1;
}

.wcs__cards .wcs__card:last-child .wcs__card-body {
	border-bottom-right-radius: 4rem;
}

.wcs__card-title {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 120%;
	color: #606d79;
	margin-bottom: 2rem;
}

.wcs__card-desc {
	font-size: 1.125rem;
	line-height: 140%;
}

.wcs__card-desc p {
	margin: 0 0 12px;
}

.wcs__card-desc p:last-child {
	margin-bottom: 0;
}

.wcs__card-desc strong {
	color: #1f2937;
	font-weight: 700;
}

.wcs__card-desc ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wcs__card-desc ul li {
	position: relative;
	padding-left: 1.4rem;
	margin-bottom: 0.625rem;
}

.wcs__card-desc ul li::before {
	content: "";
	position: absolute;
	left: 0.3rem;
	top: 0.375rem;
	width: 0.375rem;
	height: 1rem;
	background: #325ea7;
	border-radius: 17.6565px;
	transform: rotate(-90deg);
}

.wcs__card-desc ul li:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------------------- */
/* OAP — "Отрасли и объекты применения продукции"                          */
/* ---------------------------------------------------------------------- */

.oap {
	--oap-blue: #1a53c8;
	--oap-blue-dark: #16428f;
	--oap-border: #e2e6ee;
	--oap-featured-bg: #e9edf5;
	--oap-text-gray: #6b7280;
	background: #ffffff;
	padding: 2.5rem 0 4.4375rem 0;
}

.oap__body {
	display: grid;
	grid-template-columns: 2.1fr 1fr 1fr;
	margin-top: 3rem;
	align-items: stretch;
}

.oap__industries {
	display: flex;
	flex-direction: column;
}

.oap__featured {
	background: #e6edf5;
	border-radius: 0.3125rem;
	padding: 2.125rem;
	position: relative;
}

.dor__card.dor__card-contact .cvs__card-link {
	margin: 0 auto;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.oap__badge {
	position: absolute;
	top: 0;
	left: 0;
	background: var(--color);
	border-radius: 0px 5px 5px 0px;
	font-size: 12px;
	line-height: 100%;
	color: #ffffff;
	padding: 0.6875rem;
}

.oap__featured-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.oap__item {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	text-decoration: none;
	color: inherit;
}

.oap__item-icon {
	width: 5.9375rem;
	display: flex;
	height: 5.9375rem;
	align-items: center;
	justify-content: center;
}

.oap__item-icon img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.oap__item-title {
	font-weight: 500;
	font-size: 1.25rem;
	line-height: 130%;
}

.oap__table {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.oap__cell {
	border-right: 1px solid var(--oap-border);
	border-bottom: 1px solid var(--oap-border);
	padding: 1.25rem;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	text-decoration: none;
	color: inherit;
}

.oap__cell-icon {
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.oap__photo img {
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

.oap__cell-title {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 120%;
}

.oap__cell-desc {
	line-height: 160%;
	color: #606d79;
}

.oap__photo {
	position: relative;
	display: flex;
	align-items: flex-end;
}

.oap__photo::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-color: var(--color);
	width: 80%;
	height: 100%;
	z-index: -1;
}

.oap__cell:nth-child(1),
.oap__cell:nth-child(4) {
	border-left: none;
}

.oap__contacts {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	justify-content: flex-end;
}

.oap__cta {
	background: #e6edf5;
	border-radius: 0.3125rem;
	padding: 3.3125rem 1.125rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.oap__cta-title {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	margin: 0 0 20px;
}

.oap__cta-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	box-sizing: border-box;
	background: var(--oap-blue-dark);
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	font-size: 15px;
	padding: 16px 20px;
	border-radius: 999px;
	transition: background 0.2s ease;
}

.oap__cta-btn:hover {
	background: var(--oap-blue);
}

.oap__phones {
	background: #e6edf5;
	border-radius: 0.3125rem 0.3125rem 4rem 0.3125rem;
	padding: 3.125rem;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.oap__phone-label {
	font-weight: 400;
	line-height: 160%;
	color: #606d79;
}
.oap__phone-value a,
.oap__phone-value {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 120%;
	color: var(--dark);
}
.oap__phone-value a:hover {
	color: var(--color);
}

/* ---------------------------------------------------------------------- */
/* DOR — "Доверие рынка к СКО..."                                          */
/* ---------------------------------------------------------------------- */

.dor {
	--dor-navy: #0b1550;
	--dor-blue-mid: #1c4fc0;
	--dor-blue-light: #3d8bf0;
	--dor-blue-text: #1f4fb5;
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
	border-radius: 0px 0px 4rem 0px;
	padding: 6.0625rem 0;
	overflow: hidden;
}

.dor__head {
	text-align: center;
	margin-bottom: 32px;
}

.dor__body {
	display: grid;
	grid-template-columns: 1.2fr 1.1fr;
	gap: 3.5625rem;
	margin-top: 4.75rem;
	align-items: start;
}

.dor__head h2 {
	color: #fff;
	font-weight: 600;
}

.dor__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}

.dor__card {
	display: flex;
	flex-direction: column;
	min-height: 17.5rem;
	background: #ffffff;
	border-radius: 0.3125rem;
	padding: 2.5rem;
	position: relative;
	justify-content: flex-end;
}

.dor__card-icon {
	width: 8.8125rem;
	position: absolute;
	top: 0.5625rem;
	right: 0.75rem;
}

.dor__card-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.dor__card-number {
	font-weight: 400;
	font-size: 2.5rem;
	line-height: 110%;
	color: var(--color);
	margin-bottom: 1rem;
}

.dor__card-desc {
	font-size: 1.5rem;
	line-height: 160%;
}

.dor__card--link {
	justify-content: center;
	flex-direction: row;
	align-items: center;
	gap: 16px;
	text-decoration: none;
	border: 1px solid #e2e6ee;
}

.dor__card-link-text {
	font-size: 16px;
	font-weight: 600;
	color: var(--dor-blue-text);
}

.dor__card-arrow {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid #e2e6ee;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--dor-blue-text);
	flex-shrink: 0;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

.dor__card--link:hover .dor__card-arrow {
	background: var(--dor-blue-text);
	color: #ffffff;
	border-color: var(--dor-blue-text);
}

.dor__right {
	display: flex;
	position: relative;
	flex-direction: column;
	height: 100%;
}

.dor__text {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 120%;
	color: #ffffff;
}

.dor__text p {
	margin: 0;
}

.dor__photo-wrap {
	position: absolute;
	flex: 1;
	bottom: 0;
	left: 0;
}

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

.dor__note {
	position: absolute;
	left: 0;
	bottom: 0;
	font-size: 0.875rem;
	line-height: 160%;
	color: #ffffff;
	max-width: 20rem;
}

.dor__note p {
	margin: 0;
}

/* ---------------------------------------------------------------------- */
/* GWP — "Где уже работает продукция СКО" (слайдер Slick)                  */
/* ---------------------------------------------------------------------- */

.gwp {
	background: #ffffff;
	padding: 6rem 0;
}

.gwp__slider-wrap {
	position: relative;
	overflow: hidden;
	z-index: 100;
}
.footer-menu .menu .menu-item a:hover {
	color: var(--color);
}
.gwp__head {
	position: absolute;
	top: 4rem;
	left: 4rem;
	z-index: 3;
	max-width: 480px;
	pointer-events: none;
}

.gwp__head h2 {
	font-weight: 600;
	color: #fff;
}

.gwp__slider {
	line-height: 0;
}

.gwp__slide {
	position: relative;
	height: 37.5rem;
	border-radius: 5px 5px 4rem 5px;
	overflow: hidden;
}

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

.gwp__slide-overlay {
	position: absolute;
	width: 50%;
	height: 100%;
	left: 0;
	top: 0;

	background: linear-gradient(90deg, #11273c 0%, rgba(17, 39, 60, 0) 96.15%);
	border-radius: 0.3125rem;

	pointer-events: none;
}

.gwp__caption-desc p {
	margin-bottom: 0;
}

.gwp__caption {
	color: #fff;
	position: absolute;
	left: 4rem;
	bottom: 4rem;
	max-width: 29.625rem;
	z-index: 2;
}

.gwp__caption-title {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 110%;
	margin-bottom: 1.5rem;
}

.gwp__caption-desc,
.gwp__caption-desc p {
	line-height: 160%;
}

.gwp__slider .slick-slide {
	line-height: 0;
}

.gwp__slider .slick-list,
.gwp__slider .slick-track {
	height: 100%;
}

.gwp__controls {
	position: absolute;
	right: 4rem;
	bottom: 4rem;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.gwp__counter-current {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 120%;
	color: #ffffff;
}

.dts_svg svg {
	width: 100%;
	height: auto;
}

.popup .btn span {
	padding: 1.4rem 2rem;
	font-size: 1rem;
}

.dts_svg {
	position: absolute;
	bottom: -15%;
	left: 0;
	width: 100%;
}

.oap-svg svg {
	width: 100%;
	height: auto;
}

.oap-svg {
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(0, -45%);
	width: 100%;
}

.gwp__arrow {
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid #a8b7c7;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s;
	flex-shrink: 0;
}

#footer .phone-content {
	color: var(--color) !important;
}

.gwp__arrow:hover {
	transform: scale(1.1);
}

.gwp__counter {
	font-weight: 400;
	font-size: 1rem;
	line-height: 160%;
	color: #e6edf5;
	flex-grow: 0;
}

.oap__head h2 {
	font-weight: 600;
	margin-bottom: 1rem;
}

.oap__head {
	font-size: 1.5rem;
	line-height: 160%;
	color: #606d79;
}

.oap__body .btn span {
	padding: 1.5rem 2rem;
}

.oap__body .btn {
	width: 100%;
}

.gwp__counter-sep {
	font-size: 14px;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.7);
	margin-left: 2px;
}

.manager-1 .wrap {
	background-color: transparent;
	padding: 0;
	box-shadow: none;
}

.manager-1 .text-wrap {
	padding: 0;
}

.type-header .mobile-search {
	display: block;
	margin-bottom: 1.5rem;
}

.type-header .mobile-search__form {
	position: relative;
}

.type-header .mobile-search__field {
	padding: 0.75rem 3rem 0.75rem 1.5rem;
	border: 0;
	border-radius: 6px;
	background: var(--light);
}

.type-header .mobile-search__button {
	position: absolute;
	top: 50%;
	right: 2.75rem;
	width: 1.5rem;
	height: 1.5rem;
	padding: 0;
	background: transparent;
	transform: translateY(-50%);
}

.type-header .mobile-search__button:hover {
	background: transparent;
}

.type-header .mobile-search__button svg path {
	fill: var(--gray);
}


.manager-1.manager-2 .form-wrap::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 1;
}

#footer {
	background: #e6edf5;
	padding: 5.6875rem 0 2.5rem 0;
}

#footer-2 {
	display: none;
}

.footer-menu .menu .menu-item a {
	opacity: 1;
	font-weight: 400;
	font-size: 1rem;
	line-height: 160%;
	color: #111111;
	text-decoration: none;
}

.footer-menu li {
	margin-bottom: 1rem;
}

.inputfile + label {
	font-weight: 400;
}

.manager-1.manager-2 .text-wrap .gdn-section__header h2 {
	margin-bottom: 2rem;
	font-weight: 400;
}

.site-footer {
	background: #e9eef6;
	padding: 56px 0 40px;
	font-size: 15px;
	color: #1f2937;
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1.1fr 1fr 1.2fr 1fr 1fr;
	gap: 2rem;
}

.site-footer__col .footer-head {
	font-size: 17px;
	font-weight: 700;
	color: #111827;
	margin-bottom: 20px;
}

/* ---- колонка 1: бренд ---- */
.footer-logo img {
	margin: 0;
}

#footer .phone-content {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 120%;
	color: #111111 !important;
}

.footer-group {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 20px 0;
}

.kpd__photo-placeholder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

footer .header-topbar__partner-text {
	font-size: 0.875rem;
	line-height: 120%;
	color: #606d79;
}

.kpd__photo-placeholder {
	border-radius: 0.3125rem 0.3125rem 0.3125rem 4rem;
	overflow: hidden;
}

span.header-icon {
	flex-shrink: 0;
}
.header-icon {
	transition: all 0.3s;
}
.header-icon:hover {
	transform: scale(1.1);
}
footer .header-topbar__partner {
	margin: 1.5rem 0;
	display: flex !important;
}

.footer-contacts__email {
	display: flex;
	gap: 0.5rem;
	align-items: center;
}

.footer-group__logo img {
	max-height: 32px;
	width: auto;
	display: block;
}

.footer-group__text {
	font-size: 14px;
	line-height: 1.4;
	color: #374151;
}

.footer-privacy-link {
	margin-bottom: 1.25rem;
}

#footer .footer-logo {
	max-width: 200px;
	margin: 0;
	justify-content: flex-start;
}

.footer-requisites {
	font-size: 0.875rem;
	color: var(--dark);
	line-height: 1.6;
	margin-bottom: 1.5rem;
}

.footer-disclaimer {
	font-size: 0.875rem;
	line-height: 160%;
	color: #111111;
}

.footer-privacy-link {
	font-weight: 400;
	font-size: 0.875rem;
	line-height: 160%;
	color: var(--color2);
}

.footer-dev-badge {
	display: inline-block;
}

/* ---- колонки меню ---- */
.footer-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-menu li {
	margin-bottom: 0.7rem;
}

.footer-menu a {
	color: #1f2937;
	text-decoration: none;
	font-size: 15px;
}

.footer-menu a:hover {
	color: #2857b3;
}

.footer-menu .current-menu-item > a,
.footer-menu .current_page_item > a {
	color: #2857b3;
}

/* ---- колонка контактов ---- */
.footer-contacts {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}

.footer-contacts__brand {
	display: none;
	/* название бренда используется для schema.org, визуально скрыто как на макете */
}

.footer-contacts li {
	margin-bottom: 10px;
	font-size: 15px;
	color: #1f2937;
}

.footer-contacts__phone {
	font-size: 20px;
	font-weight: 700;
}

.footer-contacts__phone .link {
	display: none;
	/* "Обратный звонок" скрыт визуально на этом макете, но остаётся в разметке/DOM */
}

.footer-contacts__email a {
	color: #2857b3;
	text-decoration: none;
}

.footer-cta-buttons {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
	align-items: flex-start;
}

.manager-1 .text-wrap .gdn-section__header {
	font-size: 1.5rem;
	line-height: 160%;
}

header .btn.btn-second span,
footer .btn.btn-second span {
	padding: 0.8125rem 1.5rem;
	font-size: 0.875rem;
	line-height: 160%;
}
.hero3__content .btn:hover,
.hcs__btn:hover {
	background-color: var(--color);
	color: #fff;
}

.copyright.copy-link .b2b-copy {
	background: rgba(44, 44, 44, 1) !important;
	padding: 4px !important;
	justify-content: center;
	align-items: center;
}

.kpd-svg {
	position: absolute;
	top: -8%;
	left: 0;
	width: 100%;
	z-index: 1;
	pointer-events: none;
}

.footer-privacy-link {
	display: block;
	margin-bottom: 1.5rem !important;
}

.cvs__grid h2 {
	font-weight: 500;
	color: #325ea7;
	margin-left: 3.75rem;
}

.kpd-svg svg {
	width: 100%;
	height: auto;
}

.hcs__hero-img {
	position: absolute;
	bottom: 0;
	left: 19%;
	width: 33%;
	pointer-events: none;
}

#header .contacts .phone-content:hover {
	color: var(--color) !important;
}

.menu_block a:hover,
#menu .menu .menu-item:hover a,
.header-topbar__menu .menu-item:hover a {
	color: var(--color);
}

.header_contacts.contacts a:hover {
	color: var(--color2) !important;
}

.btn span {
	overflow: hidden;
}

.btn {
	overflow: hidden;
}

.footer-cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	border: 1px solid #d7dee9;
	border-radius: 999px;
	padding: 12px 20px;
	color: #1f2937;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	background: #ffffff;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
	width: fit-content;
}

.footer-cta-btn:hover {
	border-color: #2857b3;
	box-shadow: 0 2px 8px rgba(40, 87, 179, 0.12);
}

.footer-cta-btn__icon {
	display: flex;
	color: #2857b3;
}

.footer-social {
	display: flex;
	align-items: center;
	gap: 12px;
}

/* ---- колонка бейджей ---- */
.site-footer__col--badges {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	align-items: center;
}

.footer-badge {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: #1f2937;
}

.footer-badge__title {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
}

.site-footer__col--badges {
	justify-content: flex-end;
}

/* ---- responsive ---- */
@media (max-width: 1200px) {
	.site-footer__grid {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.site-footer__col--brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 720px) {
	footer .header-topbar__partner-text {
		display: block;
	}
	.site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 480px) {
	.site-footer__grid {
		grid-template-columns: 1fr;
	}
}

#footer .footer-head {
	text-transform: unset;
	font-weight: 600;
	margin-bottom: 1.5rem;
	letter-spacing: 0;
}

.manager-1.manager-2 .text-wrap p strong {
	margin-top: 5rem;
	display: block;
	font-size: 1.25rem;
}

.manager-1.manager-2 .form-field-area {
	display: none;
}

.manager-1.manager-2 .text-wrap {
	max-width: 36rem;
	flex: 0 0 36rem;
}

.manager-2 .wrap {
	width: 80%;
	margin: 0 auto;
}

.manager-2.manager-1 .form-wrap .form-desk {
	display: block;
}

.form.hideLabels {
	position: relative;
	z-index: 2;
}

.form-wrap .form-head {
	color: var(--color);
	background: transparent;
	margin: 0;
	padding: 0;
	border-top-left-radius: 0;
	font-size: 2rem;
	line-height: 160%;
	border-top-right-radius: 0;
}

.site-footer__col-one {
	margin-left: 5rem;
}

.manager__img-el {
	position: absolute;
	left: 0;
	transform: translate(-49%, 0);
	bottom: 0;
	width: 85%;
}

.form-wrap {
	position: relative;
}

.manager-1 .utp ul {
	margin-top: 1.5rem;
	margin-bottom: 0;
	max-width: 550px;
}

.inputmyfile + label {
	gap: 0.8125rem;
}

.manager-1 .utp ul li {
	font-weight: 400;
	padding-left: 1rem;
	font-size: 1.25rem;
	margin-bottom: 0.6rem;
	line-height: 160%;
}

.manager-1.manager-2 .utp ul {
	max-width: unset;
}

.manager-1 .utp ul li:last-child {
	margin-bottom: 0;
}

.inputfile + label svg {
	width: 1.25rem;
	height: 1.25rem;
	margin-top: -8px;
	margin: 0;
	fill: none;
}

.form-group {
	background: #e6edf5;
	border-radius: 0.3125rem;
	border-color: transparent;
}

.hideLabels .form-group input {
	padding: 1.5rem 1.5rem 1.5rem;
	padding-left: 2rem;
}

.hideLabels .form-group label {
	font-weight: 400;
	font-size: 16px;
	line-height: 160%;
	left: 2rem;
	top: 1.5rem;
	color: #606d79;
}

.hideLabels .form-group {
	margin: 1.5rem 0;
}

.form-wrap .button {
	margin: 2rem 0;
}

.manager-1 .form-wrap {
	margin-top: 0;
	z-index: unset;
}

.form-wrap {
	padding: 3rem;
	background: #ffffff;
	border-radius: 0.3125rem 0.3125rem 4rem 0.3125rem;

	max-width: 35.75rem;
}

.manager-1 .form-wrap .form-desk {
	display: none;
}

.manager-1 {
	overflow: unset !important;
	background: linear-gradient(180deg, #181b4c 0%, #4ca0ff 100%);
}
.man-img {
	position: absolute;
	top: -6.25rem;
	left: 10%;
	width: 30vw;
}

.manager__img {
	position: absolute;
	left: 0;
	transform: translate(-71%, 0);
	z-index: -1;
	width: 137%;
	bottom: 0;
	height: 100%;
}
.manager-1 .container-fluid {
	z-index: unset;
}
.manager__img-wp {
	position: absolute;
	width: 23.6%;
	height: auto;
	left: 0;
	top: 0;
	transform: translate(-44.1%, 55.6%);
	z-index: 2;
}
.manager__img-mob {
	display: none;
}

.manager-1 .utp ul li::before {
	content: "";
	background-image: none;
	width: 0.5rem;
	height: 0.5rem;
	left: 0;
	top: 0.8rem;
	border-radius: 50%;
	background: #ffffff;
}

.manager-1 .text-wrap .gdn-section__header h2 {
	margin-bottom: 5.125rem;
}

.manager-1 .text-wrap .gdn-section__header p,
.manager-1 .text-wrap .gdn-section__header {
	font-size: 1.5rem;
	line-height: 160%;
	margin-bottom: 0;
}

.manager-1 .text-wrap .gdn-section__header p,
.manager-1 .text-wrap .gdn-section__header,
.manager-1 .text-wrap .gdn-section__header h2,
.manager-1 .text-wrap .subheader {
	color: #fff;
}

.manager-1 .text-wrap {
	max-width: 35.375rem;
	-ms-flex: 1 0 35.375rem;
	flex: 1 0 35.375rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.gwp__hero-img {
	position: absolute;
	bottom: 0;
	width: 50%;
	z-index: 5;
	transform: translate(0, 58%);
}

.gwp .container-fluid {
	z-index: unset;
}

@media screen and (min-width: 1921px) {
	body {
		zoom: var(--zoom);
	}
}

@media screen and (max-width: 1919px) {
	.header-mainbar::before {
		width: 87%;
	}

	.manager-2 .wrap {
		width: 100%;
		margin: 0 auto;
	}

	.oap__body .btn span {
		font-size: 1rem;
	}

	.site-footer__grid {
		grid-template-columns: 1.1fr 1fr 1.2fr 1.2fr 1fr;
	}

.manager-1 .text-wrap .gdn-section__header h2,
	h2 {
		font-size: var(--h2);
	}

	.oap__phones {
		gap: 1.1rem;
	}

	.oap__item-icon {
		width: 4rem;
		height: 4rem;
	}

	.oap__phones {
		padding: 2.5rem;
	}

	.oap__cell {
		gap: 1.125rem;
	}

	.oap__cell-title,
	.oap__item-title {
		font-size: 1.125rem;
	}

	.hcs__title-block h1 {
		font-size: var(--h1);
	}
}

@media screen and (max-width: 1679px) {
	.wcs__card-desc ul li::before {
		width: 0.25rem;
	}
	.oap__contacts {
		gap: 1.7rem;
	}
	#menu {
		margin-left: 8.3rem;
	}

	#menu .menu .menu-item:first-child a,
	.header-topbar__menu .menu-item:first-child a {
		padding-left: 0;
	}

	.site-footer__col-one {
		margin-left: 0;
	}

	.cvs__grid h2 {
		margin-left: 0;
	}
}

@media screen and (max-width: 1599px) {
.site-header__menu > .menu-item > a, .site-header__phone, .site-header__phone a, .site-header--new .site-header__phone .phone-content {
	font-size: 1rem;
}

.site-header__menu > .menu-item > a {
  padding: 0;
}
.site-header__menu > .menu-item.menu-item-has-children > a {
  padding-left: 0;
  padding-right: 2rem;
}

	.gwp__hero-img {
		width: 44%;
		transform: translate(0, 52%);
	}
	.result-card footer a {
		font-size: 1.125rem !important;
	}
	.cable-name {
		font-size: 1.5rem !important;
	}

	.kpd__head h2 {
		margin-bottom: 1rem;
	}
	.kpd__card-img img {
		height: 2.5rem;
	}
	.kpd__card {
		padding: 4.5rem 1.5rem 1.5rem 1.5rem;
	}
	.kpd__cards {
		gap: 1.5rem;
	}
	.kpd__card-title {
		font-size: 1.125rem;
		margin-bottom: 1rem;
	}
	.kpd__card-desc {
		font-size: 0.875rem;
		line-height: 140%;
	}
	.kpd__grid {
		margin-top: 2rem;
		gap: 1.5rem;
	}
	.hcs__title-block ul li {
		font-size: 1rem;
	}
	.hcs__title-block {
		font-size: 1.25rem;
	}
	.manager-1 .utp ul {
		max-width: 450px;
	}
	.manager__img {
		transform: translate(-72.6%, 0);
		width: 136%;
	}
	.manager-1 .form-wrap {
		max-width: 33.125rem;
	}

	.dor,
	.wcs {
		padding: 4rem 0;
	}

	.menu_block a,
	#menu .menu .menu-item a {
		font-size: 0.875rem;
	}

	.buttons__elements,
	.header-mainbar__inner {
		gap: 1rem;
	}

	.hcs__stat-text {
		font-size: 1.25rem;
	}

	.hcs__title-block strong {
		font-size: 2rem;
		margin-bottom: 1.5rem;
	}

	.hcs__title-block ul {
		gap: 1rem;
		padding-top: 1.8rem;
	}

	.hcs__stat-title {
		font-size: 1.9rem;
	}

	.hcs__hero-grid {
		gap: 2rem;
	}

	.kpd__cards {
		grid-template-columns: repeat(2, 1fr);
	}

	.cvs__card-img {
		width: 6.375rem;
	}

	.cvs__card-title {
		font-size: 1.25rem;
		margin-bottom: 1rem;
	}

	.cvs__card-desc {
		margin-bottom: 1rem;
	}

	.dts__pill {
		padding: 1rem 2rem;
	}

	.btn span {
		padding: 1.5rem 2rem;
		font-size: 1.125rem;
	}

	.dts__pills {
		gap: 1.1rem;
		width: 100%;
	}

	.oap__cell-title,
	.oap__item-title {
		font-size: 1rem;
	}

	.wcs__card-desc br {
		display: none;
	}

	.wcs__card-title {
		margin-bottom: 1.5rem;
	}

	.wcs__card-title {
		font-size: 1.25rem;
	}

	.wcs__card-desc {
		font-size: 1rem;
	}

	.oap__cell-desc {
		font-size: 0.875rem;
	}

	.oap__phone-label {
		font-size: 0.875rem;
	}

	.oap__cell {
		gap: 1rem;
	}

	.oap__body .btn span {
		padding: 1rem 0.9rem;
	}

	.oap__cell-desc {
		line-height: 140%;
	}

	.dor__card-desc {
		font-size: 1.3rem;
	}

	.dor__body {
		margin-top: 3rem;
		gap: 2rem;
	}

	.dor__card {
		padding: 1.8rem;
	}

	.gwp__slide {
		height: 33.5rem;
	}

	.form-wrap .form-header {
		margin-bottom: 1.4rem;
	}

	.gwp__controls {
		right: 2.5rem;
		bottom: 2.5rem;
	}

	.gwp__head {
		top: 2.5rem;
		left: 2.5rem;
	}

	.gwp__caption {
		left: 2.5rem;
		bottom: 2.5rem;
	}

	.hideLabels .form-group {
		margin: 1rem 0;
	}

.manager-1 .text-wrap .gdn-section__header h2 {
		margin-bottom: 3rem;
	}

	.hideLabels .form-control {
		padding: 1.5rem;
	}

	.form-wrap .form-head {
		font-size: 1.7rem;
	}

	.form-wrap .button {
		margin: 1.5rem 0;
	}

	.form-wrap {
		padding: 2rem;
	}
}

@media (max-width: 1439px) {
	.kpd__card {
		padding: 3.5rem 1.5rem 1.5rem 1.5rem;
	}
	.kpd__card-img {
		top: 0.4rem;
	}

	.kpd__head {
		font-size: 1.25rem;
	}
	.kpd__grid,
	.kpd__cards {
		gap: 1rem;
	}
	.manager__img-wp {
		width: 18.5%;
		top: unset;
		bottom: 0;
		transform: translate(-45.6%, -58.4%);
	}
	.manager__img {
		width: 105%;
		height: auto;
	}
	.wcs__card-title {
		font-size: 1.125rem;
		margin-bottom: 1rem;
	}

	.header-mainbar::before {
		width: 85.3%;
	}

	.hcs__title-block h1 {
		font-size: 4.5rem;
	}
}

/* ==========================================================================
   АДАПТИВ — унифицированные брейкпоинты: 1200 / 1024 / 768 / 480
   Внутри каждого @media подряд идут переопределения ВСЕХ секций,
   помеченные комментарием с названием блока.
   ========================================================================== */

/* -------------------------- 1200px и уже -------------------------------- */
@media (max-width: 1365px) {
	#hero.error-hero .btn.btn-second span {
		padding: 1.4rem 2rem;
	}
	.error-hero-img {
		right: 0;
	}
	.wcs__card-desc ul li::before {
		width: 0.2rem;
	}
	.wcs__card-desc br {
		display: none;
	}
	.btn span {
		padding: 1.5rem 2.5rem;
	}

	.cvs-img {
		bottom: -14%;
	}

	.kpd__grid {
		gap: 1.5rem;
	}

	.btn span {
		font-size: 1rem;
	}

	input#searchsubmit {
		padding: 0.5rem 1rem;
		font-size: 0.87rem;
	}

	.header-topbar__menu .menu-item a {
		padding: 0 0.7rem;
	}

	.header-mainbar {
		padding-bottom: 0.6875rem;
	}

	.hcs__stat-title {
		font-size: 1.6rem;
	}

	.hcs__stat-text {
		line-height: 130%;
		font-size: 1.125rem;
	}

	.cvs__card {
		flex-direction: column;
	}

	.kpd__grid {
		margin-top: 2.5rem;
	}

	.kpd__head h2 {
		margin-bottom: 1rem;
	}

	.hcs__stat {
		padding: 1.5rem;
		padding-right: 0;
	}

	.kpd__cards {
		gap: 1.5rem;
	}

	.dor__card {
		min-height: 15.5rem;
	}

	img.dor__photo {
		transform: translate(0, -12%);
	}

	.dor__card-number {
		font-size: 2.1rem;
		margin-bottom: 0.5rem;
	}

	.dor__card-desc {
		font-size: 1.1rem;
	}

	.dor__text {
		font-size: 1.2rem;
	}

	.gwp__slide {
		height: 29.5rem;
	}

	.manager-1 .utp ul li {
		font-size: 1rem;
	}

	.header-topbar__partner-text {
		display: none;
	}

	.btn.btn-second span svg {
		font-size: initial;
	}

	#menu .menu .menu-item a {
		padding: 0 0.6rem;
	}

	#menu .menu .menu-item a,
	.header-mainbar .btn.btn-second span {
		font-size: 0.875rem;
	}

	#menu .menu .menu-item a {
		padding-right: 0.35rem;
		padding-left: 0.35rem;
		font-size: 0.8125rem;
	}

	#menu .menu .menu-item.menu-item-has-children a {
		padding-right: 1.5rem;
	}

	.buttons__elements {
		gap: 0.5rem;
	}

	.header-mainbar .btn.btn-second span {
		padding-right: 0.5rem;
		padding-left: 0.5rem;
	}
	.calculator-page__sidebar-toggle,
	.calculator-page__sidebar-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		height: 2.75rem;
		border: 1px solid #a8b7c7;
		background: #fff;
		color: var(--dark);
		cursor: pointer;
	}

	.calculator-page__sidebar-toggle {
		padding: 0 1rem;
		border-radius: 0.3125rem;
		font-weight: var(--f1wb);
		white-space: nowrap;
	}

	.calculator-page__sidebar-close {
		width: 2.75rem;
		padding: 0;
		border-radius: 50%;
	}

	.calculator-page__sidebar {
		position: fixed;
		inset: 0;
		z-index: 10001;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-content: start;
		width: 100vw;
		max-width: none;
		height: 100vh;
		height: 100dvh;
		padding: 5rem clamp(1rem, 4vw, 4rem) 2rem;
		overflow-y: auto;
		background: #f5f7fa;
		transform: translateY(-1rem);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: transform .25s ease, opacity .25s ease, visibility 0s linear .25s;
	}

	.calculator-page__sidebar.is-open {
		transform: translateY(0);
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transition-delay: 0s;
	}

	.calculator-page__sidebar-close {
		position: fixed;
		top: 1.5rem;
		right: 1.5rem;
		z-index: 1;
	}

	.calculator-page__sidebar-overlay {
		position: fixed;
		inset: 0;
		z-index: 10000;
		background: rgb(17 17 17 / 45%);
	}

	.calculator-page__sidebar-overlay.is-open {
		display: block;
	}

	body.calculator-sidebar-open {
		overflow: hidden;
	}

	body.calculator-sidebar-open .calculator-page > .container-fluid {
		z-index: 10000;
	}
}

@media (max-width: 900px) {
	.calculator-page__sidebar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.calculator-page__sidebar {
		grid-template-columns: minmax(0, 1fr);
		padding: 4.5rem 1rem 1rem;
	}

	.calculator-page__sidebar-close {
		top: 1rem;
		right: 1rem;
	}
}

@media (max-width: 1279px) {
	.cvs,
	.kpd {
		padding: 4rem 0;
	}
  .man-img {
	top: -4rem;
}

	.cvs__grid h2 {
		margin-bottom: 1rem;
	}

	.manager__img-el {
		width: 76%;
	}

	.manager-1.manager-2 .text-wrap p strong {
		margin-top: 2rem;
	}

	.cvs-img {
		display: none;
	}

	.gwp__hero-img {
		transform: translate(0, 34%);
	}

	#footer {
		padding: 2.5rem 0;
	}

	.site-footer__grid {
		grid-template-columns: 1.1fr 1fr 1.2fr 1.2fr;
	}

	.buttons__elements,
	.header-mainbar__inner {
		gap: 0.6rem;
	}

	.hcs__title-block strong {
		font-size: 2rem;
	}

	.hcs__title-block ul li {
		font-size: 1rem;
		padding: 0.5rem 1.2rem;
	}

	.hcs__title-block h1 {
		font-size: 4.5rem;
	}

	.hcs__title-block {
		font-size: 1.3rem;
		line-height: 140%;
	}

	.hcs__title-block ul {
		padding-top: 1.5rem;
	}
	.padding_bottom_section {
    padding-bottom: unset;
}
}

@media (max-width: 1179px) {
  .site-header__navigation {
    display: none;
  }
	.oap__head {
		font-size: 1.25rem;
	}

	#hero.error-hero .intro {
		font-size: 1.25rem;
	}
  .hero3__slide {
	background-position: center right;
}
	.dor__text {
		width: 78%;
		position: relative;
		z-index: 1;
	}
	img.dor__photo {
		width: 73%;
		margin: 0 auto;
		margin-bottom: -4rem;
		overflow: visible;
	}
	.hcs__hero-right {
		height: 30rem;
	}
	.manager-1 .wrap {
		flex-direction: column;
		display: flex;
		gap: 1rem;
	}

.manager-1 .text-wrap .gdn-section__header p,
	.kpd__head {
		font-size: 1.3rem;
	}

	.hcs__stats {
		padding: 2rem 0;
	}

	.manager-1 .form-wrap .form-head {
		padding: 0;
		margin: 0;
	}

	.manager-1 .form-wrap {
		margin: 0 auto;
		margin-top: 2rem;
		padding: 2rem;
	}
	.manager__img-wp {
		display: none;
	}

	.manager-1 .text-wrap .gdn-section__header h2 {
		margin-bottom: 1.5rem;
	}
}

/* -------------------------- 1024px и уже -------------------------------- */
@media (max-width: 1024px) {

	.oap__photo {
		width: 71%;
	}

	.kpd__photo-placeholder {
		display: none;
	}

	/* ХЕДЕР: прячем основное меню и кнопки (предполагается бургер-меню отдельно) */
	.header-mainbar__menu {
		display: none;
	}
  .site-header__top-menu {
	display: none;
}

	/* HCS: hero в одну колонку, статы — 2 колонки */
	.hcs__hero-grid {
		grid-template-columns: 1fr;
	}

	/* KPD: сетка в одну колонку, заглушка фото ниже */
	.kpd__grid {
		grid-template-columns: 1fr;
	}

	/* CVS: 3 колонки -> 2 колонки, заголовок на всю ширину сверху */
	.cvs__grid {
		grid-template-columns: 1fr 1fr;
		grid-template-areas:
			"title title"
			"card1 card2"
			"card3 card4"
			"card5 card5";
	}

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

	/* WCS: 4 карточки -> 2 колонки, скругления переезжают на 2 и предпоследнюю */
	.wcs__cards {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}

	.wcs__cards .wcs__card:nth-child(2) .wcs__card-body {
		border-bottom-right-radius: 20px;
	}

	.wcs__cards .wcs__card:nth-last-child(2) .wcs__card-body {
		border-bottom-left-radius: 0;
	}

	/* OAP: правая часть (фото+контакты) уходит на новую строку в 2 колонки,
       блок отраслей растягивается на всю ширину */
	.oap__body {
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	.oap__contacts {
		gap: 1rem;
	}

	.oap__phones {
		padding: 2rem;
	}

	.oap__industries {
		grid-column: 1 / -1;
	}

	.oap__cta {
		padding: 2.5rem 1.125rem;
	}

	/* DOR: правая колонка (текст+фото) уходит под карточки */
	.dor__body {
		grid-template-columns: 1fr;
	}

	.dor__photo-wrap {
		min-height: 320px;
		position: relative;
	}

	.oap__photo {
		width: 71%;
		position: absolute;
		right: 3%;
		width: 39%;
		bottom: -5rem;
	}
	.oap {
		overflow: hidden;
	}

	.oap__photo::before {
		display: none;
	}
}

@media (max-width: 1023px) {
	.oap__featured {
		padding: 1.25rem;
		padding-top: 2rem;
	}
	.result-card footer a {
		font-size: 1rem !important;
	}

#hero .gdn-list h1 + p br {
		display: none;
	}
	#hero.error-hero h1 {
		font-size: 2.1rem;
	}
	.error-hero-img {
		position: relative;
		width: 100%;
	}
	.dts__actions {
		gap: 1.7rem;
	}
	.ecn__cards {
		gap: 1.5rem;
	}
	.hcs__stat-text br {
		display: none;
	}
	.hcs__stat-text {
		font-size: 0.9rem;
	}
	.hcs__stats-grid {
		gap: 1.5rem;
	}
	.hcs__stat-title {
		font-size: 1.3rem;
	}
	.gwp__caption {
		max-width: 60%;
	}

	.site-footer__grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

/* -------------------------- 768px и уже --------------------------------- */
@media (max-width: 768px) {
	.gwp__hero-img {
		transform: translate(0, -8%);
	}
	.manager__img {
		display: none;
	}

	.oap__contacts {
		width: 50%;
	}

	.manager-1 .text-wrap {
		margin-bottom: 0;
	}

	.cvs__card {
		flex-direction: column;
	}

	.cvs__title h2 {
		font-size: 28px;
	}

	.dts__btn {
		min-width: 0;
		flex: 1 1 100%;
	}

	/* OAP: одна колонка, отрасли/таблица — 2 колонки внутри */
	.oap__body {
		grid-template-columns: 1fr;
	}

	.oap__featured-grid,
	.oap__table {
		grid-template-columns: 1fr 1fr;
	}

	.oap__head h2 {
		font-size: 26px;
	}
}

@media (max-width: 600px) {
  .site-header__sales-contacts {
	width: fit-content;
}
	.site-header__sales-primary {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.75rem;
	}

	.site-header__sales-actions {
		align-self: flex-start;
	}

	.site-header__departments {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.site-header__department {
		display: block;
	}

	.site-header__department-contacts {
		display: flex;
		flex-wrap: wrap;
		gap: 0.25rem 1rem;
		margin-top: 0.35rem;
	}

	.site-header__socials {
		flex-wrap: wrap;
	}

	.site-header__all-contacts-link {
		flex: 0 0 100%;
		margin-left: 0;
	}

  .site-header__search-field,
  .site-header__top {
    display: none;
  }
  .site-header__actions {
	gap: 0.5rem 1rem;
}
.site-header__container {
	grid-template-columns: 70px minmax(0, 1fr);
}
.site-header__brand {
	width: 70px;
}
 .site-header__phone, .site-header__phone a {
		font-size: 1.125rem;
	}
	#hero.error-hero h1 {
		font-size: 1.8rem;
	}
	#hero.error-hero .row {
		gap: 0;
	}
	.error-hero-img {
		margin-bottom: 3rem;
	}
	.dts__actions .btn {
		width: 100%;
	}
	.dts__actions {
		gap: 1.7rem;
		width: 21rem;
		margin: 0 auto;
		margin-top: 2rem;
	}
	.dts__actions .btn.btn-second span,
	.dts__actions .btn span {
		padding: 1.5rem 2.5rem;
	}
	.hcs__stats-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.cvs__grid {
		display: flex;
		flex-direction: column;
	}
	.dts__pill-text {
		font-size: 1.125rem;
	}
	.gwp__caption {
		max-width: 100%;
	}

	.header-topbar__messenger {
		display: none;
	}
	.header-topbar__right {
		flex-direction: row-reverse;
		justify-content: space-between;
		width: 100%;
	}
	.buttons__elements,
	.header-topbar__partner-text {
		display: none;
	}
  

	/* KPD: карточки в одну колонку */
	.kpd__cards {
		grid-template-columns: 1fr;
	}

	.hcs__title-block ul {
		padding-top: 1rem;
	}

	.hcs__title-block strong {
		font-size: 2.1rem;
	}

	.hcs__title-block h1 {
		font-size: 3.8rem;
	}

	.ecn__card,
	.wcs__card {
		flex: 0 0 24rem;
	}

	.ecn__cards,
	.wcs__cards {
		flex-wrap: nowrap;
		display: flex;
		padding-bottom: 1rem;
		overflow-x: scroll;
	}

	.oap__photo {
		width: 41%;
	}

	.oap__contacts {
		width: 100%;
	}

	.dor__card-desc {
		font-size: 1rem;
	}

	.dor__body {
		margin-top: 2rem;
	}

	.dor__head h2 br {
		display: none;
	}

	img.dor__photo {
		width: 100%;
	}

	.gwp__caption {
		padding-bottom: 5rem;
	}

	.gwp__slide {
		height: 35rem;
	}

	.gwp__slide-overlay {
		width: 100%;
		height: 100%;
	}
  .man-img {
	left: 3rem;
	width: 50vw;
}
}

/* -------------------------- 480px и уже --------------------------------- */
@media (max-width: 499px) {
  .site-header__brand {
	width: 60px;
}
	.message-error {
		font-size: 9px;
	}
	.site-footer__col {
		width: 45%;
	}
	.site-footer__col.site-footer__col--brand.site-footer__col--brand-bottom {
		width: 100%;
	}
	.site-footer__col.site-footer__col--menu.site-footer__col-one {
		order: -2;
	}
	.site-footer__col.site-footer__col--menu {
		order: -1;
	}
	.site-footer__col.site-footer__col--brand.site-footer__col--brand-top {
		order: 0;
	}
	.site-footer__grid {
		display: flex;
		flex-wrap: wrap;
	}
	.hcs__hero-img {
		width: 60%;
	}
	.oap__cell-desc {
		text-align: center;
	}
	.manager-2 .form-wrap {
		margin: 0;
		margin-left: auto;
		max-width: 85%;
	}

	.hideLabels .form-group input {
		padding: 1rem;
		padding-left: 1rem;
	}
	.hideLabels .form-group label {
		font-size: 12px;
		left: 1rem;
		top: 1rem;
	}
	footer .header-topbar__partner {
		margin-top: 0;
	}
	.site-footer__col--brand-top .copy-link,
	.site-footer__col--brand-top .footer-privacy-link,
	.site-footer__col--brand-top .header-topbar__partner,
	.site-footer__col--brand-top .footer-disclaimer,
	.site-footer__col--brand-top .footer-requisites {
		display: none !important;
	}
	.site-footer__col--brand-bottom {
		display: block;
	}
	.gwp {
		padding-bottom: 4rem;
	}
	.gwp__hero-img {
		transform: translate(0, 32%);
		width: 85%;
	}
	.oap__head {
		font-size: 1.1rem;
	}
	.oap__cell:nth-child(1),
	.oap__cell:nth-child(4),
	.oap__cell {
		border-left: 1px solid var(--oap-border);
	}

	.oap__cell,
	.oap__item {
		align-items: center;
	}
	.header-search-form.open {
		height: auto;
	}
	.header-search-form {
		right: unset;
		left: 50%;
		transform: translate(-61%, 0);
	}
	.language-dropdown.open {
		right: unset;
		left: 0;
	}
	.oap__phones .oap__phone:first-child .oap__phone-value,
	.oap__phones .oap__phone:first-child .oap__phone-value a {
		font-size: 1.3rem;
	}
	.oap__phone-value span {
		font-size: 0.875rem;
	}
	.cable-name {
		font-size: 1.25rem !important;
	}
	.result-card__name-label {
		font-size: 1rem;
	}
	.form-card h2,
	.result-card h2 {
		font-size: 1.3rem;
	}
	.form-group input,
	.form-group select {
		font-size: 0.9rem !important;
	}
	.calculator-page__title {
		font-size: 1.7rem;
		margin-bottom: 1.5rem;
	}
	#hero.error-hero .btn.btn-second span {
		padding: 1.2rem 1.5rem;
	}
	footer .btn.btn-second span svg {
		display: none;
	}
	.hideLabels .form-group label {
		font-size: 14px;
	}
	.kpd__card {
		padding: 5rem 1.5rem 1.5rem 1.5rem;
	}
	.oap__phone-value a,
	.oap__phone-value {
		font-size: 1.125rem;
	}
	.kpd__card-img {
		top: 1rem;
	}
	.dts {
		padding: 0 0 4rem 0;
	}
	.ecn {
		padding: 4rem 0;
	}
	.dts__actions {
		gap: 1rem;
	}
	.btn.btn-second span,
	.btn span {
		padding: 1rem 2rem;
	}
	.dts__pills {
		margin-top: 2rem;
	}
	.ecn__head {
		margin-bottom: 2rem;
	}
	.cvs__grid {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
	.cvs__card {
		padding: 1.5rem;
	}
	.hcs__hero-right {
		height: 24rem;
	}
	.form-wrap .form-head {
		font-size: 1.5rem;
	}
	.form-group input,
	.form-group select,
	.header_contacts.contacts a {
		font-size: 12px;
	}
	#header .contacts .phone-content {
		font-size: 1rem !important;
	}
	.header-search-trigger {
		width: 32px;
		height: 32px;
	}
	.hcs__title-block strong {
		font-size: 1.7rem;
	}

	.hcs__stats-grid {
		gap: 1rem;
	}

.manager-1 .text-wrap .gdn-section__header p,
	.kpd__head {
		font-size: 1.1rem;
	}

	.hcs__hero {
		padding: 2.5rem 0;
	}

	.hcs__title-block h1 {
		font-size: 3.3rem;
	}

	.hcs__title-block {
		font-size: 1.1rem;
	}

	.site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	#header .logo a {
		max-width: 3rem;
	}

	nav.header-topbar__menu {
		display: none;
	}

	.kpd__photo-placeholder {
		display: block;
	}

	.dts__pill {
		padding: 0.8rem 1.2rem;
	}

	.dts__pill-text {
		line-height: 120%;
		text-align: center;
		font-size: 0.875rem;
		width: 100%;
	}

	.dts__pills {
		gap: 1rem;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.ecn__card,
	.wcs__card {
		flex: 0 0 80%;
	}

	.dts__pill-icon {
		width: 2rem;
		height: 2.4125rem;
	}

	.dor__card {
		min-height: 11.5rem;
		padding: 1rem;
	}

	/* HCS: статы в одну колонку */
	.hcs__stats-grid {
		grid-template-columns: 1fr 1fr;
	}

	/* WCS: карточки в одну колонку, скругления только у последней */
	.wcs__cards {
		grid-template-columns: 1fr;
	}

	.wcs__cards .wcs__card .wcs__card-body {
		border-radius: 0;
	}

	.wcs__cards .wcs__card:last-child .wcs__card-body {
		border-bottom-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}

	.wcs__head h2,
	.wcs__head p {
		font-size: 26px;
	}

	/* OAP: отрасли/таблица в одну колонку */
	.oap__featured-grid,
	.oap__table {
		grid-template-columns: 1fr;
	}

	/* DOR: карточки в одну колонку, компактные шрифты */
	.dor__cards {
		grid-template-columns: 1fr;
	}

	.dor__head h2,
	.dor__head p {
		font-size: 24px;
	}

	.dor__text {
		font-size: 17px;
	}
	.header-search-form {
		transform: translate(-50%, 0);
	}
	.header-mainbar__search {
		position: unset;
	}
	.dts__pill-icon {
		width: 1.5rem;
		height: 1.9125rem;
	}
	small {
		font-size: 10px;
	}
	.form-desk {
		font-size: 12px;
		line-height: 140%;
		margin: 1rem 0 1rem;
	}
	.form-wrap .button {
		margin: 1rem 0;
	}
	.form-wrap .form-head {
		line-height: 140%;
	}
}

@media (max-width: 390px) {
	#hero.error-hero h1 {
		font-size: 1.6rem;
	}

	#hero.error-hero .intro {
		font-size: 1rem;
	}
	.ecn__card,
	.wcs__card {
		flex: 0 0 100%;
	}
}

@media (max-width: 374px) {
	.manager-2 .form-wrap {
		max-width: 90%;
	}
	.dts__pill {
		padding: 0.8rem;
	}
	.dts__pill-text {
		font-size: 12px;
	}
	.oap__phone-value span {
		font-size: 12px;
	}
	.oap__phones .oap__phone:first-child .oap__phone-value,
	.oap__phones .oap__phone:first-child .oap__phone-value a {
		font-size: 1.2rem;
	}
	.oap__phone-value a,
	.oap__phone-value {
		font-size: 1rem;
	}
	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}
	footer .btn.btn-second span svg {
		display: block;
	}
}

/* Front Comments — final overrides */
@media (min-width: 1366px) {
	#hero .container-fluid { max-width: none; }
	.hcs__hero-grid { grid-template-columns: minmax(0, 1.45fr) minmax(26rem, 1fr); }
	.hcs__title-block h1 { font-size: clamp(4.5rem, 6vw, 6rem); }
	.hcs__photo-wrap,
	.hcs__photo-wrap img { height: 100%; }
	.kpd__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.buttons__elements .btn span { white-space: nowrap; }
.language-trigger { text-decoration: none; }

.kpd__card,
.cvs__card,
.ecn__card,
.dor__card--link,
.dor__card-contact {
	cursor: pointer;
	transition: transform 0.3s ease;
}

.kpd__card:hover,
.cvs__card:hover,
.ecn__card:hover,
.dor__card--link:hover,
.dor__card-contact:hover { transform: translateY(-0.25rem); }

.kpd__card:hover .kpd__card-arrow,
.cvs__card:hover .cvs__card-arrow,
.ecn__card:hover .cvs__card-arrow,
.cvs__card-link:hover .cvs__card-arrow,
.dor__card-contact:hover .cvs__card-arrow,
.dor__card--link:hover .dor__card-arrow {
	background: #fff;
	color: var(--color);
	border-color: #a8b7c7;
	box-shadow: none;
	transform: translateX(0.5rem);
}

.kpd__card-arrow,
.cvs__card-arrow,
.dor__card-arrow {
	background: #fff;
	box-shadow: none;
	transition: transform 0.3s ease, border-color 0.2s ease;
}

.cvs { position: relative; overflow: hidden; }
.wcs__card-img { border-radius: 1.5rem 1.5rem 0 0; }
.wcs__card-body { padding-top: 2.25rem; }
.wcs__cards .wcs__card:last-child .wcs__card-body { border-bottom-right-radius: 5rem; }

.oap__phones .oap__phone:first-child .oap__phone-value,
.oap__phones .oap__phone:first-child .oap__phone-value a { font-size: 1.25rem; }

.manager-1#manager .utp ul,
.manager-1#manager-secondary .utp ul {
	list-style: none;
	margin-top: 1.5rem;
	padding-left: 0;
}

.manager-1#manager .utp ul { max-width: none; }
.manager-1#manager-secondary .utp ul { max-width: 34.375rem; }

.manager-1#manager .utp ul li,
.manager-1#manager-secondary .utp ul li {
	position: relative;
	font-size: 1.25rem;
	line-height: 160%;
	padding-left: 1rem;
	margin-bottom: 0.6rem;
	white-space: normal;
}

.manager-1#manager .utp ul li::before,
.manager-1#manager-secondary .utp ul li::before {
	content: "";
	position: absolute;
	display: block;
	width: 0.5rem;
	height: 0.5rem;
	left: 0;
	top: 0.8rem;
	border-radius: 50%;
	background: #fff !important;
	background-image: none !important;
}
.manager-1 .form-wrap { border-radius: 5px; box-shadow: none; }
.manager-1.manager-2 .form-wrap::before { border-radius: inherit; }
.manager__img-el img { filter: drop-shadow(0 1.25rem 1.5rem rgba(8, 24, 72, 0.28)); }
.dts__btn--outline:hover { background: #fff; box-shadow: none; }

/* Прямоугольные карточки и контейнеры главной: единое скругление 5px. */
.hcs__photo-wrap,
.kpd__photo-placeholder,
.kpd__card,
.cvs__card,
.ecn__card,
.ecn__card-preview,
.wcs__card-img,
.wcs__card-body,
.wcs__cards .wcs__card:last-child .wcs__card-body,
.oap__featured,
.oap__cell,
.oap__photo,
.oap__cta,
.dor,
.dor__card,
.gwp__slide,
.manager-1 .form-wrap {
	border-radius: 5px;
}

.documents-page { padding: 3rem 0; }
.documents-page__files { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: 2rem; }
.documents-page__panel { padding: 2rem; background: #fff; border-radius: 5px; }
.documents-archive { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 2rem; margin-top: 2rem; }
.documents-archive__section h2 { margin-top: 0; }
.documents-archive__section ul { margin: 0; padding: 0; list-style: none; }
.documents-archive__section li + li { margin-top: .65rem; }
.documents-archive__link { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); align-items: center; gap: 1rem; }
.documents-archive__link--no-icon { grid-template-columns: minmax(0, 1fr); }
.documents-archive__link:hover { color: var(--dark); }
.documents-archive__icon { display: block; width: 1.25rem; height: 1.25rem; }
.documents-page__content .team-section--contained { padding: 3rem 0 0; }
.vacancy-layout { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 3rem; align-items: start; }
.vacancy-layout__sidebar .team-grid { grid-template-columns: 1fr; }
.vacancy-layout__list .vacancy-grid { max-width: none; }

@media (max-width: 991px) {
	.vacancy-layout { grid-template-columns: 1fr; }
	.vacancy-layout__list { order: 1; }
	.vacancy-layout__sidebar { order: 2; max-width: 320px; }
}
.documents-page__files h2 { margin: 2rem 0 1rem; }
.documents-page__file { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) 3rem; gap: 1rem; align-items: center; padding: .55rem 0; border-bottom: 1px solid #e4e8ed; }
.documents-page__file:last-child { padding-bottom: 0; border-bottom: 0; }
.documents-page__file--has-products { grid-template-columns: 2.5rem minmax(0, 1fr) minmax(12rem, .8fr) 3rem; }
.documents-page__file-format { padding: .28rem .2rem; color: #fff; background: #5c6b7a; border-radius: .15rem; font-size: .7rem; font-weight: 700; line-height: 1; text-align: center; }
.documents-page__file-size { color: var(--gray); font-size: .75rem; white-space: nowrap; }
.documents-page__file-name { color: var(--dark); font-size: 1rem; line-height: 1.35; }
.documents-page__file-name:hover { color: var(--color); }
.documents-page__file-format[data-file-format="PDF"] { background: #d94b47; }
.documents-page__file-format[data-file-format="DOC"],
.documents-page__file-format[data-file-format="DOCX"] { background: #2b579a; }
.documents-page__file-format[data-file-format="XLS"],
.documents-page__file-format[data-file-format="XLSX"] { background: #217346; }
.documents-page__file-format[data-file-format="JPG"],
.documents-page__file-format[data-file-format="JPEG"],
.documents-page__file-format[data-file-format="PNG"] { background: #8a5bb1; }

.documents-page__products { color: var(--gray); font-size: .8rem; line-height: 1.4; }
.documents-page__products a { color: var(--color); }
.documents-page__search { max-width: 34rem; margin-top: 2rem; }
.documents-page__analogue-link { margin: 2rem 0 0; }
.documents-page__search label { display: block; margin-bottom: .45rem; font-size: .9rem; font-weight: 600; }
.documents-page__search input { width: 100%; padding: .75rem 1rem; border: 1px solid #cfd7df; border-radius: 5px; }
.documents-page__file[hidden] { display: none; }
@media (max-width: 700px) { .documents-page__file--has-products { grid-template-columns: 2.5rem minmax(0, 1fr) 3rem; } .documents-page__products { grid-column: 2 / -1; } }

/* WooCommerce product */
.gfc-card > .gfc-card__body > .btn { display: none; }
.gfc-product-page__layout { display: grid; grid-template-columns: minmax(0, 7fr) minmax(17rem, 3fr); gap: 2rem; align-items: start; }
.gfc-product-page__main,
.gfc-product-page__sidebar { display: grid; gap: 2rem; min-width: 0; }
.gfc-product-page__main { align-content: start; }
.gfc-product-page__main > * + * { padding-top: 2rem; border-top: 1px solid #e4e8ed; }
.gfc-product-page .gdn-shop-wrap h1,
.gfc-product-page .gdn-shop-wrap h2:first-child { margin-top: 0; }
.gfc-product-page__intro #breadcrumbs { margin-bottom: 1.25rem; }
.gfc-product-page__intro .gfc-single__purpose > :last-child,
.gfc-product-page .gdn-shop-wrap > :last-child { margin-bottom: 0; }
.gfc-product-attributes {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 2rem;
}
.gfc-product-attributes__item {
	padding: 0.5rem 1rem;
	border: 1px solid var(--light);
	border-radius: 5px;
	background: var(--light);
}
.gfc-product-attributes__label {
	color: var(--gray);
	font-size: 0.8rem;
}
.gfc-product-attributes__value {
	font-size: 0.9rem;
	font-weight: 500;
}
.gfc-product-page__construction-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, 1fr); gap: 2rem; align-items: center; }
.gfc-product-page__construction-image { display: grid; place-items: center; min-height: 16rem; padding: 1rem; background: var(--light); }
.gfc-product-page__construction-image img { width: 100%; max-height: 32rem; object-fit: contain; }
.gfc-product-page__construction .gfc-single__legend { margin: 0; }
.gfc-product-page__details .gfc-single__content { margin-top: 2rem; }
.gfc-product-contact__phone { display: grid; gap: .25rem; margin: 0 0 1.25rem; }
.gfc-product-contact__phone span { color: var(--gray); font-size: .85rem; }
.gfc-product-contact__phone a { color: var(--dark); font-size: 1.2rem; font-weight: 600; }
.gfc-product-contact__department-contacts { display: flex; flex-wrap: wrap; gap: .25rem 2rem; }
.gfc-product-contact__messengers .social { display: flex; gap: .5rem; margin: 0 0 1.25rem; padding: 0; list-style: none; }
.gfc-product-contact .btn { margin-top: .5rem; }
.gfc-product-documents__list { display: grid; }
.gfc-product-document { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) auto 1.5rem; gap: .75rem; align-items: center; padding: .75rem 0; border-bottom: 1px solid #e4e8ed; color: inherit; }
.gfc-product-document:last-child { padding-bottom: 0; border-bottom: 0; }
.gfc-product-document__body { display: grid; gap: .2rem; min-width: 0; }
.gfc-product-document__icon { width: 1.5rem; height: 1.5rem; color: var(--color); }
.gfc-product-analogues { margin-top: 2rem; padding-top: 2rem; border-top: 1px solid #e4e8ed; }
.gfc-analogue-list dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem 2rem; margin: 0; }
.gfc-analogue-list__item { display: grid; grid-template-columns: minmax(8rem, 2fr) minmax(8rem, 1fr); align-items: baseline;gap:1rem }
.gfc-analogue-list dt,
.gfc-analogue-list dd { min-width: 0; overflow-wrap: anywhere; }
.gfc-analogue-list dt { color: var(--gray); font-weight: 400; }
.gfc-analogue-list dd { margin: 0; }
.gfc-related-products .gfc-card { height: 100%; }
@media (max-width: 1365px) {
	.gfc-analogue-list dl {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 1200px) {
	.gfc-product-page__construction-grid {
	grid-template-columns: 1fr;
}
}

@media (max-width: 900px) {
	.gfc-product-page__layout,
	.gfc-product-page__construction-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.gfc-analogue-list dl { grid-template-columns: 1fr; gap: .25rem; }
	.gfc-analogue-list__item { grid-template-columns: 1fr; }
	.gfc-analogue-list dt { padding: .85rem .8rem 0; }
	.gfc-analogue-list dd { padding: .2rem .8rem .85rem; }
}

.documents-color-identification__table { overflow-x: auto; }
.documents-color-identification table { width: 100%; min-width: 42rem; border-collapse: collapse; }
.documents-color-identification th,
.documents-color-identification td { padding: .65rem .8rem; border: 1px solid #dbe2ea; text-align: center; vertical-align: middle; }
.documents-color-identification th { background: #e8edf4; font-weight: 600; }
.documents-color-identification tbody tr:nth-child(odd) { background: #f8fafc; }
.documents-color-identification tbody td:nth-child(2) { min-width: 15rem; text-align: left; }
.fiber-color { position: relative; display: block; width: 25px; height: 25px; margin: 0 auto; overflow: hidden; border: 1px solid rgba(0, 0, 0, .18); border-radius: 50%; }
.fiber-color--marked::before { content: ""; position: absolute; top: -15%; left: calc(50% - 1px); width: 2px; height: 130%; background: #000; transform: rotate(45deg); }
.documents-color-identification__notes { display: flex; align-items: flex-start; justify-content: space-between; gap: 2rem; margin-top: 1.5rem; }
.documents-color-identification__notes img { width: auto; max-width: min(100%, 25rem); height: auto; }
@media (max-width: 700px) { .documents-color-identification__notes { flex-direction: column; } }

/* Partners */
.partners-page { padding: 3rem 0 5rem; }
.partners-page__switcher { margin-top: 1.5rem; }
.partners-page__panel[hidden], .contacts-directory__panel[hidden] { display: none; }
.contacts-directory { padding: 0 0 5rem; }
.contacts-directory__switcher { margin-top: 1.5rem; }
.contacts-table { display: grid; grid-template-columns: minmax(16rem, 1fr) minmax(12rem, max-content) max-content; column-gap: 2rem; width: fit-content;}
.contacts-table__head, .contacts-table__item, .contacts-table__row { display: grid; grid-column: 1 / -1; grid-template-columns: subgrid; align-items: center; }
.contacts-table__head { padding: 0 0 .8rem; border-bottom: 1px solid #e4e8ed; color: #718096; font-size: .78rem; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; }
.contacts-table__body { display: contents; }
.contacts-table__item { border-bottom: 1px solid #e4e8ed; }
.contacts-table__item:last-child { border-bottom: 0; }
.contacts-table__row { padding: .55rem 0; color: #1d2733; line-height: 1.35; }
.contacts-table__row strong { font-weight: 600; }
.contacts-table__row > [data-label="Телефон"] { min-width: 0; white-space: normal; }
.contacts-table__phone-number { white-space: nowrap; }
.partners-table { display: grid; grid-template-columns: repeat(5, max-content); width: fit-content; max-width: 100%; column-gap: 2rem; }
.partners-table--without-country { grid-template-columns: repeat(4, max-content); }
.partners-table__head,
.partners-table__item,
.partners-table__row { display: grid; grid-column: 1 / -1; grid-template-columns: subgrid; align-items: center; width: 100%; }
.partners-table__head { padding: 0 0 .8rem; border-bottom: 1px solid #e4e8ed; color: #718096; font-size: .78rem; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; }
.partners-table__body { display: contents; }
.partners-table__item { border-bottom: 1px solid #e4e8ed; }
.partners-table__item:last-child { border-bottom: 0; }
.partners-table__row { padding: .55rem 0; color: #1d2733; line-height: 1.35; }
.partners-table__row strong { font-weight: 600; }
.partners-table__row > [data-label] { white-space: nowrap; }
.partners-table__row > [data-label][data-label="Телефон"] { white-space: normal; }
.partners-table__more { padding: 0; border: 0; background: transparent; color: var(--color); font: inherit;  cursor: pointer; }
.partners-table__more:hover { color: var(--dark); text-decoration: none; }
.contact-card__actions,
.partner-card__location { display: none; }
.partner-popup { width: min(500px, 100%); padding: 2rem; }
.partner-popup h3 { margin: 0 0 1.5rem; font-weight: bold;}
.partner-popup__list { display: grid; gap: .75rem; margin: 0; }
.partner-popup__list div { display: grid; grid-template-columns: 6rem 1fr; gap: 1rem; }
.partner-popup__list dt { color: #718096; }
.partner-popup__list dd { margin: 0; overflow-wrap: anywhere; }
.partner-popup__extra { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid #dbe2ea; }
@media (max-width: 1023px) {
	.partners-table { grid-template-columns: repeat(4, max-content); }
	.partners-table--without-country { grid-template-columns: repeat(3, max-content); }
	.partners-table__head span:last-child,
	.partners-table__row > [data-label="Email"] { display: none; }
}
@media (max-width: 767px) {
	.contacts-table,
	.contacts-table__body,
	.partners-table,
	.partners-table__body { display: block; }
	.contacts-table,
	.partners-table { width: 100%; max-width: none; padding: 0; background: transparent; }
	.contacts-table__head,
	.partners-table__head { display: none; }
	.contacts-table__item,
	.partners-table__item { display: block; margin-bottom: 3px; padding: 0.5rem 1.25rem; border: 0; border-radius: 5px; background: #fff; }
	.contacts-table__item:last-child,
	.partners-table__item:last-child { margin-bottom: 0; }
	.contacts-table__row,
	.partners-table__row { display: grid; grid-template-columns: minmax(0, 1fr) 6.25rem; gap: .35rem 1.5rem; align-items: center; padding: 0; }
	.contacts-table__row strong,
	.partners-table__row strong { grid-column: 1; grid-row: 1; min-width: 0; overflow-wrap: anywhere; white-space: normal; }
	.partners-table__row .partners-table__more { display: block; width: 100%; min-width: 0; overflow-wrap: anywhere; white-space: normal; text-align: left; }
	.contacts-table__row > span,
	.partners-table__row > span[data-label] { display: none; }
	.partners-table__row > .partner-card__location { display: block; grid-column: 1; grid-row: 2; min-width: 0; color: #718096; font-size: .85rem; }
	.contact-card__actions { display: flex; grid-column: 2; grid-row: 1; gap: .75rem; align-items: center; justify-content: flex-end; }
	.partners-table__row .contact-card__actions { grid-row: 1 / 3; }
	.contact-card__actions a { display: flex; width: 2.75rem; height: 2.75rem; align-items: center; justify-content: center; border: 1px solid #dbe2ea; border-radius: 50%; background: #fff; }
	.contact-card__actions img { display: block; width: 1.25rem; height: 1.25rem; }
}
@media (max-width: 540px) {
	.partners-page { padding-top: 2rem; }
	.partner-popup__list div { grid-template-columns: 1fr; gap: .15rem; }
}

@media (max-width: 1440px) {
	.contacts-page .calculator-page__sidebar,
	.contacts-page .calculator-page__sidebar-toggle,
	.contacts-page .calculator-page__sidebar-overlay {
		display: none;
	}

	.contacts-page .calculator-page__content {
		flex-basis: 100%;
		width: 100%;
	}
}

.swiper:is(.team-section__viewport, .company-news__slider, .case-gallery, .team-slider__main, .team-slider__text, .team-slider__thumbs):not(.swiper-initialized) {
	visibility: hidden;
	opacity: 0;
}

.swiper:is(.team-section__viewport, .company-news__slider, .case-gallery, .team-slider__main, .team-slider__text, .team-slider__thumbs).swiper-initialized {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.15s ease;
}
.gfc-sort { display: none; }

.gfc-category-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	margin: 32px 0 64px;
}
.gfc-category-card {
	display: flex;
	min-height: 260px;
	flex-direction: column;
	padding: 24px;
	border: 1px solid #e4e7eb;
	border-radius: 16px;
	background: #fff;
	color: inherit;
	text-decoration: none;
}
.gfc-category-card__image { display: grid; min-height: 180px; place-items: center; }
.gfc-category-card__image img { width: 100%; height: 180px; object-fit: contain; }
.gfc-category-card__title { margin-top: 18px; font-size: 1.25rem; font-weight: 700; }

.gfc-analogue-search { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 14px; align-items: end; margin: 24px 0; }
.gfc-analogue-search label, .gfc-analogue-search .gdn-select { min-width: 0; }
.gfc-analogue-search label, .gfc-analogue-search .gdn-select__label { display: block; font-size: .9rem; font-weight: 600; }
.gfc-analogue-search .gdn-select__label { margin-bottom: .45rem; color: inherit; letter-spacing: normal; line-height: inherit; }
.gfc-analogue-search .gdn-select { width: 100%; max-width: none; }
.gfc-analogue-search input { margin-top: .45rem; }
.gfc-analogue-search input { width: 100%; min-width: 0; height: 49px; padding: .75rem 1rem; border: 1px solid #cfd7df; border-radius: 5px; }
.gfc-analogue-search .gdn-select__trigger { width: 100%; min-height: 49px; border-color: #cfd7df; border-radius: 5px; }
.gfc-analogue-search .btn { min-height: 49px; padding: 8px 24px; border-radius: 4px; background: #4165a4; color: #fff; cursor: pointer; }
@media (max-width: 900px) { .gfc-analogue-search { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .gfc-analogue-search { grid-template-columns: 1fr; } }

.catalog-banners {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 2rem;
	margin: 2rem 0 3rem;
}

.product-banner-slot {
	container-type: inline-size;
	min-width: 0;
}

.product-banner {
	box-sizing: border-box;
	height: 100%;
	padding: 2.25rem;
	border-radius: 1rem;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
}

.product-banner--analogues {
	color: #fff;
	background-color: #173c83;
	background-image: url('assets/i/banners/analogues.webp');
	background-position: right bottom 8%;
}

.product-banner--task {
	color: #17345b;
	background-color: #e7eef7;
	background-image: url('assets/i/banners/cable-task.webp');
	background-position: right bottom -3rem;
}

.product-banner__content {
	width: 48%;
	max-width: 27.5rem;
}

.product-banner--task .product-banner__content {
	width: 36%;
}

.product-banner .product-banner__eyebrow {
	margin: 0 0 1.25rem;
	font-size: 0.6875rem;
	line-height: 1.5;
	letter-spacing: 0.125rem;
	text-transform: uppercase;
}

.product-banner .product-banner__title {
	margin: 0 0 1.25rem;
	font-size: 2.25rem;
	font-weight: 500;
	line-height: 1.13;
	color: inherit;
}

.product-banner .product-banner__description {
	margin: 0 0 1.5rem;
	font-size: 1rem;
	line-height: 1.5;
}

.product-banner__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.product-banner__actions .btn {
	margin-top: 0;
	backdrop-filter: blur(10px);
}
.product-banner__actions .btn:not(.btn-second) {
	background: #fff;
	color: var(--color);
}
.product-banner__actions .btn:not(.btn-second):hover {
	background: var(--color);
	color: #fff;
}

.product-banner--analogues .product-banner__actions {
	--btn_color_1: #fff;
	--btn_color_text: var(--color);
}

@container (max-width: 37.4375rem) {
	.product-banner--task .product-banner__content {
		width: 100%;
		max-width: 270px;
	}
	.product-banner .product-banner__title {
		font-size: 2rem;
	}
}

@media (max-width:1300px) {
.product-banner {
	background-position: right bottom;
}
}
@media (max-width: 600px) {
  .product-banner {
		background-size: 160% auto;
		background-position: right 90%;
	}
.product-banner__content {
	width: 100%;
	max-width: unset;
		padding-bottom: 50cqi;
}
}

@media (max-width: 68.6875rem) {
	.catalog-banners {
		grid-template-columns: minmax(0, 1fr);
	}
}

.gfc-results > .product-banner-slot {
	margin: 2rem 0;
}

.postid-5590 .gfc-single__purpose li { padding-left: 0; }
.postid-5590 .gfc-single__purpose li::before { display: none; }
.page-id-5860 #hero3 .hero3__slide { background-size: 45% auto; background-position: right 2rem center; }
.page-id-5860 #hero3 .row > div { width: 50%; }
@media (max-width: 61.9375rem) {
	.page-id-5860 #hero3 .hero3__slide { background-size: calc(100% - 2rem) auto; background-position: center bottom 1rem; }
	.page-id-5860 #hero3 .row > div { width: 100%; }
	.page-id-5860 #hero3 .hero3__content { padding-bottom: 18rem; }
}
.gfc-product-page__main--wide-tables { grid-template-columns: minmax(0, 1fr); }

.team-archive--leadership .team-archive__card:nth-child(2) {
	grid-column: 1;
}
