/* CSS Document */

/*-----------------------------------------------------------------*/
/*--- Font Face Including ---*/
/*-----------------------------------------------------------------*/
/*------------------------------------------------------*/
/*--- Font Family :: [Helvetica] :: Regular ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Helvetica';
  src: url('../fonts/Helvetica.eot');
  src: url('../fonts/Helvetica.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Helvetica.woff2') format('woff2'),
       url('../fonts/Helvetica.woff') format('woff'),
       url('../fonts/Helvetica.ttf') format('truetype'),
       url('../fonts/Helvetica.svg#Helvetica-Regular') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Helvetica] :: Bold ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Helvetica';
  src: url('../fonts/Helvetica-Bold.eot');
  src: url('../fonts/Helvetica-Bold.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Helvetica-Bold.woff2') format('woff2'),
       url('../fonts/Helvetica-Bold.woff') format('woff'),
       url('../fonts/Helvetica-Bold.ttf') format('truetype'),
       url('../fonts/Helvetica-Bold.svg#Helvetica-Bold') format('svg');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Eurostile LT] :: Bold ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Eurostile LT';
  src: url('../fonts/EurostileLT-BoldExtendedTwo.eot');
  src: url('../fonts/EurostileLT-BoldExtendedTwo.eot?#iefix') format('embedded-opentype'),
       url('../fonts/EurostileLT-BoldExtendedTwo.woff2') format('woff2'),
       url('../fonts/EurostileLT-BoldExtendedTwo.woff') format('woff'),
       url('../fonts/EurostileLT-BoldExtendedTwo.ttf') format('truetype'),
       url('../fonts/EurostileLT-BoldExtendedTwo.svg#EurostileLT-BoldExtendedTwo') format('svg');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Regular ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Regular.eot');
  src: url('../fonts/Poppins-Regular.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-Regular.woff2') format('woff2'),
       url('../fonts/Poppins-Regular.woff') format('woff'),
       url('../fonts/Poppins-Regular.ttf') format('truetype'),
       url('../fonts/Poppins-Regular.svg#Poppins-Regular') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Italic ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Italic.eot');
  src: url('../fonts/Poppins-Italic.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-Italic.woff2') format('woff2'),
       url('../fonts/Poppins-Italic.woff') format('woff'),
       url('../fonts/Poppins-Italic.ttf') format('truetype'),
       url('../fonts/Poppins-Italic.svg#Poppins-Italic') format('svg');
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Medium ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Medium.eot');
  src: url('../fonts/Poppins-Medium.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-Medium.woff2') format('woff2'),
       url('../fonts/Poppins-Medium.woff') format('woff'),
       url('../fonts/Poppins-Medium.ttf') format('truetype'),
       url('../fonts/Poppins-Medium.svg#Poppins-Medium') format('svg');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Medium Italic ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-MediumItalic.eot');
  src: url('../fonts/Poppins-MediumItalic.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-MediumItalic.woff2') format('woff2'),
       url('../fonts/Poppins-MediumItalic.woff') format('woff'),
       url('../fonts/Poppins-MediumItalic.ttf') format('truetype'),
       url('../fonts/Poppins-MediumItalic.svg#Poppins-MediumItalic') format('svg');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Bold ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Bold.eot');
  src: url('../fonts/Poppins-Bold.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-Bold.woff2') format('woff2'),
       url('../fonts/Poppins-Bold.woff') format('woff'),
       url('../fonts/Poppins-Bold.ttf') format('truetype'),
       url('../fonts/Poppins-Bold.svg#Poppins-Bold') format('svg');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Poppins] :: Bold Italic ---*/
