/* Reset and base styles  */
* {
  padding: 0px;
  margin: 0px;
  border: none;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Links */
a,
a:link,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

/* Common */
aside,
nav,
footer,
header,
section,
main {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  font-size: inherit;
  font-weight: inherit;
}

ul,
ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

img,
svg {
  max-width: 100%;
  height: auto;
}

address {
  font-style: normal;
}

/* Form */
input,
textarea,
button,
select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
}

input::-ms-clear {
  display: none;
}

textarea {
  resize: vertical;
}

button,
input[type=submit] {
  display: inline-block;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
  background: none;
  cursor: pointer;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label {
  cursor: pointer;
}

legend {
  display: block;
}

input[type=file] {
  max-width: 100%;
}

em {
  font-style: normal;
  color: #6f5bcc;
}

:root {
  --screen: 1440;
  --desktop-header-h1: 72;
  --desktop-header-h2: 48;
  --desktop-header-h3: 32;
  --desktop-header-h4: 22;
  --desktop-body-20: 20;
  --desktop-body-18: 18;
  --desktop-body-16: 16;
  --desktop-body-14: 14;
  --desktop-body-button: 16;
  --gutter: 24;
}

@media (max-width: 640px) {
  :root {
    --screen: 360;
    --desktop-header-h1: 38;
    --desktop-header-h2: 32;
    --desktop-header-h3: 28;
    --desktop-header-h4: 20;
    --desktop-body-20: 20;
    --desktop-body-18: 16;
    --desktop-body-16: 16;
    --desktop-body-14: 14;
    --desktop-body-button: 14;
    --gutter: 12;
  }
}
@media (min-width: 1700px) {
  :root {
    --screen: 1780;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 450;
  text-transform: uppercase;
  color: #1C1C1C;
}
h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em {
  color: #B8B8B8;
}

h1 {
  font-weight: 550;
  letter-spacing: 0.01em;
}

h1,
h1 span {
  font-size: calc(var(--desktop-header-h1) * 100vw / var(--screen));
  line-height: 1.12;
}

h2,
h2 span {
  font-size: calc(var(--desktop-header-h2) * 100vw / var(--screen));
  line-height: 1.2;
}

h3,
h3 span {
  font-size: calc(var(--desktop-header-h2) * 100vw / var(--screen));
  line-height: 1.2;
}

h4 {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  font-weight: 500;
  line-height: 1.2;
}

p,
span,
ul,
ol,
blockquote {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
}

.fs18 {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
}

.fs20 {
  font-size: calc(var(--desktop-body-20) * 100vw / var(--screen)) !important;
}
@media (max-width: 640px) {
  .fs20 {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen)) !important;
  }
}

