* {margin: 0; padding: 0; outline: none; vertical-align: baseline; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-focus-ring-color: rgba(0, 0, 0, 0); box-sizing: border-box;}
*:before, *:after {box-sizing: border-box;}
*::-moz-focus-inner {border: 0; padding: 0;}
*:focus {outline: none;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section, main {display: block;}
audio, canvas, iframe, img, svg {vertical-align: baseline;}
video {vertical-align: top; width: 100%;}


/*====================================================
   Fonts
====================================================*/
/*300*/
@font-face {
   font-family: 'TildaSansLight';
   src:  url('fonts/Tilda/TildaSans-Light.woff2') format('woff2'),
         url('fonts/Tilda/TildaSans-Light.woff') format('woff'),
         url('fonts/Tilda/TildaSans-Light.ttf') format('truetype');
   font-weight: normal;
   font-style: normal;
   font-display: swap;
}
/*400*/
@font-face {
   font-family: 'TildaSansRegular';
   src:  url('fonts/Tilda/TildaSans-Regular.woff2') format('woff2'),
         url('fonts/Tilda/TildaSans-Regular.woff') format('woff'),
         url('fonts/Tilda/TildaSans-Regular.ttf') format('truetype');
   font-weight: normal;
   font-style: normal;
   font-display: swap;
}
/*500*/
@font-face {
   font-family: 'TildaSansMedium';
   src:  url('fonts/Tilda/TildaSans-Medium.woff2') format('woff2'),
         url('fonts/Tilda/TildaSans-Medium.woff') format('woff'),
         url('fonts/Tilda/TildaSans-Medium.ttf') format('truetype');
   font-weight: normal;
   font-style: normal;
   font-display: swap;
}
/*600*/
@font-face {
   font-family: 'TildaSansSemibold';
   src:  url('fonts/Tilda/TildaSans-Semibold.woff2') format('woff2'),
         url('fonts/Tilda/TildaSans-Semibold.woff') format('woff'),
         url('fonts/Tilda/TildaSans-Semibold.ttf') format('truetype');
   font-weight: normal;
   font-style: normal;
   font-display: swap;
}
/*700*/
@font-face {
   font-family: 'TildaSansBold';
   src:  url('fonts/Tilda/TildaSans-Bold.woff2') format('woff2'),
         url('fonts/Tilda/TildaSans-Bold.woff') format('woff'),
         url('fonts/Tilda/TildaSans-Bold.ttf') format('truetype');
   font-weight: normal;
   font-style: normal;
   font-display: swap;
}


/*====================================================
   Global
====================================================*/
:root {
   --black: #303030;
   --anthracite: #393D47;
   --gray: #D9D9D9;
   --gray-light: #F5F5F5;
   --gray-light-2: #FAFAFC;
   --gray-dark: #A8A8A8;
   --cyan: #0FF;
   --blue: #0071E3;
   --blue-light: #7BAFDE;
   --red: #ED1C24;

   --font-light: 'TildaSansLight';
   --font-regular: 'TildaSansRegular';
   --font-medium: 'TildaSansMedium';
   --font-semibold: 'TildaSansSemiBold';
   --font-bold: 'TildaSansBold';

   --header-height: 117px;
   --p-in: 40px;

   --br-1: 6px;
   --br-2: 16px;
   --br-3: 20px; 
   --br-4: 37px; 

   --gap-1: 10px;
   --gap-2: 20px;
   --gap-3: 30px;
   --gap-4: 40px;
   --gap-5: 50px;
   --gap-6: 60px;
   --gap-7: 80px;
   --gap-8: 100px;

   --m-1: 10px;
   --m-2: 20px;
   --m-3: 30px;
   --m-4: 40px;
   --m-5: 60px;
   --m-6: 80px;
   --m-7: 100px;
   --m-8: 150px;

   --p-1: 10px;
   --p-2: 20px;
   --p-3: 30px;
   --p-4: 40px;
   --p-5: 60px;
   --p-6: 80px;
   --p-7: 100px;
   --p-8: 150px;

   --py-1: 20px;
   --py-2: 30px;
   --py-3: 40px;
   --py-4: 60px;
   --py-5: 80px;
   --py-6: 100px;
   --py-7: 120px;
   --py-8: 150px;

   --easing: 0.3s ease 0s;
   --easing-slow: 0.5s ease-in-out 0s;
   --easing-x-slow: 0.75s ease-in-out 0s;
   --cubic: .5s cubic-bezier(0,0,0.5,1);
   --filter-whiting: brightness(0) invert(1);
   --filter-blacking: brightness(0.5) invert(0);
}
@media screen and (max-width: 1199px) {
   :root {
      --header-height: 60px;
      --br-4: 20px; 

      --m-2: 15px;
      --m-3: 20px;
      --m-4: 30px;
      --m-5: 40px;
      --m-6: 60px;
      --m-7: 60px;
      --m-8: 80px;

      --p-4: 30px;
      --p-5: 40px;
      --p-6: 60px;
      --p-7: 60px;
      --p-8: 80px;

      --py-1: 15px;
      --py-2: 20px;
      --py-3: 30px;
      --py-4: 40px;
      --py-5: 60px;
      --py-6: 60px;
      --py-7: 80px;
      --py-8: 80px;
   }
}
@media screen and (max-width: 767px) {
   :root {
      --p-in: 20px;
   }
}
@media screen and (max-width: 480px) {
   :root {
      --header-height: 50px;
      --br-3: 16px;

      --m-1: 5px;
      --m-2: 10px;
      --m-3: 15px;
      --m-4: 20px;
      --m-5: 30px;
      --m-6: 40px;
      --m-7: 50px;
      --m-8: 60px;

      --p-4: 20px;
      --p-5: 30px;
      --p-6: 40px;
      --p-7: 50px;
      --p-8: 60px;

      --py-1: 10px;
      --py-2: 15px;
      --py-3: 20px;
      --py-4: 30px;
      --py-5: 40px;
      --py-6: 40px;
      --py-7: 60px;
      --py-8: 80px;
   }
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   :root {
      --header-height: 50px;
      --p-in: 20px;
      --br-3: 16px;
      
      --m-1: 5px;
      --m-2: 10px;
      --m-3: 15px;
      --m-4: 20px;
      --m-5: 30px;
      --m-6: 40px;
      --m-7: 50px;
      --m-8: 60px;

      --p-4: 20px;
      --p-5: 30px;
      --p-6: 40px;
      --p-7: 50px;
      --p-8: 60px;

      --py-1: 10px;
      --py-2: 15px;
      --py-3: 20px;
      --py-4: 30px;
      --py-5: 40px;
      --py-6: 40px;
      --py-7: 60px;
      --py-8: 80px;
   }
}

.no-touchevents ::selection {background-color: var(--blue-light);}
::-webkit-scrollbar {width: 8px}
::-webkit-scrollbar-track {background: var(--gray-light);}
::-webkit-scrollbar-thumb {background: var(--gray-dark); border-radius: 3px;}
::-webkit-scrollbar-thumb:hover {background: var(--blue-light);}

html, body {height: 100%; scrollbar-gutter: stable; overscroll-behavior-y: none;}
body {background: #FFF; font-family: var(--font-regular), sans-serif; font-size: 18px; line-height: normal; color: var(--anthracite);}
body.is-blocked {overflow: hidden;}

@media screen and (max-width: 1199px) {
   body {font-size: 16px;}
}
@media screen and (max-width: 480px) {
   body {font-size: 14px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   body {font-size: 14px;}
}

.container {min-height: 100%; height: auto; overflow: hidden; display: grid; grid-template-rows: 1fr auto; position: relative; z-index: 1;}
   .container:has(.heading--showcase):before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: var(--header-height); background: var(--gray-light-2);}
   .inner {width: 100%; max-width: 1696px; margin: 0 auto; padding-left: var(--p-in); padding-right: var(--p-in);}
   .inner--narrow {max-width: 1180px;}  
   .inner--full {max-width: 100%;} 


/*====================================================
   Visibility
====================================================*/
.d-none {display: none;}
.no-touchevents .d-touch-vis {display: none;}
.touchevents .d-touch-none {display: none;}

@media screen and (min-width: 1200px) {
   .d-md-vis {display: none !important;}
   .d-xl-none {display: none !important;}
}
@media screen and (max-width: 1199px) {
   .d-xl-vis {display: none !important;}
}
@media screen and (min-width: 768px) {
   .d-sm-vis {display: none !important;}
   .d-md-none {display: none !important;}
}
@media screen and (max-width: 767px) {
   .d-md-vis {display: none !important;}
   .d-sm-none {display: none !important;}
}
@media screen and (min-width: 481px) {
   .d-xs-vis {display: none !important;}
}
@media screen and (max-width: 480px) {
   .d-xs-none {display: none !important;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .d-ls-vis {display: block !important;}
   .d-ls-none {display: none !important;}
   .d-xs-vis {display: block !important;}
   .d-xs-vis.flex {display: flex !important;}
}

/*====================================================
   Headings
====================================================*/
h1, .h1 {font-family: var(--font-medium), sans-serif; font-size: 80px; line-height: normal; font-weight: normal; color: inherit; position: relative; margin: 0 0 10px;}
h2, .h2 {font-family: var(--font-medium), sans-serif; font-size: 50px; line-height: 1; font-weight: normal; color: inherit; position: relative; margin: 0 0 0.35em;}
h3, .h3 {font-family: var(--font-medium), sans-serif; font-size: 44px; line-height: normal; font-weight: normal; color: inherit; position: relative; margin: 0 0 0.5em;}
h4, .h4 {font-family: var(--font-semibold), sans-serif; font-size: 34px; line-height: normal; font-weight: normal; color: inherit; position: relative; margin: 0 0 0.5em;}
h5, .h5 {font-family: var(--font-semibold), sans-serif; font-size: 24px; line-height: normal; font-weight: normal; color: inherit; position: relative; margin: 0 0 0.5em;}
h6, .h6 {font-family: var(--font-semibold), sans-serif; font-size: 22px; line-height: normal; font-weight: normal; color: inherit; position: relative; margin: 0 0 0.5em;}

.article h2, .article h3, .article h4, .article h5, .article h6 {padding-top: 1em;}
.article h2:first-child, .article h3:first-child, .article h4:first-child, .article h5:first-child, .article h6:first-child {padding-top: 0;}

.font-parent h1,
.font-parent h2,
.font-parent h3,
.font-parent h4,
.font-parent h5,
.font-parent h6 {font-family: inherit; font-size: inherit;}

.h2 h1 {font-family: inherit; font-size: inherit;}
.h3 h2 {font-family: inherit; font-size: inherit;}

.font-26 h3 {font-family: inherit; font-size: inherit;}
.font-34 h3 {font-family: inherit; font-size: inherit;}
.font-40 h3 {font-family: inherit; font-size: inherit;}

.t-m-0 h1, .t-m-0 .h1,
.t-m-0 h2, .t-m-0 .h2,
.t-m-0 h3, .t-m-0 .h3, 
.t-m-0 h4, .t-m-0 .h4, 
.t-m-0 h5, .t-m-0 .h5,
.t-m-0 h6, .t-m-0 .h6 {margin-bottom: 0;}

@media screen and (min-width: 1200px) {
   .h2-xs, .h2-xs h2 {font-size: 44px;}
}
@media screen and (max-width: 1199px) {
   h1, .h1 {font-size: 60px; line-height: 0.9;}
   h2, .h2 {font-size: 32px;}
   h3, .h3 {font-size: 26px;}
   h4, .h4 {font-size: 24px;}
   h5, .h5 {font-size: 22px;}
   h6, .h6 {font-size: 18px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .h2-xl, .h2-xl h2 {font-size: 50px;}
   .h3-xl, .h3-xl h3 {font-size: 44px;}
}
@media screen and (max-width: 767px) {
   h1, .h1 {font-size: 38px;}
   .heading--main h1,
   .heading--main .h1 {font-size: 56px;}
   h2, .h2 {font-size: 28px;}
   h3, .h3 {font-size: 24px;}
   h4, .h4 {font-size: 22px;}
   h5, .h5 {font-size: 20px;}
   h6, .h6 {font-size: 16px;}
}
@media screen and (max-width: 480px) {
   h1, .h1 {font-size: 28px;}
   .heading--main h1,
   .heading--main .h1 {font-size: 48px;}
   h2, .h2 {font-size: 24px;}
   h3, .h3 {font-size: 20px;}
   h4, .h4 {font-size: 18px;}
   h5, .h5 {font-size: 16px;}
   h6, .h6 {font-size: 14px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   h1, .h1 {font-size: 28px;}
   .heading--main h1,
   .heading--main .h1 {font-size: 48px;}
   h2, .h2 {font-size: 24px;}
   h3, .h3 {font-size: 20px;}
   h4, .h4 {font-size: 18px;}
   h5, .h5 {font-size: 16px;}
   h6, .h6 {font-size: 14px;}
}


/*====================================================
   Text
====================================================*/
p {margin: 0 0 1em; padding: 0;}
p:last-child {margin-bottom: 0;}

sup {font-family: var(--font-medium); font-size: 0.6em; line-height: 0.7; vertical-align: super;}
sub {font-family: var(--font-medium); font-size: 0.6em; line-height: 0.7; vertical-align: sub;}

em, i, cite, dfn, q {font-style: italic;}

.font-light {font-family: var(--font-light);}
.font-regular {font-family: var(--font-regular);}
.font-medium {font-family: var(--font-medium);}
.font-semibold {font-family: var(--font-semibold);}
.font-bold {font-family: var(--font-bold);}

b, strong {font-family: var(--font-bold); font-weight: normal;}
.font-light b, 
.font-light strong,
.font-regular b, 
.font-regular strong {font-family: var(--font-bold);}

.font-lead {font-size: 40px;}
.font-lead.font-light {font-size: 56px;}

@media screen and (max-width: 1199px) {
   .font-lead {font-size: 26px;}
   .font-lead.font-light {font-size: 40px;}
   .heading--main .font-lead {font-size: 36px;}
}
@media screen and (max-width: 767px) {
   .font-lead {font-size: 22px;}
   .font-lead.font-light {font-size: 34px;}
}
@media screen and (max-width: 480px) {
   .font-lead {font-size: 16px;}
   .font-lead.font-light {font-size: 28px;}
   .heading--main .font-lead {font-size: 32px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .font-lead {font-size: 16px;}
   .font-lead.font-light {font-size: 28px;}
   .heading--main .font-lead {font-size: 32px;}
}

.font-40 {font-size: 40px;}
.font-34 {font-size: 34px;}
.font-32 {font-size: 32px;}
.font-30 {font-size: 30px;}
.font-26 {font-size: 26px;}
.font-22 {font-size: 22px;}
.font-20 {font-size: 20px;}
.font-18 {font-size: 18px;}
.font-16 {font-size: 16px;}
.font-14 {font-size: 14px;}
.font-11 {font-size: 11px;}

@media screen and (min-width: 1200px) {
   .font-xl-40 {font-size: 40px;}
   .font-xl-34 {font-size: 34px;}
   .font-xl-32 {font-size: 32px;}
   .font-xl-26 {font-size: 26px;}
   .font-xl-22 {font-size: 22px;}
   .font-xl-20 {font-size: 20px;}
   .font-xl-18 {font-size: 18px;}
   .font-xl-16 {font-size: 16px;}
   .font-xl-14 {font-size: 14px;}
}
@media screen and (max-width: 1199px) {
   .font-40 {font-size: 26px;}
   .font-34 {font-size: 30px;}
   .font-32 {font-size: 20px;}
   .font-26 {font-size: 22px;}
   .font-22 {font-size: 16px;}
   .font-20 {font-size: 14px;}
   .font-18 {font-size: 14px;}
   .font-16 {font-size: 14px;}

   .font-md-40 {font-size: 40px;}
   .font-md-34 {font-size: 34px;}
   .font-md-32 {font-size: 32px;}
   .font-md-26 {font-size: 26px;}
   .font-md-22 {font-size: 22px;}
   .font-md-20 {font-size: 20px;}
   .font-md-18 {font-size: 18px;}
   .font-md-16 {font-size: 16px;}
   .font-md-14 {font-size: 14px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .font-md-34 {font-size: 34px;}
   .font-md-22 {font-size: 22px;}
   .font-md-20 {font-size: 20px;}
}
@media screen and (max-width: 767px) {
   .font-34 {font-size: 26px;}
   .font-32 {font-size: 18px;}
   .font-26 {font-size: 18px;}

   .font-sm-40 {font-size: 40px;}
   .font-sm-34 {font-size: 34px;}
   .font-sm-32 {font-size: 32px;}
   .font-sm-26 {font-size: 26px;}
   .font-sm-22 {font-size: 22px;}
   .font-sm-20 {font-size: 20px;}
   .font-sm-18 {font-size: 18px;}
   .font-sm-16 {font-size: 16px;}
   .font-sm-14 {font-size: 14px;}
}
@media screen and (max-width: 480px) {
   .font-34 {font-size: 22px;}
   .font-32 {font-size: 16px;}
   .font-26 {font-size: 16px;}
   .font-22 {font-size: 14px;}

   .font-xs-40 {font-size: 40px;}
   .font-xs-34 {font-size: 34px;}
   .font-xs-32 {font-size: 32px;}
   .font-xs-26 {font-size: 26px;}
   .font-xs-22 {font-size: 22px;}
   .font-xs-20 {font-size: 20px;}
   .font-xs-18 {font-size: 18px;}
   .font-xs-16 {font-size: 16px;}
   .font-xs-14 {font-size: 14px;}
   .font-xs-11 {font-size: 11px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .font-34 {font-size: 22px;}
   .font-32 {font-size: 16px;}
   .font-26 {font-size: 16px;}
   .font-22 {font-size: 14px;}
   
   .font-xs-40 {font-size: 40px;}
   .font-xs-34 {font-size: 34px;}
   .font-xs-32 {font-size: 32px;}
   .font-xs-26 {font-size: 26px;}
   .font-xs-22 {font-size: 22px;}
   .font-xs-20 {font-size: 20px;}
   .font-xs-18 {font-size: 18px;}
   .font-xs-16 {font-size: 16px;}
   .font-xs-14 {font-size: 14px;}
   .font-xs-11 {font-size: 11px;}
}

.txt-upp {text-transform: uppercase;}
.txt-center {text-align: center;}
.txt-left {text-align: left;}
.txt-right {text-align: right;}
.txt-nowrap {white-space: nowrap;}
.txt-underline {text-decoration: underline;}
.txt-line-through {text-decoration: line-through;}
.txt-black {color: var(--black);}
.txt-white {color: #FFF;}
.txt-gray {color: var(--gray-dark);}
.txt-hyphens {-webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto;}
.txt-compact {line-height: 0.9;}
.txt-narrow {width: 1100px; max-width: 100%; margin: 0 auto;}

@media screen and (min-width: 1200px)  {
   .txt-narrow--small {width: 600px;}
}

.txt-col {column-gap: 40px;}
.txt-col--2 {columns: 2 auto;}
.txt-col--3 {columns: 3 auto;}
   .txt-col > * {vertical-align: top; -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; break-inside: avoid-column;}

@media screen and (max-width: 1199px) {
   .txt-col--xl {columns: auto;}
}
@media screen and (max-width: 767px) {
   .txt-col--md {columns: auto;}
}
@media screen and (max-width: 480px) {
   .txt-col--sm {columns: auto;}
}

/*Table*/
table {border-collapse: collapse; border-spacing: 0;}
.article table {margin-bottom: 1em; max-width: 100%;}
   .article table th, .article table td {padding: 10px 20px; border: 1px solid var(--anthracite);}
   .article table th {font-family: var(--font-bold); font-weight: normal;}
   table p {margin: 0;}

/*List*/
ul {list-style: none; padding: 0; margin: 0 0 1em;}
ul:last-child {margin-bottom: 0;}
ul.no-decor {margin: 0; padding: 0;}
   ul li {padding: 0 0 0 18px; margin: 0 0 0.35em; position: relative;}
   li:last-child {margin-bottom: 0;}
   ul.no-decor li {padding-left: 0; margin: 0;}
      ul li:before {content: ''; position: absolute; top: 0.5em; left: 0; width: 4px; height: 4px; border-radius: 100%; background: currentColor;}
      ul.no-decor li:before {display: none;}
   ul ul {margin: 0.5em 0 0 18px;}
   ul.no-decor ul {margin: 0;}
ol {padding: 0; margin: 0 0 1em; list-style: decimal inside;}
   ol li {padding: 0; margin: 0 0 0.35em;}
   ol li:last-child {margin-bottom: 0;}
      ol ol {margin: 0.5em 0 0;}
.article ul li,
.article ol li {margin-bottom: 0.5em;}

.ol-policy {padding-top: 1em;}
.ol-policy,
.ol-policy ol {counter-reset: item; margin: 0.5em 0 0.75em;}
   .ol-policy li {display: block; padding-left: 3em; position: relative; margin-bottom: 0.75em !important;}
   .ol-policy ol li {margin-left: -3em;}
   .ol-policy ol li ol li {padding-left: 3.5em; margin-left: 0;}
      .ol-policy li:before {content: counters(item, ".") "."; counter-increment: item; position: absolute; top: 0; left: 0;}
      .ol-policy > li:before {font-family: var(--font-bold);}
      .ol-policy ol li ul {list-style: none; padding-left: 3em; margin: 0.5em 0 0.75em;}
      .ol-policy ol ol ul {padding-left: 0;}
         .ol-policy ul li,
         .ol-policy ol ol ul li {padding-left: 1em;}
            .ol-policy ul li:before {content: '–'; top: 0; width: auto; height: auto; border-radius: 0; background: none;}

@media screen and (min-width: 1200px) {
   .font-26 ul li:before {top: 0.65em;}
}
@media screen and (max-width: 1199px) {
   ul li {padding-left: 15px;}
}
@media screen and (max-width: 480px) {
   ul li {padding-left: 12px;}
      ul li:before {width: 3px; height: 3px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   ul li {padding-left: 12px;}
      ul li:before {width: 3px; height: 3px;}
}


/*====================================================
   Image
====================================================*/
img {border: 0; max-width: 100%; height: auto;}
.article img {margin: 1em 0;}
.img-grayscale img {filter: grayscale(100%); transition: all var(--easing);}
.img-grayscale-hover:hover img {filter: grayscale(0%);}
.img-blacking img {filter: var(--filter-blacking);}
.img-whiting img {filter: var(--filter-whiting);}
.img-scale img {transition: transform 2s ease-in-out 0s;}
.img-scale-hover:hover img {transform: scale(1.1);}
.img-middle img {vertical-align: middle;}
.bg-gray-light img[src$=".jpg"],
.bg-gray-light img[src$=".jpeg"],
.bg-gray-light img[src$=".JPG"],
.bg-gray-light img[src$=".JPEG"] {mix-blend-mode: multiply;}
figure {width: 100%; margin: 0 0 1em 0;}
figure img {display: block;}
figcaption {padding-top: 0.25em;}
figure p {margin: 0;}


/*====================================================
   Links
====================================================*/
a {color: var(--blue); text-decoration: none; text-decoration-skip-ink: none; text-decoration-thickness: 0.05em; text-underline-offset: 0.13em; position: relative; transition: all var(--easing);}
a:hover {text-decoration: underline;}
.touchevents a {transition: unset;}
a.no-decor {color: inherit; text-decoration: none;}
a.decor {text-decoration: underline;}
a.decor:hover {color: var(--red);}

a[href^="tel"], a[href^="mailto"] {color: inherit; white-space: nowrap; text-decoration: none;}
a[href^="tel"]:hover, a[href^="mailto"]:hover {color: var(--blue);}

.link-color {color: var(--blue);}

/*menu*/
.menu a {color: inherit; text-decoration: none;}
.menu a:hover,
.no-touchevents .menu li.parent:hover > a,
.menu li.is-current {color: var(--blue);}
.menu li.is-current > a {color: inherit;}

/*fancybox*/
.link-fancybox:after {content: ''; position: absolute; top: 50%; left: 50%; z-index: 1; width: 48px; height: 48px; margin: -24px 0 0 -24px; background: url('../i/zoom.svg') 0 0 / contain no-repeat;}
.no-touchevents .link-fancybox:after {opacity: 0; transform: scale(0); transition: all var(--easing);}
.no-touchevents .link-fancybox:hover:after {opacity: 1; transform: scale(1);}
.no-touchevents .link-fancybox img {position: relative; z-index: 0; transition: all var(--easing);}
.no-touchevents .link-fancybox:hover img {opacity: 0.75;}

@media screen and (max-width: 480px) {
   .link-fancybox:after {width: 32px; height: 32px; margin: -16px 0 0 -16px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .link-fancybox:after {width: 32px; height: 32px; margin: -16px 0 0 -16px;}
}

/*pdf*/
@media screen and (max-width: 480px) {
   .link-pdf .svg-icon__image {width: 28px;}
}

/*with arrow*/
.link-arrow {font-size: 18px; line-height: 1;}
   .link-arrow:hover .svg-icon__image {transform: translateX(10px);}

/*close*/
.link-close {width: 20px; height: 20px; position: relative;}
   .link-close:before, 
   .link-close:after {content: ''; position: absolute; top: 50%; left: 50%; margin-left: -8px; width: 16px; height: 2px; background: var(--red);}
   .link-close:before {transform: rotate(45deg);}
   .link-close:after {transform: rotate(-45deg);}

/*readmore*/
.link-readmore.svg-icon {gap: 0.5em; line-height: 1; color: inherit;}
   .link-readmore svg {vertical-align: middle; position: relative; top: -2px;}

/*sbp*/
.link-sbp {column-gap: 7px;}


/*====================================================
   Backgrounds
====================================================*/
.bg-black {background: var(--black); color: #FFF;}
.bg-anthracite {background: var(--anthracite); color: #FFF;}
.bg-gray {background: var(--gray);}
.bg-gray-light {background: var(--gray-light);}
.bg-gray-light + .bg-gray-light {padding-top: 0;}
.bg-gray-light-2 {background: var(--gray-light-2);}
.bg-gray-dark {background: var(--gray-dark);}
.bg-cyan {background: var(--cyan); color: var(--anthracite);}
.bg-blue {background: var(--blue); color: #FFF;}
.bg-blue-light {background: var(--blue-light);}
.bg-red {background: var(--red); color: #FFF;}
.bg-white {background: #FFF; color: var(--anthracite);}


/*====================================================
   Border, border radius, box shadow
====================================================*/
.brd-gray {border: 1px solid var(--gray);}
.brd-gray-dark {border: 1px solid var(--gray-dark);}

.br-1 {border-radius: var(--br-1);}
.br-2 {border-radius: var(--br-2);}
.br-3 {border-radius: var(--br-3);}
.br-4 {border-radius: var(--br-4);}
.br-full {border-radius: 100%;}

.b-sh {box-shadow: 2px 4px 10px rgba(0,0,0,.2);}
.b-sh-dark {box-shadow: 2px 4px 10px rgba(0,0,0,.3);}
.no-touchevents .b-sh-hover:hover .b-sh,
.no-touchevents .b-sh-hover.b-sh:hover {box-shadow: 2px 4px 16px rgba(0,0,0,.3);}
.no-touchevents .b-sh-hover:hover .b-sh-dark,
.no-touchevents .b-sh-hover.b-sh-dark:hover {box-shadow: 2px 4px 16px rgba(0,0,0,.4);}


/*====================================================
   Transition
====================================================*/
.easing {transition: all var(--easing);}
.easing-slow {transition: all var(--easing-slow);}
.easing-x-slow {transition: all var(--easing-extra-slow);}
.touchevents .easing.touch-unset {transition: unset;}
   .easing:before, .easing:after,
   .easing-slow:before, .easing-slow:after,
   .easing-x-slow:before, .easing-x-slow:after {transition: inherit;}


/*====================================================
   Spacing
====================================================*/
.m-0 {margin: 0;}
.mt-0 {margin-top: 0;}
.mb-0 {margin-bottom: 0;}
.ml-0 {margin-left: 0;}
.mr-0 {margin-right: 0;}
.m-auto {margin: auto;}
.m-1 {margin: var(--m-1);}
.m-2 {margin: var(--m-2);}
.m-3 {margin: var(--m-3);}
.m-4 {margin: var(--m-4);}
.m-5 {margin: var(--m-5);}
.m-6 {margin: var(--m-6);}
.m-7 {margin: var(--m-7);}
.m-8 {margin: var(--m-8);}
.mx-1 {margin-right: var(--m-1); margin-left: var(--m-1);}
.mx-2 {margin-right: var(--m-2); margin-left: var(--m-2);}
.mx-3 {margin-right: var(--m-3); margin-left: var(--m-3);}
.mx-4 {margin-right: var(--m-4); margin-left: var(--m-4);}
.mx-5 {margin-right: var(--m-5); margin-left: var(--m-5);}
.mx-6 {margin-right: var(--m-6); margin-left: var(--m-6);}
.mx-7 {margin-right: var(--m-7); margin-left: var(--m-7);}
.mx-8 {margin-right: var(--m-8); margin-left: var(--m-8);}
.my-1 {margin-top: var(--m-1); margin-bottom: var(--m-1);}
.my-2 {margin-top: var(--m-2); margin-bottom: var(--m-2);}
.my-3 {margin-top: var(--m-3); margin-bottom: var(--m-3);}
.my-4 {margin-top: var(--m-4); margin-bottom: var(--m-4);}
.my-5 {margin-top: var(--m-5); margin-bottom: var(--m-5);}
.my-6 {margin-top: var(--m-6); margin-bottom: var(--m-6);}
.my-7 {margin-top: var(--m-7); margin-bottom: var(--m-7);}
.my-8 {margin-top: var(--m-8); margin-bottom: var(--m-8);}
.mt-1 {margin-top: var(--m-1);}
.mt-2 {margin-top: var(--m-2);}
.mt-3 {margin-top: var(--m-3);}
.mt-4 {margin-top: var(--m-4);}
.mt-5 {margin-top: var(--m-5);}
.mt-6 {margin-top: var(--m-6);}
.mt-7 {margin-top: var(--m-7);}
.mt-8 {margin-top: var(--m-8);}
.mb-1 {margin-bottom: var(--m-1);}
.mb-2 {margin-bottom: var(--m-2);}
.mb-3 {margin-bottom: var(--m-3);}
.mb-4 {margin-bottom: var(--m-4);}
.mb-5 {margin-bottom: var(--m-5);}
.mb-6 {margin-bottom: var(--m-6);}
.mb-7 {margin-bottom: var(--m-7);}
.mb-8 {margin-bottom: var(--m-8);}
.ml-1 {margin-left: var(--m-1);}
.ml-2 {margin-left: var(--m-2);}
.ml-3 {margin-left: var(--m-3);}
.ml-4 {margin-left: var(--m-4);}
.ml-5 {margin-left: var(--m-5);}
.ml-6 {margin-left: var(--m-6);}
.ml-7 {margin-left: var(--m-7);}
.ml-8 {margin-left: var(--m-8);}
.mr-1 {margin-right: var(--m-1);}
.mr-2 {margin-right: var(--m-2);}
.mr-3 {margin-right: var(--m-3);}
.mr-4 {margin-right: var(--m-4);}
.mr-5 {margin-right: var(--m-5);}
.mr-6 {margin-right: var(--m-6);}
.mr-7 {margin-right: var(--m-7);}
.mr-8 {margin-right: var(--m-8);}

@media screen and (min-width: 1200px) {
   .mb-xl-0 {margin-bottom: 0;} 
}
@media screen and (min-width: 768px) {
   .mb-md-0 {margin-bottom: 0;}
}
@media screen and (min-width: 481px) {
   .mb-sm-0 {margin-bottom: 0;}
}
@media screen and (max-width: 767px) {
   .mt-sm-0 {padding-top: 0;}
   .mb-sm-0 {padding-bottom: 0;}
} 
@media screen and (max-width: 991px) and (orientation: landscape) {
   .mt-sm-0 {padding-top: 0;}
   .mb-sm-0 {padding-bottom: 0;}
}

.m-beyond {margin-left: calc(var(--p-in) * -1); margin-right: calc(var(--p-in) * -1);}

@media all and (max-width: 1199px) {
   .m-md-beyond {margin-left: calc(var(--p-in) * -1); margin-right: calc(var(--p-in) * -1); border-radius: 0;}
      .m-md-beyond img {border-radius: 0;}
}
@media all and (max-width: 767px) {
   .m-sm-beyond {margin-left: calc(var(--p-in) * -1); margin-right: calc(var(--p-in) * -1); border-radius: 0;}
      .m-sm-beyond img {border-radius: 0;}
}
@media all and (max-width: 480px) {
   .m-xs-beyond {margin-left: calc(var(--p-in) * -1); margin-right: calc(var(--p-in) * -1); border-radius: 0;}
      .m-xs-beyond img {border-radius: 0;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .m-xs-beyond,
   .m-sm-beyond {margin-left: calc(var(--p-in) * -1); margin-right: calc(var(--p-in) * -1); border-radius: 0;}
      .m-xs-beyond img,
      .m-sm-beyond img {border-radius: 0;}
}

.p-0 {padding: 0;}
.pt-0 {padding-top: 0;}
.pb-0 {padding-bottom: 0;}
.pl-0 {padding-left: 0;}
.pr-0 {padding-right: 0;}

.p-1 {padding: var(--p-1);}
.p-2 {padding: var(--p-2);}
.p-3 {padding: var(--p-3);}
.p-4 {padding: var(--p-4);}
.p-5 {padding: var(--p-5);}
.p-6 {padding: var(--p-6);}
.p-7 {padding: var(--p-7);}
.p-8 {padding: var(--p-8);}

.py-1 {padding-top: var(--py-1); padding-bottom: var(--py-1);}
.py-2 {padding-top: var(--py-2); padding-bottom: var(--py-2);}
.py-3 {padding-top: var(--py-3); padding-bottom: var(--py-3);}
.py-4 {padding-top: var(--py-4); padding-bottom: var(--py-4);}
.py-5 {padding-top: var(--py-5); padding-bottom: var(--py-5);}
.py-6 {padding-top: var(--py-6); padding-bottom: var(--py-6);}
.py-7 {padding-top: var(--py-7); padding-bottom: var(--py-7);}
.py-8 {padding-top: var(--py-8); padding-bottom: var(--py-8);}

.px-1 {padding-right: var(--p-1); padding-left: var(--p-1);}
.px-2 {padding-right: var(--p-2); padding-left: var(--p-2);}
.px-3 {padding-right: var(--p-3); padding-left: var(--p-3);}
.px-4 {padding-right: var(--p-4); padding-left: var(--p-4);}
.px-5 {padding-right: var(--p-5); padding-left: var(--p-5);}
.px-6 {padding-right: var(--p-6); padding-left: var(--p-6);}

.pt-1 {padding-top: var(--p-1);}
.pt-2 {padding-top: var(--p-2);}
.pt-3 {padding-top: var(--p-3);}
.pt-4 {padding-top: var(--p-4);}
.pt-5 {padding-top: var(--p-5);}
.pt-6 {padding-top: var(--p-6);}

.pb-1 {padding-bottom: var(--p-1);}
.pb-2 {padding-bottom: var(--p-2);}
.pb-3 {padding-bottom: var(--p-3);}
.pb-4 {padding-bottom: var(--p-4);}
.pb-5 {padding-bottom: var(--p-5);}
.pb-6 {padding-bottom: var(--p-6);}

.pl-1 {padding-left: var(--p-1);}
.pl-2 {padding-left: var(--p-2);}
.pl-3 {padding-left: var(--p-3);}
.pl-4 {padding-left: var(--p-4);}
.pl-5 {padding-left: var(--p-5);}
.pl-6 {padding-left: var(--p-6);}
.pl-7 {padding-left: var(--p-7);}
.pl-8 {padding-left: var(--p-8);}

.pr-1 {padding-right: var(--p-1);}
.pr-2 {padding-right: var(--p-2);}
.pr-3 {padding-right: var(--p-3);}
.pr-4 {padding-right: var(--p-4);}
.pr-5 {padding-right: var(--p-5);}
.pr-6 {padding-right: var(--p-6);}
.pr-7 {padding-right: var(--p-7);}
.pr-8 {padding-right: var(--p-8);}


/*====================================================
   Display, Positioning
====================================================*/
/*Table div*/
.tb {display: table; width: 100%;}
   .tb__head {display: table-header-group;}
   .tb__body {display: table-row-group;}
      .tb__row {display: table-row;}
         .tb__cell {display: table-cell; vertical-align: middle;}

/*Overflow*/
.of-h {overflow: hidden;}
.of-v {overflow: visible;}

/*Float*/
.cl:after {clear: both; content: "."; display: block; height: 0; visibility: hidden;}
.fl {float: left;}
.fr {float: right;}


/*====================================================
   Grid & Flex
====================================================*/
.grid {display: grid;}

.flex {display: flex; flex-wrap: wrap;} 
.flex-inline {display: inline-flex;}
.flex-col {flex-direction: column;}
.flex-nowrap {flex-wrap: nowrap;}
.flex-wrap {flex-wrap: wrap;}
   .flex__fixed {flex: 0 0 auto;}

@media screen and (min-width: 375px) {
   .flex-no-xxs {display: flex;}
}
@media screen and (min-width: 481px) {
   .flex-sm {display: flex;}
   .grid-sm {display: grid;}
}
@media screen and (min-width: 768px) {
   .flex-md {display: flex;}
   .grid-md {display: grid;}
}
@media screen and (min-width: 992px) {
   .flex-lg {display: flex;}
   .grid-lg {display: grid;}
}
@media screen and (min-width: 1200px) {
   .flex-xl {display: flex;}
   .grid-xl {display: grid;}
}
@media screen and (min-width: 667px) and (max-width: 991px) and (orientation: landscape) {
   .flex-ls {display: flex;}
   .grid-ls {display: grid;}
   .flex-no-ls {display: block;}
}
@media screen and (max-width: 1199px) {
   .flex-no-xl {display: flex;}
   .grid-no-xl {display: grid;}
}

/*vertical*/
.y-start {align-items: start;}
.y-end {align-items: end;}
.y-middle {align-items: center;}/*flex--middle*/
.y-stretch {align-items: stretch;}
.y-between {align-content: space-between;}

/*horizontal all*/
.x-start {justify-content: start;}
.x-end {justify-content: end;}
.x-center {justify-content: center;}/*flex--center*/
.x-stretch {justify-content: stretch;}
.x-between {justify-content: space-between;}/*flex--justify*/
.x-around {justify-content: space-around;}
.x-evenly {justify-content: space-evenly;}

@media screen and (min-width: 1200px) {
   .x-xl-start {justify-content: start;}
}

/*horizontal (only grid)*/
.x-g-start {justify-items: start;}
.x-g-end {justify-items: end;}
.x-g-center {justify-items: center;}
.x-g-stretch {justify-items: stretch;}

/*gap*/
.gap-1 {gap: var(--gap-1);}
.gap-2 {gap: var(--gap-2);}
.gap-3 {gap: var(--gap-3);}
.col-gap-1 {column-gap: var(--col-gap-1);}
.col-gap-2 {column-gap: var(--col-gap-2);}
.col-gap-3 {column-gap: var(--col-gap-3);}
.col-gap-4 {column-gap: var(--col-gap-4);}
.row-gap-1 {row-gap: var(--row-gap-1);}
.row-gap-2 {row-gap: var(--row-gap-2);}
.row-gap-3 {row-gap: var(--row-gap-3);}
.row-gap-4 {row-gap: var(--row-gap-4);}

/*columns grid*/
.col {min-width: 0;}
.rows-col-2 {grid-template-columns: repeat(5,1fr);}
.rows-col-3 {grid-template-columns: repeat(4,1fr);}
.rows-col-4 {grid-template-columns: repeat(3,1fr);}
.rows-col-6 {grid-template-columns: repeat(2,1fr);}

@media (min-width: 481px) {
   .rows-col-sm-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-sm-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-sm-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-sm-6 {grid-template-columns: repeat(2,1fr);}
}
@media (min-width: 768px) {
   .rows-col-md-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-md-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-md-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-md-6 {grid-template-columns: repeat(2,1fr);}
}
@media (min-width: 992px) {
   .rows-col-lg-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-lg-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-lg-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-lg-6 {grid-template-columns: repeat(2,1fr);}
}
@media (min-width: 1200px) {
   .rows-col-xl-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-xl-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-xl-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-xl-6 {grid-template-columns: repeat(2,1fr);}
}
@media screen and (min-width: 1280px) {
   .rows-col-xl-auto {grid-template-columns: repeat(3, 360px);}
}
@media screen and (min-width: 1200px) and (max-width: 1279px) {
   .rows-col-xl-auto {grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 480px) {
   .rows-col-xs-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-xs-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-xs-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-xs-6 {grid-template-columns: repeat(2,1fr);}
}
@media screen and (min-width: 667px) and (max-width: 991px) and (orientation: landscape) {
   .rows-col-ls-2 {grid-template-columns: repeat(5,1fr);}
   .rows-col-ls-3 {grid-template-columns: repeat(4,1fr);}
   .rows-col-ls-4 {grid-template-columns: repeat(3,1fr);}
   .rows-col-ls-6 {grid-template-columns: repeat(2,1fr);}
}

/*columns flex*/
.col-auto {width: auto;}
.col-1 {width: 8.33333333%;}
.col-2 {width: 20%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33333333%;}
.col-5 {width: 41.66666667%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33333333%;}
.col-8 {width: 66.66666667%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33333333%;}
.col-11 {width: 91.66666667%;}
.col-12 {width: 100%;}

@media (min-width: 481px) {
   .col-sm-1 {width: 8.33333333%;}
   .col-sm-2 {width: 20%;}
   .col-sm-3 {width: 25%;}
   .col-sm-4 {width: 33.33333333%;}
   .col-sm-5 {width: 41.66666667%;}
   .col-sm-6 {width: 50%;}
   .col-sm-7 {width: 58.33333333%;}
   .col-sm-8 {width: 66.66666667%;}
   .col-sm-9 {width: 75%;}
   .col-sm-10 {width: 83.33333333%;}
   .col-sm-11 {width: 91.66666667%;}
   .col-sm-12 {width: 100%;}
}
@media (min-width: 768px) {
   .col-md-1 {width: 8.33333333%;}
   .col-md-2 {width: 20%;}
   .col-md-3 {width: 25%;}
   .col-md-4 {width: 33.33333333%;}
   .col-md-5 {width: 41.66666667%;}
   .col-md-6 {width: 50%;}
   .col-md-7 {width: 58.33333333%;}
   .col-md-8 {width: 66.66666667%;}
   .col-md-9 {width: 75%;}
   .col-md-10 {width: 83.33333333%;}
   .col-md-11 {width: 91.66666667%;}
   .col-md-12 {width: 100%;}
}
@media (min-width: 992px) {
   .col-lg-1 {width: 8.33333333%;}
   .col-lg-2 {width: 20%;}
   .col-lg-3 {width: 25%;}
   .col-lg-4 {width: 33.33333333%;}
   .col-lg-5 {width: 41.66666667%;}
   .col-lg-6 {width: 50%;}
   .col-lg-7 {width: 58.33333333%;}
   .col-lg-8 {width: 66.66666667%;}
   .col-lg-9 {width: 75%;}
   .col-lg-10 {width: 83.33333333%;}
   .col-lg-11 {width: 91.66666667%;}
   .col-lg-12 {width: 100%;}
}
@media (min-width: 1200px) {
   .col-xl-1 {width: 8.33333333%;}
   .col-xl-2 {width: 20%;}
   .col-xl-3 {width: 25%;}
   .col-xl-4 {width: 33.33333333%;}
   .col-xl-5 {width: 41.66666667%;}
   .col-xl-6 {width: 50%;}
   .col-xl-7 {width: 58.33333333%;}
   .col-xl-8 {width: 66.66666667%;}
   .col-xl-9 {width: 75%;}
   .col-xl-10 {width: 83.33333333%;}
   .col-xl-11 {width: 91.66666667%;}
   .col-xl-12 {width: 100%;}
}
@media screen and (min-width: 667px) and (max-width: 991px) and (orientation: landscape) {
   .col-ls-1 {width: 8.33333333%;}
   .col-ls-2 {width: 20%;}
   .col-ls-3 {width: 25%;}
   .col-ls-4 {width: 33.33333333%;}
   .col-ls-5 {width: 41.66666667%;}
   .col-ls-6 {width: 50%;}
   .col-ls-7 {width: 58.33333333%;}
   .col-ls-8 {width: 66.66666667%;}
   .col-ls-9 {width: 75%;}
   .col-ls-10 {width: 83.33333333%;}
   .col-ls-11 {width: 91.66666667%;}
   .col-ls-12 {width: 100%;}
}


/*====================================================
   Svg
====================================================*/
.svg-icon {position: relative; display: inline-flex; flex-wrap: nowrap; align-items: center; gap: 1em;}
.svg-icon.y-start {align-items: start;}
a.svg-icon {text-decoration: none;}
a.decor.svg-icon {text-decoration: underline;}
.svg-hover:hover {color: var(--blue-light);}
   .svg-icon__image {flex: 0 0 auto;}
      svg {max-width: 100%; height: auto; vertical-align: top;}
      a.svg-icon img,
      .svg-fill,
      .svg-stroke {transition: all var(--easing);}
      .touchevents a.svg-icon img,
      .touchevents .svg-fill,
      .touchevents .svg-stroke {transition: unset;}
         .svg-fill, .svg-stroke {transition: all var(--easing);}
         .svg-fill {fill: var(--anthracite);}
         .svg-stroke {stroke: var(--anthracite);}
         .btn .svg-fill {fill: #FFF;}
         .btn .svg-stroke {stroke: #FFF;}
         .btn--light .svg-fill {fill: var(--anthracite);}
         .btn--light .svg-stroke {stroke: var(--anthracite);}
         .svg-hover:hover .svg-fill {fill: var(--blue-light);}
         .svg-hover:hover .svg-stroke {stroke: var(--blue-light);}
         .btn--light:hover .svg-fill {fill: #FFF;}
         .btn--light:hover .svg-stroke {stroke: #FFF;}

@media (max-width: 480px) {
   .svg-icon {gap: 0.75em;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .svg-icon {gap: 0.75em;}
}


/*====================================================
   Arrows
====================================================*/
.arrow {position: relative;}
   .arrow:before, 
   .arrow:after {content: ''; position: absolute; background: var(--anthracite); transition: background var(--easing);}
   .arrow-hover:hover .arrow:before,
   .arrow-hover:hover .arrow:after {background: var(--blue-light);}
   .bg-gray-light.arrow-hover:hover .arrow:before, 
   .bg-gray-light.arrow-hover:hover .arrow:after {background: #FFF;}
   .touchevents .arrow:before,
   .touchevents .arrow:after {transition: unset;}

/*arrow--y*/
.arrow--y.arrow--large {width: 19px; height: 12px;}
.arrow--y.arrow--small {width: 12px; height: 9px;}
   .arrow--y:before,
   .arrow--y:after {top: 0; width: 1px;}
   .arrow--y.arrow--small:before, 
   .arrow--y.arrow--small:after {height: 9px;}
   .arrow--y.arrow--small:before {left: 3px;}
   .arrow--y.arrow--small:after {right: 3px;}
   .arrow--down.arrow--small:before {transform: rotate(-36deg);}
   .arrow--down.arrow--small:after {transform: rotate(36deg);}
   .arrow--up.arrow--small:before {transform: rotate(36deg);}
   .arrow--up.arrow--small:after {transform: rotate(-36deg);}
   .arrow--y.arrow--large:before, 
   .arrow--y.arrow--large:after {height: 12px;}
   .arrow--y.arrow--large:before {left: 5px;}
   .arrow--y.arrow--large:after {right: 5px;}
   .arrow--down.arrow--large:before {transform: rotate(-45deg);}
   .arrow--down.arrow--large:after {transform: rotate(45deg);}
   .arrow--up.arrow--large:before {transform: rotate(45deg);}
   .arrow--up.arrow--large:after {transform: rotate(-45deg);}

/*arrow--x*/
.arrow--x {width: 12px;}
.arrow--x.arrow--large {height: 20px;}
.arrow--x.arrow--small {height: 14px;}
   .arrow--x:before, 
   .arrow--x:after {height: 1px;}
   .arrow--x.arrow--small:before, 
   .arrow--x.arrow--small:after {width: 12px;}
   .arrow--x.arrow--small:before {top: 3px;}
   .arrow--x.arrow--small:after {bottom: 3px;}
   .arrow--left.arrow--small:before {transform: rotate(-36deg);}
   .arrow--left.arrow--small:after {transform: rotate(36deg);}
   .arrow--right.arrow--small:before {transform: rotate(36deg);}
   .arrow--right.arrow--small:after {transform: rotate(-36deg);}
   .arrow--x.arrow--large:before, 
   .arrow--x.arrow--large:after {width: 13px;}
   .arrow--x.arrow--large:before {top: 5px;}
   .arrow--x.arrow--large:after {bottom: 5px;}
   .arrow--left.arrow--large:before {transform: rotate(-45deg);}
   .arrow--left.arrow--large:after {transform: rotate(45deg);}
   .arrow--right.arrow--large:before {transform: rotate(45deg);}
   .arrow--right.arrow--large:after {transform: rotate(-45deg);}

   
/*====================================================
   Buttons
====================================================*/
.btn {display: inline-flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 13px; width: auto; max-width: 100%; min-height: 50px; padding: 8px 20px 10px; border-radius: 2em; background: var(--anthracite); text-align: center; font-family: var(--font-regular); font-size: 18px; line-height: 1.3; color: #FFF; transition: all var(--easing); position: relative; cursor: pointer; overflow: hidden;}
a.btn {text-decoration: none;}
.btn:hover,
.btn-hover:hover .btn {background: var(--blue-light); color: #FFF;}
.btn.btn--nowrap {white-space: nowrap;}
.btn.btn--full {width: 100%;}
.btn.btn--small {min-height: 30px; padding: 5px 20px 7px; font-size: 14px;}
.btn.btn--border {border: 1px solid var(--gray-dark); background: transparent; color: var(--anthracite); padding: 4px 20px 6px;}
.btn.btn--border:hover {background: var(--blue-light); border-color: var(--blue-light); color: #FFF;}
.btn--light {background: #FFF; color: var(--anthracite);}
.btn--light:hover {background: var(--anthracite);}
.btn.svg-icon {font-size: 16px; padding-bottom: 9px;}
.btn.is-disabled {background: var(--gray-dark); pointer-events: none; cursor: default;}
.btn--static {pointer-events: none;}
.btn--whatsapp {background: #00CA3B;}
.touchevents .btn {transition: unset;}
   .btn span.ripple {position: absolute; width: 0; height: 0; border-radius: 100%; background: #FFF; opacity: 0.5;}

@media screen and (max-width: 480px) {
   .btn {font-size: 16px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .btn {font-size: 16px;}
}

/*btn-expand*/
.btn-expand {display: block; width: 32px; height: 32px; border-radius: 100%; border: 1px solid var(--anthracite); position: relative; transition: transform var(--easing);}
.btn-expand.is-active,
.btn-expand-parent.is-active .btn-expand {transform: rotate(45deg);}
   .btn-expand:before,
   .btn-expand:after {content: ''; position: absolute; top: 50%; left: 50%; background: var(--anthracite); transition: background var(--easing);}
   .btn-expand:before {width: 18px; height: 1px; margin-left: -9px;}
   .btn-expand:after {width: 1px; height: 18px; margin-top: -9px;}
   .btn-expand.is-active:before,
   .btn-expand.is-active:after,
   .btn-expand-parent.is-active .btn-expand:before,
   .btn-expand-parent.is-active .btn-expand:after {background: var(--blue-light);}

@media screen and (max-width: 767px) {
   .btn-expand {width: 21px; height: 21px;}
      .btn-expand:before {width: 13px; top: 9px; left: 3px; margin-left: 0;}
      .btn-expand:after {height: 13px; left: 9px; top: 3px; margin-top: 0;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .btn-expand {width: 21px; height: 21px;}
      .btn-expand:before {width: 13px; top: 9px; left: 3px; margin-left: 0;}
      .btn-expand:after {height: 13px; left: 9px; top: 3px; margin-top: 0;}
}

/*btn-open, btn-close*/
.btn-open, .btn-close {display: block; width: 44px; height: 44px; border-radius: 100%; background: var(--anthracite); cursor: pointer; z-index: 2; transition: background var(--easing);}
.btn-close {position: absolute; top: 20px; right: 20px;}
a.btn-open,
a.btn-close {text-decoration: none;}
.btn-open:hover,
.btn-close:hover,
.btn-hover:hover .btn-open,
.btn-hover:hover .btn-close {background: var(--blue-light);}
.touchevents .btn-open,
.touchevents .btn-close {transition: unset;}
   .btn-open:before, 
   .btn-open:after,
   .btn-close:before, 
   .btn-close:after {content: ''; position: absolute; top: 50%; left: 50%; background: #FFF;}
   .btn-open:before {width: 18px; height: 1px; margin-left: -9px;}
   .btn-open:after {width: 1px; height: 18px; margin-top: -9px;}
   .btn-close:before, .btn-close:after {margin-left: -10px; width: 20px; height: 1px;}
   .btn-close:before {transform: rotate(45deg);}
   .btn-close:after {transform: rotate(-45deg);}

@media screen and (max-width: 1199px) {
   .btn-open,
   .btn-close {width: 36px; height: 36px;}
      .btn-open:before {width: 17px; margin-left: -8px;}
      .btn-open:after {height: 17px; margin-top: -8px;}
      .btn-close:before, .btn-close:after {width: 17px; margin-left: -8px;}
}
@media screen and (max-width: 480px) {
   .btn-open,
   .btn-close {width: 30px; height: 30px;}
      .btn-open:before {width: 13px; margin-left: -6px;}
      .btn-open:after {height: 13px; margin-top: -6px;}
      .btn-close:before, .btn-close:after {width: 13px; margin-left: -6px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .btn-open,
   .btn-close {width: 30px; height: 30px;}
      .btn-open:before {width: 13px; margin-left: -6px;}
      .btn-open:after {height: 13px; margin-top: -6px;}
      .btn-close:before, .btn-close:after {width: 13px; margin-left: -6px;}
}

/*btn-video*/
.btn-video {display: flex; align-items: center; justify-content: center; position: absolute; top: 50%; left: 50%; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 100%; background: var(--gray-light); transition: background var(--easing), transform var(--easing-slow);}
.bg-gray-light .btn-video {background: #FFF;}
.btn-video.btn-video--small {width: 44px; height: 44px; margin: -22px 0 0 -22px;}
   .btn-video.btn-video--small:before {margin-left: 6px; border-left: 14px solid var(--blue-light); border-top: 8px solid transparent; border-bottom: 8px solid transparent;}
.btn-video-hover:hover .btn-video {background: var(--blue-light); transform: scale(1.2);}
   .btn-video:before {content: ''; display: block; margin-left: 8px; border-left: 20px solid var(--blue-light); border-top: 12px solid transparent; border-bottom: 12px solid transparent; border-right: 0; transition: border-left-color var(--easing);}
   .btn-video-hover:hover .btn-video:before {border-left-color: #FFF;}
.btn-video-animate {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

@media screen and (min-width: 1200px) {
   .btn-video--large {width: 116px; height: 116px; margin: -58px 0 0 -58px;}
      .btn-video--large:before {margin-left: 12px; border-left-width: 30px; border-top: 20px solid transparent; border-bottom: 20px solid transparent;}
}
@media screen and (max-width: 1199px) {
   .btn-video.btn-video--small {width: 30px; height: 30px;}
      .btn-video.btn-video--small:before {margin-left: 4px; border-left-width: 10px; border-top-width: 6px; border-bottom-width: 6px;}
}
@media screen and (max-width: 480px) {
   .btn-video {width: 44px; height: 44px; margin: -22px 0 0 -22px;}
      .btn-video:before {margin-left: 6px; border-left-width: 14px; border-top: 8px solid transparent; border-bottom: 8px solid transparent;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .btn-video {width: 44px; height: 44px; margin: -22px 0 0 -22px;}
      .btn-video:before {margin-left: 6px; border-left-width: 14px; border-top: 8px solid transparent; border-bottom: 8px solid transparent;}
}


/*====================================================
   Form
====================================================*/
input:-moz-focus-inner {border: 0; padding: 0;}
input::-ms-clear {display: none;}
button:-moz-focus-inner {border: 0; padding: 0; outline: none;}
input:placeholder-shown {text-overflow: ellipsis;}
input[type="submit"], button {-webkit-appearance: none; user-select: none; -webkit-user-select: none; background: none; border: 0; border-radius: 0; font-weight: normal; cursor: pointer;}
input:invalid, textarea:invalid {box-shadow: none;}
input:-webkit-autofill {-webkit-box-shadow: inset 0 0 0 50px rgba(255,255,255,1) !important; /* Цвет фона */-webkit-text-fill-color: #000 !important; /* цвет текста */color: inherit !important; /* цвет текста */}
.form__textinput, .form__textarea {display: block; width: 100%; height: 50px; background: #FFF; border: 1px solid var(--gray); border-radius: var(--br-1); box-shadow: none; padding: 0 20px; font-family: var(--font-regular); font-size: 20px; line-height: 1; color: var(--anthracite); position: relative; z-index: 1; -webkit-appearance: none;}
.form__textarea {height: 100px; resize: none; padding: 15px 20px;}
.form__textinput.form__error, .form__textarea.form__error {border-color: var(--red);}
.form__textinput:disabled, .form__textarea.form__error:disabled {background: var(--gray-light); cursor: default;}

label.form__label {display: block; margin-bottom: 0.5em; color: inherit; line-height: 1;}
.form__legend {line-height: 1; margin-bottom: 15px;}
.flex:not(.modal-block__overlay) .form__legend {margin-bottom: 0;}

/*fields*/
.form__field {margin-bottom: 20px; position: relative;}
.form__field:last-child {margin-bottom: 0;}
.form__field.flex {column-gap: 20px;}
.form__note {font-size: 16px; color: #646464;}

/*disappearing placeholder*/
input::-webkit-input-placeholder {color: var(--gray-dark); opacity: 1;}
input::-moz-placeholder {color: var(--gray-dark); opacity: 1;}
input:-moz-placeholder {color: var(--gray-dark); opacity: 1;}
input:-ms-input-placeholder {color: var(--gray-dark); opacity: 1;}
input:focus::-webkit-input-placeholder {opacity: 0;}
input:focus::-moz-placeholder {opacity: 0;}
input:focus:-moz-placeholder {opacity: 0;}
input:focus:-ms-input-placeholder {opacity: 0;}
textarea::-webkit-input-placeholder {color: var(--gray-dark); opacity: 1;}
textarea::-moz-placeholder {color: var(--gray-dark); opacity: 1;}
textarea:-moz-placeholder {color: var(--gray-dark); opacity: 1;}
textarea:-ms-input-placeholder {color: var(--gray-dark); opacity: 1;}
textarea:focus::-webkit-input-placeholder {opacity: 0;}
textarea:focus::-moz-placeholder {opacity: 0;}
textarea:focus:-moz-placeholder {opacity: 0;}
textarea:focus:-ms-input-placeholder {opacity: 0;}

/*select*/
.jq-selectbox {position: relative; z-index: 3; width: 100%; height: 50px;}
   .jq-selectbox select {position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; opacity: 0; z-index: -1;}
   .jq-selectbox__select {width: 100%; height: 100%; padding: 0 40px 0 20px; background: #FFF; border: 1px solid var(--gray); border-radius: var(--br-1); cursor: pointer;}
   .jq-selectbox select.form__error ~ .jq-selectbox__select {border-color: var(--red);}
   .jq-selectbox select:disabled ~ .jq-selectbox__select {background: var(--gray-light); cursor: default;}
      .jq-selectbox__select-text {max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 20px; line-height: 48px; color: var(--gray-dark);}
      .jq-selectbox.changed .jq-selectbox__select-text {color: var(--black);}
      .jq-selectbox__dropdown {position: absolute; top: 53px !important; width: 100%; background: #FFF; border: 1px solid var(--gray); border-top: 0; /*border-radius: 0 0 var(--br-1) var(--br-1);*/ margin-top: calc(var(--br-1) * -1); transition: all var(--easing);}
         .jq-selectbox__dropdown ul {padding: 20px 0; margin: 0; max-height: 320px; overflow: auto; scroll-behavior: auto; position: relative;}
         .jq-selectbox__dropdown ul:before {content: ''; position: absolute; top: 2px; left: 15px; right: 15px; height: 1px; background: var(--gray);}
         .jq-selectbox__dropdown ul::-webkit-scrollbar {width: 3px;}
            .jq-selectbox__dropdown ul li {list-style: none; padding: 5px 20px; margin: 0; cursor: pointer;}
            .jq-selectbox__dropdown ul li.disabled {display: none;}
            .jq-selectbox__dropdown ul li:hover, .jq-selectbox__dropdown ul li.selected {background: var(--gray-light);}
               .jq-selectbox__dropdown ul li:before {display: none;}
      .jq-selectbox__trigger {position: absolute; top: 0; right: 15px; height: 100%;}
         .jq-selectbox__trigger-arrow {position: absolute; top: 50%; margin-top: -4px; right: 0; transition: transform var(--easing);}
         .jq-selectbox.opened .jq-selectbox__trigger-arrow {transform: rotateX(180deg);}

/*checkbox input*/
.form__field .checkbox + .checkbox {margin-top: 10px;}
.flex:not(.modal-block__overlay) .checkbox + .checkbox {margin: 0;}
   .checkbox input[type="checkbox"] {opacity: 0; position: absolute;}
   .checkbox__label {display: inline-flex; flex-wrap: nowrap; align-items: center; gap: 1em; cursor: pointer; position: relative;}
   .checkbox__label:has(input[type="checkbox"]:disabled) {cursor: default;}
      .checkbox__text {font-size: 16px; line-height: 1.2;}
      .checkbox__decor {display: flex; justify-content: center; align-items: center; flex: 0 0 auto; width: 20px; height: 20px; background: #FFF; border: 1px solid var(--anthracite); border-radius: var(--br-1); transition: all var(--easing); position: relative;}
      .checkbox input[type="checkbox"]:checked ~ .checkbox__decor {background: var(--blue-light); border-color: var(--blue-light);}
      .checkbox input[type="checkbox"]:disabled ~ .checkbox__decor {background: var(--gray-light);}
         .checkbox__decor:after {content: ''; display: block; width: 16px; height: 13px; background: url('../i/checkbox.svg') 50% 50% / contain no-repeat; opacity: 0; transform: scale(0); transition: all var(--easing); position: relative; z-index: 2;}
         .checkbox input[type="checkbox"]:checked ~ .checkbox__decor:after {opacity: 1; transform: scale(1);}

@media screen and (min-width: 1200px) {
   .checkbox--large .checkbox__text {font-size: 22px;}
   .checkbox--large .checkbox__decor {width: 26px; height: 26px;}
      .checkbox--large .checkbox__decor:after {width: 19px; height: 16px;}
}

/*radio input*/
.form__field .radio + .radio {margin-top: 10px;}
.flex:not(.modal-block__overlay) .radio + .radio {margin-top: 0;}
   .radio input[type="radio"] {opacity: 0; position: absolute;}
   .radio__label {display: inline-flex; flex-wrap: nowrap; align-items: center; gap: 1em; cursor: pointer; position: relative;}
   .radio__label:has(input[type="radio"]:disabled) {cursor: default;}
      .radio__text {font-size: 16px; line-height: 1.2;}
      .radio__decor {display: flex; justify-content: center; align-items: center; flex: 0 0 auto; width: 20px; height: 20px; background: inherit; border: 1px solid var(--black); border-radius: 100%; transition: all var(--easing); position: relative;}
      .radio input[type="radio"]:disabled ~ .radio__decor {background: var(--gray-light);}
         .radio__decor:after {content: ''; display: block; width: 10px; height: 10px; background: var(--blue-light); border-radius: 100%; opacity: 0; transform: scale(0); transition: all var(--easing);}
         .radio input[type=radio]:checked ~ .radio__decor:after {opacity: 1; transform: scale(1);}

@media screen and (min-width: 1200px) {
   .radio--large .radio__text {font-size: 22px;}
   .radio--large .radio__decor {width: 26px; height: 26px;}
   .radio--large .radio__decor:after {width: 12px; height: 12px;}
}
@media screen and (max-width: 1199px) {
   .form__textinput, 
   .form__textarea,
   .jq-selectbox__select-text,
   .checkbox__text,
   .radio__text {font-size: 18px;}
   .form__textinput {padding: 0 15px;}
   .form__textarea {padding: 10px 15px;}
   .jq-selectbox__select {padding-left: 15px;}
   .jq-selectbox__dropdown ul li {padding-left: 15px; padding-right: 15px;}
}
@media screen and (max-width: 767px) {
   .form__textinput,
   .jq-selectbox {height: 40px;}
   input:-webkit-autofill {-webkit-box-shadow: inset 0 0 0 40px rgba(255,255,255,1) !important;}
   .form__textinput, 
   .form__textarea,
   .jq-selectbox__select-text,
   .checkbox__text,
   .radio__text {font-size: 16px;}
   .jq-selectbox__select-text {line-height: 38px;}
}
@media screen and (max-width: 480px) {
   .form__field {margin-bottom: 15px;}
   .form__note,
   .form__textinput, 
   .form__textarea,
   .jq-selectbox__select-text,
   .checkbox__text,
   .radio__text {font-size: 14px;}
}
@media screen and (max-width: 374px) {
   .form__field {margin-bottom: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .form__field {margin-bottom: 15px;}
   .form__textinput,
   .jq-selectbox {height: 40px;}
   input:-webkit-autofill {-webkit-box-shadow: inset 0 0 0 40px rgba(255,255,255,1) !important;}
   .form__note,
   .form__textinput, 
   .form__textarea,
   .jq-selectbox__select-text,
   .checkbox__text,
   .radio__text {font-size: 14px;}
   .jq-selectbox__select-text {line-height: 38px;}
}

*:disabled {cursor: default;}
.a-n-t-i-s-p-a-m {display: none !important;}

/*manager*/
.form__manager {gap: 26px;}
   .form-manager__image {width: 128px; border-radius: 100%;}
      .form-manager__image img {display: block; border-radius: 100%;}

@media screen and (max-width: 767px) {
   .form__manager {gap: 20px;}
      .form-manager__image {width: 95px;}
}
@media screen and (max-width: 374px) {
   .form__manager {gap: 10px;}
      .form-manager__image {width: 75px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .form__manager {gap: 20px;}
      .form-manager__image {width: 95px;}
}

/*form__contact*/
.form__contact {gap: 30px;}
   .form__contact .form__fieldset {gap: 20px;}
      .radio--contact .radio__label {gap: 0.5em;}
      .form__contact .form__legend,
      .radio--contact .radio__text {font-size: 22px;}
      .radio--contact .radio__decor:after {background: var(--anthracite);}

@media screen and (max-width: 1199px) {
   .form__contact .form__legend,
   .radio--contact .radio__text {font-size: 20px;}
}
@media screen and (max-width: 767px) {
   .form__contact .form__legend,
   .radio--contact .radio__text {font-size: 18px;}
}
@media screen and (max-width: 480px) {
   .form__contact {gap: 20px;}
      .form__contact .form__fieldset {gap: 15px;}
      .form__contact .form__legend,
      .radio--contact .radio__text {font-size: 16px;}
}
@media screen and (max-width: 374px) {
   .form__contact .form__fieldset {flex-direction: column; align-items: start; gap: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .form__contact {gap: 20px;}
      .form__contact .form__fieldset {gap: 15px;}
      .form__contact .form__legend,
      .radio--contact .radio__text {font-size: 16px;}
}

/*.checkbox--contact .checkbox__label,
.radio--contact .radio__label {gap: 0;}
.checkbox--contact .checkbox__decor,
.radio--contact .radio__decor {display: block; border: 0; width: 30px; height: 30px; border-radius: 100%; background: none;}
   .checkbox--contact .checkbox__decor:after,
   .radio--contact .radio__decor:after {display: none;}
   .checkbox--contact .checkbox__decor svg,
   .radio--contact .radio__decor svg {width: 100%; height: 100%;}
   .checkbox--contact input[type="checkbox"]:checked ~ .checkbox__decor,
   .radio--contact input[type="radio"]:checked ~ .radio__decor {background: none;}
   .checkbox--contact input[type="checkbox"]:checked ~ .checkbox__decor .svg-fill,
   .radio--contact input[type="radio"]:checked ~ .radio__decor .svg-fill {fill: var(--red);}

@media screen and (max-width: 767px) {
   .checkbox--contact .checkbox__decor,
      .radio--contact .radio__decor {width: 22px; height: 22px;}
}
@media screen and (max-width: 480px) {
   .checkbox--contact .checkbox__decor,
   .radio--contact .radio__decor {width: 18px; height: 18px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .checkbox--contact .checkbox__decor,
   .radio--contact .radio__decor {width: 18px; height: 18px;}
}*/

/*checkbox custom*/
.checkbox--policy .checkbox__label,
   .checkbox--sample .checkbox__label {gap: 0.5em; align-items: start;}
      .checkbox--policy .checkbox__text,
      .checkbox--sample .checkbox__text {font-size: 16px; color: #646464;}
         .checkbox--sample .checkbox__text a {position: relative; padding-right: 20px;}
            .checkbox--sample .checkbox__text a:before {content: ''; position: absolute; top: 0; right: 0; width: 17px; height: 17px; background: var(--blue-light); border-radius: 100%;}
            .checkbox--sample .checkbox__text a:after {content: '+'; position: absolute; right: 3px; top: -1px; display: flex; align-items: center; justify-content: center; font-family: var(--font-medium); font-size: 17px; color: #FFF;}
      .checkbox--policy .checkbox__decor,
      .checkbox--sample .checkbox__decor {border-radius: 0;}
      .checkbox--policy input[type="checkbox"]:checked ~ .checkbox__decor,
      .checkbox--sample input[type="checkbox"]:checked ~ .checkbox__decor {background: transparent; border-color: var(--anthracite);}
      .checkbox--policy .checkbox__decor:after,
      .checkbox--sample .checkbox__decor:after {width: 14px; height: 11px; filter: invert(0.7);}
      .checkbox--policy a,
      .checkbox--sample a {text-decoration: underline; color: inherit;}
      .no-touchevents .checkbox--policy a:hover,
      .no-touchevents .checkbox--sample a:hover,
      .touchevents .checkbox--policy a:active,
      .touchevents .checkbox--sample a:active {text-decoration: none;}
      .no-touchevents .checkbox--sample a:hover,
      .touchevents .checkbox--sample a:active {color: var(--blue-light);}

@media screen and (max-width: 480px) {
   .checkbox--policy .checkbox__text,
   .checkbox--sample .checkbox__text {font-size: 14px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .checkbox--policy .checkbox__text,
   .checkbox--sample .checkbox__text {font-size: 14px;}
}

/*filter checkbox & radio*/
.filter__checkbox,
.filter__radio {position: relative;}
   .filter-checkbox input[type="checkbox"],
   .filter-radio input[type="radio"] {opacity: 0; position: absolute;}
   .filter-checkbox__label,
   .filter-radio__label {display: inline-flex; cursor: pointer;}
      .filter-checkbox input[type="checkbox"]:checked ~ .filter-checkbox__text,
      .filter-radio input[type="radio"]:checked ~ .filter-radio__text {background: var(--blue-light); border-color: var(--blue-light); color: #FFF;}
      .filter__item .btn {padding-left: 30px; padding-right: 30px;}
         .filter-checkbox__cross,
         .filter-radio__cross {position: absolute; top: 50%; margin-top: -7px; right: 10px; width: 15px; height: 15px; opacity: 0;}
         .filter-checkbox input[type="checkbox"]:checked ~ .filter-checkbox__text .filter-checkbox__cross, 
         .filter-radio input[type="radio"]:checked ~ .filter-radio__text .filter-radio__cross {opacity: 1;}
            .filter-checkbox__cross:before,
            .filter-radio__cross:before,
            .filter-checkbox__cross:after,
            .filter-radio__cross:after {content: ''; position: absolute; top: 0; left: 10px; width: 1px; height: 100%; background: #FFF;}
            .filter-checkbox__cross:before,
            .filter-radio__cross:before {transform: rotate(-45deg);}
            .filter-checkbox__cross:after,
            .filter-radio__cross:after {transform: rotate(45deg);}

@media screen and (min-width: 1200px) {
   .filter__item .btn {padding-top: 1px; padding-bottom: 4px; font-size: 18px;}
}
@media screen and (max-width: 480px) {
   .filter__item .btn {padding-left: 25px; padding-right: 25px;}
      .filter-checkbox__cross,
      .filter-radio__cross {right: 7px; margin-top: -6px; width: 12px; height: 12px;}
         .filter-checkbox__cross:before,
         .filter-radio__cross:before,
         .filter-checkbox__cross:after,
         .filter-radio__cross:after {left: 6px;}
}


/*====================================================
   .header
====================================================*/
.header {position: fixed; top: 0; left: 0; width: 100vw; z-index: 20;}
   .header:before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: inherit; border-bottom: 1px solid var(--gray); z-index: 2;}
   .header__info {position: relative; z-index: 3; min-height: 55px; padding: 7px 0 10px;}
      .header__info .btn-close {top: 18px; background: none; width: 20px; height: 20px;}
         .header__info .btn-close:before, 
         .header__info .btn-close:after {background: var(--anthracite); transition: var(--esing);}
         .header__info .btn-close:hover:before, 
         .header__info .btn-close:hover:after {background: var(--red);}
      .header-info__text {padding: 0 25px; font-size: 14px;}
   .header__in .inner {max-width: 1420px;}
   .header__panel {height: var(--header-height); gap: clamp(20px,1.65vw,30px);}
      .header__logo {position: relative; z-index: 3;}
      .header__menu .menu {gap: 0 clamp(20px,1.85vw,35px);}
         .header__menu li {font-size: 14px;}
         .header__menu li.parent {display: inline-flex; flex-wrap: nowrap; gap: 0 6px;}
            .header__menu .arrow {transition: transform var(--easing);}
            .header__menu li.parent:hover .arrow {transform: rotateX(-180deg);}
               .header__menu li.parent:hover .arrow:before,
               .header__menu li.parent:hover .arrow:after {background: var(--blue);}
            .header__menu .btn-expand {top: -5px; width: 21px; height: 21px;}
               .header__menu .btn-expand:before {width: 13px; top: 9px; left: 3px; margin-left: 0;}
               .header__menu .btn-expand:after {height: 13px; left: 9px; top: 3px; margin-top: 0;}
            .header__menu .submenu-height {height: 0; overflow: hidden; transition: height var(--easing-slow);}
               .header__menu .submenu li {text-transform: none; font-size: 18px; white-space: normal; margin-bottom: 15px;}
               .header__menu .submenu li:last-child {margin-bottom: 0;}
      .header__phone {position: relative; z-index: 3; font-size: 18px;}
      .header__buttons {position: relative; z-index: 3; gap: 0 20px;}
         .header__buttons .svg-icon {width: 24px; height: 24px;}
         .header__messenger {gap: 0 20px;} 
         .header__callback {padding: 0 clamp(0px,1.563vw,30px);}
            .header__callback .btn {text-transform: none;}
      .header__hamburger {position: relative; z-index: 3; margin-left: clamp(0px,4vw,30px);}
         .hamburger {cursor: pointer; gap: 0 15px;}
            .hamburger__in {width: 27px; height: 20px; position: relative;}
               .hamburger__lines {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
                  .hamburger__lines span {width: 100%; height: 2px; background: var(--anthracite); position: absolute; left: 0; transition: width 0.3s ease 0s;}
                  .hamburger__lines span:nth-child(1) {top: 0; transition-delay: .5s;}
                  .hamburger__lines span:nth-child(2) {top: 9px; transition-delay: .625s;}
                  .hamburger__lines span:nth-child(3) {top: 18px; transition-delay: .85s;}
                  .hamburger.is-active .hamburger__lines span {width: 0;}
                  .hamburger.is-active .hamburger__lines span:nth-child(1) {transition-delay: 0s;}
                  .hamburger.is-active .hamburger__lines span:nth-child(2) {transition-delay: .125s;}
                  .hamburger.is-active .hamburger__lines span:nth-child(3) {transition-delay: .35s;}
               .hamburger__cross {position: absolute; top: -4px; right: 0; width: 26px; height: 26px; transform: rotate(-45deg);}
                  .hamburger__cross span {position: absolute; background: var(--red); transition: all var(--easing);}
                  .hamburger__cross span:nth-child(1) {transition-delay: 0s; width: 2px; height: 0; top: 0; left: 12px;}
                  .hamburger__cross span:nth-child(2) {transition-delay:.25s; width: 0; height: 2px; top: 12px; left: 0;}
                  .hamburger.is-active .hamburger__cross span:nth-child(1) {transition-delay: .85s; height: 100%;}
                  .hamburger.is-active .hamburger__cross span:nth-child(2) {transition-delay: .625s; width: 100%;}

@media screen and (min-width: 1200px) {
   .container:has(.heading--showcase) .header:not(.fixed):before {border: 0;}
   .header__panel {transition: height 0.35s ease-in-out 0s; font-family: var(--font-semibold);}
   .header.fixed .header__panel {height: 60px;}
      .header__logo {transition: transform 0.35s ease-in-out 0s;}
      .header.fixed .header__logo {transform: scale(0.75);}
      .header__menu {position: relative; z-index: 3; background: none; height: 100%;}
         .header__menu .menu {height: 100%;}
            .header__menu li {display: flex; align-items: center; height: 100%; white-space: nowrap;}   
               .header__menu .submenu-panel:before {content: ''; position: absolute; top: 0; width: 200vw; height: 100%; transform: translateX(-50%); background: inherit;} 
               .header__menu .submenu {padding: 40px 0;}   
                  .header__menu .submenu li {height: auto; font-family: var(--font-regular);}
}
@media screen and (min-width: 768px) {
   .header__menu li.parent {position: static;}
      .header__menu .submenu-panel {position: absolute; z-index: 1; top: 100%; left: 0; width: 100%;}
}
@media screen and (min-width: 1200px) and (max-width: 1349px) {
   .header__phone {font-size: 16px;}
   .header__menu li {font-size: 13px;}
   .header__buttons {gap: 0 10px;}
      .header__messenger {gap: 0 10px;}
      .header__callback {padding: 0;}
         .header__callback .btn {padding-left: 10px; padding-right: 10px;}
}
@media screen and (max-width: 1199px) {
   .header-info__text {text-align: left; padding-left: 0; font-size: 13px;}
   .header__logo {width: 80px;}
   .header__menu {position: absolute; z-index: 1; top: 100%; left: 0; width: 100%; padding: 0 var(--p-in); transform: translateY(-100%); visibility: hidden; transition: all var(--easing-slow);}
   .header__menu.is-visible {visibility: visible; transform: translateY(0);}
      .header__menu .menu li.parent {gap: 0 10px;}
         .header__menu .submenu li {font-size: 16px;}
   .header__buttons .svg-icon {width: 22px; height: 22px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .header__menu .menu {padding: 30px 0;}
      .header__menu .submenu-panel {padding: 0 var(--p-in);}
         .header__menu .submenu {padding-bottom: 40px;}
}
@media screen and (max-width: 767px) {
   .header__phone {font-size: 16px;}
   .header__menu .menu {padding-top: 40px; padding-bottom: 40px;}
      .header__menu .menu li {margin-bottom: 20px;}
      .header__menu .menu li:last-child {margin-bottom: 0;}
      .header__menu .menu li.parent {display: block; padding-right: 30px;}
         .header__menu .btn-expand {position: absolute; top: -3px; right: 0;}
         .header__menu .submenu {padding-top: 10px;}
            .header__menu .submenu li {margin-bottom: 10px;}
}
@media screen and (max-width: 480px) {
   .header-info__text {font-size: 12px;}
   .header__logo {width: 60px;}
   .header__buttons {gap: 0 16px;}
      .header__messenger {gap: 0 16px;}
      .header__buttons .svg-icon {width: 18px; height: 18px;}
   .header__hamburger {margin-left: 0;}
      .hamburger {gap: 0 10px;}
         .hamburger__in {width: 16px; height: 12px;}
            .hamburger__lines span:nth-child(2) {top: 5px;}
            .hamburger__lines span:nth-child(3) {top: 10px;}
            .hamburger__cross {width: 18px; height: 18px; top: -3px;}
               .hamburger__cross span:nth-child(1) {left: 8px;}
               .hamburger__cross span:nth-child(2) {top: 8px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .header-info__text {font-size: 12px;}
   .header__logo {width: 60px;}
   .header__buttons {gap: 0 16px;}
      .header__messenger {gap: 0 16px;}
      .header__buttons .svg-icon {width: 18px; height: 18px;}
   .header__hamburger {margin-left: 0;}
      .hamburger {gap: 0 10px;}
         .hamburger__in {width: 16px; height: 12px;}
            .hamburger__lines span:nth-child(2) {top: 5px;}
            .hamburger__lines span:nth-child(3) {top: 10px;}
            .hamburger__cross {width: 18px; height: 18px; top: -3px;}
               .hamburger__cross span:nth-child(1) {left: 8px;}
               .hamburger__cross span:nth-child(2) {top: 8px;}
   .header__menu .menu {display: flex; padding-top: 30px; padding-bottom: 30px;}
      .header__menu .menu > li {margin-bottom: 0;}
      .header__menu .menu li.parent {position: static; display: flex; padding-right: 0;}
         .header__menu .btn-expand {position: relative; top: -3px;}
         .header__menu .submenu-panel {position: absolute; z-index: 1; top: 100%; left: 0; width: 100%; padding: 0 var(--p-in);}
            .header__menu .submenu-panel:before {content: ''; position: absolute; top: 0; width: 200vw; height: 100%; transform: translateX(-50%); background: inherit;}
               .header__menu .submenu {padding: 0 0 40px;}
}


/*====================================================
   .content
====================================================*/
.content {position: relative; padding-top: var(--header-height); min-width: 0;}

/*.breadcrumbs*/
.breadcrumbs {padding-top: 15px; position: relative; z-index: 1;}
   .breadcrumbs li {display: inline; font-size: 13px; line-height: 1.12; text-transform: lowercase;}
      .breadcrumbs li:after {content: '/'; vertical-align: middle; margin: 0 -2px 0 4px; opacity: 0.8;}
      .breadcrumbs li:first-child:after {margin-left: 0;}
      .breadcrumbs li:last-child:after {display: none;}
      .breadcrumbs li a {display: inline-block; vertical-align: middle; text-decoration: none; color: inherit;}
      .breadcrumbs li a:hover {color: var(--blue); text-decoration: underline;}
      .breadcrumbs li svg {vertical-align: middle; margin-top: -4px;}
      .bg-black .breadcrumbs li a:not(:hover) svg {fill: #FFF;}
      .breadcrumbs li a:hover svg {fill: var(--blue);}

/*.pagination*/
.pagination ul li {width: 40px; height: 40px; margin: 0; font-size: 20px; display: flex; align-items: center; justify-content: center;}
.pagination .pagination__arrow, .pagination .pagination__dots {width: auto;}
.pagination .pagination__arrow:first-child {margin-right: 13px;}
.pagination .pagination__arrow:last-child {margin-left: 13px;}
.pagination .pagination__dots {margin: 0 13px;}
   .pagination li a {text-decoration: none; color: inherit;}
   .pagination li a:hover {color: var(--blue-light);}
   .pagination li span {display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: var(--blue-light); border-radius: 100%; font-size: 30px; color: #FFF;}

/*.video*/
.video {position: relative;}
   .video--absolute:before {content: ''; display: block; padding-top: var(--video-ratio);}
   .video video {display: block; position: relative; z-index: 1;}
   .video--absolute video {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
   .video__poster {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; cursor: pointer; transition: all var(--easing);}
   .video.is-playing .video__poster {opacity: 0; visibility: hidden; pointer-events: none;}
      .video__poster img {display: block; position: relative; height: 100%; object-fit: cover; z-index: 0;}

/*.double-block*/
.double-block {gap: clamp(40px,10vw,120px);}

@media all and (min-width: 1200px) {
   .double-block__text {flex: 0 1 55%; max-width: 645px;}
      .double-block.flex-xl h2 {margin-bottom: 0;}
   .double-block__note {flex: 0 1 45%;}
}
@media all and (min-width: 768px) {
   .double-block.flex-md h2 {margin-bottom: 0;}
   .double-block__link {flex: 0 1 45%; text-align: right;}
}
@media screen and (max-width: 1199px) {
   .double-block {gap: 40px; align-items: center;}
      .double-block__title {flex: 0 0 auto;}
}

/*.note*/
.note {position: relative; text-align: left;}
.note.bg-white {padding: 25px;}
.note.note--small {padding: 10px 25px 10px 0; gap: 15px; margin-left: 12px;}
   .note.note--small .svg-icon__image {margin-left: -12px;}
   .note.note--small .svg-icon__text {line-height: 1.3;}
   .note--arrow:before {content: ''; position: absolute;}
   .note--arrow-right:before {right: -13px; top: 50%; margin-top: -10px; border-left: 13px solid; border-top: 10px solid transparent; border-bottom: 10px solid transparent;}
   .note.bg-white.note--arrow-right:before {border-left-color: #FFF;}
   .note.bg-gray-light.note--arrow-right:before {border-left-color: var(--gray-light);}
   .note--arrow-bottom:before {left: 50%; margin-left: -12px; bottom: -13px; border-top: 13px solid; border-left: 10px solid transparent; border-right: 10px solid transparent;}
   .note.bg-white.note--arrow-bottom:before {border-top-color: #FFF;}
   .note.bg-gray-light.note--arrow-bottom:before {border-top-color: var(--gray-light);}

@media screen and (max-width: 1199px) {
   .double-block__note .note .svg-icon__image {width: 25px; height: 25px;}
}
@media screen and (max-width: 480px) {
   .note .svg-icon__image {width: 25px; height: 25px;}
   .note.bg-white:not(.note--small) {padding: 20px;}
   .double-block__note .note {padding-left: 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .note .svg-icon__image {width: 25px; height: 25px;}
   .note.bg-white:not(.note--small) {padding: 20px;}
   .double-block__note .note {padding-left: 20px; max-width: 60vw;}
}

/*.tooltip)*/
.tooltip-parent {position: relative;}
   .tooltip {position: absolute; top: 50%; margin-top: -10px; right: 15px; width: 20px; height: 20px; cursor: pointer; z-index: 3;}
   .tooltip.badge {position: relative; top: auto; right: auto; margin-top: 0; width: auto; height: auto;}
      .tooltip__in {position: absolute; bottom: 100%; margin-bottom: 20px; left: 50%; transform: translate3d(-50%,20px,0); z-index: 10; opacity: 0; visibility: hidden; transition: all var(--easing);}
      .tooltip.is-active .tooltip__in {opacity: 1; visibility: visible; transform: translate3d(-50%,0,0);}
      .tooltip.badge .tooltip__in {left: auto; right: -13px; transform: translate3d(0,20px,0);}
      .tooltip.badge.is-active .tooltip__in {transform: translate3d(0,0,0);}
         .tooltip__in:before,
         .tooltip__in:after {content: ''; position: absolute; left: 50%; top: 100%; margin-top: -1px; transform: translateZ(0);}
         .tooltip__in:before {border-top: 22px solid var(--gray-dark); border-left: 12px solid transparent; border-right: 12px solid transparent; margin-left: -12px;}
         .tooltip__in:after {border-top: 20px solid var(--anthracite); border-left: 10px solid transparent; border-right: 10px solid transparent; margin-left: -10px;}
         .tooltip.badge .tooltip__in:before,
         .tooltip.badge .tooltip__in:after {left: auto;}
         .tooltip.badge .tooltip__in:before {right: 14px;}
         .tooltip.badge .tooltip__in:after {right: 16px;}
         .tooltip__content {width: 300px; max-width: calc(100vw - var(--p-in) * 2); padding: 20px; border-radius: 6px; border: 1px solid var(--gray-dark); font-size: 14px;}
            .tooltip__title {margin-bottom: 10px;}

@media screen and (max-width: 767px) {
   .tooltip__in {left: auto; right: -15px; transform: translate3d(0,20px,0);}
   .tooltip.is-active .tooltip__in {transform: translate3d(0,0,0);}
   .tooltip.badge .tooltip__in {bottom: auto; top: 100%; margin-bottom: 0; margin-top: 20px;}
      .tooltip__in:before,
      .tooltip__in:after {left: auto; margin-left: 0;}
      .tooltip__in:before {right: 13px;}
      .tooltip__in:after {right: 15px;}
      .tooltip.badge .tooltip__in:before,
      .tooltip.badge .tooltip__in:after {top: auto; bottom: 100%; border-top: 0; margin-top: 0; margin-bottom: -1px;}
      .tooltip.badge .tooltip__in:before {border-bottom: 22px solid var(--gray-dark);}
      .tooltip.badge .tooltip__in:after {border-bottom: 20px solid var(--anthracite);}
      .tooltip__content {padding: 15px;}
}
@media screen and (max-width: 480px) {
   .tooltip__content {padding: 15px 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .tooltip__content {padding: 15px 10px;}
}

/*.accordion*/
.accordion__header {position: relative; gap: 20px; cursor: pointer;}
   .accordion__toggle {transition: all var(--easing);}
.accordion__body {height: 0; overflow: hidden; transition: height var(--easing);}
   .accordion__content {padding-bottom: 40px;}

@media screen and (max-width: 1199px) {
   .accordion__content {padding-bottom: 30px;}
}
@media screen and (max-width: 480px) {
   .accordion__content {padding-bottom: 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .accordion__content {padding-bottom: 20px;}
}

/*.anchors*/
.anchors-list {gap: 20px;}

@media screen and (max-width: 767px) {
   .anchors-list {gap: 15px;}
}
@media screen and (max-width: 480px) {
   .anchors-list {gap: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .anchors-list {gap: 10px;}
}

/*filter*/
.filter .tb__cell {vertical-align: top;}
.filter .tb__row:last-child .tb__cell {padding-bottom: 0;}
.filter__list {gap: 15px;}

@media screen and (min-width: 481px) {
   .filter .tb__cell:first-child {width: 0; min-width: fit-content;}
}
@media screen and (min-width: 992px) {
   .filter__in {height: auto !important;}
}
@media screen and (min-width: 1200px) {
   .filter .tb__cell {padding-bottom: 20px;}
   .filter .tb__cell:first-child {padding-right: 20px;}
}
@media screen and (min-width: 481px) and (max-width: 1199px) {
   .filter .tb__cell {padding-bottom: 15px;}
   .filter .tb__cell:first-child {padding-right: 15px;}
}
@media all and (max-width: 767px) {
   .filter__in {height: 0; overflow: hidden; transition: height var(--easing);}
}
@media all and (max-width: 480px) {
   .filter .tb,
   .filter .tb__row,
   .filter .tb__cell {display: block;}
   .filter .tb__row {margin-bottom: 15px;}
   .filter .tb__row:last-child {margin-bottom: 0;}
      .filter__legend {margin-bottom: 5px;}
      .filter__list {gap: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .filter__in {height: 0; overflow: hidden; transition: height var(--easing);}
}

/*.flipper*/
.flipper {perspective: 1500px;}
   .flipper__panel {position: relative; height: 100%; transition: 0.5s ease-in-out; transform-style: preserve-3d; backface-visibility: hidden;}
   .no-touchevents .flipper:hover .flipper__panel {transform: rotateY(0.5turn);}
      .flipper__panel > div  {backface-visibility: hidden;}
      .flipper__back {transform: rotateY(0.5turn); opacity: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
      .touchevents .flipper .flipper__back {display: none;}

/*.tilt*/
.no-touchevents .tilt {transform-style: preserve-3d;}
   .no-touchevents .tilt:hover {box-shadow: 0 0 40px rgba(0, 0, 0, 0.2);}
   .no-touchevents .tilt__el {transition: all 0.3s ease;}
   .no-touchevents .tilt:hover .tilt__el {transform: translateZ(30px);}
   .no-touchevents .tilt:hover .tilt__el-2 {transform: translateZ(50px);}

/*.border-gradient*/
.border-gradient {position: relative; height: 100%; padding: 2px;}
   .border-gradient:before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: inherit; background: linear-gradient(-140deg, #ED1C24 0%, #7BAFDE 100%); opacity: 0; background-position: 0 0; z-index: 0; transition: opacity var(--easing);}
   .border-gradient--animated:before {top: -50%; left: -50%; width: 200%; height: 200%; background: conic-gradient(#ED1C24, #7BAFDE, #ED1C24);}
   .no-touchevents .border-gradient:hover:before {opacity: 1;}
   .border-gradient--animated:before {animation: moveGradient 2s linear infinite;}
   .border-gradient__in {position: relative; /*z-index: 1;*/ border-radius: inherit; background: inherit;}

@keyframes moveGradient {
   0% {
      transform: rotate(0);
   }
   100% {
      transform: rotate(360deg);
   }
}

/*.simple-gallery*/
.simple-gallery {grid-template-columns: 1.13945fr 1fr; grid-template-rows: auto auto; gap: 20px;
   grid-template-areas: 
      "a c"
      "b c";}
   .simple-gallery__item:nth-child(1) {grid-area: a;}
   .simple-gallery__item:nth-child(2) {grid-area: b;}
   .simple-gallery__item:nth-child(3) {grid-area: c; grid-row: span 2;}
      .simple-gallery__item img {display: block; height: 100%; object-fit: cover;}

@media screen and (max-width: 767px) {
   .simple-gallery {gap: 10px;}
}
@media screen and (max-width: 480px) {
   .simple-gallery__item:not(:last-child) {margin-bottom: 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .simple-gallery {display: grid; gap: 20px;}
}

/*.content-scroll*/
.content-scroll--hor {max-width: 100%; overflow-x: auto;}
.content-scroll--hor::-webkit-scrollbar {height: 7px;}
.content-scroll--vert {max-height: 100%; overflow-y: auto;}
.content-scroll--vert::-webkit-scrollbar {width: 7px;}
.content-scroll::-webkit-scrollbar-track {background: var(--gray); border-radius: 14px;}
.content-scroll::-webkit-scrollbar-thumb {background: var(--blue-light); border-radius: 14px;}


/*====================================================
   .heading
====================================================*/
.heading {position: relative;}
   .heading__title:only-child {margin-bottom: 0;}
   .heading__subtitle:not(:last-child) {margin-bottom: 0.75em;}
   .heading__text {max-width: 980px;}
   .heading__text:not(.font-medium) {font-family: var(--font-light);}

/*showcase*/
.heading__image {position: relative; width: 1920px; max-width: 100%; margin: 0 auto;}
.heading__image img {display: block; width: 100%; height: 100%; object-fit: cover; position: relative; z-index: 0;}
.heading--showcase .heading__in {position: absolute; top: 24%; left: 0; width: 100%; z-index: 2;}
   .heading--showcase h1 {margin-bottom: 0.35em;}
      
/*showcase catalog*/
.heading--catalog.heading--showcase {margin-bottom: 0;}
   .heading--catalog.heading--showcase .heading__in {top: auto; bottom: 0; z-index: auto;}
      .heading-slider {height: 100%;}
         .heading-slider-arrows {position: absolute; bottom: var(--p-in); right: var(--p-in); z-index: 3;}
         .heading--catalog .heading__image img {filter: brightness(0.75);}

@media all and (min-width: 481px) {
   .heading--showcase:not(.heading--main) {margin-bottom: 0;}
}
@media all and (min-width: 1200px) {
   .heading__title:has(div) {display: flex; justify-content: space-between; align-items: end; gap: 0 40px;}
      .heading__title h1 + div {padding-bottom: 0.25em; flex: 0 0 auto;}
   /*showcase*/
   .heading--showcase .heading__subtitle {font-family: var(--font-light);}
}
@media all and (max-width: 1199px) {
   .heading__title h1 + div {display: block; padding: 0.45em 0 0.5em;}
   .heading__title div.animate--from-right-25 {transform: translate3d(0, 25%, 0); transform-origin: bottom; transition-delay: 0.3s;}
   .heading__title div.animate--from-right-25.is-inview {transform: translate3d(0, 0, 0);}
   .heading__text.animate--delay-03 {transition-delay: 0.4s;}
   /*showcase*/
   .heading__image {height: 44.792vw;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   /*showcase about*/
   .heading--about .heading__image {height: 500px;}
}
@media all and (max-width: 767px) {
   .heading__subtitle br {display: none;}
   /*showcase*/
   .heading__image {height: 66.29vw;}
}
@media all and (max-width: 480px) {
   .heading__subtitle:not(:last-child) {margin-bottom: 1em;}
   /*showcase*/
   .heading__image {height: 113.59vw;}
   .heading--showcase .heading__in {top: 50px;} 
      .heading--showcase h1 {margin-bottom: 0.65em}
      .heading--showcase .heading__subtitle {font-family: var(--font-bold);}
      .heading--showcase.heading--main .heading__subtitle {font-family: var(--font-regular);}
   /*showcase catalog*/
   .heading--catalog .heading__image {height: 90vw;}
   .heading--catalog .inner {padding: 0;}
   .heading-slider-arrows {bottom: auto; top: 20px;}
   /*showcase about*/
   .heading--about .heading__image {height: 70vw;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   /*showcase*/
   .heading--showcase:not(.heading--catalog) {margin-bottom: var(--m-6);}
      .heading__image {height: calc(100vh - var(--header-height));}
      .heading--showcase .heading__subtitle {font-family: var(--font-bold);}
      .heading--showcase.heading--main .heading__subtitle {font-family: var(--font-regular);}
         .heading--showcase:not(.heading--catalog) .heading__in {top: 0; height: 100%; display: flex; align-items: center;}
   /*showcase about*/
   .heading--about .heading__image {height: calc(100vh - var(--header-height));}
}


/*====================================================
   .cards
====================================================*/
.card {width: clamp(298px,20vw,384px); margin-right: 25px; position: relative; flex: 0 0 auto;}
   .card__hover {position: relative; height: 100%; cursor: pointer; transition: box-shadow .3s cubic-bezier(0,0,0.5,1);}
   a.card__hover {display: block; color: inherit; text-decoration: none;}
   .no-touchevents .card__hover.is-hover,
   .no-touchevents .card__hover.is-hover:hover {box-shadow: none;}
      /*card__front*/
      .card__front {position: relative; height: 100%; transition: all .3s cubic-bezier(0,0,0.5,1);}
      .no-touchevents .cards.intro .card__hover:hover .card__front,
      .no-touchevents .cards.intro .card__hover:hover .card__video {transform: scale(1.0161290323);}
      .card__hover.is-playing .card__front,
      .card__hover.is-hover .card__front {opacity: 0; visibility: hidden;}
      .touchevents .swiper-slide-video--video-stop .card__hover.is-playing .card__front {opacity: 1; visibility: visible;}
         .card__image img {display: block;}
         .card__content {position: relative; height: 100%; padding: 40px 30px;}
         .card__content--above {position: absolute; top: 0; left: 0; width: 100%; height: auto;}
         .card__title,
         .card__text {transition: all 0.5s cubic-bezier(0,0,0.5,1); will-change: transform;}
         .card__title {transition-delay: 0.3s;}
         .card__text {transition-delay: 0.15s;}
            .card__hover.is-playing .card__title,
            .card__hover.is-hover .card__title {opacity: 0; transform: translateY(-1em);/* transition-delay: 0.3s;*/}
            .card__hover.is-playing .card__text,
            .card__hover.is-hover .card__text {opacity: 0; transform: translateY(-20%); /*transition-delay: 0.15s;*/}
         .card__front .btn-video {top: auto; bottom: 20px; left: 20px; margin: 0;}
      /*card__back*/
      .card__back {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
         .card__video {position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; visibility: hidden; transition: all .3s cubic-bezier(0,0,0.5,1);}
         .card__hover.is-playing .card__video {opacity: 1; visibility: visible;}
         .card__article.is-visible + .card__video {opacity: 0; visibility: hidden;}
         .card__article {position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid var(--anthracite); background: #FFF; overflow: hidden; opacity: 0; visibility: hidden; transition: all .5s cubic-bezier(0,0,0.5,1);}
         .card__article.is-visible {opacity: 1; visibility: visible; z-index: 3;}
            .card-article__text.swiper {padding: 70px 20px 40px; height: 100%; opacity: 0; transform: translateY(100%); transition: all .3s cubic-bezier(0,0,0.5,1);}
            .card__article.is-visible .card-article__text.swiper {opacity: 1; transform: translateY(0);}
               .card-article__text h4 {font-size: 24px; line-height: 1.1; padding-top: 0;}
                  .card-article__image {margin: 20px -20px;}
                  .card-article__subtitle {margin-bottom: 0.5em;}
   .card__button {position: absolute; right: 20px; bottom: 20px; z-index: 2; transition: all .3s ease;}
   .card__button.is-hidden {opacity: 0; visibility: hidden;}
   .touchevents .swiper-slide-video .card__button--article-open {right: auto; left: 20px;}
   .card__hover.is-hover .card__button--article-open {opacity: 0; visibility: hidden;}
   .card__button--article-close {top: 20px; bottom: auto; width: 44px; height: 44px; opacity: 0; visibility: hidden; z-index: 3;}
   .card__button--article-close.is-visible {opacity: 1; visibility: visible;}
   .no-touchevents .card__button--video {display: none;}
   .card__button--article-close.is-visible + .card__button--video {opacity: 0;}
      .card__button--article-close .btn-close {position: relative; top: auto; right: auto;}
      .card__button--video .btn-video {position: relative; top: auto; left: auto; margin: 0;}
         .card__button--video .btn-video:before {opacity: 1;}
         .card__button--video.is-active .btn-video:before {opacity: 0;}
         .card__button--video .btn-video:after {content: ''; position: absolute; top: 50%; left: 50%; background: var(blue-light); width: 8px; height: 8px; background: var(--blue-light); transform: translate3D(-50%,-50%,0); opacity: 0;}
         .card__button--video.is-active .btn-video:after {opacity: 1;}
            .card__button--video svg {width: 50px; height: 50px; max-width: none; position: absolute; top: -10px; left: -10px;}
               .card__button--video .btn-video__progress-bar {stroke-dasharray: 0,251.2; stroke-dashoffset: 0; opacity: 0; /*animation-name: dash;*/ animation-fill-mode: forwards; animation-timing-function: linear; animation-play-state: paused;}
               .card__button--video:not(.is-active) svg {opacity: 0;}

   @keyframes dash {
      from {
         stroke-dasharray: 0,251.2
      }
      to {
         stroke-dasharray: 251.2,0
     }
   }

@media screen and (min-width: 1200px) {
   /*video-xl*/
   .card--video-xl {width: clamp(925px,62.292vw,1196px);}
      .card--video-xl .card__hover {display: none; pointer-events: none;}
      .card--video-xl .card__video {position: absolute; top: 0; left: 0; opacity: 1; visibility: visible;}
         .card--video-xl .card__video video {height: 100%; object-fit: cover;}
}
@media all and (max-width: 1199px) {
   .card {width: 300px; margin-right: 20px;}
      .card__content {padding: 30px 20px;}
   /*video-xl*/
   .card__video--xl {display: none; pointer-events: none;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) and (orientation: portrait) {
   .card__front .btn-video.btn-video--small {width: 36px; height: 36px;}
      .card__front .btn-video.btn-video--small:before {margin-left: 5px; border-left-width: 12px; border-top-width: 7px; border-bottom-width: 7px;}
}
@media all and (max-width: 767px) {
   .card {margin-right: 15px;}
}
@media all and (max-width: 480px) {
   .card {width: 280px; margin-right: 10px;}
      .card__content {padding: 25px 20px;}
      /*.card__content--above {opacity: 0; transform: translateX(25%); will-change: transform; transition: opacity 0.5s cubic-bezier(0,0,0.5,1) 0s, transform 0.5s cubic-bezier(0,0,0.5,1) 0s;}*/
      .card.swiper-slide-active .card__content--above {opacity: 1; transform: translateX(0);}
      .card__button--article-close {top: 10px; right: 10px;}
      .card-article__text.swiper {padding-top: 50px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .card {width: 280px; margin-right: 10px;}
      .card__content {padding: 25px 20px;}
      .card__button--article-close {top: 10px; right: 10px;}
      .card-article__text.swiper {padding-top: 50px;}
}

/*.cards--simple*/
.cards--simple .card__hover:before {content: ''; display: block; padding-top: 100%;}
   .cards--simple .card__content {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
      .cards--simple .card__icon {height: 50px; margin-bottom: 20px;}
      .cards--simple .card__title h3, 
      .cards--simple .card__title .h3 {line-height: 1;}

@media screen and (min-width: 1200px) {
   .cards--simple .card__title h3, 
   .cards--simple .card__title .h3 {font-size: clamp(26px,1.78vw,34px);}
}
@media all and (max-width: 480px) {
   .cards--simple .card {width: 210px;}
      .cards--simple .card__icon {height: 30px; margin-bottom: 10px;}
         .cards--simple .card__icon img {max-height: 30px; width: auto;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .cards--simple .card {width: 200px;}
}

/*touchevents scroll slider*/
.touchevents .scroll-snap {scroll-snap-type: x mandatory; overflow-x: scroll; overflow-y: hidden; padding: 15px 15px 50px 15px; margin: -15px 0 -50px; scroll-padding-left: 0; /*scroll-padding-right: 25px;*/ scrollbar-width: none; scroll-behavior: smooth;}
   .touchevents .scroll-snap::-webkit-scrollbar {display: none; height: 0; width: 0; background-color: transparent;}
   .touchevents .scroll-snap .card {scroll-snap-align: start;}
   .touchevents .scroll-snap .card.swiper-slide-animate .card__content--above {opacity: 1; transform: translateX(0);}

@media screen and (max-width: 1199px) {
   .touchevents .scroll-snap {scroll-padding-left: 40px; padding: 15px 40px 50px; margin: -15px -40px -50px;}
}
@media screen and (max-width: 767px) {
   .touchevents .scroll-snap {scroll-padding-left: 20px; padding: 15px 20px 50px; margin: -15px -20px -50px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .touchevents .scroll-snap {scroll-padding-left: 20px; padding: 15px 20px 50px; margin: -15px -20px-50px;}
}


/*====================================================
   .selfcost
====================================================*/
.selfcost__in {position: relative; background: linear-gradient(0deg, #FFF 0%, #8985AB 55%, #231C62 100%);}
   .selfcost__image {width: 100%;}
      .selfcost__image img {display: block;}
   .selfcost__title {gap: 0 10px;}
      .selfcost__title h3, .selfcost__title .h3 {line-height: 1;}
      .selfcost__title .btn-open-animate {flex: 0 0 auto;}
         .selfcost__title .btn-open {background: var(--blue-light); transition: transform .3s cubic-bezier(0,0,0.5,1);}
         .selfcost__title .btn-open:hover {transform: scale(1.2);}

@media all and (min-width: 481px) {
   .selfcost__content {position: absolute; top: 0; left: 0; width: 100%;}
}
@media all and (min-width: 1200px)  {
   .selfcost__image img {max-width: 45.7292vw;}
   .selfcost__content {padding-top: clamp(60px,7vw,120px);}
      .selfcost__content .inner {max-width: 1460px; padding: 0 80px;}
         .selfcost__title h3, .selfcost__title .h3 {font-size: clamp(55px,4.17vw,80px);}
         .selfcost__title .btn-open {width: 50px; height: 50px;}
            .selfcost__title .btn-open:before,
            .selfcost__title .btn-open:after {top: 0; left: 0;}
            .selfcost__title .btn-open:before {width: 27px; height: 3px; top: 25px; left: 12px; margin-left: 0;}
            .selfcost__title .btn-open:after {height: 27px; width: 3px; top: 12px; left: 24px; margin-top: 0;}
}
@media all and (max-width: 1199px) {
   .selfcost__content {padding-top: 60px;}
      .selfcost__title h3, .selfcost__title .h3 {font-size: 55px;}
}
@media all and (max-width: 767px) {
   .selfcost__content {padding-top: 40px;}
      .selfcost__title h3, .selfcost__title .h3 {font-size: 40px;}
      .selfcost__text {font-size: 22px;}
}
@media all and (max-width: 480px) {
   .selfcost__image {margin-left: -40px; width: auto;}
   .selfcost__content {padding-top: 10px; color: #000;}
      .selfcost__title h3, .selfcost__title .h3 {font-size: 30px;}
      .selfcost__text {font-size: 18px;}
}
@media all and (max-width: 374px) {
   .selfcost__title h3, .selfcost__title .h3 {font-size: 26px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .selfcost__image img {max-width: 45.7292vw;}
   .selfcost__content {padding-top: 40px;}
      .selfcost__title h3, .selfcost__title .h3 {font-size: 30px;}
      .selfcost__text {font-size: 18px;}
}


/*====================================================
   .account
====================================================*/
.account__panel {padding: 80px 60px; gap: 60px; grid-template-columns: auto 66.845%;
      grid-template-areas: 
         "a b"
         "c b";}
   .account__text {grid-area: a;}
      .account__accordion .accordion {border-top: 1px solid var(--gray);}
      .account__accordion .accordion:first-child {border-top: 0;}
         .account__accordion .accordion__header {height: 100px;}
         .account__accordion .accordion__header.is-active .accordion__toggle {transform: rotateX(180deg);}
   .account__images {grid-area: b;}
   .account__link {grid-area: c; align-self: end;}
      .account-link__text {position: relative; margin-bottom: 15px;}
      .account-link__button {position: relative;}
         .account-link__button .btn {width: 124px;}
         .account-link__arrow {position: absolute; left: 100%; top: -25px; width: 169px; margin-left: 20px;}

@media all and (min-width: 1200px) {
   .account__link {padding-bottom: calc(var(--m-4) + 32px);}
      .account-link__text br {display: none;}
}
@media all and (max-width: 1199px) {
   .account__panel {padding: 40px 30px; gap: 40px; grid-template-columns: 1fr 1fr;}
      .account__accordion .accordion:first-child {margin-top: -30px;}
         .account__accordion .accordion__header {height: 75px;}
      .account-link__arrow {width: 68px;}
}
@media screen and (max-width: 767px) {
   .account__images {margin-bottom: 40px;}
}
@media screen and (max-width: 480px) {
   .account__panel {padding: 30px 20px;}
      .account__accordion .accordion__header {height: 60px;}
      .account__images {margin-bottom: 20px;}
      .account__link {text-align: center;}
         .account-link__text {margin-bottom: 10px;}
         .account-link__button .btn {width: 134px;}
         .account-link__arrow {width: 26px; top: -18px; margin-left: 25px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .account__panel {padding: 30px 20px;}
      .account__accordion .accordion__header {height: 60px;}
      .account__images {margin-bottom: 20px;}
      .account-link__text {margin-bottom: 10px;}
      .account-link__button .btn {width: 154px;}
      .account-link__arrow {width: 26px; top: -18px; margin-left: 25px;}
}


/*====================================================
   .feedback
====================================================*/
.feedback__list {gap: 15px;}
   .feedback-list__item:nth-child(1) {grid-area: a1;}
   .feedback-list__item:nth-child(2) {grid-area: a2;}
   .feedback-list__item:nth-child(3) {grid-area: a3;}
   .feedback-list__item:nth-child(4) {grid-area: a4;}
   .feedback-list__item:nth-child(5) {grid-area: a5;}
   .feedback-list__item:nth-child(6) {grid-area: a6;}
   .feedback-list__item:nth-child(7) {grid-area: a7;}
   .feedback-list__item:nth-child(8) {grid-area: a8;}
   .feedback-list__item:nth-child(9) {grid-area: a9;}
   .feedback-list__item:nth-child(10) {grid-area: a10;}
   .feedback-list__item:nth-child(11) {grid-area: a11;}
   .feedback-list__item:nth-child(12) {grid-area: a12;}
   .feedback-list__item:nth-child(13) {grid-area: a13;}
   .feedback-list__item:nth-child(14) {grid-area: a14;}
   .feedback-list__item:nth-child(15) {grid-area: a15;}
   .feedback-list__item:nth-child(16) {grid-area: a16;}
   .feedback-list__item:nth-child(17) {grid-area: a17;}
   .feedback-list__item:nth-child(18) {grid-area: a18;}
   .feedback-list__item:nth-child(19) {grid-area: a19;}
   .feedback-list__item:nth-child(20) {grid-area: a20;}
      .feedback-list-item__in {transition: all var(--cubic);}
   .feedback-list__item--video {position: relative;}
      .feedback-list__item--video:before {content: ''; display: block; padding-top: 100%;}
         .feedback-list__item--video .feedback-list-item__in {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
         .no-touchevents .feedback-list__item--video .feedback-list-item__in:hover {transform: scale(1.03);}
            .feedback-list__item img {display: block;}
            .feedback-list__item--text {padding: 30px 15px 30px 30px; font-size: clamp(20px,1.35vw,26px);}
      .feedback-list__item .btn-video {top: auto; left: auto; left: 15px; bottom: 15px; margin: 0;}

@media all and (min-width: 768px) {
   .feedback__list.animate {opacity: 1;}
      .feedback-list__item.animate {transform: scale(0.5); transition: all .25s cubic-bezier(0,0,0.5,1);}
      .feedback__list.animate.is-inview .feedback-list__item {opacity: 1; transform: scale(1);}
      .feedback-list__item:nth-child(4) {transition-delay: 0s;}
      .feedback-list__item:nth-child(9) {transition-delay: 0.1s;}
      .feedback-list__item:nth-child(1) {transition-delay: 0.2s;}
      .feedback-list__item:nth-child(16) {transition-delay: 0.3s;}
      .feedback-list__item:nth-child(12) {transition-delay: 0.4s;}
      .feedback-list__item:nth-child(2) {transition-delay: 0.5s;}
      .feedback-list__item:nth-child(20) {transition-delay: 0.6s;}
      .feedback-list__item:nth-child(8) {transition-delay: 0.7s;}
      .feedback-list__item:nth-child(14) {transition-delay: 0.8s;}
      .feedback-list__item:nth-child(3) {transition-delay: 0.9s;}
      .feedback-list__item:nth-child(17) {transition-delay: 1s;}
      .feedback-list__item:nth-child(6) {transition-delay: 1.1s;}
      .feedback-list__item:nth-child(10) {transition-delay: 1.2s;}
      .feedback-list__item:nth-child(13) {transition-delay: 1.3s;}
      .feedback-list__item:nth-child(19) {transition-delay: 1.4s;}
      .feedback-list__item:nth-child(5) {transition-delay: 1.5s;}
      .feedback-list__item:nth-child(15) {transition-delay: 1.6s;}
      .feedback-list__item:nth-child(11) {transition-delay: 1.7s;}
      .feedback-list__item:nth-child(7) {transition-delay: 1.8s;}
      .feedback-list__item:nth-child(18) {transition-delay: 1.9s;}
}
@media all and (min-width: 1200px) {
   .feedback__list {grid-template-columns: repeat(6,1fr); grid-template-rows: repeat(4,1fr);
      grid-template-areas: 
         "a1 a2 a3 a4 a4 a5"
         "a6 a7 a9 a10 a8 a8"
         "a11 a12 a13 a14 a15 a16"
         "a17 a17 a17 a18 a19 a20";
   }
}
@media all and (max-width: 1199px) {
   .feedback__list {gap: 10px; grid-template-columns: repeat(4,1fr); grid-template-rows: repeat(6,1fr);
      grid-template-areas: 
         "a1 a2 a3 a5"
         "a6 a4 a4 a7"
         "a8 a8 a9 a10"
         "a11 a12 a13 a14"
         "a15 a17 a17 a17"
         "a16 a18 a19 a20";
   }
      .feedback-list__item--text {padding: 20px 15px 20px 20px; font-size: clamp(20px,2.6vw,26px);}
}
@media all and (max-width: 767px) {
   .feedback__list {grid-template-columns: repeat(3,1fr); grid-template-rows: repeat(8,1fr);
      grid-template-areas: 
         "a1 a2 a3"
         "a4 a4 a4"
         "a5 a6 a7"
         "a8 a8 a9"
         "a10 a11 a12"
         "a13 a14 a15"
         "a16 a17 a17"
         "a18 a19 a20";
   }
      .feedback-list__item.animate {transform: scale(0.8); transition: all .35s cubic-bezier(0,0,0.5,1);}
      .feedback-list__item.animate.is-inview {opacity: 1; transform: scale(1);}
         .feedback-list__item--text {font-size: clamp(20px,4.15vw,26px);}
}
@media all and (max-width: 480px) {
   .feedback-list__item--text {padding: 15px 10px 10px 15px; font-size: clamp(14px,4.35vw,20px);}
   .feedback-list__item .btn-video {left: 10px; bottom: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
  .feedback__list {gap: 10px; grid-template-columns: repeat(4,1fr); grid-template-rows: repeat(6,1fr);
      grid-template-areas: 
         "a1 a2 a3 a5"
         "a6 a4 a4 a7"
         "a8 a8 a9 a10"
         "a11 a12 a13 a14"
         "a15 a17 a17 a17"
         "a16 a18 a19 a20";
   }
      .feedback-list__item--text {padding: 15px 10px 10px 15px; padding: clamp(15px,4vw,20px); font-size: clamp(14px,2.45vw,20px);}
      .feedback-list__item .btn-video {left: 10px; bottom: 10px;}
}


/*====================================================
   .quote
====================================================*/
.quote {margin-top: var(--m-8); margin-bottom: var(--m-8);}
   .quote__in {padding: 30px 0 30px 30px; position: relative; /*white-space: nowrap; display: flex; overflow: hidden;*/}
      .quote__in:before {content: ''; position: absolute; top: 0; left: 0; width: 2px; height: 100%; background: linear-gradient(0deg, #ED1C24 0%, #7BAFDE 100%);}
      .quote__in.animate:before {height: 0; transition: height .5s cubic-bezier(0,0,0.5,1); transition-delay: calc(var(--line-total) * 0.2s);}
      .quote__in.animate.is-inview:before {height: 100%;}

@media all and (max-width: 1199px) {
   .quote__in {width: 600px; padding: 20px 0 20px 20px;}
}
@media all and (max-width: 480px) {
   .quote__in {padding: 15px 0 15px 15px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .quote__in {width: 80vw; padding: 15px 0 15px 15px;}
}


/*====================================================
   .about
====================================================*/
@media all and (min-width: 1200px) {
   .about__in {gap: 60px;}
      .about__text {margin-bottom: 0;}
      .about__video {width: 50vw; flex: 0 0 auto;}
}


/*====================================================
   .statistic
====================================================*/
.statistic__list {gap: clamp(70px,16.7vw,320px);}
   .statistic-item__title {font-size: clamp(100px,6.25vw,120px); line-height: 0.75; margin-bottom: 15px;}
   .statistic-item__subtitle {font-size: 40px; margin-bottom: 15px;}
   .statistic-item__text {font-size: 22px;}

@media all and (max-width: 1199px) {
   .statistic__list {gap: 0 60px;}
      .statistic-item__title {font-size: 100px;}
      .statistic-item__subtitle {font-size: 34px;}
      .statistic-item__text {font-size: 18px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .statistic__list {justify-content: space-between;}
}
@media all and (max-width: 767px) {
   .statistic__list {gap: var(--m-6) 0; flex-direction: column;}
      .statistic-item__title {font-size: 84px; margin-bottom: 10px;}
      .statistic-item__subtitle {margin-bottom: 10px;}
}
@media all and (max-width: 480px) {
   .statistic-item__title {font-size: 64px; margin-bottom: 5px;}
   .statistic-item__subtitle {font-size: 32px; margin-bottom: 5px;}
   .statistic-item__text {font-size: 18px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .statistic__list {flex-direction: row; gap: 0 60px;}
      .statistic-item__title {font-size: 64px; margin-bottom: 5px;}
      .statistic-item__subtitle {font-size: 32px; margin-bottom: 5px;}
      .statistic-item__text {font-size: 18px;}
}
@media screen and (max-width: 767px) and (orientation: landscape) {
   .statistic__list {justify-content: space-between;}
}


/*====================================================
   .factory
====================================================*/
.factory__in {grid-template-columns: clamp(320px,29.167vw,560px) auto; gap: 0 90px; grid-template-areas: 
      "b a"
      ". c";}
   .factory__title {grid-area: a;}
   .factory__video {grid-area: b; grid-row: span 3;}
   .factory__list {grid-area: c; gap: 60px 40px; grid-template-columns: 1fr 1fr}
      .factory-list__item {max-width: 400px;}
         .factory-list-item__icon {width: 86px; height: 86px; padding: 10px; border: 1px solid var(--anthracite); margin-bottom: 10px;}
         .factory-list-item__title {margin-bottom: 20px;}

@media screen and (min-width: 1200px) {
   .factory__video {margin-bottom: 0;}
}
@media all and (max-width: 1199px) {
   .factory__list {gap: 40px 20px;}
      .factory-list-item__icon {width: 60px; height: 60px; padding: 8px;}
      .factory-list-item__title {margin-bottom: 15px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .factory__video .video {display: inline-flex; height: calc(100vh - var(--header-height));}
      .factory__video video {max-height: calc(100vh - var(--header-height));}
}
@media all and (max-width: 480px) {
   .factory-list__item {margin-bottom: 30px;}
   .factory-list__item:last-child {margin-bottom: 0;}
      .factory-list-item__icon {width: 46px; height: 46px; padding: 6px;}
      .factory-list-item__title {margin-bottom: 10px; font-family: var(--font-semibold);}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .factory-list-item__icon {width: 46px; height: 46px; padding: 6px;}
   .factory-list-item__title {margin-bottom: 10px; font-family: var(--font-semibold);}
   .factory__video .video {width: auto; height: auto; display: inline-flex;}
      .factory__video video {width: auto; height: auto;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) and (orientation: landscape) {
   .factory__video .video {width: calc(50vw - 40px);}
      .factory__video video {width: calc(50vw - 40px);}
}


/*====================================================
   .info
====================================================*/
.info {background: linear-gradient(180deg, #F3F3F3 0%, #FFF 100%);}
   .info__title {text-align: center;}
   .info-item__num {transform: translate3d(-0.4em,-0.2em,0); font-size: clamp(350px,23.84vw,456px); line-height: 0.75; color: #E3E0E0;}
   .info-item__content {grid-area: a;}
      .info-item__title {margin-bottom: 15px; position: relative; z-index: 1;}
      .info-item__text {position: relative; z-index: 1;}
   .info-item__image {grid-area: b; position: relative; z-index: 1;}
      .info-item__image img {display: block;}
   .info-item__details {grid-area: c; font-size: 56px; line-height: 1; position: relative; z-index: 1;}

@media screen and (min-width: 768px) {
   .info-item__text {line-height: 1.3;}
}
@media all and (min-width: 1200px) {
   .info__title h2, .info__title .h2 {font-size: clamp(55px,6.25vw,120px);}
   .info__item {width: 995px; max-width: 100%; position: relative; gap: 0 80px; grid-template-columns: 1.5fr 1fr; grid-template-rows: auto auto; grid-template-areas: 
      "b b"
      "a c";}
      .info-item__num {position: absolute; top: 0; left: 0;}
      .info-item__content {padding-left: clamp(40px,5.2vw,100px);}
      .info-item__image {margin-bottom: 40px;}
      .info-item__details {text-align: right; margin-top: -0.25em; white-space: nowrap;}
}
@media screen and (max-width: 1199px) {
   .info__item {grid-template-rows: auto auto auto; grid-template-columns: 200px 1fr; grid-template-areas: 
      "d a"
      "d c"
      "b b";}
      .info-item__num {grid-area: d; margin-bottom: 40px; font-size: 350px; transform: translate3d(60px,0,0);}
      .info-item__content {margin-bottom: 15px; position: relative;}
         .info-item__title {margin-bottom: 10px;}
      .info-item__details {font-size: 48px;}
         .info-item__details br {display: none;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .info__title h2, .info__title .h2 {font-size: 55px;}  
   .info-item__details {align-self: end; margin-bottom: 40px;}
   .info-item__image {grid-column: span 2;}
}
@media screen and (max-width: 767px) {
   .info__item {grid-template-columns: 60px 1fr; grid-template-areas: 
      "d a"
      "b b"
      "c c";}
      .info-item__num {margin-bottom: 15px; font-size: 150px; text-align: center; transform: translate3d(0,-15px,0);}
      .info-item__content {margin-bottom: 15px;}
         .info-item__title {font-size: 18px; margin-bottom: 5px;}
      .info-item__image {margin-bottom: 15px;}
      .info-item__details {font-size: 32px; text-align: center;}
         .info-item__details br {display: none;}
}
@media screen and (max-width: 480px) {
   .info-item__num {margin-bottom: 10px;}
   .info-item__image {margin-bottom: 10px;}
   .info-item__details {font-size: 26px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .info__item {grid-template-columns: 60px 1fr; grid-template-areas: 
      "d a"
      "b b"
      "c c";}
      .info-item__num {margin-bottom: 10px; font-size: 150px; text-align: center; transform: translate3d(0,-15px,0);}
      .info-item__content {margin-bottom: 10px;}
         .info-item__title {font-size: 18px; margin-bottom: 5px;}
      .info-item__image {margin-bottom: 10px;}
      .info-item__details {font-size: 32px; text-align: center; margin-bottom: 0;}
         .info-item__details br {display: none;}
}


/*====================================================
   .faq
====================================================*/
.faq__item {gap: 0 50px; grid-template-columns: clamp(480px,32.813vw,630px) auto; grid-template-rows: auto auto auto; grid-template-areas: 
      "b a"
      "b c"
      "b .";}
   .faq-item__title {grid-area: a;}
   .faq-item__image {grid-area: b;}
   .faq-item__content {grid-area: c;}
      .faq__item .accordion__header {margin-bottom: 30px;}
         .faq__item .accordion__title h3, 
         .faq__item .accordion__title .h3 {font-size: 26px;}
      .faq__item .accordion__content {line-height: 1.5;}

@media screen and (min-width: 1200px) {
   .faq-item__image {margin-bottom: 0;}
}
@media screen and (max-width: 1199px) {
   .faq-item__image {height: 57.3vw;}
      .faq-item__image img {height: 100%; object-fit: cover;}
   .faq__item .accordion__header {margin-bottom: 25px;}
}
@media screen and (max-width: 767px) {
   .faq__item .accordion__title h3, 
   .faq__item .accordion__title .h3 {font-size: 18px;}
}
@media screen and (max-width: 480px) {
   .faq__item .accordion__header {margin-bottom: 20px;}
      .faq__item .accordion__title h3, 
      .faq__item .accordion__title .h3 {font-size: 16px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .faq__item .accordion__header {margin-bottom: 20px;}
      .faq__item .accordion__title h3, 
      .faq__item .accordion__title .h3 {font-size: 16px;}
}


/*====================================================
   .gallery
====================================================*/
.gallery__section {gap: 20px; grid-template-columns: repeat(3, 1fr); grid-template-areas: 
      "g1 g2 g3"
      "g4 g5 g6"
      "g4 g7 g8"
      "g9 g11 g11"
      "g10 g11 g11";}
.gallery__section + .gallery__section {margin-top: 20px;}
   .gallery__item:nth-child(1) {grid-area: g1;}
   .gallery__item:nth-child(2) {grid-area: g2;}
   .gallery__item:nth-child(3) {grid-area: g3;}
   .gallery__item:nth-child(4) {grid-area: g4;}
   .gallery__item:nth-child(5) {grid-area: g5;}
   .gallery__item:nth-child(6) {grid-area: g6;}
   .gallery__item:nth-child(7) {grid-area: g7;}
   .gallery__item:nth-child(8) {grid-area: g8;}
   .gallery__item:nth-child(9) {grid-area: g9;}
   .gallery__item:nth-child(10) {grid-area: g10;}
   .gallery__item:nth-child(11) {grid-area: g11;}
      .gallery__item img {display: block; height: 100%; object-fit: cover;}

@media screen and (max-width: 1199px) {
   .gallery__section {grid-template-columns: repeat(2, 1fr); grid-template-areas: 
      "g1 g2"
      "g3 g4"
      "g5 g4"
      "g6 g6"
      "g7 g8"
      "g9 g10"
      "g11 g11";}
}
@media screen and (max-width: 767px) {
   .gallery__section {gap: 15px;}
   .gallery__section + .gallery__section {margin-top: 15px;}
}
@media screen and (max-width: 480px) {
   .gallery__item {margin-bottom: 10px;}
   .gallery__item:last-child {margin-bottom: 0;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .gallery__section {gap: 10px;}
   .gallery__section + .gallery__section {margin-top: 10px;}
}


/*====================================================
   .managers
====================================================*/
.managers__top {position: relative; gap: 20px;}
   .managers__slogan {width: clamp(140px,14.896vw,286px); position: relative;}
      .managers__slogan:before {content: ''; display: block; padding-top: 100%;}
      .managers-slogan__in {position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-align: center;}
         .managers-slogan__title {display: inline-block; text-align: left; margin-bottom: 15px; padding: 0 10px; font-size: clamp(22px,1.75vw,34px); line-height: 1;}
         .managers-slogan__image {width: 100%; gap: 20px; padding: 0 40px;}
.managers-list__item {width: 230px;}
   .managers-list-item__link {display: block;}
      .managers-list-item__in {display: block; height: 100%; padding: 20px 20px 40px;}
         .managers-list-item__image {width: 128px; height: 128px; margin-bottom: 20px;}
         .managers-list-item__name {margin-bottom: 10px;}

@media all and (min-width: 768px) {
   .managers__top {display: block;}
      .managers__slogan {position: absolute; top: calc(100% + var(--m-5)); left: 0;}
}
@media all and (min-width: 1200px) {
   .managers__slogan {margin: 0 clamp(0px, 4.167vw,80px);}
   .managers__list {gap: 20px; padding-left: calc(clamp(140px,14.896vw,286px) + (clamp(0px, 4.167vw,80px) * 2));}
      .managers-list__item {max-width: calc(25% - 20px);}
}
@media all and (max-width: 1199px) {
   .managers__slogan {width: 20%;}
      .managers-slogan__title {margin-bottom: 10px; font-size: clamp(14px,2.2vw,26px);}
      .managers-slogan__image {gap: 10px; padding: 0 30px;}
   .managers-list__item {width: 25%;}
      .managers-list-item__in {padding: 10px 10px 30px;}
         .managers-list-item__image {width: 108px; height: 108px;}
         .managers-list-item__name {font-size: 18px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .managers__list {padding-left: calc(20% + 20px);}
}
@media all and (max-width: 767px) {
   .managers__slogan {flex: 0 0 140px;}
      .managers-slogan__title {font-size: 18px;}
      .managers-slogan__image {gap: 0 10px; padding: 0 30px;}
         .managers-slogan__image div:first-child {width: 36px;}
         .managers-slogan__image div:last-child {width: 36px; height: 36px; position: relative; overflow: hidden; transform: rotate(90deg);}
            .managers-slogan__image div:last-child svg {position: absolute; bottom: 0; right: 0; width: 58px; max-width: none;}
   .managers-list__item {width: 50%;}
}
@media all and (max-width: 480px) {
   .managers__slogan {flex: 0 0 90px;}
      .managers-slogan__title {margin-bottom: 5px; font-size: 11px;}
      .managers-slogan__image {gap: 0 5px; padding: 0 20px;}
         .managers-slogan__image div:first-child {width: 26px;}
         .managers-slogan__image div:last-child {width: 26px; height: 26px;}
            .managers-slogan__image div:last-child svg {width: 40px;}
   .managers-list-item__image {width: 80px; height: 80px; margin: 0 auto 15px;}
   .managers-list-item__name {font-size: 16px;}
}
@media screen and (max-width: 991px) and (orientation: landscape)  {
   .managers__top {display: flex;}
      .managers__slogan {flex: 0 0 90px; position: relative; top: auto; left: auto;}
         .managers-slogan__title {margin-bottom: 5px; font-size: 11px;}
         .managers-slogan__image {gap: 0 5px; padding: 0 20px;}
            .managers-slogan__image div:first-child {width: 26px;}
            .managers-slogan__image div:last-child {width: 26px; height: 26px; position: relative; overflow: hidden; transform: rotate(90deg);}
               .managers-slogan__image div:last-child svg {position: absolute; bottom: 0; right: 0; width: 40px; max-width: none;}
   .managers__list {padding-left: 0;}
      .managers-list__item {width: 25%;}
         .managers-list-item__image {width: 80px; height: 80px; margin: 0 auto 15px;}
         .managers-list-item__name {font-size: 16px;}
}


/*====================================================
   .team
====================================================*/
.swiper .team-list__item {width: clamp(280px,18.334vw,352px); min-height: calc(clamp(280px,18.334vw,352px) * 1.403409090909091);}
   .team-list__item .card__front {width: 100%; height: 100%;}
      .team-list__item .card__content {width: 100%; height: auto; padding: clamp(40px,6vh,60px) 40px 20px;}
         .team-list-item__row {margin-bottom: 10px;}
         .team-list-item__row:last-child {margin-bottom: 0;}
      .team-list-item__image {width: 100%; padding: 0 20px;}
         .team-list-item__image img {display: block; height: clamp(190px,15.1045vw,290px); width: auto;}
      .team-list__item .btn-video {top: auto; bottom: 15px; left: auto; right: 15px; margin: 0;}
   .team-list__item .card__back video {width: auto; min-width: 100%; height: 100%;}

@media all and (min-width: 1200px) {
   .swiper .team-list__item {margin-right: 30px;}
}
@media all and (max-width: 1199px) {
   .swiper .team-list__item {width: 260px; min-height: calc(260px* 1.403409090909091);}
      .team-list__item .card__content {padding: 30px 20px;}
         .team-list-item__row {margin-bottom: 5px;}
         .team-list-item__row.font-20 {font-size: 20px;}
      .team-list-item__image img {height: 210px;}
}
@media all and (max-width: 480px) {
   .swiper .team-list__item {width: 222px; min-height: calc(222px* 1.403409090909091);}
      .team-list__item .card__content {padding: 20px 10px;}
         .team-list-item__image img {height: 160px;}
      .team-list__item .btn-video {bottom: 10px; right: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .swiper .team-list__item {width: 222px; min-height: calc(222px* 1.403409090909091);}
      .team-list__item .card__content {padding: 20px 10px;}
         .team-list-item__image img {height: 160px;}
      .team-list__item .btn-video {bottom: 10px; right: 10px;}
}


/*====================================================
   .map
====================================================*/
.map__frame {position: relative;}
   .map__frame:before {content: ''; display: block; padding-top: 45%;}
   .map__ymap {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
      [class*="ymaps-2"][class*="-ground-pane"] {filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); -webkit-filter: grayscale(100%);}
/*baloon*/
.baloon {position: absolute; margin-left: 15px; z-index: 10;}
   .baloon__close {top: 10px; right: 10px; width: 30px; height: 30px; z-index: 2;}
      .baloon__close:before,
      .baloon__close:after {width: 16px; margin-left: -8px;}
   .baloon__arrow {position: absolute; bottom: -30px; left: 50%; margin-left: -15px; border-top: 30px solid #FFF; border-right: 30px solid transparent;}
      .baloon__arrow:after {content: ''; position: absolute; top: -30px; left: 0; border-top: 30px solid rgba(0,0,0,.8); border-right: 30px solid transparent; filter: blur(5px); z-index: -1;}
   .baloon__in {position: relative; width: 310px; max-width: 100%; padding: 20px; border-radius: 9px; background-color: #FFF; box-shadow: 0 4px 4px rgba(0,0,0,.25); font-size: 18px; color: var(--anthracite);}
      .baloon__properties {margin-bottom: 10px;}
      .baloon__properties:last-child {margin-bottom: 0;}
         .baloon__properties strong {display: block;}
         .baloon__properties p {margin: 0;}

@media all and (max-width: 1199px) {
   .map__frame:before {padding-top: 70%;}
   .baloon__in {font-size: 16px;}
}
@media all and (max-width: 767px) {
   .map__frame:before {padding-top: 90%;}
}
@media all and (max-width: 480px) {
   /*.map__frame:before {padding-top: 110%;}*/
   .baloon__close {width: 20px; height: 20px;}
      .baloon__close:before,
      .baloon__close:after {width: 10px; margin-left: -5px;}
   .baloon__arrow {bottom: -20px; margin-left: -10px; border-top: 20px solid #FFF; border-right: 20px solid transparent;}
      .baloon__arrow:after {top: -20px; border-top: 20px solid rgba(0,0,0,.8); border-right: 20px solid transparent;}
   .baloon__in {width: 240px; padding: 15px; font-size: 14px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .map__in {padding: 0 40px;}
      .map__frame:before {padding-top: calc(100vh - var(--header-height));}
      .baloon__close {width: 20px; height: 20px;}
         .baloon__close:before,
         .baloon__close:after {width: 10px; margin-left: -5px;}
      .baloon__arrow {bottom: -20px; margin-left: -10px; border-top: 20px solid #FFF; border-right: 20px solid transparent;}
         .baloon__arrow:after {top: -20px; border-top: 20px solid rgba(0,0,0,.8); border-right: 20px solid transparent;}
      .baloon__in {width: 240px; padding: 15px; font-size: 14px;}
}
      

/*====================================================
   .contacts
====================================================*/
.contacts__item.flex-xl {gap: 0 clamp(20px,3.6vw,70px);}
   .contacts-item__image {position: relative;}
      .contacts-item__badge {position: absolute; top: 20px; right: 20px; z-index: 1;}
         .contacts-item__badge .btn {height: 60px; padding: 10px 15px 8px 10px; font-size: 30px;}
      .contacts-item__image img {display: block; position: relative; z-index: 0;}
   .contacts-item__content {gap: 0 40px;}
   .contacts-item-text__row {margin-bottom: 80px;}
      .contacts-item__text .font-lead {margin-bottom: 20px;}
      .contacts-item__text .h3 {margin-bottom: 20px;}
   .contacts-item__map {position: relative;}
      .contacts-item__map:before {content: ''; display: block; padding-top: 68.6%;}
      .contacts-item-map__iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
   .contacts-item__managers .managers__list {padding-left: 0; gap: 0 60px;}
      .contacts-item__managers .managers-list__item {width: auto; max-width: 100%;}
         .contacts-item__managers .managers-list-item__in {padding: 0; text-align: center;}
            .contacts-item__managers .managers-list-item__image {margin-left: auto; margin-right: auto;}
   .contacts-item__video {position: relative; overflow: hidden;}
      .contacts-item__video:before {content: ''; display: block; padding-top: 40.88%; transition: var(--easing);}
      .contacts-item__video video {position: absolute; top: 0; left: 0;}
      .video__toggle {position: absolute; top: 20px; right: 20px; width: 30px; height: 30px; background: #FFF; border-radius: 100%; z-index: 2; cursor: pointer;}
         .video .video__toggle svg.video-toggle__minimize {display: none;}
         .video.is-full .video__toggle svg.video-toggle__minimize {display: block;}
         .video.is-full .video__toggle svg.video-toggle__fullscreen {display: none;}

@media screen and (min-width: 1366px) {
   .contacts-item__title {position: relative;}
      .contacts-item__title .link-arrow {position: absolute; bottom: 4px; margin-top: 0; right: 0;}
}
@media screen and (min-width: 1200px) {
   .contacts__item.flex-xl .contacts-item__col.order-xl-2 {order: 2;}
   .contacts__item.flex-xl .contacts-item__col.order-xl-1 {order: 1;}
   .contacts-item-text__row:last-child {margin-bottom: 0;}
   .contacts__item.flex-xl .contacts-item__image {height: 100%;}
   .contacts-item__content {max-width: 900px;}
}
@media all and (max-width: 1199px) {
   .contacts-item-text__row {margin-bottom: 40px;}
      .contacts-item__text .font-lead {margin-bottom: 10px;}
      .contacts-item__text .h3 {margin-bottom: 10px;}
   .contacts-item__managers .managers__title {font-family: var(--font-semibold);}
}
@media all and (max-width: 767px) {
   .contacts-item__badge .btn {height: 40px; min-height: 40px; padding: 8px 15px 8px 8px; font-size: 18px;}
      .contacts-item__badge .btn .svg-icon__image {width: 30px;}
   .contacts-item__managers .managers__title {text-align: center;}
   .contacts-item__managers .managers__list {justify-content: center;}
   .contacts-item__button:not(:last-child) {text-align: center;}
}
@media all and (max-width: 480px) {
   .contacts-item__badge {top: 15px; right: 15px;}
      .contacts-item__badge .btn {height: 30px; min-height: 30px; padding: 7px 10px 5px 5px; gap: 0 5px; font-size: 15px;}
         .contacts-item__badge .btn .svg-icon__image {width: 20px;}
   .contacts-item-text__row {margin-bottom: 30px;}
      .contacts-item__text .font-lead {margin-bottom: 5px; font-family: var(--font-medium);}
      .contacts-item__text .h3 {margin-bottom: 5px;}
   .contacts-item__managers .managers__title {font-size: 22px;}
   .contacts-item__video:before {padding-top: 56.25%;}
   /*.contacts-item__video.is-full:before {padding-top: calc(100vh - var(--header-height));}*/
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .contacts-item__col .contacts-item__image {height: calc(100vh - var(--header-height));}
   .contacts-item__badge {top: 15px; right: 15px;}
      .contacts-item__badge .btn {height: 30px; min-height: 30px; padding: 7px 10px 5px 5px; gap: 0 5px; font-size: 15px;}
         .contacts-item__badge .btn .svg-icon__image {width: 20px;}
   .contacts-item-text__row {margin-bottom: 30px;}
      .contacts-item__text .font-lead {margin-bottom: 5px; font-family: var(--font-medium);}
      .contacts-item__text .h3 {margin-bottom: 5px;}
   .contacts-item__map:before {padding-top: calc(100vh - var(--header-height));}
   .contacts-item__managers .managers__title {font-size: 22px; text-align: center;}
   .contacts-item__managers .managers__list {justify-content: center;}
   .contacts-item__button:not(:last-child) {text-align: center;}
   .contacts-item__video:before {padding-top: calc(100vh - var(--header-height));}
}

/*slider*/
.contacts-slider__item.swiper-slide {width: clamp(680px,60vw,1344px);/*margin-left: 40px;  margin-right: 40px; */transition: all 1s cubic-bezier(0,0,0.5,1);}
   .contacts-slider-item__in {width: 100%; height: 100%; position: relative; transition: all .5s cubic-bezier(0,0,0.5,1);}
      .contacts-slider-item__in:before {content: ''; display: block; padding-top: 56.25%;}
      .contacts-slider-item__in img,
      .contacts-slider-item__in video {position: absolute; top: 0; left: 0; transition: transform .5s cubic-bezier(0,0,0.5,1), width 0.5s ease 0s, max-width 0.5s ease 0s; width: 100%; height: 100%; object-fit: cover;}
      .contacts-slider__item.swiper-slide-active img,
      .contacts-slider__item.swiper-slide-active video {transform: scale(1) translateX(0); transition: transform 1s cubic-bezier(0,0,0.5,1), width 0.5s ease 0s, max-width 0.5s ease 0s;}
      .contacts-slider-item__in video + img {transfrom: none; transition: none;}
      .contacts-slider__item.is-playing .contacts-slider-item__in video + img {opacity: 0;}
.contacts__text.flex {gap: 0 40px;}
   .contacts-text__list {position: relative; width: 100%;}
      .contacts-text__item {position: absolute; left: 0; opacity: 0; visibility: hidden; transition: all 0.3s ease 0s;}
      .contacts-text--top .contacts-text__item {bottom: 0;}
      .contacts-text--bottom .contacts-text__item {top: 0;}
      .contacts-text--office .contacts-text__item:first-child {opacity: 1; visibility: visible;} 
      .contacts-text--shuttle .contacts-text__item:last-child {opacity: 1; visibility: visible;} 
      .contacts__text .contacts__arrows {margin-top: 0;}

@keyframes delay-overflow {
  from { overflow: hidden; }
}

@media all and (min-width: 768px) {
   .contacts-slider__item.swiper-slide,
   .contacts__slider .contacts-slider__item.swiper-slide:last-child {margin-right: 40px;}
}
@media all and (max-width: 1199px) {
   .contacts-slider__item.swiper-slide {width: calc(100vw - 80px);}
   .contacts__slider .contacts-slider__item.swiper-slide:last-child {margin-right: 80px;}
}
@media all and (max-width: 767px) {
   .contacts__slider.swiper {overflow: visible;}
      .contacts-slider__item.swiper-slide {width: calc(100vw - 60px);}
      .contacts-slider-item__in {transition: all 1s cubic-bezier(0,0,0.5,1); margin-left: 30px;}
      .contacts-slider__item.swiper-slide.swiper-slide-active .contacts-slider-item__in {margin-left: 0px;}
      .contacts-slider__item.swiper-slide.swiper-slide-prev .contacts-slider-item__in {margin-left: 0px; margin-right: 30px; }
      .contacts-slider .contacts-slider__item.swiper-slide:last-child .contacts-slider-item__in {margin-right: 60px;}
      .contacts-slider__item.is-full {z-index: 2;}
         .contacts-slider__item.swiper-slide-active .contacts-slider-item__in {overflow: visible;}
            .contacts-slider__item.swiper-slide-active.is-full .contacts-slider-item__in img,
            .contacts-slider__item.swiper-slide-active.is-full .contacts-slider-item__in video {width: calc(100vw + 0px); max-width: 100vw; height: auto;}
}


/*====================================================
   .shuttle
====================================================*/
.shuttle__row {gap: 0 clamp(20px,3.6vw,70px);}
   .shuttle__text ul {padding-left: 1em;}
      .shuttle__text ul li {margin-bottom: 0;}

@media screen and (min-width: 1200px) {
   .shuttle__col:nth-child(2) {width: 52.5995%; flex: 0 0 auto;}
}
@media screen and (max-width: 1199px) {
   .shuttle__row {gap: 0 20px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .shuttle__col:nth-child(1) {width: 50%; flex: 0 0 auto;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .shuttle__row {display: flex;}
      .shuttle__col:nth-child(1) {width: 50%; flex: 0 0 auto;}
}

/*svg map*/
#rangemap {margin-left: -20px;}
   #distance {opacity: 0; transform: translateY(3px) scale(.2) rotate(-90deg); transform-origin: 46% 47%}
   .shuttle__image.is-inview #distance {opacity: 1; transform: translateY(3px) scale(1) rotate(0deg); transition: transform 3s cubic-bezier(.5,0,0,1),opacity 1s ease-in;}
      #map {transform: translate(25px,25px);}
      #dots {transform: translate(320px,326px);}
      #dots circle {fill: var(--red);}
      .cityname {fill: var(--anthracite); font-size: 20px;}
      .cityname.moscow {font-size: 24px;}

@media screen and (max-width: 480px) {
   .cityname {font-size: 2em;}
   .cityname.moscow {font-size: 2.85em;}
}


/*====================================================
   .solutions
====================================================*/
.solutions__list {gap: clamp(20px,4.2vw,80px); padding-bottom: 30px;}
   .solutions__item {position: relative; background-position: 0 0; background-size: cover; background-repeat: no-repeat;}
      .solutions__item--with-shadow:before {content: ''; position: absolute; top: 0; left: 0; width: 60%; height: 100%; border-radius: var(--br-3) 0 0 var(--br-3); background: linear-gradient(270deg, #FFF -16.06%, #505050 100%); mix-blend-mode: multiply; z-index: 0;}
      .solutions-item__in {position: relative; z-index: 1;}
      .solutions__item--half .solutions-item__in {padding-bottom: 0;}
         .solutions-item__image {justify-self: center;}
         .solutions__item--frostlock .solutions-item__image,
         .solutions__item--carbon .solutions-item__image {transform: translateX(30px); justify-self: end;}
         .solutions__item--lab .solutions-item__image {transform: translateY(30px);}
            .solutions-item__image img {display: block;}
   
@media screen and (min-width: 1200px) {
   .solutions__item {flex: 0 0 100%;}
   .solutions__item--half {flex: 0 0 calc(50% - clamp(20px,4.2vw,80px) / 2);}
      .solutions__item--covering:before {display: none;}
      .solutions-item__in {height: 100%; min-height: 69.642vh; grid-template-columns: auto 2fr; gap: 0 20px; align-items: center; padding: clamp(20px,4.2vw,80px); padding-right: 0;}
      .solutions__item--half .solutions-item__in {grid-template-columns: auto; grid-template-rows: auto auto; align-items: stretch; padding: calc(clamp(20px,4.2vw,80px) / 1.3); padding-bottom: 0; min-height: 0;}
         .solutions__item--half .solutions-item__content {margin-bottom: var(--m-4);}
            .solutions-item__title {white-space: nowrap;}
            .solutions__item--half .solutions-item__title {white-space: normal;}
               .solutions-item__title h3, 
               .solutions-item__title .h3 {font-size: clamp(26px,2.3vw,44px);}
            .solutions-item__text {max-width: 480px; font-size: clamp(18px,1.35vw,26px);}
            .solutions__item--covering .solutions-item__text {max-width: 600px;}
            .solutions__item--half .solutions-item__text {max-width: 100%;}
         .solutions__item--carbon .solutions-item__image {margin-top: calc(clamp(20px,4.2vw,80px) * -1);}
         .solutions__item--half .solutions-item__image {align-content: end;}
            .solutions__item--thermopool .solutions-item__image img {max-height: 45vh;}
}
@media screen and (min-width: 1690px) {
   .solutions__item--frostlock .solutions-item__image,
   .solutions__item--carbon .solutions-item__image {transform: translateX(80px);}
}
@media screen and (max-width: 1199px) {
   .solutions__list {gap: 40px 0;}
      .solutions__item--covering {background-position: 85% 0%; overflow: hidden;}
      .solutions__item--with-shadow:before {width: 100%; height: 100%; border-radius: var(--br-3) var(--br-3) 0 0; background: linear-gradient(0deg, #FFF 0%, #505050 100%);}
      .solutions__item--covering:before {height: 130%;}
      .solutions-item__in {padding: 60px 60px 40px;}
      .solutions__item--covering .solutions-item__in {min-height: 640px;}
         .solutions-item__content {margin-bottom: 40px;}
         .solutions-item__content:last-child {margin-bottom: 0;}
            .solutions-item__title h3 br, 
            .solutions-item__title .h3 br {display: none;}
            .solutions-item__text {font-size: 18px;}
         .solutions__item--frostlock .solutions-item__image,
         .solutions__item--carbon .solutions-item__image {margin-left: -100px; transform: translateX(90px);}
            .solutions__item--thermopool .solutions-item__image img {max-width: 33vw;}
}
@media screen and (max-width: 767px) {
   .solutions-item__in {padding: 40px;}
   .solutions__item--covering .solutions-item__in {min-height: 510px;}
      .solutions-item__content {margin-bottom: 30px;}
      .solutions__item--frostlock .solutions-item__image,
      .solutions__item--carbon .solutions-item__image {margin-left: -80px; transform: translateX(60px);}
}
@media screen and (max-width: 480px) {
   .solutions__list {gap: 20px 0;}
      .solutions__item--with-shadow:before {border-radius: 0;}
      .solutions-item__in {padding: 40px 20px;}
      .solutions__item--covering .solutions-item__in {min-height: 110vw;}
         .solutions-item__content {margin-bottom: 20px;}
            .solutions-item__text {font-size: 16px;}
         .solutions__item--frostlock .solutions-item__image,
         .solutions__item--carbon .solutions-item__image {margin-left: -80px; transform: translateX(80px);}
            .solutions__item--thermopool .solutions-item__image img {max-width: 55vw;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .solutions__list {gap: 20px 0;}
      .solutions__item--with-shadow:before {border-radius: 0;}
      .solutions-item__in {padding: 40px 20px;}
      .solutions__item--covering .solutions-item__in {min-height: 100vh;}
         .solutions-item__content {margin-bottom: 20px;}
            .solutions-item__text {font-size: 16px;}
            .solutions__item--frostlock .solutions-item__image,
            .solutions__item--carbon .solutions-item__image {margin-left: 0; transform: translateX(0);}
               .solutions-item__image img {max-width: 70vw;}
}


/*====================================================
   .content-form
====================================================*/
.content-form__in {position: relative; padding: 80px; padding: clamp(40px,4.2vw,80px);}
   .content-form__image {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: auto;}
      .content-form__image .bg-pool {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
         .content-form__image .bg-pool img {display: block; object-fit: cover; height: 100%;/* position: absolute; top: -25%; left: -25%; width: calc(100% * 1.5); max-width: none; height: calc(100% * 1.5); -webkit-filter: url(#water-filter); filter: url(#water-filter);*/}
      .content-form__image .bg-woman {position: absolute; z-index: 2; text-align: right;}
   .content-form__form {position: relative; z-index: 1;}
   .content-form__top {position: relative; z-index: 2;}
   .content-form__title {font-size: 40px;}

/*shuttle*/
.shuttle__form .content-form__in {background: #000;}
   .shuttle__form .content-form__image img {position: absolute; top: 0; right: 0; width: auto; max-width: none; height: 100%; object-fit: cover;}
   .shuttle__form .content-form__video {position: absolute; top: 0; right: 0; width: auto; max-width: none; width: 100%; height: 100%;}
      .shuttle__form .content-form__video video {position: absolute; bottom: 0; left: 0; width: auto; height: 100%;}

@media all and (min-width: 1200px) {
   .content-form__image .bg-woman {left: calc(45% - clamp(20px,3.15vw,60px)); top: 50%; max-width: calc(55% + clamp(20px,3.15vw,60px)); transform: translateY(-50%); margin-left: 10px;}
   .content-form__form {padding: clamp(20px,3.15vw,60px);}
   .content-form__image + .content-form__form {width: 45%;}
      .content-form__form .h2 {font-size: clamp(32px,2.6vw,50px);}
   .content-form__top {position: absolute; /*top: clamp(40px,4.2vw,80px); */top: 40px; right: clamp(40px,4.2vw,80px);}

   /*shuttle*/
   .shuttle__form .content-form__in {display: flex; align-items: center; min-height: 817px; min-height: calc(100vh - var(--header-height));}
      .shuttle__form .content-form__image img {width: 100%;}
      .shuttle__form .content-form__form.animate {opacity: 1; transform: none; transition-delay: 0s !important;}
}
@media all and (max-width: 1199px) {
   .content-form__in {padding: 60px 60px 38vw;}
      .content-form__image .bg-woman {right: 0; bottom: 0; width: 100%; height: 38vw; padding: 20px 20px 40px;}
         .content-form__image .bg-woman img {height: 100%; max-height: 309px; width: auto;}
      .content-form__form {padding: 60px;}

   /*shuttle*/
   .shuttle__form .content-form__in {padding-bottom: 80px;}
      .shuttle__form .content-form__image img {right: -20%;}
      .shuttle__form .content-form__video video {width: 200%; left: -100%; height: auto;}
}
@media all and (max-width: 767px) {
   .content-form__in {padding: 60px 20px 42vw;}
      .content-form__image .bg-woman {height: 42vw; padding: 20px;}
      .content-form__form {padding: 40px;}
      .content-form__title {font-size: 34px;}

   /*shuttle*/
   .shuttle__form .content-form__in {padding-bottom: 60px;}
}
@media all and (max-width: 480px) {
   .content-form__in {padding-left: 0; padding-right: 0;}
      .content-form__form {border-radius: 0; padding: 40px 20px;}
      .content-form__top {padding-right: var(--p-in);}
      .content-form__title {font-size: 30px;}
      .content-form__logo img {width: 110px;}

   /*shuttle*/
   .shuttle__form .content-form__image img {right: -80%;}
   .shuttle__form .content-form__video video {width: 300%; left: -150%;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .content-form__in {padding: 60px var(--p-in) 24vw}
      .content-form__image .bg-woman {height: 24vw; padding: 20px;}
      .content-form__form {padding: 40px 20px;}
      .content-form__title {font-size: 30px;}
      .content-form__logo img {width: 110px;}
}


/*====================================================
   .catalog-list
====================================================*/
.price {white-space: nowrap;}
.price--old {text-decoration: line-through; text-decoration-thickness: 0.075em;}
   .price--old span {display: inline-block; vertical-align: middle; background: var(--anthracite); border-radius: 2em; padding: 3px 6px 2px; margin-left: 1em; font-size: 11px; color: #FFF;}
   .price--old div {display: inline;}
.price-grid {grid-template-columns: auto 1fr; gap: 0.25em 20px;
      grid-template-areas: 
      "a b"
      "a c";}
      .price-grid__label {grid-area: a;}
      .price-grid__price-old {grid-area: b;}
      .price-grid__price {grid-area: c;}
.price-block .price--old {margin-bottom: 0.25em;}

@media all and (max-width: 1440px) {
   .price--old span {padding: 2px 4px; font-size: 8px;}
}
@media all and (max-width: 1199px) {
   .price-grid {column-gap: 10px;}
}
@media all and (max-width: 480px) {
   .price-grid {column-gap: 5px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .price-grid {column-gap: 5px;}
}

.badge {gap: 0 10px; min-height: 16px; padding: 3px 6px; border-radius: 4px; font-size: 11px; position: relative;}
   .badge span {line-height: 1;}
   .badge svg {flex: 1 0 auto;}

@media all and (min-width: 1200px) {
   .badge--large {min-height: 27px; padding: 5px 15px 6px; font-size: 16px;}
}
@media all and (max-width: 1199px) {
   .badge {gap: 0 4px; padding: 3px 6px 4px; font-size: 9px; letter-spacing: 0.05em;}
}

/*list*/
.catalog__list:not(.swiper) {gap: 60px 25px;} 
   .catalog__list:not(.swiper) .card {width: 100%; margin-right: 0;}

@media all and (max-width: 1199px) {
   .catalog__list:not(.swiper) {gap: 20px;} 
}
@media all and (max-width: 767px) {
   .catalog__list:not(.swiper) {gap: 15px;} 
}
@media all and (max-width: 480px) {
   .catalog__list:not(.swiper) .catalog-list__item {margin-bottom: 20px;} 
   .catalog__list:not(.swiper) .catalog-list__item:last-child {margin-bottom: 0;} 
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .catalog__list:not(.swiper) {gap: 20px;} 
}

/*list card*/
/*.catalog-list__item:before {content: ''; display: block; padding-top: 137.934%;}
.catalog-list__item .card__hover {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}*/
   .catalog-list-item__image {margin-bottom: 40px; height: calc(34.114vh + 40px);}
      .catalog-list-item__image picture,
      .catalog-list-item__image img {display: block; margin: 0 auto; max-height: 17vh; width: auto;}
      .catalog-list-item__image img + img,
      .catalog-list-item__image picture + picture {margin-top: 40px;}
   .catalog-list-item__title {margin-bottom: 30px;}
   .card__back .catalog-list-item__title,
   .card__front--back .catalog-list-item__title {position: absolute; top: 40px; left: 40px; margin: 0; z-index: 2;}
      .catalog-list-item__title h3, .catalog-list-item__title .h3 {line-height: 1;}
   .catalog-list-item__properties {margin-bottom: 30px;}
      .catalog-list-item__properties .tb__cell {vertical-align: top; padding: 2px 10px; font-size: clamp(16px,1.15vw,22px);}
      .catalog-list-item__properties .tb__cell:first-child {padding-left: 0;}
      .catalog-list-item__properties .tb__cell:last-child {padding-right: 0;}
      .catalog-list-item__properties .tb__row:first-child .tb__cell {padding-top: 0;}
      .catalog-list-item__properties .tb__row :last-child .tb__cell {padding-bottom: 0;}
      .catalog-list-item__properties .price:not(:last-child) {margin-right: 20px;}
      .catalog-list-item__properties .price--old {font-size: clamp(12px,0.83vw,16px); }
   .catalog-list-item__badge {margin-bottom: 50px; gap: 20px; position: relative;}
   .catalog-list-item__title .catalog-list-item__badge {margin-bottom: 0;}
   .catalog-list-item__button {position: absolute; bottom: 40px; left: 40px;}
   .card__back .catalog-list-item__button,
   .card__front--back .catalog-list-item__button {z-index: 1;}
   .catalog-list__item .card__back {opacity: 1;}
      .catalog-list__item .card__back .card__image {height: 100%;}
      .catalog-list__item .card__front--back .card__video {position: relative; opacity: 1; visibility: visible;}
         .catalog-list__item .card__back .card__image img,
         .catalog-list__item .card__back .card__video video,
         .catalog-list__item .card__front--back .card__video video {height: 100%; object-fit: cover;}
      .catalog-list__item .card__back .btn,
      .catalog-list__item .card__front--back .btn {background: #FFF; color: var(--anthracite);}
      .catalog-list__item .card__back .btn:hover,
      .catalog-list__item .card__front--back:hover .btn,
      .catalog-list__item .card__hover .card__back .btn:hover {background: var(--blue-light); color: #FFF;}
      .no-touchevents .catalog-list__item .card__front:not(:last-child) .btn {background: var(--anthracite);}

@media screen and (min-width: 1200px) {
   .catalog-slider .catalog-list__item {width: clamp(360px,27.084vw,520px);}
      .catalog-list__item .card__content {padding: 60px clamp(20px,2.1vw,40px) 70px;}
         .catalog-list-item__title {gap: 20px 2.5vw;}
         .card__back .catalog-list-item__title,
         .card__front--back .catalog-list-item__title {font-size: clamp(22px,2.1vw,40px);}
            .catalog-list-item__title .catalog-list-item__badge {bottom: 0.15em;}
}
@media all and (max-width: 1199px) {
   .catalog-list__item .card__content {padding: 30px 20px 60px;}
      .catalog-list-item__image {margin-bottom: 20px; height: calc(34vh + 20px);}
         .catalog-list-item__image img + img,
         .catalog-list-item__image picture + picture {margin-top: 20px;}
      .catalog-list-item__title {margin-bottom: 20px;}
      .card__back .catalog-list-item__title,
      .card__front--back .catalog-list-item__title {top: 30px; left: 20px;}
         .catalog-list-item__badge {margin-top: 10px;}
      .catalog-list-item__properties {margin-bottom: 15px;}
         .catalog-list-item__properties .tb__cell {font-size: 14px;}
            .catalog-list-item__properties .price:not(:last-child) {margin-right: 10px;}
            .catalog-list-item__properties .price--old {font-size: 12px;}
      .catalog-list-item__badge {margin-bottom: 30px; gap: 15px;}
      .catalog-list-item__button {bottom: 30px; left: 20px;}
}
@media all and (max-width: 767px) {
   .catalog-list-item__image {margin-bottom: 15px; height: calc(26vh + 15px);}
      .catalog-list-item__image picture,
      .catalog-list-item__image img {max-height: 13vh; max-width: 33vw;}
      .catalog-list-item__image img + img,
      .catalog-list-item__image picture + picture {margin-top: 15px;}
}
@media all and (max-width: 480px) {
   .catalog-list__item .card__content {padding: 25px 10px 50px;}
   .catalog__list:not(.swiper) .catalog-list__item .card__content {padding-left: 20px; padding-right: 20px;}
      .catalog-list-item__image {height: auto;}
      .catalog-slider .catalog-list-item__image {height: calc(26vh + 15px);}
         .catalog-list-item__image picture,
         .catalog-list-item__image img {max-height: 13vh; max-width: 60vw;}
      .catalog-list-item__title {margin-bottom: 15px;}
      .card__back .catalog-list-item__title,
      .card__front--back .catalog-list-item__title {top: 25px; left: 10px;}
      .catalog-list-item__properties {margin-bottom: 15px;}
         .catalog-list-item__properties .tb__cell {padding: 2px 5px; font-size: 12px;}
         .catalog__list:not(.swiper) .catalog-list-item__properties .tb__cell {font-size: 14px;}
            .catalog-list-item__properties .price:not(:last-child) {margin-right: 6px;}
            .catalog-list-item__properties .price--old {font-size: 10px;}
      .catalog-list-item__badge {margin-bottom: 20px;}
      .catalog-list-item__button {bottom: 20px; left: 10px;}
      .catalog__list:not(.swiper) .catalog-list-item__button {left: 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .catalog-list__item .card__content {padding: 25px 10px 50px;}
   .catalog__list:not(.swiper) .catalog-list__item .card__content {padding-left: 20px; padding-right: 20px;}
      .catalog-list-item__image {margin-bottom: 15px; height: calc(34vh + 15px);}
         .catalog-list-item__image picture,
         .catalog-list-item__image img {max-height: 17vh; max-width: 28vw;}
         .catalog-list-item__image img + img,
         .catalog-list-item__image picture + picture {margin-top: 15px;}
      .catalog-list-item__title {margin-bottom: 15px;}
      .card__back .catalog-list-item__title,
      .card__front--back .catalog-list-item__title {top: 25px; left: 10px;}
      .catalog-list-item__properties {margin-bottom: 15px;}
         .catalog-list-item__properties .tb__cell {padding: 2px 5px; font-size: 12px;}
            .catalog-list-item__properties .price:not(:last-child) {margin-right: 6px;}
            .catalog-list-item__properties .price--old {font-size: 10px;}
      .catalog-list-item__badge {margin-bottom: 20px;}  
      .catalog-list-item__button {bottom: 20px; left: 10px;}
      .catalog__list:not(.swiper) .catalog-list-item__button {left: 20px;}
}
@media screen and (min-width: 768px) and (max-width: 991px) and (orientation: landscape) {
   .catalog__list:not(.swiper) {grid-template-columns: repeat(3, 1fr);}
}

/*catalog__promo*/
.catalog-promo-item__details {max-width: 440px; grid-template-columns: repeat(3,auto); column-gap: 20px;}
.catalog-promo-item__table {padding: var(--p-in);}
.catalog-promo-item-table__row {padding: 20px 0; border-bottom: 1px solid var(--anthracite); grid-template-rows: auto auto; grid-template-columns: 1fr 1fr 95px 32px; column-gap: 20px;
      grid-template-areas: 
      "a b c d"
      "e e e e";}
.catalog-promo-item-table__row:last-child {border-bottom: 0;}
   .catalog-promo-item-table__option {grid-area: a;}
   .catalog-promo-item-table__price {grid-area: b;}
   .catalog-promo-item-table__button {grid-area: c;}
      .catalog-promo-item-table__button .btn {width: 100%; margin-bottom: 5px; min-height: 25px; padding-top: 3px; padding-bottom: 4px;}
      .catalog-promo-item-table__button .btn:last-child {margin-bottom: 0;}
   .catalog-promo-item-table__toggle {grid-area: d;}
   .catalog-promo-item-table__text {grid-area: e;}
      .catalog-promo-item-table__text .accordion__content {padding-top: 20px; padding-bottom: 20px;}
         .catalog-promo-item-table__text ul li {margin-bottom: 0.25em;}
         .catalog-promo-item-table__text ul li.btn-expand-parent {padding: 0;}
            .catalog-promo-item-table__text ul li.btn-expand-parent:before {display: none;}
            .catalog-promo-item-table__text .btn-expand {border: 0; margin: 0 auto;}

@media screen and (min-width: 1200px) {
   .catalog-promo-item__table {max-width: 690px;}
}
@media screen and (max-width: 480px) {
   .catalog-promo-item__details {column-gap: 15px;}
   .catalog-promo-item-table__row {padding: 15px 0; grid-template-columns: 1fr 1fr 95px 21px; column-gap: 15px;}
      .catalog-promo-item-table__button .btn.btn--small {padding-left: 15px; padding-right: 15px;}
}
@media screen and (max-width: 374px) {
   .catalog-promo__item {font-size: 13px;}
      .catalog-promo-item-table__row {padding: 10px 0; grid-template-columns: 1fr 1fr 85px 21px; column-gap: 5px;}
         .catalog-promo-item-table__price {font-size: 13px;}
         .catalog-promo-item-table__button .btn.btn--small {min-height: 20px; padding: 5px 10px 4px; font-size: 12px;}
         .catalog-promo-item-table__button .link-sbp {font-size: 12px;}
}
@media screen and (max-width: 666px) and (orientation: landscape) {
   .catalog-promo__item {font-size: 13px;}
      .catalog-promo-item-table__row {padding: 10px 0; grid-template-columns: 1fr 1fr 85px 21px; column-gap: 15px;}
         .catalog-promo-item-table__price {font-size: 13px;}
         .catalog-promo-item-table__button .btn.btn--small {min-height: 20px; padding: 5px 10px 4px; font-size: 12px;}
         .catalog-promo-item-table__button .link-sbp {font-size: 12px;}
}


/*====================================================
   .catalog-item
====================================================*/
/*zebra rows*/
.catalog-item__row {margin-bottom: var(--m-7);}
.catalog-item__row:nth-child(odd) {background: var(--gray-light); padding-top: var(--p-7); padding-bottom: var(--p-7);}
.catalog-item__row:nth-child(1) {padding-bottom: var(--p-6);}
.catalog-item__row:last-child {margin-bottom: var(--m-6);}

@media all and (min-width: 481px) {
   .catalog-item__row:nth-child(1) {padding-top: 0;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .catalog-item__row:nth-child(1) {padding-top: var(--p-6);}
}

/*double*/
@media all and (min-width: 1200px) {
   .catalog-item__double > div:first-child {flex: 0 1 57.55%; margin-bottom: 0;}
   .catalog-item__double > div:last-child {flex: 0 1 42.45%; padding-left: 20px;}
}

/*colors list*/
.color-list {gap: 20px 30px; grid-template-columns: repeat(6,auto);}
   .color-list__item a {display: block; width: 75px; height: 75px;}
      .color-list__item img {display: block; border-radius: inherit;}
      .color-list__item--light img {box-shadow: 0 0 0 1px var(--gray-dark);}

@media screen and (max-width: 480px) {
   .color-list {gap: 20px; justify-content: space-between;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .color-list {gap: 20px;}
}

/*heading*/
.heading .catalog-item {width: 660px; padding: 40px 40px 60px; border-radius: 20px 20px 0px 0px; background: rgba(0, 0, 0, 0.3); position: relative; z-index: 3;}
   .heading .catalog-item__badge {margin-bottom: 30px; gap: 10px;}
   .heading .catalog-item__title {margin-bottom: 40px;}
   .heading .catalog-item__properties .tb__cell {padding-top: 20px;}
   .heading .catalog-item__properties .tb__cell:nth-child(odd) {width: 0; padding-right: 30px;}
   .heading .catalog-item__properties .tb__cell:nth-child(even) {padding-right: 60px;}
   .heading .catalog-item__properties .tb__cell:first-child {padding-left: 0;}
   .heading .catalog-item__properties .tb__cell:nth-child(even):last-child {padding-right: 0;}
   .heading .catalog-item__properties .tb__row:first-child .tb__cell {padding-top: 0;}

@media screen and (max-width: 1199px) {
   .heading .catalog-item {width: 360px; padding: 20px 20px 40px; border-radius: 10px 10px 0px 0px;}
      .heading .catalog-item__badge {margin-bottom: 20px; gap: 6px;}
      .heading .catalog-item__title {margin-bottom: 10px;}
      .heading .catalog-item__properties .tb__cell {padding-top: 10px;}
      .heading .catalog-item__properties .tb__cell:nth-child(odd) {padding-right: 10px;}
      .heading .catalog-item__properties .tb__cell:nth-child(even) {padding-right: 30px;}
}
@media screen and (max-width: 767px) {
   .heading .catalog-item {width: 340px;}
}
@media screen and (max-width: 480px) {
   .heading .catalog-item {width: 100%; padding: 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .heading .catalog-item {padding: 20px;}
}

/*intro*/
.catalog-item-intro__col--1 {grid-area: a;}
.catalog-item-intro__col--2 {grid-area: b;}
.catalog-item-intro__col--3 {grid-area: c;}
.catalog-item-intro__col--4 {grid-area: d;}
   .catalog-item-intro__in h3, .catalog-item-intro__in .h3 {font-size: 26px;}
   .catalog-item__usage .catalog-item__text {max-width: 550px;}
   .catalog-item__note .note {max-width: 380px;}
   .catalog-item__details ul li {margin-bottom: 20px;}
   .catalog-item__details ul li:last-child {margin-bottom: 0;}
      .catalog-item-request__text {margin-bottom: 15px;}
      .catalog-item-request__model {margin-bottom: 40px;}
      .catalog-item-request__button {width: 265px; margin: 0 auto;}
         .catalog-item-request__button .btn {margin-bottom: 10px;}

@media screen and (min-width: 1200px) {
   .catalog-item-intro__in {grid-template-rows: auto auto; grid-template-columns: 1.5fr 1fr clamp(360px,30vw,480px); column-gap: clamp(20px,3vw,60px);
      grid-template-areas: 
      "a a d"
      "b c d";}
         .catalog-item-intro__col--1 {grid-column: span 2;}
         .catalog-item-intro__col--4 {grid-row: span 3;}
            .catalog-item__request {padding: 40px; background: #FFF; border-radius: 20px;}
}
@media screen and (max-width: 1199px) {
   .catalog-item-intro__in  h3, .catalog-item-intro__in .h3 {font-size: 18px;}
   .catalog-item-intro__col--2 {margin-bottom: 40px;}
      .catalog-item__details ul li {margin-bottom: 15px;}
         .catalog-item__details ul li .svg-icon__image {width: 31px; height: 31px;}
   .catalog-item-intro__col--3 .note.bg-white.note--small.note--arrow-right {margin-top: 20px;}
      .catalog-item-intro__col--3 .note.bg-white.note--small.note--arrow-right:before {top: -13px; margin-top: 0; right: auto; left: 50%; margin-left: -13px; border-left: 10px solid transparent; border-bottom: 13px solid #FFF; border-right: 10px solid transparent; border-top: 0;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .catalog-item-intro__in {grid-template-columns: 1.2fr 1fr; column-gap: 40px;
      grid-template-areas: 
      "a a"
      "b c"
      "b d";}
         .catalog-item-intro__col--1 {grid-column: span 2;}
         .catalog-item-intro__col--2 {grid-row: span 3;}
}
@media screen and (max-width: 767px) {
   .catalog-item-intro__in {display: block;}
}
@media screen and (max-width: 480px) {
   .catalog-item-intro__col--2 {margin-bottom: 20px;}
      .catalog-item__details ul li {margin-bottom: 10px;}
         .catalog-item__details ul li .svg-icon__image {width: 27px; height: 27px;}
      .catalog-item-intro__col--3 .catalog-item__button {text-align: center;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .catalog-item-intro__in {display: grid; grid-template-columns: 1.2fr 1fr; column-gap: 40px;
   grid-template-areas: 
      "a a"
      "b c"
      "b d";}
      .catalog-item-intro__col--1 {grid-column: span 2;}
      .catalog-item-intro__col--2 {grid-row: span 3; margin-bottom: 20px;}
         .catalog-item__details ul li {margin-bottom: 10px;}
            .catalog-item__details ul li .svg-icon__image {width: 27px; height: 27px;}
}

/*contacts, form*/
.catalog-item__row:nth-child(even) .content-form__form.bg-white {background: var(--gray-light);}

@media screen and (min-width: 1200px) {
   .catalog-item__row .contacts-item__image {height: 100%;}
      .contacts-item__image img {height: 100%; object-fit: cover;}
   .catalog-item__row .content-form__form {height: 100%;}
}

/*3d*/
.catalog-item__3d {gap: 0 clamp(40px,7.3vw,140px);}
   .catalog-item__row:nth-child(odd) .catalog-item__3d img[src$=".jpg"],
   .catalog-item__row:nth-child(odd) .catalog-item__3d img[src$=".jpeg"],
   .catalog-item__row:nth-child(odd) .catalog-item__3d img[src$=".JPG"],
   .catalog-item__row:nth-child(odd) .catalog-item__3d img[src$=".JPEG"] {mix-blend-mode: multiply;}

@media screen and (max-width: 1199px) {
   .catalog-item__3d {flex-direction: column; gap: var(--m-5) 0;}
      .catalog-item__3d > div {text-align: center;}
}


/*====================================================
   .calc
====================================================*/
@media screen and (max-width: 1199px) {
   .calc {--calc-col-width: clamp(340px,55vw,560px);}
}
@media screen and (max-width: 919px) {
   .calc {--calc-col-width: clamp(340px,44.3vw,560px);}
}

/*top*/
.catalog-item-calc__top {gap: 60px;}

@media screen and (max-width: 1199px) {
   .catalog-item-calc__top {gap: 40px;}
}
@media screen and (max-width: 767px) {
   .catalog-item-calc__top .catalog-item__note {text-align: center;}
}

/*form*/
.calc__form {grid-template-columns: 1.4177fr 1fr; gap: 0 30px; height: auto; position: relative;}
   .calc__form li {margin-bottom: 0; padding-left: 15px;}
      .calc__form li:before {top: 0.45em; left: 2px; width: 3px; height: 3px;}

@media screen and (min-width: 768px) {
   .calc {padding-top: 20px;}
}
@media screen and (min-width: 1200px) {
   .calc__form {height: 700px;}
}
@media screen and (min-width: 1200px) and (max-width: 1365px) {
   /*.calc__form {height: 640px;}*/
}
@media screen and (max-width: 1440px) {
   .calc__form {grid-template-columns: auto 450px;}
}
@media screen and (max-width: 1199px) {
   .calc__form {grid-template-columns: var(--calc-col-width) auto; gap: 0 10px;}
      .calc__form li {padding-left: 10px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .calc__form {/*height: 640px;*/ padding-top: 80px;}
}

/*buttons*/
.calc__buttons {grid-template-columns: 1.4177fr 1fr; gap: 30px;}
   .calc-buttons__in {gap: 0 30px;}
      .calc__buttons .btn {width: 130px;}
      .calc__buttons .btn:disabled {display: none;}
      .touchevents .calc__buttons .btn:hover {background: var(--anthracite);}

@media screen and (min-width: 768px) {
   .calc__buttons {justify-items: end;}
}
@media screen and (max-width: 1440px) {
   .calc__buttons {grid-template-columns: auto 450px;}
}
@media screen and (max-width: 1199px) {
   .calc__buttons {gap: 0; grid-template-columns: auto;}
      .calc-buttons__in {justify-content: space-between;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .calc-buttons__in {width: calc(100% - var(--calc-col-width) - 10px);}
}
@media screen and (min-width: 481px) and (max-width: 767px) {
   .calc-buttons__in {justify-content: center;}
}
@media screen and (max-width: 480px) {
   .calc-buttons__in {width: 100%;}
}

/*progress*/
.progress__panel {position: relative; height: 11px; width: 100%; border-radius: 2em;}
   .progress__bar {position: absolute; top: 0; left: 0; width: 14.2857%; height: 100%; border-radius: inherit; background-color: var(--blue-light); transition: width var(--easing);}
   .progress__note {font-size: 16px;}
      .progress-note__text {display: none;}
      .progress-note__text.is-visible {display: block;}

@media screen and (min-width: 768px) {
   .calc__progress {position: absolute; top: 0; left: 0; z-index: 2; width: 100%; margin: 0;}
      .progress__note {position: absolute; bottom: 100%; padding-bottom: 5px; }
      .progress__note--left {left: 0;}
      .progress__note--right {right: 0; text-align: right; max-width: 70%;}
}
@media screen and (max-width: 767px) {
   .progress__panel {height: 6px;}
      .progress__note {font-size: 14px;}
         .progress__note--left {padding-bottom: 5px;}
         .progress__note--right {padding-top: 5px;}
}

/*selection form*/
.calc__step {/*display: none;*/ position: absolute; top: 0; left: 0; opacity: 0; z-index: -1;}
.calc__step.is-visible {/*display: block;*/ position: relative; opacity: 1; z-index: auto;}
   .calc-step__title {margin-bottom: 20px;}
   .calc-step__columns {gap: 20px;}
      .calc-controls__hidden {position: absolute; z-index: -1; visibility: hidden; width: 0; height: 0; overflow: hidden;}
      /*controls with gradient*/
      .calc__controls .accordion__header {position: static;}
         .calc__controls .accordion__toggle {position: relative; z-index: 3;}
         .calc__controls .radio.border-gradient:has(input[type=radio]:checked):before,
         .calc__controls .checkbox.border-gradient:has(input[type=checkbox]:checked):before {opacity: 1;}
         .calc__controls input[type="radio"],
         .calc__controls input[type="checkbox"] {top: 0; left: 0; width: 100%; height: 100%; cursor: pointer;}
      /*controls with accordion*/
      .calc__controls .accordion__content {font-size: 18px; padding-left: 40px;}
         .calc__controls .accordion__content div {margin-bottom: 10px;}
      /*radio*/
      .calc__controls--radio {gap: 20px 0;}
         .calc__controls--radio .calc-controls__item {min-height: 40px;}
            .calc__controls--radio .radio {height: 100%;}
               .calc__controls--radio .radio__label {width: 100%; height: 100%; padding: 5px 20px; gap: 0 20px;}
               .calc__controls--radio .radio__text {font-size: 26px;}
      /*radio colors*/
      .calc__controls--colors {align-self: start; grid-template-columns: repeat(5, 1fr); gap: 20px; padding: 40px clamp(40px,3.386vw,65px); /*gap: clamp(20px,2vw,35px) clamp(20px,3.7vw,70px);*/}
         .calc__controls--colors .calc-controls__item {margin-bottom: 0;}
            .calc__controls--colors .radio {border-radius: 13px;}
               .calc__controls--colors .border-gradient__in {height: 100%; padding: 20px 20px 50px; position: relative;}
                  .calc__controls--colors .radio__image {position: relative; z-index: 2; margin-bottom: 10px;}
                     .calc__controls--colors .radio__image a {display: block; cursor: pointer; position: relative;}
                     .calc__controls--colors .radio__image a:has(img[src*="empty-color"]) {pointer-events: none;}
                        .calc__controls--colors .radio__image img {display: block; /*border-radius: 8px;*/}
                        .calc__controls--colors .radio__image a:after {content: ''; position: absolute; top: 50%; left: 50%; z-index: 1; width: 26px; height: 26px; margin: -13px 0 0 -13px;; background: url('../i/zoom.svg') 0 0 / contain no-repeat;}
                        .calc__controls--colors .radio__image a:has(img[src*="empty-color"]):after {display: none;}
                  .calc__controls--colors .radio__text {margin-bottom: 20px; font-size: 14px; line-height: 1;}
                  .calc__controls--colors .radio__label {display: block;}
                     .calc__controls--colors .radio__text {display: block;}
                     .calc__controls--colors .radio__decor {position: absolute; bottom: 20px; left: 50%; margin-left: -10px;}
                     .calc__controls--colors .radio__btn {width: 100%; min-height: 30px;}
                     .calc__controls--colors .radio__label:hover .radio__btn {background: var(--blue-light);}
                        .calc__controls--colors .radio__btn:before,
                        .calc__controls--colors .radio__btn:after {content: ''; position: absolute; top: 50%; left: 50%; background: #FFF;}
                           .calc__controls--colors .radio__btn:before {width: 2px; height: 16px; margin: -8px 0 0 -1px;}
                           .calc__controls--colors .radio__btn:after {height: 2px; width: 16px; margin: -1px 0 0 -8px;}
      /*checkbox*/
      .calc__controls--checkbox {gap: 10px 0;}
         .calc__controls--checkbox .calc-controls__item {min-height: 40px;}
            .calc__controls--checkbox .checkbox {height: 100%;}
               .calc__controls--checkbox .checkbox__label {width: 100%; height: 100%; padding: 5px 20px; gap: 0 20px;}
               .calc__controls--checkbox .tooltip + .checkbox__label {padding-right: 40px;}
               .calc__controls--checkbox .checkbox__text {font-size: 22px; line-height: 1;}
      /*images slider*/
      .calc-image__list {height: 100%;}
      /*checkbox with image*/
      .calc__controls--checkbox-image {grid-template-rows: auto; grid-auto-rows: minmax(80px, auto);}
         .calc__controls--checkbox-image .checkbox__image {width: 40%; max-width: 200px; flex: 1 0 auto; text-align: center;}
      /*note*/
      .calc__note .note {padding: 20px 40px;}
      /*text*/
      .calc__text ol {margin-bottom: 1.5em;}
         .calc__text ol li {padding-left: 0; margin-bottom: 5px;}
         .calc__text ol li:last-child {margin-bottom: 0;}
      .calc-text__icons ul {gap: 20px;}
      /*final form*/
      .calc-step__form {gap: 0 35px; grid-template-columns: auto clamp(260px,19.792vw,380px); grid-template-rows: auto 1fr;}
         .calc-step__form .form__text {grid-column: span 2;}
         .calc-step__form .form__fieldset {grid-auto-rows: minmax(40px, auto); align-content: space-between;}
            .calc-step__form .form__field {margin-bottom: 15px;}
            .calc-step__form .form__field:last-child {margin-bottom: 0;}
               .calc-step__form .form__textinput,
               .calc-step__form .jq-selectbox {height: 40px;}
               .calc-step__form .form__textinput,
               .calc-step__form .jq-selectbox__select-text,
               .calc-step__form .jq-selectbox__dropdown ul li {font-size: 16px;}
               .calc-step__form .jq-selectbox__select-text {line-height: 38px;} 
               .calc-step__form .jq-selectbox__dropdown {top: 43px !important;}
               .calc-step__form .form__contact .form__legend {margin-bottom: 0.5em;}
               .calc-step__form .radio--contact .radio__decor:after {background: var(--blue-light);}
      /*reasons*/
      .calc__reasons .reasons {height: 100%;}
      .touchevents .reasons.border-gradient {padding: 2px;}
         .touchevents .reasons.border-gradient:before {opacity: 1;}
         .reasons__in {height: 100%; padding: 25px; border: 2px solid var(--blue-light);}
         .no-touchevents .reasons__in {border-color: transparent;}
         .no-touchevents .reasons__in:hover {border-color: var(--blue-light);}
            .reasons__text {position: relative; gap: 20px;}
               .reasons__num {background: linear-gradient(189deg, #ED1C24 36.11%, #7BAFDE 72.31%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-size: clamp(70px,10.5vw,200px); line-height: 0.75; transition: var(--easing);}
      /*reasons modal*/
      .reasons-list-item__in {gap: 0 20px;}
         .reasons-list-item__num {width: 28%; flex: 0 0 auto; text-align: center; font-size: 280px; line-height: 0.75;}
         .reasons-list-item__title {font-size: 64px; line-height: 0.8; margin-bottom: 0.35em;}

/*step 1*/
.calc__step--1 .calc-step__columns {grid-template-columns: 370px auto; column-gap: 40px; padding: 20px;}
  
@media screen and (min-width: 768px) {
   .calc__steps,
   .calc__step,
   .calc-step__in {height: 100%;}
      .calc__image img {display: block; height: 100%; width: 100%; object-fit: cover;}
   /*controls with accordion*/
   .calc__controls .accordion__header {height: auto; margin-bottom: 10px;}
      .calc__controls .accordion__toggle {display: none;}
   .calc__controls .accordion__body {height: auto !important;}
      .calc__controls .accordion__content {padding-bottom: 0;}
   /*checkbox*/
   .calc__controls--checkbox {grid-template-rows: repeat(6, 1fr);}
   /*checkbox with image*/
   .calc__controls--checkbox-image .checkbox__decor {position: absolute; top: -10px; right: -10px; width: 30px; height: 30px; border-radius: 100%; border: 0; background: var(--blue-light); opacity: 0; transform: scale(0);}
   .checkbox input[type="checkbox"]:checked ~ .checkbox__decor {opacity: 1; transform: scale(1);}
      .calc__controls--checkbox-image .checkbox__decor:after {opacity: 1; transform: scale(1);}
   /*reasons*/
   .reasons__word {position: absolute; top: 0; left: 0; font-family: var(--font-bold); color: var(--red); text-align: center;} 
}
@media screen and (min-width: 1200px) {
   .calc__left {position: relative;}
      .calc__steps {padding-top: 40px;}
         .calc-step__in {grid-template-rows: auto 1fr;}
            .calc-step__columns {grid-template-columns: 1.3948fr 1fr;}
   /*radio*/
   /*.calc__controls--radio .border-gradient__in*/
   .calc__controls--radio .radio__label,
   .calc__controls--checkbox .checkbox__label {padding: 20px 10px 20px 20px;}
   /*radio colors*/ 
   .calc__controls--colors .radio__decor {margin-left: -13px;}
   /*checkbox auto rows*/
   .calc__controls--checkbox-auto {grid-auto-rows: minmax(60px, auto);}
   /*checkbox with image*/
   .calc__controls--checkbox-image {gap: 30px;grid-template-columns: repeat(2, 1fr); grid-template-rows: auto;}
   /*text*/
   .calc-text__icons .svg-icon {flex-direction: column; gap: 10px; text-align: center;}
   /*final form*/
   .calc-step__form {height: 100%;}
      .calc-step__form .form__contact {gap: 20px;}
   /*reasons*/
   .reasons__text {font-size: clamp(16px,1.05vw,20px);}
      .reasons__word {top: auto; bottom: 100%; margin-bottom: 0.35em; width: clamp(35px, 6.5vw, 150px); font-size: 24px;}
      .reasons__text br {display: none;}
      .reasons__text .btn {margin-top: 10px;}

   /*step 1*/
   .calc__step--1 .calc-step__slider-scroll .swiper-wrapper {display: block;}
      .calc__step--1 .calc-step__columns {height: 100%;}
   .calc__step--1 .calc__controls {position: absolute; bottom: 0; right: 0; width: calc(100% - 370px - 40px); padding: 20px 0 0 20px; background: #FFF; z-index: 2;}

   /*step 3*/
   .calc__step--3 .calc__controls--colors .radio__text {font-size: 12px;}
}
@media screen and (max-width: 1679px) {
   /*radio colors*/
   .calc__controls--colors .border-gradient__in {padding: 15px 15px 50px;}
}
@media screen and (max-width: 1440px) {
   /*controls with accordion*/
   .calc__controls .accordion__content {font-size: 16px;}
   /*radio*/
   .calc__controls--radio .radio__text {font-size: 18px;}
   /*checkbox*/
   .calc__controls--checkbox .checkbox__text {font-size: 18px;}
}
@media screen and (max-width: 1279px) {
   /*radio colors*/
   .calc__controls--colors {grid-template-columns: repeat(4, 1fr);}
}
@media screen and (min-width: 1200px) and (max-width: 1365px) {
   .calc__steps {padding-top: 30px;}
      .calc-step__title {font-size: 36px;}
   /*radio colors*/
   .calc__controls--colors .radio__image img {min-width: 82px;}
   /*reasons*/
   .reasons__in {padding: 15px;}
   /*final form*/
   .calc-step__form .form__contact .form__legend, 
   .calc-step__form .radio--contact .radio__text {font-size: 16px;}
   .calc-step__form .checkbox--policy .checkbox__text {font-size: 14px;}

   /*step 1*/
   .calc__step--1 .calc-step__columns {grid-template-columns: 320px auto;}
   .calc__step--1 .calc__controls {width: calc(100% - 320px - 40px);}
   .calc__step--1 .calc__text ol li {font-size: 16px; margin-bottom: 0;}

   /*step 7*/
   .calc__step--7 .calc-step__form .form__text {font-size: 16px;}
   .calc__step--7 .calc__note .svg-icon__text {font-size: 14px;}
}
@media screen and (max-width: 1199px) {
   .calc-step__columns {gap: 10px;}
   /*controls with gradient*/
  /* .calc__controls .radio.border-gradient,
   .calc__controls .checkbox.border-gradient {padding: 0;}
      .calc__controls .radio.border-gradient:before,
      .calc__controls .checkbox.border-gradient:before {display: none;}*/
   /*controls with accordion*/
   .calc__controls .accordion__content {padding-left: 30px;}
   /*radio*/
   .calc__controls--radio .calc-controls__item {height: 40px;}
   /*radio colors*/
   .calc__controls--colors {padding: 20px; gap: 10px; height: 100%;}
      .calc__controls--colors .calc-controls__item {width: 90px;}
         .calc__controls--colors .radio {border-radius: 8px;}
            .calc__controls--colors .border-gradient__in {padding: 10px 10px 30px;}
               /*.calc__controls--colors .radio__image {width: 70px;}*/
               .calc__controls--colors .radio__image a:after {width: 20px; height: 20px; margin: -10px 0 0 -10px;}
               .calc__controls--colors .radio__text {margin-bottom: 10px; font-size: 11px;}
               .calc__controls--colors .radio__decor {bottom: 10px;}
                  .calc__controls--colors .radio__btn {min-height: 15px;}
                     .calc__controls--colors .radio__btn:before {height: 10px; margin-top: -5px;}
                     .calc__controls--colors .radio__btn:after {width: 10px; margin-left: -5px;}
   /*checkbox*/
   .calc__controls--checkbox .checkbox__text {font-size: 16px;}
   /*checkbox with image*/
   .calc__controls--checkbox-image {gap: 10px; grid-template-rows: repeat(4, 1fr);}
      .calc__controls--checkbox-image .checkbox__text {font-size: 18px;}
   /*text*/
   .calc__text {font-size: 14px;}
      .calc-text__icons .svg-icon {margin-bottom: 15px;}
      .calc-text__icons .svg-icon:last-child {margin-bottom: 0;}
         .calc-text__icons .svg-icon__image svg {width: 27px;}
         .calc-text__icons .svg-icon__text br {display: none;}
   /*note*/
   .calc__note .note {padding: 10px; gap: 0 10px; align-items: start;}
      .calc__note .note .svg-icon__image {width: 25px; height: 25px;}
   /*final form*/
   .calc-step__form .form__fieldset {margin-bottom: 10px;}
   .calc-step__form .form__contact .form__fieldset {margin-bottom: 0;}
      .calc-step__form .form__field {margin-bottom: 10px;}
         .calc-step__form .form__contact .form__legend, 
         .calc-step__form .radio--contact .radio__text {font-size: 16px;}
   /*reasons*/
   .reasons__in {display: block; padding: 10px; text-align: center;}
      .reasons__text {gap: 0 10px; font-size: 14px;}
         .reasons__num {font-size: 70px;}
   /*reasons modal*/
   .reasons-list-item__num {width: 18%; font-size: 150px;}
   .reasons-list-item__title {font-size: 32px;}
   /*tooltip*/
   .calc-controls__item .tooltip {top: 50%; margin-top: -20px; right: 0; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;}

   /*step 1*/
   .calc__step--1 .calc-step__slider-scroll.swiper {max-width: 100%; margin-bottom: 10px;}
      .calc__step--1 .calc-step__columns {min-width: 560px; width: 100%; grid-template-columns: 220px auto; column-gap: 30px;}
}
@media screen and (min-width: 481px) and (max-width: 1199px) {
   /*reasons*/
   .reasons__text {padding-top: 20px;}
      .reasons-text__in {display: flex; flex-wrap: nowrap; align-items: center; gap: 0 20px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .calc-step__columns {grid-template-rows: auto 1fr;}
      .calc-step__title {position: absolute; bottom: 100%; left: 0; height: 80px; margin: 0; padding-bottom: 15px; white-space: nowrap;}
   /*controls with accordion*/
   .calc__controls .accordion__content {font-size: 14px;}
   /*radio*/
   .calc__controls--radio {gap: 10px 0; align-self: end;}
      /*.calc__controls--radio .border-gradient__in,*/
      .calc__controls--radio .radio__label,
      .calc__controls--checkbox .checkbox__label {padding: 5px 20px;}
      .calc__controls--radio .radio__label {gap: 10px;}
   /*colors*/
   .calc-scrollbar-colors {width: var(--calc-col-width);}
   /*checkbox with image*/
   .calc__controls--checkbox-image .checkbox__decor {top: -5px; right: -5px; width: 20px; height: 20px;}
      .calc__controls--checkbox-image .checkbox__decor:after {width: 14px; height: 11px;}
   /*note*/
   .calc__note .note .svg-icon__text {font-size: 11px;}
   /*final form*/
   .calc-step__form .form__fieldset {width: var(--calc-col-width);}
   .calc-step__form .form__contact .form__legend, 
   .calc-step__form .radio--contact .radio__text {font-size: 16px;}
   .calc-step__form .checkbox--policy .checkbox__text {font-size: 14px;}

   /*step 1*/
   .calc__step--1 .calc-step__in {grid-template-rows: auto auto;}
      .calc__step--1 .calc-step__slider-scroll.swiper {max-width: var(--calc-col-width);}
      .calc__step--1 .calc__controls--radio {height: 100%;}
         .calc__step--1 .calc__controls--radio .calc-controls__item {height: 100%;}

   /*step 4, step 5*/
   .calc__step--4 .calc-step__columns,
   .calc__step--5 .calc-step__columns {grid-template-rows: 220px 1fr;}
}
@media screen and (max-width: 767px) {
   .calc-controls__item {margin-bottom: 10px;}
   .calc-controls__item:last-child {margin-bottom: 0;}
   .calc-step__slider-scroll.swiper {overflow: visible;}
   /*controls with accordion*/
   .calc__controls .accordion__header {height: 40px; padding: 0 20px;}
   .calc__controls .accordion__content {padding: 0 20px 20px;}
   /*radio*/
   .calc__controls--radio .radio {height: 40px;}
   /*radio colors*/
   .calc__controls--colors {background: var(--gray-light);}
   /*checkbox*/
   .calc__controls--checkbox .checkbox {height: 40px;}
   /*checkbox with image*/
   .calc__controls--checkbox-image .checkbox {height: 80px;}
      .calc__controls--checkbox-image .checkbox__image {width: 30%;}
   /*reasons modal*/
   .reasons-list-item__num {font-size: 120px;}
   .reasons-list-item__title {font-size: 26px;}
   /*tooltip*/
   .calc-controls__item .tooltip__in {right: -5px;}
   /*final form*/
   .calc-step__form .form__contact,
   .calc-step__form .form__policy:last-child {margin-bottom: 15px;}
}
@media screen and (min-width: 481px) and (max-width: 767px) {
   /*radio*/
   .calc__controls--radio {display: flex; flex-direction: row; gap: 10px;}
      .calc__controls--radio .calc-controls__item {flex: 0 0 calc(50% - 5px);}
}
@media screen and (max-width: 480px) {
   .calc-step__title {margin-bottom: 15px;}
   /*controls with accordion*/
   .calc__controls .accordion__header {padding: 0 10px;}
   .calc__controls .accordion__content {padding: 0 10px 10px; font-size: 14px;}
   /*radio*/
   .calc__controls--radio .radio__label {padding-left: 10px; gap: 10px;}
      .calc__controls--radio .radio__text {font-size: 16px;}
   /*checkbox*/
   .calc__controls--checkbox .checkbox__label {padding-left: 10px; gap: 0 10px;}
   /*checkbox with image*/
   .calc__controls--checkbox-image .checkbox__label {gap: 0 20px;}
      .calc__controls--checkbox-image .checkbox__text {font-size: 16px;}
   /*final form*/
   .calc-step__form .form__textinput,
   .calc-step__form .jq-selectbox {height: 35px;}
   .calc-step__form .form__textinput,
   .calc-step__form .jq-selectbox__select-text,
   .calc-step__form .jq-selectbox__dropdown ul li {font-size: 14px;}
   .calc-step__form .jq-selectbox__select-text {line-height: 33px;}
   .calc-step__form .jq-selectbox__dropdown {top: 33px !important;}
   /*reasons*/
   .reasons__in {padding: 10px 20px; text-align: left;}
      .reasons__text {padding-bottom: 40px;}
         .reasons__num {font-size: 42px;}
         .reasons__text br {display: none;}
         .reasons__text .btn {display: block; width: 130px; position: absolute; bottom: 0; left: 50%; margin-left: -65px;}
   /*reasons modal*/
   .reasons-list-item__num {font-size: 100px;}
   .reasons-list-item__title {font-size: 22px;}
}
@media screen and (max-width: 374px) {
   /*text*/
   .calc-text__icons .svg-icon {margin-bottom: 10px;}

   /*step 1*/
   .calc__step--1 .calc-step__columns {grid-template-columns: 180px auto; column-gap: 20px;}
}
@media screen and (max-width: 767px) and (orientation: landscape) {
   .calc-step__title {margin-bottom: 15px;}
   .calc-step__columns {grid-template-columns: 1.3948fr 1fr;}
      .calc__image img {display: block; height: 100%; width: auto; object-fit: cover;}
   /*controls with accordion*/
   .calc__controls .accordion__header {padding: 0 10px;}
   .calc__controls .accordion__content {padding: 0 10px 10px; font-size: 14px;}
   /*radio*/
   .calc__controls--radio {display: flex; flex-direction: row; gap: 10px;}
      .calc__controls--radio .radio__label {padding-left: 10px; gap: 10px;}
         .calc__controls--radio .radio__text {font-size: 16px;}
   /*checkbox*/
   .calc__controls--checkbox .checkbox__label {padding-left: 10px; gap: 0 10px;}
   /*checkbox with image*/
   .calc__controls--checkbox-image {display: grid; gap: 0 10px; grid-template-rows: repeat(2, 1fr); grid-template-columns: repeat(2, 1fr);}
      .calc__controls--checkbox-image .checkbox__text {font-size: 16px;}
   /*final form*/
   .calc-step__form .form__textinput,
   .calc-step__form .jq-selectbox {height: 35px;}
   .calc-step__form .form__textinput,
   .calc-step__form .jq-selectbox__select-text,
   .calc-step__form .jq-selectbox__dropdown ul li {font-size: 14px;}
   .calc-step__form .jq-selectbox__select-text {line-height: 33px;}
   .calc-step__form .jq-selectbox__dropdown {top: 33px !important;}
   /*reasons*/
   .reasons__in {padding: 10px 20px;}
      .reasons__text {padding-top: 0;}
         .reasons-text__in {gap: 0;}
            .reasons__num {font-size: 42px;}
            .reasons__text br {display: none;}
            .reasons__text .btn {margin-left: 20px;}
   /*reasons modal*/
   .reasons-list-item__num {font-size: 100px;}
   .reasons-list-item__title {font-size: 22px;}
}
@media screen and (max-width: 666px) and (orientation: landscape) {
   /*text*/
   .calc-text__icons .svg-icon {margin-bottom: 10px;}

   /*step 1*/
   .calc__step--1 .calc-step__columns {min-width: 500px; grid-template-columns: 180px auto; column-gap: 20px;}
}

/*panel*/
.calc__panel {padding: clamp(20px,7.7vh,70px) 40px 40px;}
   .calc-panel__title {font-size: 20px;}
   .calc-panel__part {position: absolute; bottom: -33px; left: 50%; margin-left: -40px; width: 80px; height: 52px; /*border-radius: 100%; box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.15); */z-index: 1;}
      .calc-panel__part:before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 18px; background: var(--gray-light); z-index: 1;}
      .calc-panel__part svg {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
      .calc-panel__toggle {position: absolute; bottom: 8px; left: 50%; margin-left: -19px; width: 38px; height: 38px; border-radius: 100%;}
         .calc-panel__toggle .btn-expand {border: 0; background: var(--blue); z-index: 1;}
         .calc-panel__toggle.is-active .btn-expand {background: var(--blue-light);}
            .calc-panel__toggle .btn-expand:before {top: 10px; left: 4px;}
            .calc-panel__toggle .btn-expand:after {left: 10px; top: 4px;}
            .calc-panel__toggle .btn-expand:before, 
            .calc-panel__toggle .btn-expand:after,
            .calc-panel__toggle.is-active .btn-expand:before, 
            .calc-panel__toggle.is-active .btn-expand:after {background: #FFF;}
            .calc-panel__toggle.is-active .btn-expand:before, 
            .calc-panel__toggle.is-active .btn-expand:after {transform: rotate(45deg);}
   .calc__baseline {margin-bottom: 20px;}
      .calc__model {gap: 0 40px; margin-bottom: 5px; font-size: 26px;}
      .calc__properties table {width: 100%;}
         .calc__properties td {padding-top: 5px; vertical-align: top; font-size: 22px;}
         .calc__properties td:nth-child(odd) {padding-right: 20px;}
         .calc__properties td:nth-child(even) {padding-right: 40px; white-space: nowrap;}
         .calc__properties tr:first-child td {padding-top: 0;}
         .calc__properties td:nth-child(even):last-child {padding-right: 0;}
   .calc__cost {margin-bottom: 20px; gap: 20px; font-size: 26px;}
      .calc-cost__title {align-self: end;}
      .calc__price {gap: 0 20px;}
         .calc__price .price--old {font-size: 20px;}
      .calc__badge {align-self: center; flex: 1 0 auto;}
   .calc__options table {width: 100%;}
      .calc__options tr.is-hidden {display: none;}
         .calc__options td {border: 0; vertical-align: top; padding: 15px 20px 0 0; font-size: 16px;}
         .calc__options td:last-child {padding-right: 0;}
         .calc__options tr:first-child td {padding-top: 0;}
      
@media screen and (min-width: 768px) {
   .calc__panel {height: 100%;}
      .calc-panel__in {height: 100%;}
         .calc__baseline {order: 1; padding: 20px; background: #FFF;}
         .calc__cost {order: 2;}
         .calc__scroll {max-height: 280px;}
}
@media screen and (min-width: 1200px) {
   .calc-panel__data, .calc__options {max-width: 500px; margin: 0 auto;}
      .calc__cost {grid-template-columns: clamp(0px,12vw,160px) auto;}
      .calc__options td:first-child {width: clamp(0px,calc(12vw + 20px),180px);}
   .calc__scroll {max-height: 320px;}
}
@media screen and (max-width: 1440px) {
   .calc__model {font-size: 20px;}
   .calc__properties td {font-size: 16px;}
   .calc__cost {font-size: 18px;}
      .calc__price .price {font-size: 16px;}
      .calc__price .price--old {font-size: 14px;}
   .calc__options td {font-size: 14px;}
}
@media screen and (min-width: 1200px) and (max-width: 1440px) {
   .calc__cost {grid-template-columns: 90px auto;}
      .calc__options td:first-child {width: 110px;}
      .calc__properties table {width: auto; max-width: 100%;}
}
@media screen and (max-width: 1199px) {
   .calc__panel {padding: 20px;}
      .calc__baseline {margin-bottom: 10px; padding: 10px;}
         .calc__model {gap: 0 10px;}
         .calc__properties td:nth-child(odd) {padding-right: 5px;}
         .calc__properties td:nth-child(even) {padding-right: 10px;}
      .calc__cost {margin-bottom: 10px;}
      .calc__options td {padding-right: 15px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .calc__panel {height: 100%;}
      .calc__cost {grid-template-columns: 1fr auto;}
         .calc-cost__title {align-self: start;}
         .calc__cost:has(.price--old) .calc-cost__title {padding-top: 1em;}
         .calc__price {display: block; position: relative;}
}
@media screen and (max-width: 767px) {
   .calc__panel {position: fixed; top: var(--header-height); left: 0; width: 100%; z-index: 10; padding: 0 20px 18px; border-radius: 0px 0px 10px 10px; box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.15); transform: translateY(calc((100% + 30px) * -1)); transition: transform var(--easing-slow);}
   .catalog-item__row.is-inview .calc__panel {transform: translateY(0);}
      .calc-panel__title {padding: 10px 0 5px;}
      .calc-panel__data, .calc__options {position: relative; z-index: 2;}
      .calc__baseline {padding: 8px 0 0; margin-bottom: 8px; display: none;}
         .calc__model {margin-bottom: 8px;}
         .calc__properties table {width: auto;}
            .calc__properties td,
            .calc__options td {padding-top: 8px; font-size: 14px;}
            .calc__options td:first-child,
            .calc__properties td:first-child {width: 86px;}
            .calc__properties td:nth-child(odd) {padding-right: 10px;}
            .calc__properties td:nth-child(even) {padding-right: 20px;}
      .calc__cost {grid-template-columns: auto auto; justify-content: center; gap: 0 30px; margin-bottom: 0; padding: 5px 20px 10px; background: #FFF;}
      .calc__options {display: none;}
         /*.calc__options td:first-child {width: 30%;}*/
}
@media screen and (min-width: 481px) and (max-width: 767px) {
   .calc__properties table, .calc__options table {width: auto; max-width: 100%;}
      .calc__options td {padding-right: 30px;}
      .calc__properties td:first-child,
      .calc__options td:first-child {width: 140px;}
}
@media screen and (max-width: 480px) {
   .calc__cost {gap: 0 20px; margin-left: -20px; margin-right: -20px;}
}
@media screen and (max-width: 374px) {
   .calc__cost {font-size: 16px; gap: 0 10px;}
      .calc__price {gap: 0 10px;}
         .calc__price .price {font-size: 14px;}
         .calc__price .price--old {font-size: 12px;}
   .calc__options td {padding-right: 10px;}
}
@media screen and (min-width: 768px) and (max-width: 991px) and (orientation: landscape) {
   .calc__baseline, .calc__options {display: block !important;}
}


/*====================================================
   .widget
====================================================*/
/*in card*/
.card--widget {width: clamp(340px,20vw,384px)}
   .card--widget .card__content {padding: 20px;}
   .card--widget .card__content, 
   .card--widget .card__text {height: 100%;}
      .card--widget .card__hover {background: linear-gradient(#0071E3,#12EEEE);}
         .no-touchevents .cards.intro .card--widget .card__hover:hover .card__front {transform: none;}
         .card--widget .widget-wrapper {width: 100%; max-width: 100%; height: 100%; margin: 0 auto; overflow: hidden; position: relative;}

@media all and (max-width: 1199px) {
   .card--widget {width: 340px;}
}
@media all and (max-width: 480px) {
   .card--widget {width: 330px;}
      .card--widget .card__content {padding: 15px;}
}
@media all and (max-width: 374px) {
   .card--widget {width: 320px;}
      .card--widget .card__content {padding: 10px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .card--widget {width: 330px;}
      .card--widget .card__content {padding: 15px;}
}

/*top block*/
.widget__title h2, 
.widget__title .h2 {margin-bottom: 0.75em;}
.widget__link {margin-top: 5px;}

@media screen and (min-width: 1200px) {
   .widget__in {gap: 0 90px;}
      .widget__content {order: 2; max-width: 645px;}
         .widget__text {margin-bottom: 30px;}
      .widget__iframe {order: 1;}
         .widget__iframe > div {width: clamp(360px,39.584vw,760px) !important;}
}
@media screen and (max-width: 1199px) {
   .widget__content {margin-bottom: 30px;}
      .widget__title h2 br,
      .widget__title .h2 br {display: none;}
      .widget__text {position: relative; height: 5em; overflow: hidden; transition: height var(--easing);}
         .widget__text:after {content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 75px; background: linear-gradient(transparent, #FFF); z-index: 1;}
         .widget__text.is-full:after {opacity: 0;}
         .widget__text .text-readmore {position: relative; z-index: 0; padding-bottom: 10px;}
      .widget__link {position: relative; z-index: 2;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .widget__content {display: grid; grid-template-columns: auto 25vw; gap: 0 20px;
   grid-template-areas: 
      "a a"
      "b d"
      "c c";}
      .widget__title {grid-column: span 2; grid-area: a;}
      .widget__text {grid-area: b;}
      .widget__link {grid-area: c;}
      .widget__stars {grid-area: d;}
}
@media screen and (max-width: 480px) {
   .widget__text {height: 7em;}
}


/*====================================================
   .footer
====================================================*/
.footer {position: relative; z-index: 1; padding: clamp(70px,7.5vw,140px) 0;}
   .footer__in {position: relative;}
      .footer__col--1 {grid-area: a;}
      .footer__col--2 {grid-area: b;}
      .footer__col--3 {grid-area: c;}
      .footer__col--4 {grid-area: d;}
      .footer__col--5 {grid-area: e; align-self: center; text-align: right;}
         .footer__title {margin-bottom: 20px;}
         .footer__logo {display: inline-block; margin-bottom: 20px;}
         .footer__copyright {margin-bottom: 35px;}
         .footer__address {margin-bottom: 25px; max-width: 360px;}
            .footer__address .footer__title {margin-bottom: 10px;}
         .footer__phone {margin-bottom: 20px;}
         .footer__menu {margin-bottom: 20px;}
            .footer__menu .menu li {padding-left: 15px; margin: 0;}
            .footer__menu .menu li:hover {color: var(--blue);}
               .footer__menu .menu li:before {top: 7px; width: 3px; height: 3px; border-radius: 100%;}
         .footer__dev {gap: 10px;}
            .footer__dev img {transition: all var(--easing);}
            .footer__dev a:hover img {filter: brightness(0.5);}
          
@media screen and (min-width: 1200px) {
   .footer__in {gap: 0 clamp(40px,3.7vw,70px); grid-template-rows: repeat(3,auto); grid-template-columns: 33% calc(67% - clamp(40px,3.7vw,70px)); 
      grid-template-areas: 
      "a d"
      "b d"
      "c e";
   }
      .footer__in:before {content: ''; position: absolute; top: 0; left: calc(33% + clamp(40px,3.7vw,70px)); width: 1px; height: 100%; background: var(--gray-dark);}
      .footer__col--4,
      .footer__col--5 {padding-left: clamp(40px,3.7vw,70px);}
         .footer__menu {gap: 0 40px;}
            .footer__menu .menu li {margin: 0; line-height: 2;}
               .footer__menu .menu li:before {top: 15px;}
}
@media screen and (max-width: 1199px) {
   .footer {padding: 80px 0 120px;}
   .footer.font-16 {font-size: 16px;}
      .footer__in {gap: 0 40px; grid-template-rows: repeat(4,auto); grid-template-columns: 50% calc(50% - 40px); 
         grid-template-areas: 
         "a c"
         "b ."
         "d d"
         "e e";
      }
         .footer__col--2 {grid-column: span 2;}
         .footer__col--4 {margin-top: 40px; padding-top: 40px; border-top: 1px solid var(--gray-dark);}
            .footer__menu {gap: 0 13vw; justify-content: start;}
            .footer .font-20 {font-size: 20px;}
}
@media screen and (min-width: 481px) and (max-width: 1199px) {
   .footer__col--3 {justify-self: end;}
   .footer__address {margin-bottom: 0;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
   .footer-address__text .svg-icon__image {width: calc(45px - 1em);}
   .footer__menu {padding-left: 45px;}
}
@media screen and (max-width: 767px) {
   .footer {padding: 60px 0 80px;}
   .footer__col--4 {margin-top: 30px; padding-top: 30px;}
      .footer__title {margin-bottom: 15px;}
      .footer-menu__col:first-child {margin-bottom: 30px;}
}
@media screen and (max-width: 480px) {
   .footer {padding: 40px 0 80px;}
      .footer__col--5 {text-align: center;}
         .footer__logo img {width: 104px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .footer {padding: 40px 0 80px;}
      .footer-address__text .svg-icon__image {width: calc(45px - 1em);}
      .footer__menu {display: flex; gap: 0 13vw; justify-content: start; padding-left: 45px;}
         .footer__logo img {width: 104px;}
}


/*====================================================
   .modal-block
====================================================*/
.modal-block {visibility: hidden; position: fixed; top: 0; left: 0; right: 0; width: 100vw; height: 100%; z-index: 100;}
.modal-block.is-visible {visibility: visible;}
   .modal-block__overlay {opacity: 0; visibility: hidden; height: 100%; max-height: 100%; overflow: auto; -webkit-overflow-scrolling: touch; padding: var(--p-in); position: relative; z-index: 100; background: rgba(0,0,0,.7); transition: all var(--easing-slow);}
   .modal-block.is-visible .modal-block__overlay {visibility: visible; opacity: 1;}
      .modal-block__inner {opacity: 0; visibility: hidden; position: relative; width: 100%; max-width: 690px; padding: 60px; transform: scale(0.5); will-change: transform; transition: all var(--easing-slow); background: #FFF;}
      .modal-block--image .modal-block__inner {padding-left: 0; padding-right: 0;}
      .modal-block--article .modal-block__inner {max-width: 960px; padding: 80px;}
      .modal-block--send .modal-block__inner {max-width: 380px; padding: 60px 40px;}
      .modal-block.is-visible .modal-block__inner {opacity: 1; visibility: visible; transform: scale(1);}
         .modal-block--send .modal-block__bg {margin: 0 -60px 40px;}
            .modal-block__bg svg {width: 100%;}
         .modal-block__title h2,
         .modal-block__title .h2,
         .modal-block__title h3,
         .modal-block__title .h3 {line-height: 1;}
         .modal-block__title:last-child h2,
         .modal-block__title:last-child .h2,
         .modal-block__title:last-child h3,
         .modal-block__title:last-child .h3 {margin-bottom: 0;}

@media screen and (min-width: 1200px) {
   .modal-block--send .modal-block__title h3,
   .modal-block--send .modal-block__title .h3 {font-size: 32px;}

   .modal-block--xl-visible {visibility: visible; position: relative; right: auto; width: auto; height: auto; z-index: 1;}
      .modal-block--xl-visible .modal-block__overlay {opacity: 1; visibility: visible; height: auto; padding: 0; z-index: 1; background: none;}
         .modal-block--xl-visible .modal-block__close {display: none;}
         .modal-block--xl-visible .modal-block__inner {opacity: 1; visibility: visible; width: 100%; max-width: 100%; padding: 30px; transform: none; background: #FFF;}
}
@media screen and (max-width: 1199px) {
   .modal-block__inner {padding: 60px 40px;}
   .modal-block--article .modal-block__inner {padding: 60px;}
   .modal-block--send .modal-block__inner {max-width: 280px; padding: 40px 20px;}
      .modal-block--send .modal-block__bg {margin: 0 -40px 20px;}
}         
@media screen and (max-width: 480px) {
   .modal-block__overlay {padding: 20px 0;}
   .modal-block__close {top: 10px; right: 10px;}
   .modal-block__inner {padding: 40px 20px;}
   .modal-block--article .modal-block__inner {padding: 40px 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .modal-block__overlay {padding: 20px 0;}
   .modal-block__close {top: 10px; right: 10px;}
   .modal-block__inner {padding: 40px 20px;}
   .modal-block--article .modal-block__inner {padding: 40px 20px;}
}

/*modal article*/
.article__content {padding: 80px 80px 80px 115px;}
   .article__subtitle {margin-bottom: 0.5em;}
   .article__text:last-child {margin-bottom: 0;}
   .article__image img {margin: 0; display: block;}
   .article__image img + img {margin-top: var(--m-4);}

@media screen and (min-width: 1200px) {
   .article__title {margin-bottom: var(--m-6);}
}
@media screen and (max-width: 1199px) {
   .article__content {padding: 60px 40px;}
}
@media screen and (max-width: 480px) {
   .article__content {padding: 40px 20px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .article__content {padding: 40px 20px;}
}
                     

/*====================================================
   .back-top
====================================================*/
.back-top {opacity: 0; visibility: hidden; position: fixed; bottom: var(--p-in); right: var(--p-in); width: 60px; height: 60px; border: 1px solid #FFF; border-radius: 100%; overflow: hidden; z-index: 10; cursor: pointer; filter: contrast(0.5); transition: all var(--easing-slow);}
.back-top:hover {background: var(--blue-light); filter: contrast(1);}
.back-top.is-visible {opacity: 1; visibility: visible;}
body.is-blocked .back-top {opacity: 0; visibility: hidden;}
   .back-top svg {position: absolute; top: 50%; left: 50%; margin: -14px 0 0 -12px; width: 24px; height: 28px;}
   .no-touchevents .back-top:hover svg, .touchevents .back-top:active svg {animation: overflow-repeat-y .3s ease-out;}

@media screen and (max-width: 1199px) {
   .back-top {width: 40px; height: 40px;}
      .back-top svg {margin: -10px 0 0 -8px; width: 16px; height: 20px;}
}


/*====================================================
   Simplebar - v6.2.7 * Scrollbars, simpler
====================================================*/
[data-simplebar]{position:relative;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start}
.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}
.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto!important;height:auto!important;z-index:0}
.simplebar-offset{direction:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}
.simplebar-content-wrapper{direction:inherit;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;max-width:100%;max-height:100%;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}
.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{display:none;width:0;height:0}
.simplebar-content:after,.simplebar-content:before{content:' ';display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}
.simplebar-height-auto-observer-wrapper{box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}
.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}
.simplebar-track{z-index:1;position:absolute;right:10px;bottom:0;border-radius:3px;pointer-events:none;overflow:hidden}
[data-simplebar].simplebar-dragging{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}
.simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}
.simplebar-scrollbar:before{position:absolute;content:'';background:#9F9E9E;border-radius:2em;left:0;right:0;transition:opacity .2s .5s linear}
.simplebar-scrollbar.simplebar-visible:before{transition-delay:0s;transition-duration:0s}
.simplebar-track.simplebar-vertical{top:0;right: -10px;width:6px;background: #E8E7E7;}
.simplebar-scrollbar:before{top:0;bottom:0;left:0;right:0;}
.simplebar-track.simplebar-horizontal{left:0;height:11px;display:none !important;}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:0;bottom:0;min-height:0;min-width:10px;width:auto}
[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{right:auto;left:0}
.simplebar-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:scrollbar!important}
.simplebar-dummy-scrollbar-size>div{width:200%;height:200%;margin:10px 0}
.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}


/*====================================================
   Swiper slider (Swiper 10.0.4, https://swiperjs.com)
====================================================*/
.swiper{position:relative;overflow:hidden;overflow:clip;list-style:none;padding:0;z-index:1;display:block;--swiper-navigation-size: 44px;}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;position:relative;transition-property:transform;}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}
.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:''}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:''}
.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;-ms-touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{width: 100%;opacity: 0 !important; pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{opacity: 1 !important; pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}

/* --- Custom styles --- */
.of-v.swiper {overflow: visible;}
.swiper .swiper-slide:last-child {margin-right: 0;}

/*buttons*/
.swiper-button-wrapper {gap: 20px;}
.swiper-button-wrapper:has(.swiper-button-lock) {display: none;}
.swiper-button {position: relative; top: auto; left: auto; right: auto; margin: 0; width: 32px; height: 32px; border-radius: 100%; transition: var(--easing);}
.bg-gray-light .swiper-button:not(:hover) {background: #FFF;}
.swiper-button:hover {background: var(--blue-light);}
   .swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {display: none;}

@media screen and (max-width: 1199px) {
   .swiper-button-wrapper {justify-content: center;}
}

/*dots*/
.swiper-pagination-wrapper {position: absolute; bottom: 45px; left: 0; width: 100%; z-index: 2;}
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {position: relative; top: auto; bottom: auto; left: auto; transform: translateX(0); width: auto !important;}
.swiper-pagination-clickable .swiper-pagination-bullet {width: 10px; height: 10px; border-radius: 0; background: var(--anthracite); opacity: 1;}
.swiper-pagination-clickable .swiper-pagination-bullet.swiper-pagination-bullet-active, .swiper-pagination-clickable .swiper-pagination-bullet:hover {background: var(--blue-light);}
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {transform: none; transition: background var(--easing); margin: 0 4px; left: auto !important;}

/*nums*/
.swiper-pagination-nums {gap: 10px; margin-top: 40px;}
   .swiper-pagination-nums .swiper-pagination-bullet {display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin: 0 !important; border-radius: 100%; background: var(--gray); opacity: 1; font-size: 20px; color: var(--anthracite); transition: all var(--easing);}
   .swiper-pagination-nums .swiper-pagination-bullet-active,
   .swiper-pagination-nums .swiper-pagination-bullet:hover {color: #FFF;}

@media screen and (max-width: 480px) {
   .swiper-pagination-nums {gap: 4px; margin-top: 20px;}
      .swiper-pagination-nums .swiper-pagination-bullet {width: 38px; height: 38px;}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .swiper-pagination-nums {gap: 4px; margin-top: 20px;}
      .swiper-pagination-nums .swiper-pagination-bullet {width: 38px; height: 38px;}
}

/*scrollbar*/
.swiper-scrollbar.swiper-scrollbar-vertical, 
.swiper-vertical>.swiper-scrollbar {top: 40px; right: 20px; height: calc(100% - 80px); width: 11px; border-radius: 11px; background: var(--gray);}
.swiper-scrollbar.swiper-scrollbar-vertical .swiper-scrollbar-drag, 
.swiper-vertical>.swiper-scrollbar .swiper-scrollbar-drag {background: var(--blue-light); border-radius: 11px;}
.swiper-horizontal>.swiper-scrollbar, 
.swiper-scrollbar.swiper-scrollbar-horizontal {bottom: 0; left: 0; width: 100%; height: 7px; border-radius: 7px; background: var(--gray);}
   .swiper-horizontal .swiper-scrollbar-drag, 
   .swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag {background: var(--blue-light); border-radius: 7px;}

.card__article .swiper-scrollbar.swiper-scrollbar-vertical, 
.card__article .swiper-vertical>.swiper-scrollbar {top: 20px; right: 7px; height: calc(100% - 40px); width: 4px; border-radius: 4px; background: rgba(0,0,0,.25);}
.card__article .swiper-scrollbar.swiper-scrollbar-vertical .swiper-scrollbar-drag, 
.card__article .swiper-vertical>.swiper-scrollbar .swiper-scrollbar-drag {background: rgba(0,0,0,.5); border-radius: 4px;}

@media screen and (max-width: 480px) {
   .card__article .swiper-scrollbar.swiper-scrollbar-vertical, 
   .card__article .swiper-vertical>.swiper-scrollbar {right: 6px; top: 15px; height: calc(100% - 30px);}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
   .card__article .swiper-scrollbar.swiper-scrollbar-vertical, 
   .card__article .swiper-vertical>.swiper-scrollbar {right: 6px; top: 15px; height: calc(100% - 30px);}
}


/*====================================================
   FancyBox v2.1.5
====================================================*/
.fancybox-wrap,.fancybox-skin,.fancybox-outer,.fancybox-inner,.fancybox-image,.fancybox-wrap iframe,.fancybox-wrap object,.fancybox-nav,.fancybox-nav span,.fancybox-tmp {padding: 0;margin: 0;border: 0;outline: none;vertical-align: top;}
.fancybox-wrap {position: absolute;top: 0;left: 0;z-index: 8020;}
.fancybox-skin {position: relative;background:#FFF;color: #FFF;text-shadow: none;}
.fancybox-opened {z-index: 8030;}
.fancybox-outer, .fancybox-inner {position: relative;}
.fancybox-inner {overflow: hidden;}
.fancybox-type-iframe .fancybox-inner {-webkit-overflow-scrolling: touch; position: relative; height: auto !important;}
   .fancybox-type-iframe .fancybox-inner:before {content: ''; display: block; padding-top: 56.25%;}
   .fancybox-type-iframe .fancybox-inner iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.fancybox-error {color: #444;font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;margin: 0;padding: 15px;white-space: nowrap;}
.fancybox-image, .fancybox-iframe {display: block;width: 100%;height: 100%;}
.fancybox-image {max-width: 100%;max-height: 100%;}
#fancybox-loading {position: fixed;top: 50%;left: 50%;margin-top: -22px;margin-left: -22px;background-position: 0 -108px;opacity: 0.8;cursor: pointer;z-index: 8060;}
#fancybox-loading div {width: 44px;height: 44px;background: url('../i/fancybox/fancybox_loading.gif') center center no-repeat;}

.fancybox-close {position: absolute; top: 20px; right: 20px; width: 36px; height: 36px; border-radius: 100%; background: var(--red); opacity: 0.8; cursor: pointer; z-index: 2; transition: all var(--easing); cursor: pointer;z-index: 8040;}
.fancybox-type-iframe .fancybox-close {top: 60px; right: 15px;}
.fancybox-close:hover {opacity: 1;}
.fancybox-close:before, .fancybox-close:after {content: ''; position: absolute; top: 17px; bottom: auto; left: 5px; width: 26px; height: 2px; background: #FFF;}
.fancybox-close:before {transform: rotate(45deg);}
.fancybox-close:after {transform: rotate(-45deg);}
.fancybox-close:hover:after {width: 26px;}

@media screen and (max-width: 1199px) {
   .fancybox-close {width: 24px; height: 24px;}
   .fancybox-type-iframe .fancybox-close {top: -8px; right: -8px;}
      .fancybox-close:before, .fancybox-close:after {top: 11px; left: 4px; width: 16px;}
      .fancybox-close:hover:after {width: 16px;}
}

.fancybox-nav {position: absolute;top: 0;width: 40%;height: 100%;cursor: pointer;text-decoration: none;background: transparent url('../i/fancybox/blank.gif'); /* helps IE */-webkit-tap-highlight-color: rgba(0,0,0,0);z-index: 8040;}
.fancybox-prev, .fancybox-prev span {left: 0;}
.fancybox-next, .fancybox-next span {right: 0;}
.fancybox-nav span {position: absolute;top: 50%;width: 54px;height: 54px;margin-top: -27px; background: rgba(0,0,0,.55); cursor: pointer; z-index: 8040; visibility: hidden; opacity: 0; transition: all var(--easing);}
.fancybox-nav:hover span {opacity: 1; visibility: visible;}
.fancybox-nav span:before, .fancybox-nav span:after {content: ''; position: absolute; top: 25px; width: 24px; height: 2px; background: #FFF; transition: all var(--easing);}
.fancybox-prev span:before, .fancybox-prev span:after {left: 13px;}
.fancybox-next span:before, .fancybox-next span:after {left: 17px;}
.fancybox-prev span:before, .fancybox-next span:after {transform: rotate(45deg);}
.fancybox-prev span:after, .fancybox-next span:before {transform: rotate(-45deg);}
.fancybox-prev span:before, .fancybox-next span:before {margin-top: 9px;}
.fancybox-prev span:after, .fancybox-next span:after {margin-top: -7px;}

@media screen and (max-width: 1199px) {
   .fancybox-nav span {width: 38px;height: 38px;margin-top: -19px;}
      .fancybox-nav span:before, .fancybox-nav span:after {top: 18px; width: 15px;}
      .fancybox-prev span:before, .fancybox-prev span:after {left: 10px;}
      .fancybox-next span:before, .fancybox-next span:after {left: 12px;}
      .fancybox-prev span:before, .fancybox-next span:before {margin-top: 5px;}
      .fancybox-prev span:after, .fancybox-next span:after {margin-top: -5px;}
}

.fancybox-tmp {position: absolute;top: -99999px;left: -99999px;visibility: hidden;max-width: 99999px;max-height: 99999px;overflow: visible !important;}
/* Overlay helper */
.fancybox-lock {overflow: hidden !important;width: auto;}
.fancybox-lock body {overflow: hidden !important;}
.fancybox-lock-test {overflow-y: hidden !important;}
.fancybox-overlay {position: absolute;top: 0;left: 0;overflow: hidden;display: none;z-index: 8010;}
.fancybox-overlay-fixed {position: fixed;bottom: 0;right: 0;}
.fancybox-lock .fancybox-overlay {overflow: auto;overflow-y: scroll;}
/* Title helper */
.fancybox-title {visibility: hidden;opacity: 0; font-size: 12px; line-height: 1.7; color: #FFF; position: absolute; bottom: 0; left: 0; padding: 10px 20px; background: rgba(0,0,0,0.8); text-shadow: none;z-index: 8050; transition: all var(--easing);}
.fancybox-opened .fancybox-title {visibility: visible; opacity: 1;}
.fancybox-title-float-wrap {position: absolute;bottom: 0;right: 50%;margin-bottom: -35px;z-index: 8050;text-align: center;}
.fancybox-title-float-wrap .child {display: inline-block;margin-right: -100%;padding: 2px 20px;background: transparent; /* Fallback for web browsers that doesn't support RGBa */background: rgba(0,0,0,0.8);border-radius: 15px;text-shadow: 0 1px 2px #222;color: #FFF;font-weight: bold;line-height: 24px;white-space: nowrap;}
.fancybox-title-outside-wrap {position: relative;margin-top: 10px;color: #FFF;}
.fancybox-title-over-wrap {position: absolute;bottom: 0;left: 0;color: #FFF;padding: 10px;background: #000;background: rgba(0,0,0,0.8);}
.fancybox-title .tb, .fancybox-title .tb-cell {display: block;}
.fancybox-title p {margin-bottom: 0;}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
      only screen and (min--moz-device-pixel-ratio: 1.5),
      only screen and (min-device-pixel-ratio: 1.5){

   #fancybox-loading div {
      background-image: url('../i/fancybox/fancybox_loading@2x.gif');
      background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
   }
}


/*====================================================
   Animation
====================================================*/
/*.animate*/
.animate {opacity: 0;}
.animate {transition: transform .65s cubic-bezier(0,0,0.5,1) 0s, opacity .45s cubic-bezier(0,0,0.5,1) 0s, visibility .45s cubic-bezier(0,0,0.5,1) 0s;}
.animate--fast {transition: transform .35s cubic-bezier(0,0,0.5,1) 0s, opacity .3s cubic-bezier(0,0,0.5,1) 0s, visibility .3s cubic-bezier(0,0,0.5,1) 0s;}
.animate--slow {transition: transform 0.95s cubic-bezier(0,0,0.5,1) 0s, opacity 0.75s cubic-bezier(0,0,0.5,1) 0s, visibility 0.75s cubic-bezier(0,0,0.5,1) 0s;}

/*delay*/
.animate--delay-03 {transition-delay: 0.3s;}
.animate--delay-04 {transition-delay: 0.4s;}
.animate--delay-05 {transition-delay: 0.5s;}
.animate--delay-065 {transition-delay: 0.65s;}
.animate--delay-1 {transition-delay: 1s;}
.animate--delay-15 {transition-delay: 1.5s;}
.animate--delay-2 {transition-delay: 2s;}
.animate--delay-3 {transition-delay: 3s;}
.animate--delay-5 {transition-delay: 5s;}

/*translate*/
.animate--from-top {transform: translate3d(0,-100%,0); transform-origin: top;}
.animate--from-bottom {transform: translate3d(0,100%,0); transform-origin: bottom;}
.animate--from-bottom-50 {transform: translate3d(0,50%,0); transform-origin: bottom;}
.animate--from-bottom-25 {transform: translate3d(0,25%,0); transform-origin: bottom;}
.animate--from-bottom-10 {transform: translate3d(0,10%,0); transform-origin: bottom;}
.animate--from-right {transform: translate3d(100%,0,0); transform-origin: right;}
.animate--from-right-50 {transform: translate3d(50%,0,0); transform-origin: right;}
.animate--from-right-25 {transform: translate3d(25%,0,0); transform-origin: right;}
.animate--from-right-10 {transform: translate3d(10%,0,0); transform-origin: right;}
.animate--from-left {transform: translate3d(-100%,0,0); transform-origin: left;}
.animate--from-left-50 {transform: translate3d(-50%,0,0); transform-origin: left;}
.animate--from-left-25 {transform: translate3d(-25%,0,0); transform-origin: left;}
.animate--from-left-10 {transform: translate3d(-10%,0,0); transform-origin: left;}

/*rotate*/
.animate--rotate-x {transform: rotateX(90deg);}
.animate--rotate-y {transform: rotateY(90deg);}

/*scale*/
.animate--scale {transform: scale(0);}
.animate--scale-50 {transform: scale(0.5);}
.animate--scale-90 {transform: scale(0.9);}
.animate--img-scale {transform: scale(1.2); opacity: 1; display: block;}

/*zoom*/
.animate--zoom-in {animation: zoomIn 2s linear 0s forwards alternate;}
.animate--zoom-out {animation: zoomOut 2s linear 0s forwards alternate;}

/*opacity*/
.animate--opacity {opacity: 0;}

/*.animate.is-inview*/
.animate.is-inview {opacity: 1; visibility: visible; transform: none; /* transition-delay: 0s;*/}

/*cover image*/
.cover {position: relative; overflow: hidden;}
   .cover__bg {z-index: 3; position: absolute; opacity: 1 !important; visibility: visible !important; top: 0; left: 0; width: 100%; height: 100%; transform: translate3d(0,0,0);}
   .cover__bg.is-inview.animate--from-right {transform: translate3d(-100%,0,0);}
   .cover__bg.is-inview.animate--from-left {transform: translate3d(100%,0,0);}

/*delay-list*/
.animate-list .animate.is-inview {transition-delay: calc(var(--item-index)*0.2s);}

/*slide down*/
@keyframes slideDown {
   from {
      transform: translateY(-100%)
   } 
   to {
      transform: translateY(0)
   }
}

/*slide up*/
@keyframes slideUp {
   from {
      transform: translateY(100%)
   } 
   to {
      transform: translateY(0)
   }
}

/*zoom*/
@keyframes zoomOut {
   0% {
     transform: scale(1.1)
   }
   to {
     transform: scale(1)
   }
}
@keyframes zoomIn {
   0% {
     transform: scale(1)
   }
   to {
     transform: scale(1.1)
   }
}
   
/*hang-y*/
@keyframes hang-y {
   0% {
      transform: translateY(0%); 
   }
   50% {
      transform: translateY(10%); 
   }  
   100% {
      transform: translateY(0%);
   }        
}

/*hang-x*/
@keyframes hang-x {
   0% {
      transform: translateX(0%); 
   }
   25% {
      transform: translateX(-25%); 
   }  
   50% {
      transform: translateX(0%); 
   } 
   75% {
      transform: translateX(25%); 
   }   
   100% {
      transform: translateX(0%);
   }        
}

/*overflow-repeat-x*/
@keyframes overflow-repeat-x {
   0%, 100% {
      transform: translate(0)
   }
   69.999% {
      transform: translate(300%)
   }
   70% {
      transform: translate(-100%)
   }
}

/*overflow-repeat-y*/
@keyframes overflow-repeat-y {
   0% {
      top: 50%
   }
   49.999% {
      top: -10%
   }
   50% {
      top: 110%
   }
   100% {
      top: 50%
   }
}

/*pulse*/
@keyframes pulse {
   0% {
      transform: scale(1);
   }
   40% {
      transform: scale(1.1);
   }
   80% {
      transform: scale(0.95);
   }
   100% {
      transform: scale(1);
   }
}

/*splitting*/
.splitting .word,
.splitting .char {display: inline-block;}
.splitting .char {position: relative;}
.splitting .char::before,
.splitting .char::after {content: attr(data-char); position: absolute; top: 0; left: 0; visibility: hidden; transition: inherit; user-select: none;}
.splitting {
   /* The center word index */
   --word-center: calc((var(--word-total) - 1) / 2);
   /* The center character index */
   --char-center: calc((var(--char-total) - 1) / 2);
   /* The center character index */
   --line-center: calc((var(--line-total) - 1) / 2);
}
.splitting .word {
   /* Pecent (0-1) of the word's position */
   --word-percent: calc(var(--word-index) / var(--word-total));
   /* Pecent (0-1) of the line's position */
   --line-percent: calc(var(--line-index) / var(--line-total));
}
.splitting .char {
   /* Percent (0-1) of the char's position */
   --char-percent: calc(var(--char-index) / var(--char-total));
   /* Offset from center, positive & negative */
   --char-offset: calc(var(--char-index) - var(--char-center));
   /* Absolute distance from center, only positive */
   --distance: calc((var(--char-offset) * var(--char-offset)) / var(--char-center));
   /* Distance from center where -1 is the far left, 0 is center, 1 is far right */
   --distance-sine: calc(var(--char-offset) / var(--char-center));
   /* Distance from center where 1 is far left/far right, 0 is center */
   --distance-percent: calc((var(--distance) / var(--char-center)));
}
.splitting--title .char {opacity: 0.3; transform: translateY(0.25em); transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1), opacity 0.3s linear; transition-delay: calc(20ms* var(--char-index));}
.splitting--title.is-inview .char {opacity: 1; transform: translateY(0);}
.splitting--line-bottom span {opacity: 0; transform: translate3d(0,1em,0); transition: all .5s cubic-bezier(0,0,0.5,1); transition-delay: calc(var(--line-index)*0.1s);}
.splitting--line-bottom.is-inview span {opacity: 1; transform: translate3d(0,0,0);}
.splitting--rotate .char {opacity: 0; transition: all 1s cubic-bezier(0.8, 0, 0.2, 1); transition-delay: calc(0.2s*(1 - var(--distance-percent)));}
.splitting--rotate.is-inview .char {transform: rotate3d(0, 1, 0, 360deg); opacity: 1}
.splitting--line span {opacity: 0;  transform: translate3d(80%,0,0);  transition: all .5s cubic-bezier(0,0,0.5,1);  transition-delay: calc(var(--line-index)*0.1s);}
.splitting--line.is-inview span {opacity: 1; transform: translate3d(0,0,0);}
.splitting--char-right .char {transition: transform .3s cubic-bezier(.3,0,.3,1),opacity .3s linear; opacity: 0; transform: translateX(calc(.2em * var(--char-index)))}
.splitting--char-right.is-inview .char {transform: translateX(0); opacity: 1;}