/*------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-BoldItalic.eot');
  src: url('../fonts/Poppins-BoldItalic.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Poppins-BoldItalic.woff2') format('woff2'),
       url('../fonts/Poppins-BoldItalic.woff') format('woff'),
       url('../fonts/Poppins-BoldItalic.ttf') format('truetype'),
       url('../fonts/Poppins-BoldItalic.svg#Poppins-BoldItalic') format('svg');
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}
/*-----------------------------------------------------------------*/
/*--- Custom Reset Styles ---*/
/*-----------------------------------------------------------------*/
body, html { margin: 0; padding: 0; outline: none; min-width: 320px; }
p, img { margin: 0; padding: 0; }
h1, h2, h3, h4 ,h5, h6 { font-weight: normal; padding: 0; margin: 0; }
button, a { outline: none; -webkit-outline: none; -moz-outline: none; }
a img { border: 0; display: block; outline: none; -webkit-outline: none; -moz-outline: none; }
a, button { transition: all 0.3s ease; }
a { color: #000; text-decoration: none; }
a:hover, a:focus { outline: none; }
button { border: 0; box-shadow: none; line-height: normal; outline: none; text-shadow: none; }
/*-----------------------------------------------------------------*/
/*--- Canvas Styles ---*/
/*-----------------------------------------------------------------*/
html { font-size: 10px; }
body { font: 1.5rem / 1.63 'Poppins', Helvetica, Arial, sans-serif; color: #000; }

.main { overflow: hidden; position: relative; z-index: 1; }
.main::before { content: ""; position: absolute; top: 75px; left: 0; height: 2094px; width: 100%; background: linear-gradient(175.14deg, #DBDBDB 3.11%, #DDDDDD 51.72%, #FFFFFF 65.33%, #DCDCDC 77.99%, #FFFFFF 90.69%); z-index: -1; }

@media screen and (min-width: 992px) {
  .tablet, .mobile { display: none !important; }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .desktop, .mobile { display: none !important; }
}

@media screen and (max-width: 767px) {
  .desktop, .tablet { display: none !important; }
}
/*-----------------------------------------------------------------*/
/*--- Wysiwyg Styles ---*/
/*-----------------------------------------------------------------*/
.wysiwyg strong { font-weight: 700; }
.wysiwyg em { font-style: italic; }

.wysiwyg p { padding: 10px 0; }

.wysiwyg figure { padding: 60px 0 30px; margin: 0; }
.wysiwyg blockquote { position: relative; z-index: 1; }
.wysiwyg figure blockquote::before, .wysiwyg figure blockquote::after { content: ""; background: no-repeat top left / auto; height: 58px; width: 64px; position: absolute; z-index: -1; }
.wysiwyg figure blockquote::before {  top: -34px; left: -18px; background-image: url(../images/icons/icon-quote-top.svg); }
.wysiwyg figure blockquote::after { right: -15px; bottom: -17px; background-image: url(../images/icons/icon-quote-bottom.svg); }
.wysiwyg blockquote { padding: 0 24px 0 30px; margin: 0; line-height: 1.75; }
.wysiwyg blockquote strong { font-family: 'Eurostile LT'; text-transform: uppercase; }
.wysiwyg figure figcaption { font-size: 0.9rem; line-height: 1.6667; letter-spacing: 0.2222em; text-transform: uppercase; text-align: right; margin: 25px -10px 0 0; }

.wysiwyg p:first-child, .wysiwyg blockquote:first-child { padding-top: 0; }
.wysiwyg p:last-child, .wysiwyg blockquote:last-child { padding-bottom: 0; }


.wysiwyg a { color: currentColor; text-decoration: underline; }
.wysiwyg a:hover { text-decoration: none; }

@media screen and (max-width: 767px) {
  .wysiwyg figure blockquote::after { right: -5px; }
  .wysiwyg figure figcaption { margin-right: 0; }
}
/*-----------------------------------------------------------------*/
/*--- Header Styles ---*/
/*-----------------------------------------------------------------*/
.header { color: #fff; background: #000; position: fixed; left: 0; top: 0; width: 100%; transition: all 0.2s 0.2s linear; z-index: 10001; }
.header::before { content: ""; background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0.0001) 100%); position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: -1; opacity: 0; transition: all 0.2s; }
.header.scrolled { background-color: transparent; }
.header.scrolled::before { opacity: 1; }
.header__container { display: flex; justify-content: space-between; align-items: center; height: 50px; padding: 0 32px; }

.header__logo { padding: 0 10px 0 0; }
.header__logo__img { display: block; height: auto; width: 100%; max-width: 180px; }

.header__menu { padding: 0 0 0 120px; }
.header__menu__list { display: flex; padding: 0; margin: 0; list-style: none; }
.header__menu__item { padding: 0 10px; }
.header__menu__link { font-family: Helvetica; font-size: 1.5rem; font-weight: 700; color: inherit; display: block; padding: 0 10px; text-transform: uppercase; }

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

.header__client-logo { display: flex; align-items: center; }
.header__client-logo__link { color: inherit; display: block; padding: 0 0 0 18px; }
.header__client-logo__text { font-family: Helvetica; font-size: 10px; font-weight: 700; line-height: 1.15; text-align: right; text-transform: uppercase; }
.header__client-logo__image { display: block; height: auto; width: 100%; max-width: 120px; }

.header__about { color: inherit; position: relative; margin: 0 0 0 12px; min-width: 20px; }
.header__about__text { font-family: Helvetica; font-size: 12px; line-height: 20px; display: block; padding: 0 0 0 28px; }
.header__about__icon { position: absolute; top: 50%; height: 20px; width: 20px; transform: translateY(-50%); left: 0; background: no-repeat url(../images/icons/questionmark.svg) center / contain; }

.header__menu__btn { display: none; }

@media screen and (max-width: 991px) {
  .header__container { padding: 0 16px; }
  .header__client-logo__image { max-width: 76.8px; }
  .header__menu { padding-left: 0; }
}

@media screen and (max-width: 767px) {
  .header__container { height: 50px; padding: 0 10px; }

  .header__logo__img { max-width: 129px; }
  .header__client-logo__link { padding-left: 10px; }
  .header__client-logo__text { font-size: 9px; max-width: 122px; }
  .header__client-logo__image { max-width: 88px; }

  .header__menu { padding: 14px 0; display: none; position: absolute; top: 100%; left: 0; right: 0; background: #000; z-index: 10010; }
  .header__menu__link { padding: 0; }
  .header__menu__list { display: block; }
  .header__menu__btn { display: block; padding: 0; height: 50px; width: 30px; background: none; position: relative; }
  .header__menu__btn__line,
  .header__menu__btn__line::before,
  .header__menu__btn__line::after { position: absolute; left: 10px; width: 20px; height: 2px; margin-top: -1px; border-radius: 10px; background: #fff; transition: all 0.2s; }
  .header__menu__btn__line::before { content: ''; margin-top: -6px; left: 0; }
  .header__menu__btn__line::after { content: ''; margin-top: 6px; left: 0; }
  .header__menu__btn.open .header__menu__btn__line { background: transparent; }
  .header__menu__btn.open .header__menu__btn__line::before { transform: rotate(-45deg); margin-top: 0; }
  .header__menu__btn.open .header__menu__btn__line::after { transform: rotate(45deg); margin-top: 0; }

  .header__about { position: absolute; top: calc(100% + 16px); right: 15px; margin: 0; }
  .header__about__text { padding: 21px 0 0; }
  .header__about__icon { height: 22px; width: 22px; top: 0; left: 50%; transform: translateX(-50%); }
}
/*-----------------------------------------------------------------*/
/*--- Hero Section Styles ---*/
/*-----------------------------------------------------------------*/
.hero-section { min-height: 738px; padding: 196px 0 100px; position: relative; z-index: 1; }
.hero-section__mask { position: absolute; height: 0; width: 0; }
.hero-section__title { font-family: 'Eurostile LT'; font-size: 5.1rem; line-height: 1.2; color: #fff; letter-spacing: 0.4314em; text-align: center; text-transform: uppercase; }
.hero-section__title span { display: block; color: #e4e8e8; }
.hero-section__bg { position: absolute; left: 50%; transform: translateX(-50%); width: 5000px; top: 0; bottom: 0; z-index: -1; -webkit-clip-path: url(#my-clip-path); clip-path: url(#my-clip-path); }
.hero-section__video { position: absolute; left: 50%; transform: translateX(-50%); top: 0; height: 100%; width: 100vw; object-fit: cover; }
.hero-section__cta { position: absolute; left: 50%; transform: translateX(-50%); bottom: 26px; height: 93px; width: 93px; background: none; padding: 0; cursor: pointer; }
.hero-section__cta::before, .hero-section__cta::after { content: ""; position: absolute; top: 0; height: 100%; }
/*.hero-section__cta::before { left: 0; background: url(../images/icons/icon-circle.svg) no-repeat center top 4px / auto; width: 100%; transition: all 1s ease-in-out; }*/
.hero-section__cta::before { left: 0; background: url(../images/icons/icon-circle.png) no-repeat center top 4px / 93px; width: 100%; transition: all 1s ease-in-out; }
.hero-section__cta::after { width: 20px; background: url(../images/icons/icon-arrow.svg) no-repeat center top 34px / auto; left: 50%; transform: translateX(-50%); }
.hero-section__cta:hover::before { transform: rotate(180deg); }

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

@media screen and (min-width: 4999px) {
  .hero-section__bg { width: 100%; }
}

@media screen and (max-width: 991px) {
  .hero-section { padding-top: 167px; }
  .hero-section__title { font-size: 4.049rem; line-height: 1.2; letter-spacing: 0.4315em; }
}

@media screen and (max-width: 767px) {
  .hero-section { padding-top: 202px; }
  .hero-section__title { font-size: 2rem; line-height: 1.2; }
  .hero-section__cta { bottom: 36px; }
}
/*-----------------------------------------------------------------*/
/*--- CTA Section Styles ---*/
/*-----------------------------------------------------------------*/
.section-intro { padding: 93px 0 72px; text-align: center; }
.section-intro__title { font-family: 'Eurostile LT'; font-size: 3.1rem; line-height: 1.4016; letter-spacing: 0.0968em; color: #807155; text-transform: uppercase; padding: 0 0 8px; }
.section-intro__header { padding: 0 0 48px; }
.section-intro__text { max-width: 673px; margin: 0 auto; }

.section-intro__box { text-align: left; background: #000 url(../images/backgrounds/silver-glow.png) no-repeat top left / auto; box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25); max-width: 980px; margin: 0 auto 54px; }
.section-intro__box__content { padding: 64px 10px 33px 60px; }
.section-intro__box__quote { font-family: 'Eurostile LT'; font-size: 2rem; line-height: 1.55; color: #ddd; max-width: 420px; padding: 0 0 38px; }
.section-intro__box__authors { font-size: 1.2rem; line-height: 1.4; letter-spacing: 0.1667em; color: #fff; text-transform: uppercase; text-align: right; margin: 0 0 0 auto; max-width: 400px; }
.section-intro__box__col--media { flex: 0 0 465px; }
.section-intro__box__media { display: block; width: 100%; }

@media screen and (max-width: 991px) {
  .section-intro { padding: 46px 20px 78px; }
  .section-intro__title { line-height: 1.2258; max-width: 320px; margin: 0 auto; padding-bottom: 20px; }
  .section-intro__header { max-width: 584px; margin: 0 auto; padding-bottom: 42px; }
  .section-intro__box { margin-bottom: 36px; }
  .section-intro__box__col--media { flex: 0 0 338px; }
  .section-intro__box__content { display: flex; flex-direction: column; justify-content: space-between; min-height: 100%; padding: 68px 0 40px 42px; }
  .section-intro__box__quote { font-size: 1.8rem; line-height: 1.7222; max-width: 300px; }
  .section-intro__box__authors { line-height: 1.25; }
}

@media screen and (max-width: 767px) {
  .section-intro { padding: 46px 0; }
  .section-intro__title { font-size: 2rem; line-height: 1.1; letter-spacing: 0.45em; }
  .section-intro__box { margin-bottom: 68px; max-width: 317px; }
  .section-intro__box__content { padding: 38px 20px; }
  .section-intro__box__col--media { flex: 0 1 auto; }
  .section-intro__box__quote { font-size: 1.4rem; line-height: 1.6429; padding-bottom: 43px; }
}
/*-----------------------------------------------------------------*/
/*--- Slick Slider Styles ---*/
/*-----------------------------------------------------------------*/
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { height: 100%; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }

.slick-arrow { font-size: 0; padding: 0; margin: 0; background: no-repeat center / auto; height: 36px; width: 36px; cursor: pointer; }
.slick-prev { background-image: url(../images/icons/icon-arrow-left.svg); }
.slick-next { background-image: url(../images/icons/icon-arrow-right.svg); }
/*-----------------------------------------------------------------*/
/*--- Section Hotspot Styles ---*/
/*-----------------------------------------------------------------*/
.section-hotspot { position: relative; z-index: 1; }
.section-hotspot__inner { background: #000; position: relative; min-height: 776px; z-index: 1; }
.section-hotspot__title { font-size: 1.2rem; font-weight: 500; line-height: 1.75; letter-spacing: 0.1667em; color: #807155; text-transform: uppercase; text-align: center; overflow: hidden; display: flex; padding: 30px 0; }
.section-hotspot__title::before, .section-hotspot__title::after { content: ""; background: #807155; height: 1px; flex: 1 1; margin: auto; }
.section-hotspot__title::before { margin-left: 22px; margin-right: 18px; }
.section-hotspot__title::after { margin-right: 22px; margin-left: 18px; }

.section-hotspot__bg { background: no-repeat bottom 30% right / auto 1140px; position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: -1; }
.section-hotspot__bg__img { background: no-repeat bottom 30% right / auto 1140px; height: 100%; width: 100%; mask-image: url('../images/backgrounds/circle.png'); mask-repeat: no-repeat; mask-size: 210px; }
.section-hotspot__mask { position: absolute; bottom: 0; transform: translateY(9.5%); height: 1140px; right: 0; width: 1704px; }

.section-hotspot__bg--1 { background-image: url(../images/backgrounds/section-hotspot-bg-1-d.jpg); }
.section-hotspot__bg--1 .section-hotspot__bg__img { background-image: url(../images/backgrounds/section-hotspot-bg-1-xray-d.jpg); }

.section-hotspot__bg--2 { background-image: url(../images/backgrounds/section-hotspot-bg-2-d.jpg); }
.section-hotspot__bg--2 .section-hotspot__bg__img { background-image: url(../images/backgrounds/section-hotspot-bg-2-xray-d.jpg); }

.section-hotspot__item { position: absolute; height: 33px; width: 33px; cursor: pointer; }
.section-hotspot__item::before, .section-hotspot__item::after { content: ""; position: absolute; border-radius: 100%; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.section-hotspot__item::before { height: 100%; width: 100%; border: 1px solid #fff; animation: pulse-out 0.5s ease-in-out 1; }
.section-hotspot__item::after { height: 8px; width: 8px; background: #fff; }
.section-hotspot__item:hover::before, .section-hotspot__item.active::before { animation: pulse-in 2s ease-in-out infinite; }

.section-hotspot__toggler { display: flex; position: absolute; top: 72px; right: 26px; }
.section-hotspot__toggler__btn { font-family: 'Eurostile LT'; font-size: 1.2rem; line-height: 1.2; letter-spacing: 0.1833em; color: #807155; text-transform: uppercase; display: flex; align-items: center; justify-content: center; min-height: 40px; min-width: 164px; background: #D9d9d9; padding: 5px; margin: 0 2px; cursor: pointer; transition: all 0.2s; }
.section-hotspot__toggler__btn.active, .section-hotspot__toggler__btn:hover { color: #d2d2d2; background-color: #3f3f3f; }
.section-hotspot__toggler__tooltip { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); padding: 15px 0 0; display: none; }
.section-hotspot__toggler__tooltip::before { content: ""; position: absolute; top: -3px; left: 50%; transform: translateX(-50%); border-width: 10px 12px; border-style: solid; border-color: transparent transparent #fff; }
.section-hotspot__toggler__tooltip__text { font-size: 1.1rem; line-height: 1.4545; color: #747373; min-height: 110px; display: flex; align-items: center; justify-content: center; text-align: center; padding: 4px 9px; background: #fff; box-shadow: 2px 0 6.2px 0 rgba(0, 0, 0, 0.25); }

.section-hotspot__modal { padding: 0 15px 0 0; position: absolute; top: 62px; bottom: 22px; left: -410px; width: 423px; background: #fff; box-shadow: 2px -4px 4px 4px rgba(0, 0, 0, 0.05); transition: all 0.3s ease-in-out; z-index: 100; }
.section-hotspot__modal.active { left: 0; }
.section-hotspot__modal__close { font-size: 1.1rem; padding: 0 0 28px; display: flex; align-items: flex-end; justify-content: center; text-align: center; position: absolute; top: 50%; right: -32px; transform: translateY(-50%) rotate(-90deg); border-radius: 100%; height: 130px; width: 130px; background: #fff url(../images/icons/icon-modal-open.svg) no-repeat center bottom 13px / auto; cursor: pointer; }
.section-hotspot__modal.active .section-hotspot__modal__close { background-image: url(../images/icons/icon-modal-close.svg); }
.section-hotspot__modal__close--close { display: none; }
.section-hotspot__modal.active .section-hotspot__modal__close--open { display: none; }
.section-hotspot__modal.active .section-hotspot__modal__close--close { display: inline; }
.section-hotspot__modal__open { display: none; }

.section-hotspot__modal__slider { height: 100%; }
.section-hotspot__modal__slider__controls { position: absolute; top: 19px; right: 12px; z-index: 10; }
.section-hotspot__modal__item { padding: 12px 0 40px 4px; }
.section-hotspot__modal__item__scroll { overflow: auto; height: calc(100% - 76px); direction: rtl; padding: 0 15px 0 16px; }
.section-hotspot__modal__item__scroll > * { direction: ltr; }
.section-hotspot__modal__item__scroll::-webkit-scrollbar { width: 7px; }
.section-hotspot__modal__item__scroll::-webkit-scrollbar-track { border-radius: 8px; }
.section-hotspot__modal__item__scroll::-webkit-scrollbar-thumb { border-radius: 8px; background-color: #d9d9d9; }
.section-hotspot__modal__item__counter { font-family: 'Eurostile LT'; font-size: 5.303rem; line-height: 1.358; color: #4a5466; padding: 0 0 4px 20px; }
.section-hotspot__modal__item__counter-2 { display: none; }
.section-hotspot__modal__item__title { font-family: 'Eurostile LT'; font-size: 2rem; line-height: 1.35; letter-spacing: 0.1em; color: #97712b; text-transform: uppercase; padding: 0 0 10px; }
.section-hotspot__modal__item__media { padding: 0 0 17px; }
.section-hotspot__modal__item__media__img { display: block; width: 100%; height: auto; }
.section-hotspot__modal__item__content { font-size: 1.2rem; line-height: 1.8; padding: 0 5px; }

.section-hotspot__item--1 { top: 61%; left: 80.5%; }
.section-hotspot__item--2 { top: 73%; left: 54.5%; }
.section-hotspot__item--3 { top: 50.8%; left: 46%; }
.section-hotspot__item--4 { top: 47.5%; left: 38%; }
.section-hotspot__item--5 { top: 42%; left: 71.7%; }

.section-hotspot__item--6 { top: 51%; left: 58%; }
.section-hotspot__item--7 { top: 51%; left: 87%; }
.section-hotspot__item--8 { top: 30%; left: 53.3%; }
.section-hotspot__item--9 { top: 39%; left: 97%; }
.section-hotspot__item--10 { top: 62%; left: 63%; }

@keyframes pulse-in {
  50% { height: 250%; width: 250%; }
  100% { height: 100%; width: 100%; }
}

@keyframes pulse-out {
  100% { height: 100%; width: 100%; }
}

@media screen and (min-width: 1740px) {
  .section-hotspot__bg--1, .section-hotspot__bg--1 .section-hotspot__bg__img { background-size: auto 1300px; }
  .section-hotspot__bg--1 .section-hotspot__mask { height: 1300px; width: 1960px; transform: translateY(12.5%); }
}

@media screen and (max-width: 1100px) {
  .section-hotspot__bg--1, .section-hotspot__bg--1 .section-hotspot__bg__img { background-position: bottom 30% right 20%; }
  .section-hotspot__bg--1 .section-hotspot__mask { right: -15%; }
}

@media screen and (max-width: 991px) {
  .section-hotspot__title { letter-spacing: 0.1833em; }
  .section-hotspot__title::before { margin-right: 8px; margin-left: 28px; }
  .section-hotspot__title::after { margin-left: 8px; margin-right: 28px; }
  .section-hotspot__toggler__tooltip { top: calc(100% - 15px); }

  .section-hotspot__bg { background: none; }
  .section-hotspot__bg__video { position: absolute; top: 0; left: 0; height: 100%; width: 100%; object-fit: cover; }
  .section-hotspot__bg--1 .section-hotspot__mask { right: -10%; transform: translateY(2.5%); height: 121%; width: 167%; }
  .section-hotspot__bg--2 .section-hotspot__mask { right: 10%; transform: translateY(2.5%); height: 110%; width: 167%; }

  .section-hotspot__modal { left: -375px; width: 387px; }
  .section-hotspot__modal__item__counter { font-size: 4.853rem; line-height: 1.366; }
  .section-hotspot__modal__item__title { font-size: 1.83rem; line-height: 1.3503; letter-spacing: 0.0546em; }
  .section-hotspot__modal__item__content { font-size: 1.4rem; line-height: 1.6429; }
  .section-hotspot__modal__item__content blockquote { font-size: 1.2rem; line-height: 1.6667; }
}

@media screen and (max-width: 767px) {
  .section-hotspot__inner { min-height: 521px; }
  .section-hotspot__title { color: #fff; padding: 16px 0; }
  .section-hotspot__title span { display: inline-block; max-width: 280px; }
  .section-hotspot__title::before, .section-hotspot__title::after { background-color: #fff; margin-top: 32px; }
  .section-hotspot__title::before { margin-right: -78px; margin-left: 0; }
  .section-hotspot__title::after { margin-left: -78px; margin-right: 0; }
  .section-hotspot__toggler { top: 80px; right: 50%; transform: translateX(50%); }

  .section-hotspot__item { height: 30px; width: 30px; }

  .section-hotspot__modal { display: none; box-shadow: 1.62px -3.24px 3.24px 3.24px rgba(0, 0, 0, 0.05); position: relative; top: auto; left: auto; bottom: auto; width: 341px; max-width: 100%; margin: -110px auto 50px; padding: 0; transition: none; }
  .section-hotspot__modal.active { left: auto; }
  .section-hotspot__modal__item { padding: 8px 24px 0 4px; }
  .section-hotspot__modal__item__scroll { max-height: 543px; height: auto; padding: 0 0 40px 16px; }
  .section-hotspot__modal__close { font-size: 0; top: auto; bottom: 28px; left: 50%; transform: translateX(-50%); height: 60px; width: 60px; background: rgba(0, 0, 0, 0.44) url(../images/icons/icon-modal-close-2.svg) no-repeat center / auto; padding: 0; z-index: 10; }
  .section-hotspot__modal__item__counter-2 { font-size: 1.2rem; display: block; text-align: center; padding: 4px 0 0; transform: translateY(100%); }

  .section-hotspot__modal__item__counter { font-size: 4.292rem; line-height: 1.3663; padding-left: 16px; }
  .section-hotspot__modal__item__title { font-size: 1.619rem; line-height: 1.3496; letter-spacing: 0.0618em; padding-bottom: 6px; }
  .section-hotspot__modal__item__content { font-size: 1.2rem; line-height: 1.75; }
  .section-hotspot__modal__item__content blockquote { font-size: 0.971rem; line-height: 1.7878; }
  .section-hotspot__modal__item__scroll::-webkit-scrollbar { width: 5px; }
  .section-hotspot__modal__open { font-family: 'Eurostile LT'; font-size: 1.6rem; line-height: 1.4812; letter-spacing: 0.1875em; color: #1d5b76; text-transform: uppercase; text-align: center; padding: 5px; display: flex; align-items: center; justify-content: center; min-height: 54px; min-width: 292px; position: absolute; left: 50%; bottom: 36px; transform: translateX(-50%); }

  .section-hotspot__modal__slider__controls { top: 11px; right: 9px; }
  .slick-arrow { height: 28px; width: 28px; background-size: 12px; }
}
/*-----------------------------------------------------------------*/
/*--- CTA Section Styles ---*/
/*-----------------------------------------------------------------*/
.section-cta { color: #fff; text-align: center; background: #000; padding: 110px 0 100px; min-height: 625px; position: relative; z-index: 1; }
.section-cta__client-logo { margin: 0 0 25px; }
.section-cta__client-logo__link { color: inherit; display: block; }
.section-cta__client-logo__text { font-family: Helvetica; font-size: 10px; line-height: 1.15; font-weight: 700; text-transform: uppercase; margin: 0 0 -4px; }
.section-cta__client-logo__image { display: block; height: auto; width: 100%; max-width: 188px; margin: 0 auto; }
.section-cta__title { font-family: 'Eurostile LT'; font-size: 2.931rem; line-height: 1.4169; letter-spacing: 0.4777em; color: #d0cbc2; text-align: center; text-transform: uppercase; max-width: 800px; margin: 0 auto 37px; }
.section-cta__title span { color: #81acbe; }
.section-cta__text { max-width: 520px; margin: 0 auto 34px; }
.section-cta__btn { font-size: 1.5rem; line-height: 1.63; letter-spacing: 0.22em; text-transform: uppercase; display: inline-flex; align-items: center; color: #fff; min-height: 54px; padding: 5px 87px 5px 26px; position: relative; }
.section-cta__btn::before, .section-cta__btn::after { content: ""; position: absolute; border: 2px solid #fff; top: 0; bottom: 0; }
.section-cta__btn::before { left: 0; right: 61px; border-radius: 26px; }
.section-cta__btn::after { right: 0; width: 54px; border-radius: 100%; transition: all 1s; background: url(../images/icons/icon-arrow-cta.svg) no-repeat center / auto; }
.section-cta__video { position: absolute; left: 50%; transform: translateX(-50%); top: 0; height: 100%; width: 100vw; object-fit: cover; z-index: -1; }

@media screen and (min-width: 992px) {
  .section-cta__btn::before { animation: bounce-back 0.2s ease-in-out 1 forwards; }
  .section-cta__btn::after {
    animation: bounce-opacity-back 0.2s ease-in-out 1 forwards;
    opacity: 1; /* Start fully visible */
    transition: opacity 0.2s ease-in-out; /* Smooth transition for opacity */
  }

  .section-cta__btn:hover::before { animation: bounce 1.2s ease-in-out 1 forwards; }
  .section-cta__btn:hover::after { border-color: transparent!important; }
}

@media screen and (max-width: 991px) {
  .section-cta { padding-top: 82px; min-height: 0; }
  .section-cta__title { font-size: 2.4rem; line-height: 1.4167; margin-bottom: 16px; }
  .section-cta__client-logo { margin-bottom: 46px; }
  .section-cta__text { max-width: 512px; margin-bottom: 32px; }
}

@media screen and (max-width: 767px) {
  .section-cta { padding-top: 65px; padding-bottom: 60px; }
  .section-cta__title { font-size: 1.79rem; line-height: 1.324; letter-spacing: 0.4503em; }
  .section-cta__client-logo { margin-bottom: 28px; }
  .section-cta__title { margin-bottom: 23px; }
  .section-cta__text { font-size: 1.4rem; line-height: 1.7464; margin-bottom: 40px; }
  .section-cta__btn { font-size: 1.215rem; min-height: 44px; padding: 5px 72px 5px 20px; }
  .section-cta__btn::before { right: 50px; }
  .section-cta__btn::after { width: 44px; }

  .section-cta__btn::before { animation: bounce-back-mobile 0.2s ease-in-out 1 forwards; }
  .section-cta__btn:active::before { animation: bounce-mobile 1.2s ease-in-out 1 forwards; }

  .section-cta__btn::after { animation: bounce-opacity-back 0.2s ease-in-out 1 forwards; }
  .section-cta__btn:active::after { animation: bounce-opacity 1.2s ease-in-out 1 forwards; }
}

@keyframes bounce {
  0% { right: 61px; }
  25% { right: -10px; }
  50% { right: 10px; }
  75% { right: -5px; }
  100% { right: 0; }
}

@keyframes bounce-back {
  0% { right: 0; }
  100% { right: 61px; }
}

@keyframes bounce-opacity {
  0% { border-color: rgba(255, 255, 255, 0); }
  25% { border-color: rgba(255,255,255, 0.6); }
  50% { border-color: rgba(255,255,255, 0); }
  75% { border-color: rgba(255,255,255, 0.3); }
  100% { border-color: rgba(255,255,255, 0); }
}

@keyframes bounce-opacity-back {
  0% { border-color: rgba(255, 255, 255, 0); }
  100% { border-color: rgba(255,255,255, 1); }
}

@keyframes bounce-mobile {
  0% { right: 50px; }
  25% { right: -10px; }
  50% { right: 10px; }
  75% { right: -5px; }
  100% { right: 0; }
}

@keyframes bounce-back-mobile {
  0% { right: 0; }
  100% { right: 50px; }
}
/*-----------------------------------------------------------------*/
/*--- Footer Styles ---*/
/*-----------------------------------------------------------------*/
/*-----------------------------------------------------------------*/
/*--- Footer Copyright Styles ---*/
/*-----------------------------------------------------------------*/
.footer { font-family: Helvetica; font-size: 10px; line-height: 1.15; color: #fff; background: #000; padding: 17px 0; }
.footer__container { display: flex; justify-content: space-between; flex-wrap: wrap; }
.footer a { color: inherit; }
.footer a:hover { text-decoration: underline; }
.footer__copyright, .footer__menu { padding: 5px 0; }
.footer__copyright { padding-right: 10px; }
.footer__menu { display: flex; justify-content: flex-end; align-items: center; padding: 0; margin: 0; list-style: none; }
.footer__menu__item { cursor: default; }
.footer__menu__item:not(:last-child)::after { content: '|'; margin: 0 6px; }

@media screen and (max-width: 767px) {
  .footer__container { display: block; }
  .footer__copyright { max-width: 240px; margin: 0 0 10px; }
}