.container {
  width: 100%;
  max-width: calc(128000vw / var(--screen));
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media (max-width: 640px) {
  .container {
    max-width: calc(100vw - 4800vw / var(--screen));
  }
}
.container--window {
  max-width: 100%;
}

body {
  font-size: 1rem;
  margin: 0;
  font-family: "Inter", sans-serif;
  font-weight: 350;
  line-height: 1.55;
  color: #1C1C1C;
  background: #FAFAFA;
  overflow-x: hidden;
}

main {
  background: #FAFAFA;
}
@media (max-width: 640px) {
  main {
    margin-bottom: 0 !important;
  }
}
main.page {
  padding-top: calc(12500vw / var(--screen));
}
@media (max-width: 640px) {
  main.page {
    padding-top: calc(9500vw / var(--screen));
  }
}

.--full {
  width: 100vw;
  margin-left: calc(-8000vw / var(--screen));
}
@media (min-width: 1700px) {
  .--full {
    margin-left: calc(-25000vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .--full {
    margin-left: calc(-2400vw / var(--screen));
  }
}

[data-src] {
  opacity: 0;
  -webkit-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
  will-change: opacity;
}

[data-src].is-loaded {
  opacity: 1;
}

ul.list {
  margin-top: calc(2400vw / var(--screen));
  margin-bottom: calc(2400vw / var(--screen));
}
ul.list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(1600vw / var(--screen));
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
ul.list li::before {
  content: "";
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIGZpbGw9JyMyMTIxMjEnLz48cGF0aCBkPSdNOCAxMS45OTk4TDEwLjgyODQgMTQuODI4M0wxNi40ODQ3IDkuMTcxMzknIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLz48L3N2Zz4K") center no-repeat;
  background-size: cover;
  position: relative;
  top: calc(200vw / var(--screen));
}
ul.list li:not(:last-child) {
  margin-bottom: calc(800vw / var(--screen));
}

.size--h2 {
  font-size: calc(var(--desktop-header-h2) * 100vw / var(--screen));
  line-height: 1.2;
}
.size--h3 {
  font-size: calc(var(--desktop-header-h3) * 100vw / var(--screen));
  line-height: 1.2;
}
.size--h4 {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  line-height: 1.2;
}

.color--grey {
  color: #A6A6A6;
}
.color--black {
  color: #1C1C1C;
}

.max-w-450 {
  max-width: calc(43000vw / var(--screen)) !important;
}
.max-w-600 {
  max-width: calc(60000vw / var(--screen)) !important;
}
.max-w-760 {
  max-width: calc(79000vw / var(--screen));
}

.hero__title h1,
section:not(.about, .start) .section__title:not(.noanimate) h2,
.page__title,
.about__image img,
.choose__image img,
.about .section__title h2,
.start .section__title h2,
.about__information,
.about__wrapper a.button,
main.home section:not(.hero) .container,
.aboutus__process-item,
.animateup,
header.header .header__wrapper,
.what__item,
.included__item,
.gallery__item,
.projectgallery__item,
.process__item,
.clients__item,
.aboutus__value,
.choose__item,
.services__item,
.--full img {
  will-change: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

@media screen and (min-width: 920px) {
  .desktop-br {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (max-width: 640px) {
  .mobile-br {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.grid {
  display: grid;
  gap: 2rem;
}
@media (max-width: 640px) {
  .grid {
    gap: 1rem;
  }
}
.grid--2 {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 640px) {
  .grid--2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.grid--3 {
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 640px) {
  .grid--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.grid--4 {
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 640px) {
  .grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.grid--5 {
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 640px) {
  .grid--5 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.pt-0 {
  padding-top: 0 !important;
}
.pt-24 {
  padding-top: calc(2400vw / var(--screen));
}
.pt-60 {
  padding-top: calc(6000vw / var(--screen));
}
@media (max-width: 640px) {
  .pt-60 {
    padding-top: calc(2400vw / var(--screen));
  }
}
.pt-100 {
  padding-top: calc(10000vw / var(--screen));
}
@media (max-width: 640px) {
  .pt-100 {
    padding-top: calc(6400vw / var(--screen));
  }
}
.pt-120 {
  padding-top: calc(12000vw / var(--screen));
}
@media (max-width: 640px) {
  .pt-120 {
    padding-top: calc(6400vw / var(--screen));
  }
}
.pt-200 {
  padding-top: calc(20000vw / var(--screen));
}
@media (max-width: 640px) {
  .pt-200 {
    padding-top: calc(12000vw / var(--screen));
  }
}

.mb-32 {
  margin-bottom: calc(3200vw / var(--screen)) !important;
}
.mb-160 {
  margin-bottom: calc(16000vw / var(--screen)) !important;
}
@media (max-width: 640px) {
  .mb-160 {
    margin-bottom: calc(4800vw / var(--screen)) !important;
  }
}

.pb-0 {
  padding-bottom: 0 !important;
}
.pb-24 {
  padding-bottom: calc(2400vw / var(--screen));
}
.pb-32 {
  padding-bottom: calc(3200vw / var(--screen));
}
.pb-56 {
  padding-bottom: calc(5600vw / var(--screen));
}
@media (max-width: 640px) {
  .pb-56 {
    padding-bottom: calc(4800vw / var(--screen));
  }
}
.pb-100 {
  padding-bottom: calc(10000vw / var(--screen));
}
@media (max-width: 640px) {
  .pb-100 {
    padding-bottom: calc(6400vw / var(--screen));
  }
}
.pb-120 {
  padding-bottom: calc(12000vw / var(--screen));
}
@media (max-width: 640px) {
  .pb-120 {
    padding-bottom: calc(6400vw / var(--screen));
  }
}
.pb-200 {
  padding-bottom: calc(20000vw / var(--screen));
}
@media (max-width: 640px) {
  .pb-200 {
    padding-bottom: calc(12000vw / var(--screen));
  }
}

.fw-500 {
  font-weight: 500 !important;
}

.fs-48 {
  font-size: calc(4800vw / var(--screen)) !important;
}
@media (max-width: 640px) {
  .fs-48 {
    font-size: calc(3000vw / var(--screen)) !important;
  }
}

.section--full {
  width: 100%;
}
.section__subtitle {
  margin-bottom: calc(3200vw / var(--screen));
}
@media (max-width: 640px) {
  .section__subtitle {
    margin-bottom: calc(2400vw / var(--screen));
  }
}
.section__subtitle p {
  font-size: calc(var(--desktop-body-20) * 100vw / var(--screen));
  font-weight: 500;
}
@media (max-width: 640px) {
  .section__subtitle p {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  }
}
.section__description p {
  font-size: calc(var(--desktop-body-20) * 100vw / var(--screen));
  font-weight: 500;
}
@media (max-width: 640px) {
  .section__description p {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
    line-height: 1.5;
    font-weight: 350;
  }
}
.section__header {
  margin-bottom: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .section__header {
    margin-bottom: calc(4800vw / var(--screen));
  }
}
.section__header--center {
  text-align: center;
}
.section__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: calc(50000vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .section__image {
    height: calc(45000vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .section__image--2 img {
    -o-object-position: 62%;
       object-position: 62%;
  }
}
.section__image img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}

.header {
  width: 100%;
  position: absolute;
  top: calc(2400vw / var(--screen));
  left: 0;
  z-index: 1555;
  -webkit-transition: padding 0.32s ease-in-out, -webkit-transform 0.3s linear;
  transition: padding 0.32s ease-in-out, -webkit-transform 0.3s linear;
  transition: padding 0.32s ease-in-out, transform 0.3s linear;
  transition: padding 0.32s ease-in-out, transform 0.3s linear, -webkit-transform 0.3s linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.header.active {
  position: fixed;
  top: 0;
  -webkit-transform: translateY(-100%) !important;
          transform: translateY(-100%) !important;
  opacity: 0 !important;
}
.header.opacity {
  opacity: 0 !important;
}
.header.fixed {
  position: fixed;
  background: #0D0D0D;
  padding-top: calc(1400vw / var(--screen));
  padding-bottom: calc(1400vw / var(--screen));
  top: 0;
  -webkit-transform: translateY(0) !important;
          transform: translateY(0) !important;
  opacity: 1 !important;
}
.header.fixed .header__logo {
  width: auto;
  height: calc(6200vw / var(--screen));
}
@media (max-width: 640px) {
  .header.fixed .header__logo {
    height: calc(4600vw / var(--screen));
  }
}
.header.fixed nav ul li a {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
}
.header.fixed .menu-item-has-children ul {
  background: #0D0D0D;
  top: calc(7600vw / var(--screen));
}
.header--page .menu-item-has-children ul {
  background: #0D0D0D !important;
  top: calc(7600vw / var(--screen)) !important;
}
.header__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
}
.header__wrapper a:not(.button) {
  color: #fff;
  font-size: calc(1800vw / var(--screen));
}
.header__logo {
  width: auto;
  height: calc(7800vw / var(--screen));
}
@media (max-width: 640px) {
  .header__logo {
    height: calc(5600vw / var(--screen));
  }
}
.header__logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
}
.header__logo img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
@media (max-width: 640px) {
  .header__nav {
    display: none;
  }
}
.header__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__nav ul li {
  margin: 0 calc(1000vw / var(--screen));
}
.header__nav ul li:not(.header__nav ul li.current-menu-item, .header__nav ul li.current-menu-ancestor) a {
  opacity: 0.5;
}
.header__nav ul li.current-menu-item > a, .header__nav ul li.current-menu-ancestor > a {
  position: relative;
}
.header__nav ul li.current-menu-item > a::before, .header__nav ul li.current-menu-ancestor > a::before {
  content: "";
  position: absolute;
  left: calc(1000vw / var(--screen));
  bottom: 0;
  width: calc(100% - 2000vw / var(--screen));
  height: calc(100vw / var(--screen));
  background: #fff;
}
.header__nav ul li.current-menu-item.menu-item-has-children > a::before, .header__nav ul li.current-menu-ancestor.menu-item-has-children > a::before {
  width: calc(100% - 4700vw / var(--screen));
}
.header__nav ul li a {
  padding: calc(1000vw / var(--screen));
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.header__nav ul li a:hover {
  opacity: 1 !important;
}
.header__nav ul li.menu-item-has-children {
  margin-right: 0;
}
.header__nav ul li.menu-item-has-children ul {
  display: none !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: absolute;
  top: calc(6500vw / var(--screen));
  width: calc(35000vw / var(--screen));
  background: rgba(12, 12, 12, 0.6);
  padding: calc(1000vw / var(--screen)) calc(0vw / var(--screen));
  z-index: 2555;
}
.header__nav ul li.menu-item-has-children ul.active {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  z-index: 2555;
}
.header__nav ul li.menu-item-has-children ul li {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  padding: 0;
  margin: calc(200vw / var(--screen)) 0 !important;
}
.header__nav ul li.menu-item-has-children ul li a {
  font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
  padding: calc(400vw / var(--screen)) 0 calc(400vw / var(--screen)) calc(2400vw / var(--screen)) !important;
  width: 100%;
  position: relative;
}
.header__nav ul li.menu-item-has-children ul li a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(200vw / var(--screen));
  height: 100%;
  background: #fff;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.header__nav ul li.menu-item-has-children ul li a::before {
  display: none !important;
}
.header__nav ul li.menu-item-has-children ul li a:hover::after {
  opacity: 1;
}
.header__nav ul li:has(> .header__list-submenu) > a::after {
  content: "";
  display: inline-block;
  margin-left: calc(400vw / var(--screen));
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("../icons/arrow-down.svg") center no-repeat;
  background-size: cover;
  vertical-align: middle;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.header__nav ul li:has(> .header__list-submenu) > a:hover::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.header__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 640px) {
  .header__button {
    display: none;
  }
}
.header__menu {
  display: none;
  width: calc(4000vw / var(--screen));
  min-width: calc(4000vw / var(--screen));
  height: calc(4000vw / var(--screen));
  background: url("../icons/menu.svg") center no-repeat;
  background-size: calc(2500vw / var(--screen));
  outline: none;
  border: none;
}
@media (max-width: 640px) {
  .header__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.header--page {
  background: #0D0D0D;
  padding: calc(2400vw / var(--screen)) 0;
  top: 0;
}
.menu {
  display: none;
  background: #0D0D0D;
  position: fixed;
  inset: 0;
  z-index: 55555;
}
.menu.active {
  display: block;
}
.menu__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: calc(2400vw / var(--screen));
  padding-bottom: calc(7000vw / var(--screen));
  width: 100%;
  height: 100%;
  position: relative;
}
.menu__close {
  width: calc(3200vw / var(--screen));
  height: calc(3200vw / var(--screen));
  position: absolute;
  top: calc(3200vw / var(--screen));
  right: calc(3200vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAxOCAxOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTcgMTdMOS4wMDAwMiA5LjAwMDAyTTkuMDAwMDIgOS4wMDAwMkwxIDFNOS4wMDAwMiA5LjAwMDAyTDE3IDFNOS4wMDAwMiA5LjAwMDAyTDEgMTcnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+Cg==") center no-repeat;
  background-size: calc(1800vw / var(--screen));
}
.menu__logo {
  width: auto;
  height: calc(5600vw / var(--screen));
}
.menu__logo img {
  width: 100%;
  height: 100%;
}
.menu__nav {
  margin-top: calc(8000vw / var(--screen));
  margin-bottom: calc(4000vw / var(--screen));
}
.menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(1600vw / var(--screen));
}
.menu__list-item {
  padding: calc(400vw / var(--screen)) 0;
}
.menu__list-item.menu-item-has-children {
  margin-right: 0;
  padding-bottom: 0;
}
.menu__list-item.menu-item-has-children ul {
  display: none !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background: rgba(12, 12, 12, 0.6);
  padding: calc(800vw / var(--screen)) calc(0vw / var(--screen)) 0 0;
}
.menu__list-item.menu-item-has-children ul.active {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  z-index: 2555;
}
.menu__list-item.menu-item-has-children ul li {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  padding: 0;
  margin: calc(400vw / var(--screen)) 0 !important;
}
.menu__list-item.menu-item-has-children ul li a {
  font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
  padding: calc(400vw / var(--screen)) calc(0vw / var(--screen)) calc(400vw / var(--screen)) calc(2000vw / var(--screen)) !important;
  width: 100%;
  position: relative;
}
.menu__list-item.menu-item-has-children ul li a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(200vw / var(--screen));
  height: 100%;
  background: #fff;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.menu__list-item.menu-item-has-children ul li a:hover::after {
  opacity: 1;
}
.menu__list-item:has(> .menu__list-submenu) > a::after {
  content: "";
  display: inline-block;
  margin-left: calc(400vw / var(--screen));
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("../icons/arrow-down.svg") center no-repeat;
  background-size: cover;
  vertical-align: middle;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.menu__list-item:has(> .menu__list-submenu) > a:hover::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.menu__list-item:has(> .menu__list-submenu.active) > a::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.menu__list-link {
  text-decoration: none;
  color: #fff;
  font-size: calc(var(--desktop-body-18) * 1.125 * 100vw / var(--screen));
  line-height: 1.4;
  padding: calc(600vw / var(--screen)) 0;
}
.menu__list-link:not(.active) {
  opacity: 0.5;
}
.menu__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: auto;
}
.menu__button a,
.menu__button button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: auto;
}

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: calc(2800vw / var(--screen)) calc(4700vw / var(--screen));
  font-size: calc(var(--desktop-body-button) * 100vw / var(--screen));
  font-weight: 500;
  background: #1C1C1C;
  color: #fff;
  text-transform: uppercase;
  -webkit-transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
  transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
}
.button:hover {
  background: #0D0D0D;
}
@media (max-width: 640px) {
  .button {
    padding-left: calc(3200vw / var(--screen));
    padding-right: calc(3200vw / var(--screen));
    width: 100%;
  }
}
.button--small {
  padding: calc(1600vw / var(--screen)) calc(3200vw / var(--screen));
  font-size: calc(1400vw / var(--screen));
}
.button--border {
  background: transparent;
  border: calc(100vw / var(--screen)) solid;
}
.button--border:hover {
  background: #fff;
  color: #1C1C1C;
}
.button--white {
  color: #fff;
}
.button--white:not([class*="--border"]) {
  color: #1C1C1C;
  background: #fff;
}
.button--white:not([class*="--border"]):hover {
  background: #0D0D0D;
  color: #fff;
}
form input,
form select,
form textarea {
  padding: calc(1400vw / var(--screen)) calc(2400vw / var(--screen));
  border: calc(100vw / var(--screen)) solid #1C1C1C;
  border-radius: 0 !important;
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  outline: none;
}
form input:not(textarea),
form select:not(textarea),
form textarea:not(textarea) {
  height: calc(6400vw / var(--screen));
}
form select {
  background: url("../icons/select-arrow.svg") no-repeat right calc(2400vw / var(--screen)) center;
  background-size: calc(2400vw / var(--screen));
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}
form select option {
  color: #0D0D0D;
}
form select option:disabled, form select option[disabled] {
  color: #A6A6A6 !important;
  -webkit-text-fill-color: #A6A6A6;
}

.footer {
  background: #0D0D0D;
  z-index: -15;
  width: 100%;
  position: fixed;
  bottom: 0;
}
@media (max-width: 640px) {
  .footer {
    position: relative;
    z-index: 1;
    margin-top: calc(-100vw / var(--screen));
  }
}
.footer p,
.footer span,
.footer a {
  color: #fff;
}
.footer__wrapper {
  display: grid;
  grid-template-columns: calc(22300vw / var(--screen)) 1fr calc(19300vw / var(--screen));
  grid-template-areas: "logo nav contacts" ". nav contacts" ". nav contacts" "link nav contacts";
  padding-top: calc(9000vw / var(--screen));
  padding-bottom: calc(14000vw / var(--screen));
}
@media (max-width: 640px) {
  .footer__wrapper {
    grid-template-columns: 1fr;
    grid-template-areas: "logo" "nav" "contacts" "link";
    padding-top: calc(8000vw / var(--screen));
    padding-bottom: calc(12000vw / var(--screen));
    gap: calc(5600vw / var(--screen));
  }
}
.footer__logo {
  grid-area: logo;
  width: calc(12800vw / var(--screen));
  height: calc(10000vw / var(--screen));
}
@media (max-width: 640px) {
  .footer__logo {
    width: auto;
    height: calc(8200vw / var(--screen));
  }
  .footer__logo img {
    width: auto;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.footer__privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(800vw / var(--screen));
  grid-area: link;
}
.footer__privacy a {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  opacity: 0.6;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.footer__privacy a:hover {
  opacity: 1;
}
.footer__nav {
  grid-area: nav;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: calc(14000vw / var(--screen));
}
@media (max-width: 640px) {
  .footer__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(5600vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .footer__menu {
    width: 100%;
  }
}
.footer__menu span {
  display: inline-block;
  text-transform: uppercase;
  padding: calc(400vw / var(--screen)) 0;
  margin-bottom: calc(4000vw / var(--screen));
}
@media (max-width: 640px) {
  .footer__menu span {
    margin-bottom: calc(2400vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .footer__menu ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: calc(0vw / var(--screen)) calc(800vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .footer__menu ul li {
    width: 100%;
    max-width: calc(13000vw / var(--screen));
  }
}
.footer__menu ul li:not(:last-child) {
  margin-bottom: calc(1600vw / var(--screen));
}
.footer__menu ul li br {
  display: none;
}
@media (max-width: 640px) {
  .footer__menu ul li br {
    display: inline-block;
  }
}
@media (max-width: 640px) {
  .footer__menu ul li:last-child {
    max-width: calc(14000vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .footer__menu.footer__pages li:not(:last-child) {
    margin-bottom: calc(1200vw / var(--screen));
  }
}
.footer__menu a {
  display: inline-block;
  opacity: 0.6;
  padding: calc(400vw / var(--screen)) 0;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
  width: 100%;
}
.footer__menu a:hover {
  opacity: 1;
}
@media (max-width: 640px) {
  .footer__pages ul li:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }
  .footer__pages ul li:nth-child(4) {
    grid-column: 2;
    grid-row: 1;
  }
  .footer__pages ul li:nth-child(5) {
    grid-column: 2;
    grid-row: 2;
  }
}
@media (max-width: 640px) {
  .footer__services ul li:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }
  .footer__services ul li:nth-child(4) {
    grid-column: 2;
    grid-row: 2;
  }
  .footer__services ul li:nth-child(5) {
    grid-column: 2;
    grid-row: 1;
  }
}
.footer__contacts {
  grid-area: contacts;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2000vw / var(--screen));
  gap: calc(var(--gutter) * 100vw / var(--screen));
}
.footer__contacts-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 640px) {
  .footer__contacts-item:nth-child(1) {
    max-width: calc(20000vw / var(--screen));
  }
}
.footer__contacts-item:last-child {
  margin-top: auto;
}
.footer__contacts-item span {
  font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
  padding-bottom: calc(800vw / var(--screen));
  opacity: 0.6;
}
.footer__contacts-item a {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.footer__contacts-item a:hover {
  opacity: 0.6;
}
.footer__socials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: calc(var(--gutter) * 100vw / var(--screen));
}
.footer__socials a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(3200vw / var(--screen));
  height: calc(3200vw / var(--screen));
}
.footer__socials a img {
  width: 100%;
  height: 100%;
}
.footer__bottom {
  width: 100%;
  height: calc(13000vw / var(--screen));
  background: url("../icons/footer-name.svg") center no-repeat;
  background-size: cover;
}
@media (max-width: 640px) {
  .footer__bottom {
    height: calc(12300vw / var(--screen));
    background: url("../icons/footer-name-mobile.svg") center no-repeat;
    background-size: cover;
  }
}

.hero {
  height: calc(89000vw / var(--screen));
  background: url("../images/hero.jpg") top center no-repeat;
  background-size: cover;
}
@media (max-width: 640px) {
  .hero {
    height: calc(72000vw / var(--screen));
    background-position-x: 87%;
    background-attachment: inherit;
  }
}
.hero .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
}
.hero__title h1,
.hero__title p,
.hero__title span {
  color: #fff;
  text-align: center;
}

.about__wrapper {
  display: grid;
  justify-items: flex-start;
  gap: calc(8000vw / var(--screen)) calc(11000vw / var(--screen));
  grid-template-columns: 1fr calc(54300vw / var(--screen));
  grid-template-areas: "title info" "title image" "button image";
}
@media (max-width: 640px) {
  .about__wrapper {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "image" "info" "button";
    gap: calc(4800vw / var(--screen));
  }
}
.about .section__title {
  grid-area: title;
}
@media (max-width: 640px) {
  .about .section__title p,
  .about .section__title span,
  .about .section__title h2,
  .about .section__title h3 {
    font-size: calc(var(--desktop-header-h3) * 100vw / var(--screen));
  }
}
.about .button {
  grid-area: button;
}
.about__information {
  grid-area: info;
}
.about__image {
  grid-area: image;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(var(--gutter) * 100vw / var(--screen));
  height: calc(42400vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .about__image {
    height: calc(24400vw / var(--screen));
  }
}
.about__image img {
  width: auto;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}

.what__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: calc(50000vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .what__image {
    height: calc(45500vw / var(--screen));
  }
}
.what__image img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
@media (max-width: 640px) {
  .what__image img {
    height: 100%;
    -o-object-position: 58%;
       object-position: 58%;
  }
}
.what__list {
  margin-top: calc(4800vw / var(--screen));
}
@media (max-width: 640px) {
  .what__list {
    margin-top: 0;
  }
}
.what__item {
  display: grid;
  gap: calc(3600vw / var(--screen)) calc(13200vw / var(--screen));
  grid-template-columns: calc(8500vw / var(--screen)) 1fr calc(41100vw / var(--screen));
  grid-template-areas: "number title image" ". info image";
  padding: calc(8000vw / var(--screen)) 0;
}
@media (max-width: 640px) {
  .what__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(2400vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .what__item {
    padding: calc(6400vw / var(--screen)) 0;
  }
}
.what__item:not(:last-child) {
  border-bottom: calc(100vw / var(--screen)) solid #1C1C1C;
}
.what__item-number {
  grid-area: number;
}
.what__item-title {
  grid-area: title;
  width: 100%;
  max-width: calc(41000vw / var(--screen));
}
@media (max-width: 640px) {
  .what__item-title {
    margin-top: calc(2400vw / var(--screen));
  }
  .what__item-title p,
  .what__item-title span,
  .what__item-title h2,
  .what__item-title h3 {
    font-size: calc(var(--desktop-header-h3) * 100vw / var(--screen));
  }
}
.what__item-info {
  grid-area: info;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 100%;
  max-width: calc(34000vw / var(--screen));
}
.what__item-info p {
  color: #A6A6A6;
}
.what__item-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-area: image;
  width: 100%;
  max-width: calc(41100vw / var(--screen));
  height: calc(25600vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .what__item-image {
    height: calc(20000vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .what__item-image {
    margin-top: calc(2400vw / var(--screen));
  }
}
.what__item-image img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}

.clients__grid {
  gap: calc(6000vw / var(--screen));
}
@media (max-width: 640px) {
  .clients__grid {
    gap: calc(4800vw / var(--screen));
  }
}
.clients__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2000vw / var(--screen));
  gap: calc(4000vw / var(--screen));
  text-align: center;
  padding: 0 calc(200vw / var(--screen));
}
@media (max-width: 640px) {
  .clients__item {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    text-align: left;
    gap: calc(3200vw / var(--screen));
  }
}
.clients__item-icon {
  width: calc(8800vw / var(--screen));
  height: calc(8800vw / var(--screen));
  min-height: auto !important;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
@media (max-width: 640px) {
  .clients__item-icon {
    width: calc(7200vw / var(--screen));
    height: calc(7200vw / var(--screen));
  }
}
.clients__item-info {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}

.maps__wrapper {
  display: grid;
  grid-template-columns: calc(76000vw / var(--screen)) 1fr;
  grid-template-areas: "maps title" "maps list" "maps list";
  gap: calc(4800vw / var(--screen)) calc(10800vw / var(--screen));
}
@media (max-width: 640px) {
  .maps__wrapper {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "maps" "list";
  }
}
@media (max-width: 640px) {
  .maps .section__title {
    max-width: calc(19000vw / var(--screen));
  }
}
.maps .section__header {
  grid-area: title;
}
.maps__iframe {
  grid-area: maps;
  width: 100%;
  max-width: 100%;
  height: calc(41400vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .maps__iframe {
    height: calc(40000vw / var(--screen));
  }
}
.maps__iframe iframe {
  margin-top: calc(-6000vw / var(--screen));
  width: calc(100% + 200vw / var(--screen));
  max-width: calc(100% + 200vw / var(--screen));
  height: calc(100% + 6000vw / var(--screen));
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}
@media (max-width: 640px) {
  .maps__iframe iframe {
    margin-top: calc(-4800vw / var(--screen));
    height: calc(100% + 4800vw / var(--screen));
  }
}
.maps__list {
  grid-area: list;
  margin-top: auto;
}
.maps__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: calc(2400vw / var(--screen));
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.maps__list li::before {
  content: "";
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIGZpbGw9JyMyMTIxMjEnLz48cGF0aCBkPSdNOCAxMS45OTk4TDEwLjgyODQgMTQuODI4M0wxNi40ODQ3IDkuMTcxMzknIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLz48L3N2Zz4K") center no-repeat;
  background-size: cover;
}
.maps__list li:not(:last-child) {
  margin-bottom: calc(1600vw / var(--screen));
}

.start {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url("../images/start.jpg") top center no-repeat;
  background-size: cover;
  height: calc(90000vw / var(--screen));
}
@media (max-width: 640px) {
  .start {
    height: calc(72000vw / var(--screen));
  }
}
.start .section__subtitle p,
.start .section__title h2 {
  color: #fff;
}
.start .section__description {
  max-width: calc(62000vw / var(--screen));
  margin-left: auto;
  margin-right: auto;
  margin-bottom: calc(5000vw / var(--screen));
}
@media (max-width: 640px) {
  .start .section__description {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.start .section__description p {
  color: #fff;
}
.start h2 {
  font-size: calc(var(--desktop-header-h1) * 100vw / var(--screen));
  line-height: 1.12;
  width: 100%;
  max-width: calc(80000vw / var(--screen));
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 640px) {
  .start h2 {
    font-size: calc(3600vw / var(--screen));
  }
}
.start .button {
  min-width: calc(32000vw / var(--screen));
  max-width: 100%;
}
@media (max-width: 640px) {
  .start .button {
    min-width: auto;
    width: 100%;
  }
}

.page__title:has(+ .page__description) {
  width: 100%;
  max-width: calc(65000vw / var(--screen));
}
.page__title:has(h1 + .color--grey) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(3200vw / var(--screen));
}
.page__title p {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  max-width: calc(59000vw / var(--screen));
}
.page__header {
  display: grid;
  grid-template-columns: calc(64000vw / var(--screen)) calc(50000vw / var(--screen));
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(3200vw / var(--screen));
}
@media (max-width: 640px) {
  .page__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.page__header--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page__header-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.page__header-column .page__title {
  max-width: 100%;
}
.page__header-column .page__description {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: calc(1600vw / var(--screen));
  margin-left: 0;
}
@media (max-width: 640px) {
  .page__header-column .page__description p {
    font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
    line-height: 1.5;
  }
}
.page__header-column .page__description strong,
.page__header-column .page__description b {
  font-size: calc(var(--desktop-body-20) * 100vw / var(--screen));
  font-weight: 500;
}
@media (max-width: 640px) {
  .page__header-column .page__description strong,
  .page__header-column .page__description b {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
    line-height: 1.5;
    font-weight: 350;
    font-weight: 500;
  }
}
.page__description {
  margin-left: auto;
}
.page__description p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.page__description p:not(:last-child) {
  margin-bottom: calc(2400vw / var(--screen));
}

.page-content p,
.page-content blockquote,
.page-content ol,
.page-content ul {
  margin-bottom: calc(2400vw / var(--screen));
}
.page-content h2,
.page-content h3,
.page-content h4,
.page-content h5,
.page-content h6 {
  margin-top: calc(9200vw / var(--screen));
  margin-bottom: calc(3200vw / var(--screen));
}

.wp-block-list {
  margin-left: calc(3200vw / var(--screen));
}

ul.wp-block-list,
ul.wp-block-list li {
  list-style: disc;
}

ol.wp-block-list,
ol.wp-block-list li {
  list-style: decimal;
}

.titles {
  margin-top: calc(16000vw / var(--screen));
  margin-bottom: calc(6000vw / var(--screen));
}
@media (max-width: 640px) {
  .titles {
    margin-top: calc(8000vw / var(--screen));
    margin-bottom: calc(2400vw / var(--screen));
  }
}

.aboutus__wrapper {
  display: grid;
  grid-template-columns: calc(31500vw / var(--screen)) 1fr;
  gap: calc(12000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(6400vw / var(--screen));
  }
}
.aboutus__leftside {
  max-width: 100%;
}
.aboutus__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2000vw / var(--screen));
  gap: calc(1600vw / var(--screen));
  position: sticky;
  top: calc(14000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__nav {
    gap: calc(1200vw / var(--screen));
    position: relative;
    top: 0;
  }
}
.aboutus__nav-link {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
  text-transform: uppercase;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  outline: none;
}
.aboutus__nav-link:hover {
  color: #1C1C1C;
}
.aboutus__nav-link--active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: calc(1600vw / var(--screen));
  color: #1C1C1C;
  position: relative;
}
.aboutus__nav-link--active::before {
  content: "";
  width: calc(600vw / var(--screen));
  height: calc(600vw / var(--screen));
  border-radius: calc(4000vw / var(--screen));
  background: #1C1C1C;
}
.aboutus__rightside {
  max-width: 100%;
  position: relative;
  min-height: calc(100000vw / var(--screen));
  height: auto;
  -webkit-transition: height 0.3s ease-in-out;
  transition: height 0.3s ease-in-out;
}
@media (max-width: 640px) {
  .aboutus__rightside {
    min-height: calc(60000vw / var(--screen));
  }
}
.aboutus__content {
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: opacity 0.4s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.4s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.4s ease, transform 0.5s ease;
  transition: opacity 0.4s ease, transform 0.5s ease, -webkit-transform 0.5s ease;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -9999;
  will-change: transform, opacity;
  pointer-events: none;
}
.aboutus__content--visible {
  position: relative;
  opacity: 1;
  z-index: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  pointer-events: auto;
}
.aboutus__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 100%;
  height: calc(50000vw / var(--screen));
  margin-bottom: calc(8000vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .aboutus__image {
    height: calc(18500vw / var(--screen));
    margin-bottom: calc(4800vw / var(--screen));
  }
}
.aboutus__image img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.aboutus__info p,
.aboutus__info span,
.aboutus__info ul,
.aboutus__info ol,
.aboutus__info blockquote {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.aboutus__info p:not(:last-child),
.aboutus__info span:not(:last-child),
.aboutus__info ul:not(:last-child),
.aboutus__info ol:not(:last-child),
.aboutus__info blockquote:not(:last-child) {
  margin-bottom: calc(2600vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__info p:not(:last-child),
  .aboutus__info span:not(:last-child),
  .aboutus__info ul:not(:last-child),
  .aboutus__info ol:not(:last-child),
  .aboutus__info blockquote:not(:last-child) {
    margin-bottom: calc(2000vw / var(--screen));
  }
}
.aboutus__info p:has(+ img),
.aboutus__info span:has(+ img),
.aboutus__info ul:has(+ img),
.aboutus__info ol:has(+ img),
.aboutus__info blockquote:has(+ img) {
  margin-bottom: 0 !important;
}
.aboutus__quote {
  margin-top: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__quote {
    margin-top: calc(4800vw / var(--screen));
  }
}
.aboutus__quote span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
  margin-bottom: calc(1600vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__quote span {
    font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
    line-height: 1.5;
  }
}
.aboutus__quote p {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  font-weight: 500;
  line-height: 1.2;
  text-transform: uppercase;
}
.aboutus__values {
  grid-template-columns: calc(32600vw / var(--screen)) calc(41100vw / var(--screen));
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__values {
    gap: calc(5600vw / var(--screen));
  }
}
.aboutus__value {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: calc(2400vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__value {
    gap: calc(1600vw / var(--screen));
  }
}
.aboutus__value-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(8000vw / var(--screen));
  height: calc(8000vw / var(--screen));
  margin-bottom: calc(1600vw / var(--screen));
  background: #1C1C1C;
  border-radius: calc(9000vw / var(--screen));
}
.aboutus__value-icon img {
  width: calc(4000vw / var(--screen));
  height: auto;
}
.aboutus__value-title {
  max-width: calc(23500vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__value-title {
    max-width: 100%;
  }
}
.aboutus__value-title p {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  font-weight: 500;
  line-height: 1.2;
  text-transform: uppercase;
}
.aboutus__value-desc p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
@media (max-width: 640px) {
  .aboutus__value-desc p {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
    line-height: 1.5;
    font-weight: 350;
  }
}
.aboutus__process p,
.aboutus__process ul {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.aboutus__process-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
  margin-top: calc(9000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__process-wrapper {
    margin-top: calc(6400vw / var(--screen));
  }
}
.aboutus__process-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(10800vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__process-item {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: calc(4800vw / var(--screen));
  }
}
.aboutus__process-item:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.aboutus__process-item:not(:last-child) {
  padding-bottom: calc(8000vw / var(--screen));
  margin-bottom: calc(8000vw / var(--screen));
  border-bottom: calc(100vw / var(--screen)) solid #1C1C1C;
}
@media (max-width: 640px) {
  .aboutus__process-item:not(:last-child) {
    padding-bottom: calc(6400vw / var(--screen));
    margin-bottom: calc(6400vw / var(--screen));
  }
}
.aboutus__process-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(32600vw / var(--screen));
  min-width: calc(32600vw / var(--screen));
  height: calc(40800vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__process-image {
    width: calc(16000vw / var(--screen));
    min-width: calc(16000vw / var(--screen));
    height: calc(20000vw / var(--screen));
  }
}
.aboutus__process-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2400vw / var(--screen));
  width: 100%;
}
.aboutus__process-content ul {
  list-style: disc;
  margin-left: calc(2400vw / var(--screen));
  margin-top: calc(2000vw / var(--screen));
}
.aboutus__process-content ul li {
  list-style-type: disc;
}
.aboutus__process-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(6400vw / var(--screen));
  height: calc(6400vw / var(--screen));
  background: #1C1C1C;
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #fff;
  border-radius: calc(9000vw / var(--screen));
  margin-bottom: calc(1600vw / var(--screen));
}
.aboutus__process-title {
  max-width: calc(26000vw / var(--screen));
}
.aboutus__process-information {
  max-width: calc(37000vw / var(--screen));
}
.aboutus__testimonials-item:has(span:empty) {
  display: none;
}
.aboutus__testimonials-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(6400vw / var(--screen));
  padding: calc(4000vw / var(--screen));
  border: calc(100vw / var(--screen)) solid #1C1C1C;
}
@media (max-width: 640px) {
  .aboutus__testimonials-item {
    padding: calc(3200vw / var(--screen)) calc(2400vw / var(--screen));
    gap: calc(4800vw / var(--screen));
  }
}
.aboutus__testimonials-item span {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
}
@media (max-width: 640px) {
  .aboutus__testimonials-item span {
    font-size: calc(1400vw / var(--screen));
  }
}
.aboutus__testimonials-item p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(800vw / var(--screen));
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  font-style: italic;
}
.aboutus__testimonials-item p strong,
.aboutus__testimonials-item p b {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  font-weight: 500;
}
.aboutus__testimonials-item p:not(:last-child) {
  margin-bottom: calc(2400vw / var(--screen));
}
.aboutus__testimonials-item:not(:last-child) {
  margin-bottom: calc(2400vw / var(--screen));
}
.aboutus__founder-header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(2400vw / var(--screen));
  grid-template-areas: "top image" ". image" ". image" "name image";
  margin-bottom: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .aboutus__founder-header {
    grid-template-areas: "name" "image" "top";
    grid-template-columns: 1fr;
    margin-bottom: calc(2400vw / var(--screen));
  }
}
.aboutus__founder-top {
  grid-area: top;
}
@media (max-width: 640px) {
  .aboutus__founder-top {
    margin-top: calc(2400vw / var(--screen));
  }
}
.aboutus__founder-top p {
  font-size: calc(var(--desktop-body-20) * 100vw / var(--screen));
  font-weight: 500;
}
.aboutus__founder-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(1600vw / var(--screen));
  grid-area: name;
}
.aboutus__founder-name span {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
}
.aboutus__founder-name p {
  font-size: calc(var(--desktop-header-h3) * 100vw / var(--screen));
  line-height: 1.2;
  font-weight: 500;
  text-transform: uppercase;
}
@media (max-width: 640px) {
  .aboutus__founder-name p {
    max-width: calc(27000vw / var(--screen));
  }
}
.aboutus__founder-image {
  grid-area: image;
}
.aboutus__founder-content img {
  margin-top: calc(8000vw / var(--screen));
  margin-bottom: calc(8000vw / var(--screen));
  max-width: 100%;
}
@media (max-width: 640px) {
  .aboutus__founder-content img {
    margin-top: calc(4800vw / var(--screen));
    margin-bottom: calc(4800vw / var(--screen));
  }
}
.aboutus__founder-footer {
  margin-top: calc(8000vw / var(--screen));
}
.aboutus__founder-footer span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
  margin-bottom: calc(2400vw / var(--screen));
}
.aboutus__founder-footer p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  font-style: italic;
  font-weight: 600;
}
.aboutus__founder-footer p b,
.aboutus__founder-footer p strong {
  font-weight: 600;
}
@media (max-width: 640px) {
  .aboutus__founder-footer {
    margin-top: calc(4800vw / var(--screen));
  }
}

.services {
  padding-top: calc(4000vw / var(--screen));
  padding-bottom: calc(20000vw / var(--screen));
}
@media (max-width: 640px) {
  .services {
    padding-top: calc(2400vw / var(--screen));
    padding-bottom: calc(12000vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .services__grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(2400vw / var(--screen));
  }
}
.services__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
  background: #0D0D0D;
  text-decoration: none;
}
@media (hover: hover) {
  .services__item:hover .services__image img {
    -webkit-transform: scale(1.045);
            transform: scale(1.045);
  }
  .services__item:hover .services__arrow::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}
.services__item:nth-child(4) .services__information p, .services__item:nth-child(5) .services__information p, .services__item:nth-child(6) .services__information p {
  max-width: calc(34000vw / var(--screen));
}
.services__item h2,
.services__item h3,
.services__item h4,
.services__item span,
.services__item a,
.services__item p {
  color: #fff;
}
.services__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: calc(33600vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .services__image {
    height: calc(28000vw / var(--screen));
  }
}
.services__image img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  pointer-events: none;
}
.services__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(3200vw / var(--screen));
  padding: calc(3200vw / var(--screen));
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin-top: calc(-200vw / var(--screen));
}
@media (max-width: 640px) {
  .services__content {
    padding: calc(2400vw / var(--screen));
    gap: calc(2400vw / var(--screen));
  }
}
.services__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(1600vw / var(--screen));
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.services__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(800vw / var(--screen));
}
.services__info p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.services__info h2 {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  line-height: 1.2;
  font-size: calc(2400vw / var(--screen));
  font-weight: 600;
}
@media (max-width: 640px) {
  .services__info h2 {
    font-size: calc(1800vw / var(--screen));
  }
}
.services__arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(5600vw / var(--screen));
  min-width: calc(5600vw / var(--screen));
  height: calc(5600vw / var(--screen));
  background: #fff;
  position: relative;
}
.services__arrow::after {
  content: "";
  position: absolute;
  width: calc(3200vw / var(--screen));
  height: calc(3200vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMzInIGhlaWdodD0nMzInIHZpZXdCb3g9JzAgMCAzMiAzMicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNOS4zMzM5OCAxNkgyMi42NjczTTIyLjY2NzMgMTZMMTcuMzM0IDEwLjY2NjdNMjIuNjY3MyAxNkwxNy4zMzQgMjEuMzMzNCcgc3Ryb2tlPScjMUMxQzFDJyBzdHJva2Utd2lkdGg9JzEuNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+Cg==") center no-repeat;
  background-size: cover;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.services__information p {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  max-width: calc(27000vw / var(--screen));
}

.choose__wrapper {
  display: grid;
  grid-template-columns: calc(64000vw / var(--screen)) 1fr;
  gap: calc(9000vw / var(--screen));
  grid-template-areas: "header grid" ". grid" "image grid";
}
@media (max-width: 640px) {
  .choose__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(4800vw / var(--screen));
  }
}
.choose .section__header {
  grid-area: header;
}
@media (max-width: 640px) {
  .choose .section__header {
    margin-bottom: 0;
  }
}
.choose__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(2400vw / var(--screen));
  width: calc(54300vw / var(--screen));
  max-width: 100%;
  height: calc(42400vw / var(--screen));
  grid-area: image;
}
@media (max-width: 640px) {
  .choose__image {
    height: calc(24500vw / var(--screen));
    gap: calc(1200vw / var(--screen));
  }
}
.choose__image img {
  width: auto;
  max-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.choose__image img:nth-child(1) {
  max-width: 70%;
}
.choose__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(5600vw / var(--screen));
  grid-area: grid;
}
.choose__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(3200vw / var(--screen));
  width: 100%;
  max-width: calc(22000vw / var(--screen));
}
.choose__item-icon {
  width: calc(8000vw / var(--screen));
  height: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .choose__item-icon {
    width: calc(7200vw / var(--screen));
    height: calc(7200vw / var(--screen));
  }
}
.choose__item-icon img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.choose__item p {
  width: 100%;
  max-width: calc(19000vw / var(--screen));
}

.service__header {
  margin-bottom: calc(8000vw / var(--screen));
}
@media (max-width: 640px) {
  .service__header {
    margin-bottom: calc(4800vw / var(--screen));
  }
}
@media (max-width: 640px) {
  .service__header .page__title h1 {
    font-size: calc(var(--desktop-header-h2) * 100vw / var(--screen));
    line-height: 1.2;
  }
}
.service__header .page__description p {
  margin-bottom: 0 !important;
}

.included__grid {
  gap: calc(6400vw / var(--screen)) calc(2400vw / var(--screen));
}
@media (max-width: 640px) {
  .included__grid {
    gap: calc(4800vw / var(--screen)) calc(1600vw / var(--screen));
  }
}
.included__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(3200vw / var(--screen));
}
@media (max-width: 640px) {
  .included__item:last-child:nth-child(odd) {
    grid-column: 1/3;
  }
}
.included__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(6400vw / var(--screen));
  height: calc(6400vw / var(--screen));
  border-radius: 100%;
  background: #1C1C1C;
  color: #fff;
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.included__description {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  max-width: calc(24000vw / var(--screen));
}
.included__description p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
@media (max-width: 640px) {
  .included__description p {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
    line-height: 1.5;
    font-weight: 350;
  }
}
@media (max-width: 640px) {
  .included__description {
    font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
    line-height: 1.5;
    font-weight: 350;
  }
}

.gallery__item {
  height: calc(42000vw / var(--screen));
}
@media (max-width: 640px) {
  .gallery__item {
    height: calc(21000vw / var(--screen));
  }
}
.gallery__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
}
.gallery__item a img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}

@media (max-width: 640px) {
  .projects {
    margin-top: calc(4800vw / var(--screen));
  }
}
.projects__item .services__image {
  height: calc(43000vw / var(--screen));
}
@media (max-width: 640px) {
  .projects__item .services__image {
    height: calc(22000vw / var(--screen));
  }
}
.projects__item .services__content .services__title {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.project__info {
  max-width: calc(42000vw / var(--screen));
  margin-left: auto;
  margin-right: calc(6200vw / var(--screen));
}
@media (max-width: 640px) {
  .project__info {
    margin-left: 0;
  }
}

.projectimg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: calc(69000vw / var(--screen));
  margin-top: calc(8000vw / var(--screen));
  margin-bottom: calc(10000vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .projectimg {
    height: calc(40000vw / var(--screen));
  }
}
.projectimg img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
@media (max-width: 640px) {
  .projectimg {
    margin-top: calc(4800vw / var(--screen));
    margin-bottom: calc(6400vw / var(--screen));
  }
}

.projectinfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(4600vw / var(--screen));
  padding-top: calc(10000vw / var(--screen));
  padding-bottom: calc(10000vw / var(--screen));
}
@media (max-width: 640px) {
  .projectinfo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-top: calc(6200vw / var(--screen));
    padding-bottom: calc(2400vw / var(--screen));
  }
}
.projectinfo .section__header {
  width: 100%;
  max-width: calc(54000vw / var(--screen));
  margin-bottom: 0;
  padding-bottom: 0;
}
.projectinfo__description {
  width: 100%;
  max-width: calc(61000vw / var(--screen));
}
.projectinfo__description p {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
}
.projectinfo__description p:not(:last-child) {
  margin-bottom: calc(2400vw / var(--screen));
}

.projectgallery {
  margin-top: calc(10000vw / var(--screen));
  padding-bottom: calc(10000vw / var(--screen));
}
@media (max-width: 640px) {
  .projectgallery {
    margin-top: calc(2400vw / var(--screen));
    padding-bottom: calc(6400vw / var(--screen));
  }
}
.projectgallery__grid {
  gap: calc(2400vw / var(--screen));
}
@media (max-width: 640px) {
  .projectgallery__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(800vw / var(--screen));
  }
}
.projectgallery__item {
  height: calc(42000vw / var(--screen));
  overflow: hidden;
}
@media (max-width: 640px) {
  .projectgallery__item {
    height: calc(10000vw / var(--screen));
  }
}
.projectgallery__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
}
.projectgallery__item a img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.projectgallery__item-fullwidth {
  height: calc(44000vw / var(--screen));
  grid-column: 1/3;
}
@media (max-width: 640px) {
  .projectgallery__item-fullwidth {
    height: calc(11000vw / var(--screen));
  }
}

.gallery .projectgallery__item-fullwidth {
  height: calc(42000vw / var(--screen));
}
@media (max-width: 640px) {
  .gallery .projectgallery__item-fullwidth {
    height: calc(21000vw / var(--screen));
  }
}

@media (max-width: 640px) {
  .related .section__header {
    max-width: calc(29000vw / var(--screen));
  }
}

.contacts {
  padding-bottom: calc(20000vw / var(--screen));
}
@media (max-width: 640px) {
  .contacts {
    padding-bottom: calc(12000vw / var(--screen));
  }
}
.contacts__wrapper {
  display: grid;
  grid-template-columns: 1fr calc(74000vw / var(--screen));
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(4800vw / var(--screen));
  grid-template-areas: "title form" "info form";
}
@media (max-width: 640px) {
  .contacts__wrapper {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "form" "info";
  }
}
.contacts .section__title {
  grid-area: title;
  width: 100%;
  max-width: calc(42000vw / var(--screen));
}
.contacts__info {
  grid-area: info;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2400vw / var(--screen));
  margin-top: auto;
  width: 100%;
  max-width: calc(22000vw / var(--screen));
}
.contacts__info-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(400vw / var(--screen));
}
.contacts__info-item span {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #A6A6A6;
}
.contacts__info-item p,
.contacts__info-item a {
  font-size: calc(var(--desktop-body-18) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  color: #1C1C1C;
}
.contacts__info-item a {
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.contacts__info-item a:hover {
  opacity: 0.6;
}
.contacts__form {
  grid-area: form;
}
.contacts__form-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(2400vw / var(--screen));
}
@media (max-width: 640px) {
  .contacts__form-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(1600vw / var(--screen));
  }
}
.contacts__form-input p,
.contacts__form-input label {
  display: inline-block;
  font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
  line-height: 1.5;
  margin-bottom: calc(800vw / var(--screen));
  text-transform: uppercase;
}
.contacts__form-input input,
.contacts__form-input select,
.contacts__form-input textarea {
  width: 100%;
}
.contacts__form-input select {
  padding-right: calc(5000vw / var(--screen));
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.contacts__form-input:has(> textarea) {
  grid-column: 1/3;
}
.contacts__form-input.error p,
.contacts__form-input.error input,
.contacts__form-input.error span,
.contacts__form-input.error label {
  color: #F50000;
}
.contacts__form-input.error input,
.contacts__form-input.error select {
  border-color: #F50000;
}
.contacts__form-input.error span {
  display: inline-block;
  margin-top: calc(800vw / var(--screen));
}
.contacts__form button {
  grid-column: 1/3;
  width: 100%;
}

.process__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
}
.process__item {
  display: grid;
  grid-template-columns: calc(19000vw / var(--screen)) auto auto;
  grid-template-areas: "number info includes" "image info includes" "image info includes";
  gap: calc(4800vw / var(--screen));
}
@media (max-width: 640px) {
  .process__item {
    grid-template-columns: 1fr;
    grid-template-areas: "number" "info" "image" "includes";
  }
}
.process__item:not(:last-child) {
  padding-bottom: calc(9000vw / var(--screen));
  border-bottom: calc(100vw / var(--screen)) solid #1C1C1C;
}
@media (max-width: 640px) {
  .process__item:not(:last-child) {
    padding-bottom: calc(6400vw / var(--screen));
  }
}
.process__item:not(:nth-child(1)) {
  padding-top: calc(9000vw / var(--screen));
}
.process__number {
  grid-area: number;
}
.process__number p {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  font-weight: 500;
  text-transform: uppercase;
}
@media (max-width: 640px) {
  .process__number p {
    font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
    line-height: 1.5;
  }
}
.process__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(16000vw / var(--screen));
  height: calc(20000vw / var(--screen));
  overflow: hidden;
  grid-area: image;
  margin-top: auto;
}
.process__image img {
  width: auto;
  min-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.process__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: calc(2400vw / var(--screen));
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  grid-area: info;
  width: 100%;
  max-width: calc(44000vw / var(--screen));
  margin-left: auto;
}
.process__description {
  width: 100%;
  max-width: calc(38000vw / var(--screen));
}
.process__description p {
  color: #A6A6A6;
}
@media (max-width: 640px) {
  .process__description p {
    font-size: calc(var(--desktop-body-14) * 100vw / var(--screen));
    line-height: 1.5;
  }
}
.process__includes {
  grid-area: includes;
  width: 100%;
  max-width: calc(39000vw / var(--screen));
  margin-left: auto;
}
.process__includes > p {
  font-size: calc(var(--desktop-header-h4) * 100vw / var(--screen));
  font-weight: 500;
  line-height: 1.2;
  text-transform: uppercase;
}
.process__includes ul {
  margin-top: calc(2400vw / var(--screen));
  margin-bottom: calc(6400vw / var(--screen));
}
@media (max-width: 640px) {
  .process__includes ul {
    margin-bottom: calc(4800vw / var(--screen));
  }
}
.process__includes ul li {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  position: relative;
  padding-left: calc(4000vw / var(--screen));
  margin-bottom: calc(800vw / var(--screen));
}
.process__includes ul li:last-child {
  margin-bottom: 0;
}
.process__includes ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTYnIGhlaWdodD0nMTYnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNCA4LjAwMDMzTDYuODI4NDMgMTAuODI4OEwxMi40ODQ3IDUuMTcxODgnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLz48L3N2Zz4K") center no-repeat #1C1C1C;
  background-size: calc(1600vw / var(--screen));
}
.process__help p {
  font-size: calc(var(--desktop-body-16) * 100vw / var(--screen));
  line-height: 1.5;
  font-weight: 350;
  font-weight: 450;
  padding-left: calc(4000vw / var(--screen));
  position: relative;
}
.process__help p::before {
  content: "";
  position: absolute;
  top: calc(200vw / var(--screen));
  left: 0;
  width: calc(2400vw / var(--screen));
  height: calc(2400vw / var(--screen));
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB4PScwLjUnIHk9JzAuNScgd2lkdGg9JzIzJyBoZWlnaHQ9JzIzJyByeD0nMTEuNScgc3Ryb2tlPScjMUMxQzFDJy8+PHBhdGggZD0nTTkuOTY2NjIgMTlMMTEuNjAzIDkuMTgxODJIMTMuNTE0MkwxMS44Nzc4IDE5SDkuOTY2NjJaTTEyLjk1ODEgNy42NDc3M0MxMi42MjU3IDcuNjQ3NzMgMTIuMzQ0NSA3LjUzNjkzIDEyLjExNDMgNy4zMTUzNEMxMS44ODg1IDcuMDg5NDkgMTEuNzg0MSA2LjgyMTAyIDExLjgwMTEgNi41MDk5NEMxMS44MTgyIDYuMTk0NiAxMS45NTAzIDUuOTI2MTQgMTIuMTk3NCA1LjcwNDU1QzEyLjQ0NDYgNS40Nzg2OSAxMi43MzIyIDUuMzY1NzcgMTMuMDYwNCA1LjM2NTc3QzEzLjM5MjggNS4zNjU3NyAxMy42NzE5IDUuNDc4NjkgMTMuODk3NyA1LjcwNDU1QzE0LjEyMzYgNS45MjYxNCAxNC4yMzAxIDYuMTk0NiAxNC4yMTczIDYuNTA5OTRDMTQuMjAwMyA2LjgyMTAyIDE0LjA2ODIgNy4wODk0OSAxMy44MjEgNy4zMTUzNEMxMy41NzgxIDcuNTM2OTMgMTMuMjkwNSA3LjY0NzczIDEyLjk1ODEgNy42NDc3M1onIGZpbGw9JyMxQzFDMUMnLz48L3N2Zz4K") center no-repeat;
  background-size: cover;
}

:root {
  --f-button-width: 40px;
  --f-button-height: 40px;
  --f-button-border: 0;
  --f-button-border-radius: 0;
  --f-button-color: #374151;
  --f-button-bg: #f8f8f8;
  --f-button-shadow: none;
  --f-button-transition: all .15s ease;
  --f-button-transform: none;
  --f-button-outline-width: 1px;
  --f-button-outline-color: rgba(0, 0, 0, .7);
  --f-button-svg-width: 20px;
  --f-button-svg-height: 20px;
  --f-button-svg-stroke-width: 1.5;
  --f-button-svg-fill: none;
  --f-button-svg-filter: none;
  --f-button-svg-opacity: 1;
  --f-button-svg-disabled-opacity: .5;
  --f-button-svg-transition: opacity .15s ease;
  --f-button-svg-transform: none;
}

.f-button {
  width: var(--f-button-width);
  height: var(--f-button-height);
  border: var(--f-button-border);
  border-radius: var(--f-button-border-radius);
  color: var(--f-button-color);
  background: var(--f-button-bg);
  -webkit-box-shadow: var(--f-button-shadow);
          box-shadow: var(--f-button-shadow);
  -webkit-transform: var(--f-button-transform);
          transform: var(--f-button-transform);
  -webkit-transition: var(--f-button-transition);
  transition: var(--f-button-transition);
  backdrop-filter: var(--f-button-backdrop-filter);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  position: relative;
  margin: 0;
  padding: 0;
  pointer-events: all;
  cursor: pointer;
  overflow: hidden;
}

@media (hover: hover) {
  .f-button:hover:not([aria-disabled]) {
    color: var(--f-button-hover-color, var(--f-button-color));
    background-color: var(--f-button-hover-bg, var(--f-button-bg));
  }
}
.f-button:active:not([aria-disabled]) {
  color: var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));
  background-color: var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)));
}

.f-button:focus {
  outline: none;
}

.f-button:focus-visible {
  outline: var(--f-button-outline-width) solid var(--f-button-outline-color);
  outline-offset: var(--f-button-outline-offset);
}

.f-button svg {
  width: var(--f-button-svg-width);
  height: var(--f-button-svg-height);
  -webkit-transform: var(--f-button-svg-transform);
          transform: var(--f-button-svg-transform);
  fill: var(--f-button-svg-fill);
  -webkit-filter: var(--f-button-svg-filter);
          filter: var(--f-button-svg-filter);
  opacity: var(--f-button-svg-opacity, 1);
  -webkit-transition: var(--f-button-svg-transition);
  transition: var(--f-button-svg-transition);
  stroke: currentColor;
  stroke-width: var(--f-button-svg-stroke-width);
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}

.f-button[aria-disabled] {
  cursor: default;
}

.f-button[aria-disabled] svg {
  opacity: var(--f-button-svg-disabled-opacity);
}

[data-panzoom-action=toggleFS] g:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

[data-panzoom-action=toggleFS] g:last-child {
  display: none;
}

.in-fullscreen [data-panzoom-action=toggleFS] g:first-child {
  display: none;
}

.in-fullscreen [data-panzoom-action=toggleFS] g:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

[data-autoplay-action=toggle] svg g:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

[data-autoplay-action=toggle] svg g:last-child {
  display: none;
}

.has-autoplay [data-autoplay-action=toggle] svg g:first-child {
  display: none;
}

.has-autoplay [data-autoplay-action=toggle] svg g:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
  display: -webkit-box;
  display: flex;
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
  display: -ms-flexbox;
  display: flex;
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

:root {
  --f-spinner-color-1: rgba(0, 0, 0, .1);
  --f-spinner-color-2: rgba(17, 24, 28, .8);
  --f-spinner-width: 50px;
  --f-spinner-height: 50px;
  --f-spinner-border-radius: 50%;
  --f-spinner-border-width: 4px;
}

.f-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  padding: 0;
  width: var(--f-spinner-width);
  height: var(--f-spinner-height);
  translate: -50% -50%;
  border: var(--f-spinner-border-width) solid var(--f-spinner-color-1);
  border-top-color: var(--f-spinner-color-2);
  border-radius: var(--f-spinner-border-radius);
  -webkit-animation: f-spinner 0.75s linear infinite, f-fadeIn 0.2s ease 0.2s both;
          animation: f-spinner 0.75s linear infinite, f-fadeIn 0.2s ease 0.2s both;
}

@-webkit-keyframes f-spinner {
  to {
    rotate: 360deg;
  }
}

@keyframes f-spinner {
  to {
    rotate: 360deg;
  }
}
.f-panzoom, .f-zoomable {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.f-panzoom:before, .f-panzoom:after, .f-zoomable:before, .f-zoomable:after {
  display: block;
  content: "";
}

.f-panzoom:not(.has-controls):before, .f-zoomable:not(.has-controls):before {
  margin-bottom: auto;
}

.f-panzoom:after, .f-zoomable:after {
  margin-top: auto;
}

.f-panzoom.in-fullscreen, .f-zoomable.in-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: unset !important;
  z-index: 9999;
}

.f-panzoom__wrapper {
  position: relative;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
}

.f-panzoom__wrapper.will-zoom-out {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.f-panzoom__wrapper.can-drag {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.f-panzoom__wrapper.will-zoom-in {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.f-panzoom__wrapper.is-dragging {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.f-panzoom__wrapper.has-error {
  display: none;
}

.f-panzoom__content {
  display: block;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
}

.f-panzoom__content.is-lazyloading, .f-panzoom__content.has-lazyerror {
  visibility: hidden;
}

img.f-panzoom__content {
  width: auto;
  height: auto;
  vertical-align: top;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transition: none;
  transition: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.f-panzoom__wrapper > .f-panzoom__content {
  visibility: hidden;
}

.f-panzoom__viewport {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.f-panzoom__viewport > .f-panzoom__content {
  width: 100%;
  height: 100%;
  -o-object-fit: fill;
     object-fit: fill;
}

picture.f-panzoom__content img {
  vertical-align: top;
  width: 100%;
  height: auto;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transition: none;
  transition: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.f-panzoom__protected {
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

html.with-panzoom-in-fullscreen {
  overflow: hidden;
}

.f-fadeIn {
  -webkit-animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
          animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
  z-index: 2;
}

.f-fadeOut {
  -webkit-animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
          animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
  z-index: 1;
}

@-webkit-keyframes f-fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes f-fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes f-fadeOut {
  to {
    opacity: 0;
  }
}
@keyframes f-fadeOut {
  to {
    opacity: 0;
  }
}
.f-crossfadeIn {
  -webkit-animation: var(--f-transition-duration, 0.2s) ease both f-crossfadeIn;
          animation: var(--f-transition-duration, 0.2s) ease both f-crossfadeIn;
  z-index: 2;
}

.f-crossfadeOut {
  -webkit-animation: calc(var(--f-transition-duration, 0.2s) * 0.2) ease calc(var(--f-transition-duration, 0.2s) * 0.8) both f-crossfadeOut;
          animation: calc(var(--f-transition-duration, 0.2s) * 0.2) ease calc(var(--f-transition-duration, 0.2s) * 0.8) both f-crossfadeOut;
  z-index: 1;
}

@-webkit-keyframes f-crossfadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes f-crossfadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes f-crossfadeOut {
  to {
    opacity: 0;
  }
}
@keyframes f-crossfadeOut {
  to {
    opacity: 0;
  }
}
.is-horizontal .f-slideIn.from-next {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNextX;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNextX;
}

.is-horizontal .f-slideIn.from-prev {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrevX;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrevX;
}

.is-horizontal .f-slideOut.to-next {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNextX;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNextX;
}

.is-horizontal .f-slideOut.to-prev {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrevX;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrevX;
}

@-webkit-keyframes f-slideInPrevX {
  0% {
    -webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
            transform: translate(calc(100% + var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}

@keyframes f-slideInPrevX {
  0% {
    -webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
            transform: translate(calc(100% + var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@-webkit-keyframes f-slideInNextX {
  0% {
    -webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@keyframes f-slideInNextX {
  0% {
    -webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@-webkit-keyframes f-slideOutNextX {
  to {
    -webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
  }
}
@keyframes f-slideOutNextX {
  to {
    -webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
  }
}
@-webkit-keyframes f-slideOutPrevX {
  to {
    -webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
            transform: translate(calc(100% + var(--f-carousel-gap, 0)));
  }
}
@keyframes f-slideOutPrevX {
  to {
    -webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
            transform: translate(calc(100% + var(--f-carousel-gap, 0)));
  }
}
.is-vertical .f-slideIn.from-next {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNextY;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNextY;
}

.is-vertical .f-slideIn.from-prev {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrevY;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrevY;
}

.is-vertical .f-slideOut.to-next {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNextY;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNextY;
}

.is-vertical .f-slideOut.to-prev {
  -webkit-animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrevY;
          animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrevY;
}

@-webkit-keyframes f-slideInPrevY {
  0% {
    -webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
            transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}

@keyframes f-slideInPrevY {
  0% {
    -webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
            transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@-webkit-keyframes f-slideInNextY {
  0% {
    -webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@keyframes f-slideInNextY {
  0% {
    -webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
  }
  to {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
@-webkit-keyframes f-slideOutNextY {
  to {
    -webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
  }
}
@keyframes f-slideOutNextY {
  to {
    -webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
            transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
  }
}
@-webkit-keyframes f-slideOutPrevY {
  to {
    -webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
            transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
  }
}
@keyframes f-slideOutPrevY {
  to {
    -webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
            transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
  }
}
.f-zoomInUp {
  -webkit-animation: var(--f-transition-duration, 0.3s) ease both f-zoomInUp;
          animation: var(--f-transition-duration, 0.3s) ease both f-zoomInUp;
}

.f-zoomOutDown {
  -webkit-animation: var(--f-transition-duration, 0.3s) ease both f-zoomOutDown;
          animation: var(--f-transition-duration, 0.3s) ease both f-zoomOutDown;
}

@-webkit-keyframes f-zoomInUp {
  0% {
    -webkit-transform: scale(var(--f-zoomInUp-scale, 0.975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
            transform: scale(var(--f-zoomInUp-scale, 0.975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
    opacity: var(--f-zoomInUp-opacity, 0);
  }
  to {
    -webkit-transform: scale(1) translateZ(0);
            transform: scale(1) translateZ(0);
    opacity: 1;
  }
}

@keyframes f-zoomInUp {
  0% {
    -webkit-transform: scale(var(--f-zoomInUp-scale, 0.975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
            transform: scale(var(--f-zoomInUp-scale, 0.975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
    opacity: var(--f-zoomInUp-opacity, 0);
  }
  to {
    -webkit-transform: scale(1) translateZ(0);
            transform: scale(1) translateZ(0);
    opacity: 1;
  }
}
@-webkit-keyframes f-zoomOutDown {
  to {
    -webkit-transform: scale(var(--f-zoomOutDown-scale, 0.975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
            transform: scale(var(--f-zoomOutDown-scale, 0.975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
    opacity: 0;
  }
}
@keyframes f-zoomOutDown {
  to {
    -webkit-transform: scale(var(--f-zoomOutDown-scale, 0.975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
            transform: scale(var(--f-zoomOutDown-scale, 0.975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
    opacity: 0;
  }
}
.f-throwOutUp {
  -webkit-animation: var(--f-throwOutUp-duration, 0.2s) ease-out both f-throwOutUp;
          animation: var(--f-throwOutUp-duration, 0.2s) ease-out both f-throwOutUp;
}

.f-throwOutDown {
  -webkit-animation: var(--f-throwOutDown-duration, 0.2s) ease-out both f-throwOutDown;
          animation: var(--f-throwOutDown-duration, 0.2s) ease-out both f-throwOutDown;
}

@-webkit-keyframes f-throwOutUp {
  to {
    -webkit-transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
            transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
    opacity: 0;
  }
}

@keyframes f-throwOutUp {
  to {
    -webkit-transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
            transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
    opacity: 0;
  }
}
@-webkit-keyframes f-throwOutDown {
  to {
    -webkit-transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
            transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
    opacity: 0;
  }
}
@keyframes f-throwOutDown {
  to {
    -webkit-transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
            transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
    opacity: 0;
  }
}
.has-iframe .f-html, .has-pdf .f-html, .has-gmap .f-html {
  width: 100%;
  height: 100%;
  min-height: 1px;
  overflow: visible;
}

.has-pdf .f-html, .has-gmap .f-html {
  padding: 0;
}

.f-html {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: var(--f-html-margin, 0);
  padding: var(--f-html-padding, 2rem);
  color: var(--f-html-color, currentColor);
  background: var(--f-html-bg);
}

.is-loading > .f-html {
  opacity: 0;
}

.f-html.is-error {
  text-align: center;
}

.f-iframe {
  display: block;
  margin: 0;
  border: 0;
  height: 100%;
  width: 100%;
}

.f-caption {
  -ms-flex-item-align: center;
      align-self: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: var(--f-caption-margin);
  padding: var(--f-caption-padding, 16px 8px);
  max-width: 100%;
  max-height: calc(80vh - 100px);
  overflow: auto;
  overflow-wrap: anywhere;
  line-height: var(--f-caption-line-height);
  color: var(--f-caption-color);
  background: var(--f-caption-bg);
  font: var(--f-caption-font);
}

.has-html5video .f-html, .has-youtube .f-html, .has-vimeo .f-html {
  padding: 0;
  width: 100%;
  height: 100%;
  min-height: 1px;
  overflow: visible;
  max-width: var(--f-video-width, 960px);
  max-height: var(--f-video-height, 540px);
  aspect-ratio: var(--f-video-aspect-ratio);
  background: var(--f-video-bg, rgba(0, 0, 0, 0.9));
}

.f-html5video {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: transparent;
}

.f-button.is-arrow {
  --f-button-width: var(--f-arrow-width, 46px);
  --f-button-height: var(--f-arrow-height, 46px);
  --f-button-svg-width: var(--f-arrow-svg-width, 24px);
  --f-button-svg-height: var(--f-arrow-svg-height, 24px);
  --f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);
  --f-button-border-radius: var(--f-arrow-border-radius, unset);
  --f-button-bg: var(--f-arrow-bg, transparent);
  --f-button-hover-bg: var(--f-arrow-hover-bg, var(--f-arrow-bg));
  --f-button-active-bg: var(--f-arrow-active-bg, var(--f-arrow-hover-bg));
  --f-button-shadow: var(--f-arrow-shadow);
  --f-button-color: var(--f-arrow-color);
  --f-button-hover-color: var(--f-arrow-hover-color, var(--f-arrow-color));
  --f-button-active-color: var( --f-arrow-active-color, var(--f-arrow-hover-color) );
  overflow: visible;
}

.f-button.is-arrow.is-prev, .f-button.is-arrow.is-next {
  position: absolute;
  -webkit-transform: translate(0);
          transform: translate(0);
  z-index: 20;
}

.is-horizontal .f-button.is-arrow.is-prev, .is-horizontal .f-button.is-arrow.is-next {
  inset: 50% auto auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
  left: var(--f-arrow-pos, 0);
}

.is-horizontal.is-ltr .f-button.is-arrow.is-next {
  right: var(--f-arrow-pos, 0);
}

.is-horizontal.is-rtl .f-button.is-arrow.is-prev {
  right: var(--f-arrow-pos, 0);
  -webkit-transform: translateY(-50%) rotateY(180deg);
          transform: translateY(-50%) rotateY(180deg);
}

.is-horizontal.is-rtl .f-button.is-arrow.is-next {
  left: var(--f-arrow-pos, 0);
  -webkit-transform: translateY(-50%) rotateY(180deg);
          transform: translateY(-50%) rotateY(180deg);
}

.is-vertical.is-ltr .f-button.is-arrow.is-prev, .is-vertical.is-rtl .f-button.is-arrow.is-prev {
  top: var(--f-arrow-pos, 0);
  right: auto;
  bottom: auto;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
}

.is-vertical.is-ltr .f-button.is-arrow.is-next, .is-vertical.is-rtl .f-button.is-arrow.is-next {
  top: auto;
  right: auto;
  bottom: var(--f-arrow-pos, 0);
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
}

.is-vertical .f-button.is-arrow.is-prev svg, .is-vertical .f-button.is-arrow.is-next svg {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.f-carousel__toolbar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  margin: var(--f-toolbar-margin, 0);
  padding: var(--f-toolbar-padding, 8px);
  line-height: var(--f-toolbar-line-height);
  background: var(--f-toolbar-bg, none);
  -webkit-box-shadow: var(--f-toolbar-shadow, none);
          box-shadow: var(--f-toolbar-shadow, none);
  backdrop-filter: var(--f-toolbar-backdrop-filter);
  position: relative;
  z-index: 20;
  color: var(--f-toolbar-color, currentColor);
  font-size: var(--f-toolbar-font-size, 17px);
  font-weight: var(--f-toolbar-font-weight, inherit);
  font-family: var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);
  text-shadow: var(--f-toolbar-text-shadow);
  text-align: center;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased;
  white-space: nowrap;
  pointer-events: none;
}

.f-carousel__toolbar.is-absolute {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.f-carousel__toolbar .f-button:focus-visible {
  position: relative;
  z-index: 1;
}

.f-carousel__toolbar__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  gap: var(--f-toolbar-gap, 0);
}

.f-carousel__toolbar__column.is-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-self: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.f-carousel__toolbar__column.is-middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.f-carousel__toolbar__column.is-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-self: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-flow: nowrap;
      flex-flow: nowrap;
}

.f-carousel__toolbar__column {
  pointer-events: none;
}

.f-carousel__toolbar__column > * {
  pointer-events: all;
}

.f-counter {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin: var(--f-counter-margin, 0);
  padding: var(--f-counter-padding, 4px);
  line-height: var(--f-counter-line-height);
  background: var(--f-counter-bg);
  border-radius: var(--f-counter-border-radius);
}

.f-counter span {
  padding: 0 var(--f-counter-gap, 4px);
}

:root {
  --f-thumbs-gap: 8px;
  --f-thumbs-margin: 0;
  --f-thumbs-padding-x: 8px;
  --f-thumbs-padding-y: 8px;
  --f-thumbs-bg: transparent;
  --f-thumbs-transition: max-height .3s ease, max-width .3s ease, padding .3s ease;
  --f-thumbs-z-index: 1;
  --f-thumbs-viewport-padding-x: 0px;
  --f-thumbs-viewport-padding-y: 0px;
  --f-thumb-width: 94px;
  --f-thumb-height: 76px;
  --f-thumb-clip-width: 46px;
  --f-thumb-extra-gap: 16px;
  --f-thumb-opacity: 1;
  --f-thumb-transition: opacity .3s ease, transform .15s ease;
  --f-thumb-border: none;
  --f-thumb-border-radius: 4px;
  --f-thumb-shadow: none;
  --f-thumb-bg: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));
  --f-thumb-focus-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
  --f-thumb-selected-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
  --f-thumb-border-transition: all .1s ease;
  --f-thumb-img-width: 100%;
  --f-thumb-img-height: 100%;
  --f-thumb-img-fit: cover;
  --f-thumb-img-position: 50% 20%;
}

.f-thumbs {
  --f-carousel-slide-width: var(--f-thumb-width);
  --f-carousel-slide-height: var(--f-thumb-height);
  --f-carousel-gap: var(--f-thumbs-gap);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: var(--f-thumbs-margin);
  padding: var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);
  overflow: hidden;
  background: var(--f-thumbs-bg);
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: var(--f-thumbs-transition);
  transition: var(--f-thumbs-transition);
  z-index: var(--f-thumbs-z-index);
}

.f-thumbs.is-horizontal {
  max-height: calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y) * 2);
}

.f-thumbs.is-horizontal.is-hidden {
  max-height: 0;
  --f-thumbs-padding-y: 0;
}

.f-thumbs.is-vertical {
  max-width: calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x) * 2);
}

.f-thumbs.is-vertical.is-hidden {
  max-width: 0;
  --f-thumbs-padding-x: 0;
}

.f-thumbs.is-scrollable.is-hidden {
  max-height: 0;
  --f-thumbs-padding-y: 0;
}

.f-thumbs.is-ltr {
  direction: ltr;
}

.f-thumbs.is-rtl {
  direction: rtl;
}

.f-thumbs img {
  display: block;
  width: var(--f-thumb-img-width);
  height: var(--f-thumb-img-height);
  -o-object-fit: var(--f-thumb-img-fit);
     object-fit: var(--f-thumb-img-fit);
  -o-object-position: var(--f-thumb-img-position);
     object-position: var(--f-thumb-img-position);
  pointer-events: none;
  border-radius: inherit;
  color: transparent;
}

.f-thumbs img[data-lazy-src] {
  visibility: hidden;
}

.f-thumbs img.has-lazyerror {
  display: none;
}

.f-thumbs__viewport {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  padding: var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);
  overflow: visible;
  display: grid;
}

.f-thumbs__slide {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  grid-area: 1/1;
  width: var(--f-carousel-slide-width);
  height: var(--f-carousel-slide-height);
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  cursor: pointer;
  overflow: visible;
}

.f-thumbs__slide:hover button {
  opacity: var(--f-thumb-hover-opacity, 1);
  -webkit-transform: var(--f-thumb-hover-transform, none);
          transform: var(--f-thumb-hover-transform, none);
}

.f-thumbs__slide:hover button:after {
  border: var(--f-thumb-hover-border, none);
  -webkit-box-shadow: var(--f-thumb-hover-shadow, var(--f-thumb-shadow));
          box-shadow: var(--f-thumb-hover-shadow, var(--f-thumb-shadow));
}

.f-thumbs__slide button {
  all: unset;
  display: block;
  margin: auto;
  padding: 0;
  position: relative;
  overflow: visible;
  width: 100%;
  height: 100%;
  outline: none;
  -webkit-transition: var(--f-thumb-transition);
  transition: var(--f-thumb-transition);
  border-radius: var(--f-thumb-border-radius);
  opacity: var(--f-thumb-opacity);
  -webkit-transform: var(--f-thumb-transform);
          transform: var(--f-thumb-transform);
  background: var(--f-thumb-bg);
}

.f-thumbs__slide button:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-transition: var(--f-thumb-border-transition);
  transition: var(--f-thumb-border-transition);
  border-radius: inherit;
  border: var(--f-thumb-border);
  -webkit-box-shadow: var(--f-thumb-shadow);
          box-shadow: var(--f-thumb-shadow);
}

.f-thumbs__slide button:focus-within {
  opacity: var(--f-thumb-focus-opacity, 1);
  -webkit-transform: var(--f-thumb-focus-transform, none);
          transform: var(--f-thumb-focus-transform, none);
}

.f-thumbs__slide button:focus-within:after {
  border: var(--f-thumb-focus-border, none);
  -webkit-box-shadow: var(--f-thumb-focus-shadow, var(--f-thumb-shadow));
          box-shadow: var(--f-thumb-focus-shadow, var(--f-thumb-shadow));
}

.f-thumbs__slide:active {
  opacity: var(--f-thumb-active-opacity, 1);
  -webkit-transform: var(--f-thumb-active-transform, none);
          transform: var(--f-thumb-active-transform, none);
}

.f-thumbs__slide:active:after {
  border: var(--f-thumb-active-border, none);
  -webkit-box-shadow: var(--f-thumb-active-shadow, var(--f-thumb-shadow));
          box-shadow: var(--f-thumb-active-shadow, var(--f-thumb-shadow));
}

.f-thumbs__slide.is-selected {
  z-index: 2;
}

.f-thumbs__slide.is-selected button {
  opacity: var(--f-thumb-selected-opacity, 1);
  -webkit-transform: var(--f-thumb-selected-transform, none);
          transform: var(--f-thumb-selected-transform, none);
}

.f-thumbs__slide.is-selected button:after {
  border: var(--f-thumb-selected-border, none);
  -webkit-box-shadow: var(--f-thumb-selected-shadow, var(--f-thumb-shadow));
          box-shadow: var(--f-thumb-selected-shadow, var(--f-thumb-shadow));
}

.f-thumbs.is-modern {
  --f-carousel-slide-width: calc( var(--f-thumb-clip-width) + var(--f-thumbs-gap) );
  --f-carousel-slide-height: var(--f-thumb-height);
  --f-carousel-gap: 0;
  --width-diff: calc((var(--f-thumb-width) - var(--f-thumb-clip-width)));
}

.f-thumbs.is-modern .f-thumbs__viewport {
  width: calc(100% + var(--f-carousel-slide-width) * 2 + var(--f-thumbs-padding-x));
  margin-inline: calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)) * -1);
}

.f-thumbs.is-modern .f-thumbs__slide {
  --clip-shift: calc((var(--width-diff) * .5) * var(--progress));
  --clip-path: inset( 0 var(--clip-shift) round var(--f-thumb-border-radius, 0) );
  padding: 0;
  overflow: visible;
  left: var(--shift, 0);
  will-change: left;
  -webkit-transition: left var(--f-transition-duration) var(--f-transition-easing);
  transition: left var(--f-transition-duration) var(--f-transition-easing);
}

.f-thumbs.is-modern .f-thumbs__slide button {
  display: block;
  margin-inline: 50%;
  width: var(--f-thumb-width);
  clip-path: var(--clip-path);
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: clip-path var(--f-transition-duration) var(--f-transition-easing), opacity var(--f-thumb-transition-duration, 0.2s) var(--f-thumb-transition-easing, ease);
  transition: clip-path var(--f-transition-duration) var(--f-transition-easing), opacity var(--f-thumb-transition-duration, 0.2s) var(--f-thumb-transition-easing, ease);
}

.f-thumbs.is-modern .f-thumbs__slide button:after {
  display: none;
}

.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible) {
  outline: none;
}

.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: var(--clip-shift);
  bottom: 0;
  right: var(--clip-shift);
  -webkit-transition: border var(--f-transition-duration) var(--f-transition-easing), -webkit-box-shadow var(--f-transition-duration) var(--f-transition-easing);
  transition: border var(--f-transition-duration) var(--f-transition-easing), -webkit-box-shadow var(--f-transition-duration) var(--f-transition-easing);
  transition: border var(--f-transition-duration) var(--f-transition-easing), box-shadow var(--f-transition-duration) var(--f-transition-easing);
  transition: border var(--f-transition-duration) var(--f-transition-easing), box-shadow var(--f-transition-duration) var(--f-transition-easing), -webkit-box-shadow var(--f-transition-duration) var(--f-transition-easing);
  border-radius: inherit;
  border: var(--f-thumb-focus-border, none);
  -webkit-box-shadow: var(--f-thumb-focus-shadow, none);
          box-shadow: var(--f-thumb-focus-shadow, none);
}

.f-thumbs.is-modern {
  --f-transition-duration: .25s;
  --f-transition-easing: ease-out;
}

.f-thumbs.is-modern.is-syncing {
  --f-transition-duration: 0s;
}

.f-thumbs.is-scrollable .f-thumbs__viewport {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--f-thumb-width), 1fr));
  grid-auto-rows: var(--f-thumb-height);
  gap: var(--f-thumbs-gap);
  overflow: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide {
  grid-area: auto;
  display: block;
  position: relative;
  max-width: 100%;
  width: var(--f-thumb-width);
  height: var(--f-thumb-height);
  cursor: pointer;
  outline: none;
}

:root {
  --f-progressbar-height: 3px;
  --f-progressbar-color: var(--f-carousel-theme-color, #575ad6);
  --f-progressbar-opacity: 1;
  --f-progressbar-z-index: 30;
}

.f-progressbar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: var(--f-progressbar-z-index);
  height: var(--f-progressbar-height);
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: 0;
          transform-origin: 0;
  opacity: var(--f-progressbar-opacity);
  background: var(--f-progressbar-color);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
  -webkit-animation-name: f-progressbar;
          animation-name: f-progressbar;
  -webkit-animation-play-state: running;
          animation-play-state: running;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
}

.f-progressbar:empty {
  display: block;
}

button > .f-progressbar {
  --f-progressbar-height: 100%;
  --f-progressbar-opacity: .2;
}

@-webkit-keyframes f-progressbar {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes f-progressbar {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}
[data-fullscreen-action=toggle] svg g:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

[data-fullscreen-action=toggle] svg g:last-child {
  display: none;
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:fullscreen [data-fullscreen-action=toggle] svg g:first-child {
  display: none;
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg g:last-child {
  display: -webkit-box;
  display: flex;
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg g:last-child {
  display: -ms-flexbox;
  display: flex;
}

:fullscreen [data-fullscreen-action=toggle] svg g:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.in-fullscreen-mode > .f-carousel {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0 !important;
  min-height: 0 !important;
}

html.with-fancybox {
  width: auto;
  overflow: visible;
  scroll-behavior: auto;
}

html.with-fancybox body.hide-scrollbar {
  width: auto;
  margin-right: calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));
  overflow: hidden !important;
  overscroll-behavior-y: none;
}

.fancybox__dialog {
  position: fixed;
  inset: 0;
  z-index: 1050;
  width: 100%;
  height: 100vh;
  max-height: unset;
  max-width: unset;
  padding: 0;
  margin: 0;
  border: 0;
  overflow: hidden;
  background: transparent;
  -ms-touch-action: none;
      touch-action: none;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
}

.fancybox__dialog:focus {
  outline: none;
}

.fancybox__dialog::-ms-backdrop {
  opacity: 0;
}

.fancybox__dialog::backdrop {
  opacity: 0;
}

@supports (height: 100dvh) {
  .fancybox__dialog {
    height: 100dvh;
  }
}
.fancybox__dialog *:empty {
  display: block;
}

.fancybox__container {
  --fancybox-color: #dbdbdb;
  --fancybox-backdrop-bg: rgba(24, 24, 27, .95);
  --f-toolbar-margin: 0;
  --f-toolbar-padding: 8px;
  --f-toolbar-gap: 0;
  --f-toolbar-color: #ddd;
  --f-toolbar-font-size: 16px;
  --f-toolbar-font-weight: 500;
  --f-toolbar-font: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
  --f-toolbar-line-height: var(--f-button-height);
  --f-toolbar-text-shadow: 1px 1px 1px rgba(0, 0, 0, .75);
  --f-toolbar-shadow: none;
  --f-toolbar-bg: none;
  --f-counter-margin: 0;
  --f-counter-padding: 0px 10px;
  --f-counter-gap: 4px;
  --f-counter-line-height: var(--f-button-height);
  --f-carousel-gap: 17px;
  --f-carousel-slide-width: 100%;
  --f-carousel-slide-height: 100%;
  --f-carousel-slide-padding: 0;
  --f-carousel-slide-bg: unset;
  --f-html-color: #222;
  --f-html-bg: #fff;
  --f-error-color: #fff;
  --f-error-bg: #333;
  --f-caption-margin: 0;
  --f-caption-padding: 16px 8px;
  --f-caption-color: var(--fancybox-color, #dbdbdb);
  --f-caption-bg: transparent;
  --f-caption-font: inherit;
  --f-caption-line-height: 1.375;
  --f-spinner-color-1: rgba(255, 255, 255, .2);
  --f-spinner-color-2: rgba(255, 255, 255, .8);
  --f-spinner-width: 50px;
  --f-spinner-height: 50px;
  --f-spinner-border-radius: 50%;
  --f-spinner-border-width: 4px;
  --f-progressbar-color: rgba(255, 255, 255);
  --f-button-width: 46px;
  --f-button-height: 46px;
  --f-button-color: #ddd;
  --f-button-hover-color: #fff;
  --f-button-outline-width: 1px;
  --f-button-outline-color: rgba(255, 255, 255, .75);
  --f-button-outline-offset: 0px;
  --f-button-bg: rgba(54, 54, 54, .75);
  --f-button-border: 0;
  --f-button-border-radius: 0;
  --f-button-shadow: none;
  --f-button-transition: all .2s ease;
  --f-button-transform: none;
  --f-button-svg-width: 24px;
  --f-button-svg-height: 24px;
  --f-button-svg-stroke-width: 1.75;
  --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));
  --f-button-svg-fill: none;
  --f-button-svg-disabled-opacity: .5;
  --f-arrow-pos: 32px;
  --f-arrow-width: 50px;
  --f-arrow-height: 50px;
  --f-arrow-svg-width: 24px;
  --f-arrow-svg-height: 24px;
  --f-arrow-svg-stroke-width: 2.5;
  --f-arrow-border-radius: 50%;
  --f-arrow-bg: rgba(54, 54, 54, .65);
  --f-arrow-color: #ddd;
  --f-arrow-hover-color: #fff;
  --f-close-button-width: 30px;
  --f-close-button-height: 30px;
  --f-close-button-svg-width: 24px;
  --f-close-button-svg-height: 24px;
  --f-close-button-svg-stroke-width: 1.75;
  --f-close-border-radius: 4px;
  --f-close-button-color: #fff;
  --f-close-button-hover-color: #fff;
  --f-close-button-bg: transparent;
  --f-close-button-hover-bg: transparent;
  --f-close-button-active-bg: transparent;
  --f-thumbs-margin: 0px;
  --f-thumbs-padding-x: 8px;
  --f-thumbs-padding-y: 8px;
  --f-thumbs-bg: none;
  --f-thumb-transition: all .2s ease;
  --f-thumb-width: 94px;
  --f-thumb-height: 76px;
  --f-thumb-opacity: 1;
  --f-thumb-border: none;
  --f-thumb-shadow: none;
  --f-thumb-transform: none;
  --f-thumb-focus-opacity: 1;
  --f-thumb-focus-border: none;
  --f-thumb-focus-shadow: inset 0 0 0 2px rgba(255, 255, 255, .65);
  --f-thumb-focus-transform: none;
  --f-thumb-hover-opacity: 1;
  --f-thumb-hover-border: none;
  --f-thumb-hover-transform: none;
  --f-thumb-active-opacity: var(--f-thumb-hover-opacity);
  --f-thumb-active-border: var(--f-thumb-hover-border);
  --f-thumb-active-transform: var(--f-thumb-hover-transform);
  --f-thumb-selected-opacity: 1;
  --f-thumb-selected-border: none;
  --f-thumb-selected-shadow: inset 0 0 0 2px #fff;
  --f-thumb-selected-transform: none;
  --f-scrollbar-width: 7px;
  --f-scrollbar-track-bg: #444;
  --f-scrollbar-track-border-radius: 10px;
  --f-scrollbar-track-shadow: inset 0 0 6px rgba(0, 0, 0, .2);
  --f-scrollbar-thumb-bg: #ddd;
  --f-scrollbar-thumb-border-radius: 10px;
}

.fancybox__container[theme=light] {
  --fancybox-color: #222;
  --fancybox-backdrop-bg: rgba(255, 255, 255, .97);
  --f-toolbar-color: var(--fancybox-color, #222);
  --f-toolbar-text-shadow: none;
  --f-toolbar-font-weight: 400;
  --f-html-color: var(--fancybox-color, #222);
  --f-html-bg: #fff;
  --f-error-color: #555;
  --f-error-bg: #fff;
  --f-video-bg: #fff;
  --f-caption-color: #333;
  --f-spinner-color-1: rgba(0, 0, 0, .2);
  --f-spinner-color-2: rgba(0, 0, 0, .8);
  --f-spinner-border-width: 3.5px;
  --f-progressbar-color: rgba(111, 111, 116);
  --f-button-color: #333;
  --f-button-hover-color: #000;
  --f-button-outline-color: rgba(0, 0, 0, .85);
  --f-button-bg: rgba(255, 255, 255, .85);
  --f-button-svg-stroke-width: 1.3;
  --f-button-svg-filter: none;
  --f-arrow-bg: rgba(255, 255, 255, .85);
  --f-arrow-color: #333;
  --f-arrow-hover-color: #000;
  --f-arrow-svg-stroke-width: 1.3;
  --f-close-button-color: #555;
  --f-close-button-hover-color: #000;
  --f-thumb-bg: linear-gradient(#ebeff2, #e2e8f0);
  --f-thumb-focus-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;
  --f-thumb-selected-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;
  --f-scrollbar-track-bg: #ddd;
  --f-scrollbar-thumb-bg: #444;
}

.fancybox__container {
  position: absolute;
  inset: 0;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.fancybox__container:focus {
  outline: none;
}

.fancybox__container.has-vertical-thumbs {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport {
  overflow-x: clip;
  overflow-y: visible;
}

.fancybox__container > *:not(.fancybox__carousel), .fancybox__container .fancybox__carousel > *:not(.fancybox__viewport), .fancybox__container .fancybox__carousel > .fancybox__viewport > .fancybox__slide:not(.is-selected), .fancybox__container .fancybox__carousel > .fancybox__viewport > .fancybox__slide.is-selected > *:not(.f-html, .f-panzoom__wrapper, .f-spinner) {
  opacity: var(--f-drag-opacity, 1);
}

.fancybox__container:not(.is-ready, .is-hiding) {
  visibility: hidden;
}

.fancybox__container.is-revealing > *:not(.fancybox__carousel), .fancybox__container.is-revealing .fancybox__carousel > *:not(.fancybox__viewport), .fancybox__container.is-revealing .fancybox__carousel > .fancybox__viewport > .fancybox__slide:not(.is-selected), .fancybox__container.is-revealing .fancybox__carousel > .fancybox__viewport > .fancybox__slide.is-selected > *:not(.f-html, .f-panzoom__wrapper, .f-spinner) {
  -webkit-animation: var(--f-interface-enter-duration, 0.35s) ease none f-fadeIn;
          animation: var(--f-interface-enter-duration, 0.35s) ease none f-fadeIn;
}

.fancybox__container.is-hiding > *:not(.fancybox__carousel), .fancybox__container.is-hiding .fancybox__carousel > *:not(.fancybox__viewport), .fancybox__container.is-hiding .fancybox__carousel > .fancybox__viewport > .fancybox__slide.is-selected > *:not(.f-html, .f-panzoom__wrapper) {
  -webkit-animation: var(--f-interface-exit-duration, 0.35s) ease forwards f-fadeOut;
          animation: var(--f-interface-exit-duration, 0.35s) ease forwards f-fadeOut;
}

.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected) {
  opacity: 0;
}

.fancybox__container.is-hiding {
  pointer-events: none;
}

.fancybox__container.is-idle .f-carousel__toolbar {
  pointer-events: none;
  opacity: 0;
}

.fancybox__container.is-idle .f-button.is-arrow {
  opacity: 0;
}

.fancybox__container.is-idle.is-ready .f-carousel__toolbar {
  pointer-events: none;
  -webkit-animation: 0.15s ease-out both f-fadeOut;
          animation: 0.15s ease-out both f-fadeOut;
}

.fancybox__container.is-idle.is-ready .f-button.is-arrow {
  -webkit-animation: 0.15s ease-out both f-fadeOut;
          animation: 0.15s ease-out both f-fadeOut;
}

.fancybox__backdrop {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: var(--fancybox-backdrop-bg);
}

.fancybox__carousel {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 0;
  min-width: 0;
  position: relative;
  z-index: 10;
  overflow-y: visible;
  overflow-x: clip;
}

.fancybox__carousel.is-vertical {
  --f-carousel-slide-height: 100%;
}

.fancybox__carousel.is-ltr {
  direction: ltr;
}

.fancybox__carousel.is-rtl {
  direction: rtl;
}

.fancybox__carousel > .f-button.is-arrow:before {
  position: absolute;
  content: "";
  inset: -30px;
  z-index: 1;
}

.fancybox__viewport {
  display: grid;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
  min-width: 0;
  position: relative;
  overflow: visible;
  -webkit-transform: translate3d(0, var(--f-drag-offset, 0), 0);
          transform: translate3d(0, var(--f-drag-offset, 0), 0);
}

.fancybox__viewport.is-draggable {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox__viewport.is-dragging {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox__viewport [data-selectable], .fancybox__viewport [contenteditable] {
  cursor: auto;
}

.fancybox__slide {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  grid-area: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: var(--f-carousel-slide-width);
  height: var(--f-carousel-slide-height);
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  margin: 0;
  padding: var(--f-carousel-slide-padding);
  background: var(--f-carousel-slide-bg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform;
}

.fancybox__slide:before, .fancybox__slide:after {
  display: block;
  content: "";
}

.fancybox__slide:before {
  margin-bottom: auto;
}

.fancybox__slide:after {
  margin-top: auto;
}

.fancybox__slide.is-selected {
  z-index: 1;
}

.fancybox__slide.f-zoomable {
  overflow: visible;
}

.fancybox__slide.has-error {
  --f-html-color: var(--f-error-color, --f-html-color);
  --f-html-bg: var(--f-error-bg, --f-html-bg);
}

.fancybox__slide.has-html {
  overflow: auto;
  padding: 8px;
}

.fancybox__slide.has-iframe {
  overflow: hidden;
  padding: 8px 0;
}

.fancybox__slide.has-close-btn {
  padding-top: 34px;
}

.fancybox__slide.has-controls:before {
  margin: 0;
}

.fancybox__slide .f-spinner {
  cursor: pointer;
}

.fancybox__container.is-closing .f-caption, .fancybox__slide.is-loading .f-caption {
  visibility: hidden;
}

.fancybox__container.is-closing .fancybox__carousel {
  overflow: visible;
}

.f-button.is-close-button {
  --f-button-width: var(--f-close-button-width);
  --f-button-height: var(--f-close-button-height);
  --f-button-border-radius: var(--f-close-border-radius);
  --f-button-color: var(--f-close-button-color);
  --f-button-hover-color: var(--f-close-button-hover-color);
  --f-button-bg: var(--f-close-button-bg);
  --f-button-hover-bg: var(--f-close-button-hover-bg);
  --f-button-active-bg: var(--f-close-button-active-bg);
  --f-button-svg-width: var(--f-close-button-svg-width);
  --f-button-svg-height: var(--f-close-button-svg-height);
  --f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);
  position: absolute;
  top: calc((var(--f-button-height) + 2px) * -1);
  right: 0;
  z-index: 10;
}

.is-loading .f-button.is-close-button {
  visibility: hidden;
}

.fancybox__thumbs {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}

.fancybox__thumbs.is-scrollable {
  --f-thumbs-cols: 1;
  --f-thumbs-gap: 8px;
  --f-thumbs-transition: none;
  --f-thumbs-padding-x: 4px;
  --f-thumbs-padding-y: 8px;
  --f-thumbs-viewport-padding-x: 4px;
  --f-thumbs-viewport-padding-y: 0px;
  max-width: calc(var(--f-thumb-width) * var(--f-thumbs-cols) + var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x) * 2 + var(--f-thumbs-viewport-padding-x) * 2);
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar {
  width: var(--f-scrollbar-width);
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track {
  background: var(--f-scrollbar-track-bg);
  border-radius: var(--f-scrollbar-track-border-radius);
  -webkit-box-shadow: var(--f-scrollbar-track-shadow);
          box-shadow: var(--f-scrollbar-track-shadow);
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb {
  background: var(--f-scrollbar-thumb-bg);
  border-radius: var(--f-scrollbar-thumb-border-radius);
}

.fancybox__thumbs.is-scrollable.is-hidden {
  max-width: 0;
  --f-thumbs-padding-x: 0;
  max-height: unset;
  --f-thumbs-padding-y: unset;
}

.fancybox__thumbs.is-scrollable .f-thumbs__viewport {
  overflow-x: hidden !important;
  grid-template-columns: repeat(auto-fill, calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1)) / var(--f-thumbs-cols))) !important;
}

#wp-preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #0D0D0D;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 999999;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.preloader-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Inter", sans-serif;
  color: #FFFFFF;
}

#preloader-counter {
  font-size: 32px;
  font-weight: 600;
  margin-top: 24px;
  margin-bottom: 8px;
}

.preloader-label {
  font-size: 16px;
  font-weight: 400;
}/*# sourceMappingURL=style.css.map */