/* font-face declarations for Montserrat family pulled from app/fonts */
@font-face {
  font-family: "Montserrat";
  font-weight: 100;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Thin.woff2") format("woff2"), url("../fonts/Montserrat[wght].woff2") format("woff2-variations"), url("../fonts/Montserrat-VariableFont_wght.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 200;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-ExtraLight.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 300;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Light.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 800;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-ExtraBold.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 900;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Black.woff2") format("woff2");
}
/* italic variants */
@font-face {
  font-family: "Montserrat";
  font-weight: 100;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-ThinItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 200;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-ExtraLightItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 300;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-LightItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 400;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-Italic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 500;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-MediumItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 600;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-SemiBoldItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 700;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-BoldItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 800;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-ExtraBoldItalic.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 900;
  font-style: italic;
  font-display: swap;
  src: url("../fonts/Montserrat-BlackItalic.woff2") format("woff2");
}
:root {
  --text: #303030;
  --blue: #004E8B;
  --shitty-blue: var(--blue);
  --blue2: #0084BF;
  --blue3: #1A6097;
  --blue-transparent: rgba(0, 132, 191, 0.3);
  --sky-blue: #E0EDF9;
  --blue-light2: #9DD8E5;
  --gray: #D3CFCF;
  --gray2: #777;
  --ok: #FF7700;
  --white: #fff;
  --padding: 20px;
  --size-10-20: 10px;
  --size-12-20: 12px;
  --size-10-40: 10px;
  --size-12-16: 12px;
  --size-14-16: 14px;
  --size-14-20: 14px;
  --size-14-30: 14px;
  --size-16-20: 16px;
  --size-20-30: 20px;
  --size-20-60: 20px;
  --size-30-40: 24px;
  --size-30-50: 24px;
  --size-40-60: 40px;
  --size-40-100: 40px;
}

@media (min-width: 400px) {
  :root {
    --size-30-40: 30px;
    --size-30-50: 30px;
  }
}
@media (min-width: 768px) {
  :root {
    --size-10-20: 16px;
    --size-10-40: 24px;
    --size-12-16: 14px;
    --size-12-20: 16px;
    --size-14-16: 16px;
    --size-14-20: 16px;
    --size-14-30: 20px;
    --size-20-30: 24px;
    --size-20-60: 40px;
    --size-30-40: 34px;
    --size-30-50: 40px;
    --size-40-60: 50px;
    --size-40-100: 60px;
  }
}
@media (min-width: 1024px) {
  :root {
    --size-10-20: 20px;
    --size-10-40: 40px;
    --size-12-16: 16px;
    --size-12-20: 20px;
    --size-14-20: 20px;
    --size-14-30: 30px;
    --size-16-20: 20px;
    --size-20-30: 30px;
    --size-20-60: 60px;
    --size-30-40: 40px;
    --size-30-50: 50px;
    --size-40-60: 60px;
    --size-40-100: 100px;
  }
}
html {
  min-height: 100vh;
  box-sizing: border-box;
  font-family: sans-serif;
  scroll-behavior: smooth;
  font-size: 16px;
}

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

body {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  background-color: var(--white);
  font-size: var(--size-14-16);
  line-height: 1.4;
  font-weight: 400;
  font-family: "Montserrat", "Roboto", sans-serif;
  font-variant-ligatures: none;
}

main {
  flex-grow: 1;
}

.main {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--size-60-100);
}
.main::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 573px;
  background-repeat: no-repeat;
  background: linear-gradient(180deg, #004E8B 0%, #0084BF 25.43%, #FFF 100%);
}

img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

main {
  position: relative;
}

input,
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.visually-hidden:not(:focus) {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.container {
  min-width: 0;
  width: 100%;
  max-width: 1680px;
  padding-inline: var(--padding);
  margin: 0 auto;
}

.container iframe {
  position: relative;
  z-index: 1;
}
.container iframe .searcher-tabs__item {
  background-color: var(--white);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  /* display: none; <- Crashes Chrome on hover */
  -webkit-appearance: none;
  margin: 0;
  /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
  -moz-appearance: textfield;
  /* Firefox */
}

.h2 {
  margin-block: 0;
  font-size: var(--size-30-40);
  font-weight: 700;
  line-height: 1.2;
}

.h3 {
  margin: 0;
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.2;
}

.h1 {
  position: relative;
  margin: 0;
  font-size: var(--size-30-50);
  font-weight: 700;
}

.dots {
  position: absolute;
  bottom: 30px;
  right: 20px;
  display: flex;
  gap: 5px;
  border-radius: 40px;
  overflow: hidden;
  border-radius: 40px;
  background: rgba(255, 255, 255, 0.4);
  border: 1px solid var(--white);
}
.dots .swiper-pagination-bullet {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 7px;
  color: var(--white);
  font-size: 14px;
  font-weight: 700;
  line-height: 140%;
  text-transform: uppercase;
}
.dots .swiper-pagination-bullet:first-child {
  padding-left: 15px;
}
.dots .swiper-pagination-bullet:last-child {
  padding-right: 15px;
}
@media (hover: hover) {
  .dots .swiper-pagination-bullet:hover {
    color: var(--blue2);
  }
}
.dots .swiper-pagination-bullet-active {
  color: var(--blue2);
  background-color: var(--white);
}

.map-popup {
  padding-bottom: 30px;
  transform: translate(-50%, -50%);
}

.map-popup__img {
  width: 70px;
  min-height: 42px;
  height: auto;
}

.map-popup__inside {
  position: relative;
  padding: 4px 4px 20px 4px;
  background-color: rgb(255, 255, 255);
  border-radius: 30px;
}
.map-popup__inside:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 20px solid var(--white);
}

.text p {
  margin-block: 20px;
}
.text p:first-child {
  margin-top: 0;
}
.text p:last-child {
  margin-bottom: 0;
}
.text h3 {
  margin-top: 20px;
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: 700;
}
.text ul {
  margin: 20px 0;
  padding: 0;
  list-style: none;
}
.text ul:first-child {
  margin-top: 0;
}
.text ul:last-child {
  margin-bottom: 0;
}
.text ul li {
  position: relative;
  margin-block: 7px;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.text ul li:first-child {
  margin-top: 0;
}
.text ul li:last-child {
  margin-bottom: 0;
}
.text ul > li {
  padding-left: 30px;
}
.text ul > li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 10px;
  height: 10px;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.99276 7.40478e-05C5.01262 0.000116085 5.03248 0.000158122 5.05294 0.000201433C5.33792 0.00117028 5.6175 0.00606412 5.89742 0.0646857C5.91644 0.0685609 5.93546 0.0724362 5.95505 0.0764289C6.67528 0.227072 7.35097 0.506871 7.94571 0.942428C7.96247 0.954601 7.96247 0.954601 7.97958 0.967019C8.12708 1.07478 8.26244 1.19214 8.39491 1.31768C8.43373 1.35436 8.4735 1.38903 8.51485 1.42282C8.55939 1.46021 8.59624 1.49546 8.63334 1.53978C8.67121 1.58443 8.7093 1.62807 8.74963 1.67053C9.43899 2.39774 9.84805 3.39045 9.97448 4.37538C9.97619 4.38839 9.97789 4.4014 9.97964 4.41481C9.99323 4.52631 9.99739 4.63631 9.99795 4.74857C9.99809 4.76703 9.99823 4.78549 9.99837 4.80451C10.0028 5.57528 10.0028 5.57528 9.93547 5.8968C9.92965 5.92532 9.92965 5.92532 9.92372 5.95442C9.7313 6.87418 9.32123 7.71527 8.67548 8.40088C8.62824 8.451 8.62824 8.451 8.58762 8.50351C8.55417 8.5449 8.52154 8.5776 8.48094 8.6117C8.4179 8.66537 8.35722 8.72085 8.29684 8.7775C7.64815 9.36642 6.82064 9.74627 5.96692 9.921C5.95289 9.92388 5.93887 9.92675 5.92442 9.92971C5.63814 9.98412 5.35479 9.99973 5.06392 9.99909C5.00658 9.99902 4.94925 9.99948 4.89191 9.99998C4.63103 10.0008 4.37946 9.97733 4.12224 9.93441C4.08897 9.92891 4.08897 9.92891 4.05503 9.92329C4.00439 9.9142 3.95423 9.90408 3.904 9.89296C3.87691 9.88698 3.87691 9.88698 3.84927 9.88087C3.00655 9.68494 2.22964 9.26863 1.60029 8.67647C1.56278 8.64186 1.52542 8.60918 1.48599 8.57696C1.44123 8.5393 1.40412 8.50389 1.36681 8.45932C1.32894 8.41467 1.29086 8.37103 1.25053 8.32857C1.00423 8.06875 0.80797 7.76698 0.630406 7.45723C0.61785 7.43533 0.61785 7.43533 0.60504 7.413C0.357365 6.97528 0.193882 6.50095 0.0890735 6.01017C0.0851947 5.99213 0.0813159 5.97409 0.0773195 5.95551C0.0131034 5.63939 -0.00115442 5.3286 7.07003e-05 5.00686C0.000112742 4.987 0.000154783 4.96714 0.000198099 4.94668C0.00116753 4.66147 0.00713021 4.38257 0.0646892 4.1023C0.0685649 4.08255 0.0724405 4.0628 0.0764337 4.04245C0.213069 3.35924 0.479479 2.70141 0.884003 2.13226C0.892927 2.11961 0.90185 2.10697 0.911045 2.09394C1.03927 1.91362 1.17854 1.74942 1.33206 1.59014C1.38115 1.53914 1.42503 1.48537 1.46923 1.43006C1.49175 1.40864 1.51492 1.38788 1.53872 1.36789C1.58378 1.32959 1.62788 1.29106 1.67078 1.25032C2.31333 0.641396 3.17345 0.254068 4.03324 0.0780956C4.04726 0.0752214 4.06129 0.0723471 4.07574 0.0693858C4.38096 0.0113796 4.6828 -0.0011061 4.99276 7.40478e-05ZM1.80352 2.0486C1.72631 2.1313 1.65566 2.21849 1.58627 2.30781C1.57787 2.31862 1.56947 2.32943 1.56081 2.34057C1.41603 2.52838 1.29066 2.72414 1.17661 2.93198C1.16965 2.94467 1.16269 2.95735 1.15552 2.97043C1.06921 3.13009 0.997572 3.29448 0.931552 3.4635C0.924546 3.48117 0.917539 3.49884 0.910321 3.51704C0.904025 3.53367 0.897729 3.5503 0.891242 3.56743C0.885595 3.58219 0.879948 3.59696 0.87413 3.61217C0.86297 3.66025 0.866736 3.68579 0.884003 3.7317C1.00416 3.8798 1.15406 3.9812 1.31317 4.0828C1.51962 4.21896 1.61258 4.46854 1.66796 4.69965C1.74479 5.09007 1.7197 5.51775 1.61274 5.89994C1.51686 6.24587 1.53692 6.64276 1.62529 6.9891C1.62863 7.00225 1.63198 7.0154 1.63543 7.02895C1.71022 7.3139 1.8216 7.59379 2.08265 7.75309C2.44786 7.96324 2.8626 8.07882 3.26057 8.21051C3.91853 8.42831 3.91853 8.42831 4.16687 8.55881C4.25938 8.60574 4.34932 8.62969 4.45387 8.62755C4.50245 8.60529 4.53365 8.58679 4.57091 8.54953C4.60868 8.30879 4.40484 8.06985 4.27868 7.87857C3.51307 6.71685 3.51307 6.71685 3.6075 6.15753C3.69808 5.80722 3.90652 5.52105 4.16248 5.27262C4.50594 4.93893 4.70007 4.50127 4.72697 4.02428C4.72911 3.77447 4.68464 3.50013 4.50581 3.31229C4.3738 3.19336 4.21377 3.10399 4.06372 3.01C3.4784 2.63528 3.4784 2.63528 3.40047 2.34682C3.37172 2.16661 3.4148 2.02751 3.51751 1.87869C3.77631 1.56913 4.1358 1.36097 4.46845 1.14074C4.62006 1.04029 4.77092 0.93921 4.91839 0.83271C4.93199 0.822931 4.94559 0.813152 4.95961 0.803076C5.02386 0.756078 5.08212 0.708332 5.13663 0.649847C3.85208 0.616725 2.69587 1.14193 1.80352 2.0486ZM6.81427 1.68363C6.79387 1.70366 6.79387 1.70366 6.77305 1.72409C6.51335 1.99688 6.39166 2.34347 6.39943 2.71689C6.41449 3.03333 6.66269 3.29468 6.86158 3.52092C7.2566 3.97395 7.2566 3.97395 7.26744 4.22718C7.25799 4.33369 7.22045 4.43123 7.18491 4.53142C7.16929 4.57776 7.15387 4.62417 7.13847 4.67059C7.12815 4.70165 7.11775 4.73269 7.10726 4.76369C7.10243 4.77799 7.09761 4.79228 7.09263 4.80701C7.08833 4.8197 7.08403 4.83238 7.07959 4.84545C7.03311 4.99245 7.01294 5.17682 7.07884 5.32017C7.17296 5.47417 7.31647 5.58695 7.48951 5.63909C7.5475 5.65206 7.60547 5.66266 7.66407 5.67248C7.68607 5.67642 7.70808 5.68035 7.73075 5.6844C7.87663 5.70938 8.0229 5.72911 8.16981 5.747C8.18735 5.74914 8.20489 5.75128 8.22296 5.75348C8.31065 5.76408 8.39837 5.77427 8.48617 5.78392C8.51871 5.78766 8.55126 5.79141 8.58381 5.79516C8.59871 5.79668 8.6136 5.7982 8.62895 5.79977C8.74317 5.81319 8.8119 5.83992 8.88572 5.92849C8.9646 6.07535 8.96616 6.23015 8.97295 6.39302C8.97672 6.48249 8.98491 6.56907 8.99911 6.65751C9.33158 6.32508 9.34733 5.44707 9.35512 4.99955C9.3335 3.75713 8.83061 2.66852 7.95134 1.80333C7.51242 1.39366 7.2725 1.23334 6.81427 1.68363Z' fill='%230084BF'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
}
.text img {
  border-radius: var(--size-30-40);
  margin-bottom: 20px;
}
.text h2 {
  margin-bottom: 20px;
  font-weight: 400;
}
.text h2:first-child {
  margin-top: 0;
}
.text h2:last-child {
  margin-bottom: 0;
}
.text blockquote {
  margin: var(--size-20-40) 0;
  padding: 34px 0 0 56px;
  font-style: italic;
  color: var(--turquoise);
  background-size: 218px 157px;
  background-position: top left;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='228' height='164' fill='none' viewBox='0 0 228 164'%3E%3Cpath stroke='%2359808c' stroke-opacity='.1' stroke-width='7' d='M76.167 77.844q8.385 5.541 13.042 14.777 5.124 8.773 5.124 19.855 0 21.241-13.974 34.633-13.974 13.39-34.47 13.391-18.633 0-30.744-11.544Q3.5 137.412 3.5 118.941q0-9.697 3.26-18.47 3.727-8.775 12.578-22.627L65.918 3.5h45.65zm109.931 0q8.385 5.541 13.043 14.777 5.124 8.773 5.124 19.855 0 21.241-13.974 34.633-13.976 13.39-34.47 13.391-18.633 0-30.744-11.544-11.645-11.544-11.645-30.015 0-9.697 3.26-18.47 3.727-8.775 12.577-22.627L175.85 3.5h45.65z'/%3E%3C/svg%3E");
}
.text blockquote:first-child {
  margin-top: 0;
}
.text blockquote:last-child {
  margin-bottom: 0;
}
.text blockquote p {
  font-size: var(--size-16-20);
}

@media (min-width: 768px) {
  .text img {
    float: left;
    max-width: 50%;
    margin-right: 20px;
  }
  .text--colls {
    -moz-columns: 2;
         columns: 2;
    gap: 20px;
  }
}
@media (min-width: 1680px) {
  .text img {
    margin-right: 60px;
  }
  .text--colls {
    gap: 60px;
  }
}
.flatpickr-calendar {
  background: transparent;
  opacity: 0;
  display: none;
  text-align: center;
  visibility: hidden;
  padding: 0;
  animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 307.875px;
  box-sizing: border-box;
  touch-action: manipulation;
  background: #fff;
  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);
}

.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}

.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999;
}

.flatpickr-calendar.animate.open {
  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}

.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}

.flatpickr-calendar.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}

.flatpickr-calendar:before,
.flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  left: 22px;
}

.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.arrowRight:before,
.flatpickr-calendar.rightMost:after,
.flatpickr-calendar.arrowRight:after {
  left: auto;
  right: 22px;
}

.flatpickr-calendar.arrowCenter:before,
.flatpickr-calendar.arrowCenter:after {
  left: 50%;
  right: 50%;
}

.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px;
}

.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  bottom: 100%;
}

.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #e6e6e6;
}

.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #fff;
}

.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
  top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
  border-top-color: #e6e6e6;
}

.flatpickr-calendar.arrowBottom:after {
  border-top-color: #fff;
}

.flatpickr-calendar:focus {
  outline: 0;
}

.flatpickr-wrapper {
  position: relative;
  display: inline-block;
}

.flatpickr-months {
  display: flex;
}

.flatpickr-months .flatpickr-month {
  background: transparent;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
  height: 34px;
  line-height: 1;
  text-align: center;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  overflow: hidden;
  flex: 1;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  height: 34px;
  padding: 10px;
  z-index: 3;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
}

.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
  display: none;
}

.flatpickr-months .flatpickr-prev-month i,
.flatpickr-months .flatpickr-next-month i {
  position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
  /*
        /*rtl:begin:ignore*/
  /*
        */
  left: 0;
  /*
        /*rtl:end:ignore*/
  /*
        */
}

/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
  /*
        /*rtl:begin:ignore*/
  /*
        */
  right: 0;
  /*
        /*rtl:end:ignore*/
  /*
        */
}

/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: #959ea9;
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
  fill: #f64747;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
  width: 14px;
  height: 14px;
}

.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path {
  transition: fill 0.1s;
  fill: inherit;
}

.numInputWrapper {
  position: relative;
  height: auto;
}

.numInputWrapper input,
.numInputWrapper span {
  display: inline-block;
}

.numInputWrapper input {
  width: 100%;
}

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

.numInputWrapper input::-webkit-outer-spin-button,
.numInputWrapper input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.numInputWrapper span {
  position: absolute;
  right: 0;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(57, 57, 57, 0.15);
  box-sizing: border-box;
}

.numInputWrapper span:hover {
  background: rgba(0, 0, 0, 0.1);
}

.numInputWrapper span:active {
  background: rgba(0, 0, 0, 0.2);
}

.numInputWrapper span:after {
  display: block;
  content: "";
  position: absolute;
}

.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(57, 57, 57, 0.6);
  top: 26%;
}

.numInputWrapper span.arrowDown {
  top: 50%;
}

.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(57, 57, 57, 0.6);
  top: 40%;
}

.numInputWrapper span svg {
  width: inherit;
  height: auto;
}

.numInputWrapper span svg path {
  fill: rgba(0, 0, 0, 0.5);
}

.numInputWrapper:hover {
  background: rgba(0, 0, 0, 0.05);
}

.numInputWrapper:hover span {
  opacity: 1;
}

.flatpickr-current-month {
  font-size: 135%;
  line-height: inherit;
  font-weight: 300;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 7.48px 0 0 0;
  line-height: 1;
  height: 34px;
  display: inline-block;
  text-align: center;
  transform: translate3d(0px, 0px, 0px);
}

.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
  background: rgba(0, 0, 0, 0.05);
}

.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  width: 7ch\0 ;
  display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: rgba(0, 0, 0, 0.9);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: rgba(0, 0, 0, 0.9);
}

.flatpickr-current-month input.cur-year {
  background: transparent;
  box-sizing: border-box;
  color: inherit;
  cursor: text;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: initial;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}

.flatpickr-current-month input.cur-year:focus {
  outline: 0;
}

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(0, 0, 0, 0.5);
  background: transparent;
  pointer-events: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  appearance: menulist;
  background: transparent;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  height: auto;
  line-height: inherit;
  margin: -1px 0 0 0;
  outline: none;
  padding: 0 0 0 0.5ch;
  position: relative;
  vertical-align: initial;
  -webkit-box-sizing: border-box;
  -webkit-appearance: menulist;
  -moz-appearance: menulist;
  width: auto;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
  outline: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
  background: rgba(0, 0, 0, 0.05);
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  background-color: transparent;
  outline: none;
  padding: 0;
}

.flatpickr-weekdays {
  background: transparent;
  text-align: center;
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
  height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
  display: flex;
  flex: 1;
}

span.flatpickr-weekday {
  cursor: default;
  font-size: 90%;
  background: transparent;
  color: rgba(0, 0, 0, 0.54);
  line-height: 1;
  margin: 0;
  text-align: center;
  display: block;
  flex: 1;
  font-weight: bolder;
}

.dayContainer,
.flatpickr-weeks {
  padding: 1px 0 0 0;
}

.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
  width: 307.875px;
}

.flatpickr-days:focus {
  outline: 0;
}

.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 307.875px;
  min-width: 307.875px;
  max-width: 307.875px;
  box-sizing: border-box;
  display: inline-block;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-around;
  transform: translate3d(0px, 0px, 0px);
  opacity: 1;
}

.dayContainer + .dayContainer {
  box-shadow: -1px 0 0 #e6e6e6;
}

.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  box-sizing: border-box;
  color: #393939;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  flex-basis: 14.2857143%;
  max-width: 39px;
  height: 39px;
  line-height: 39px;
  margin: 0;
  display: inline-block;
  position: relative;
  justify-content: center;
  text-align: center;
}

.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
  cursor: pointer;
  outline: 0;
  background: #e6e6e6;
  border-color: #e6e6e6;
}

.flatpickr-day.today {
  border-color: #959ea9;
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
  border-color: #959ea9;
  background: #959ea9;
  color: #fff;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
  background: #569ff7;
  box-shadow: none;
  color: #fff;
  border-color: #569ff7;
}

.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
  border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
  border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  box-shadow: -10px 0 0 #569ff7;
}

.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
  border-radius: 50px;
}

.flatpickr-day.inRange {
  border-radius: 0;
  box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(57, 57, 57, 0.3);
  background: transparent;
  border-color: transparent;
  cursor: default;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
  cursor: not-allowed;
  color: rgba(57, 57, 57, 0.1);
}

.flatpickr-day.week.selected {
  border-radius: 0;
  box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
}

.flatpickr-day.hidden {
  visibility: hidden;
}

.rangeMode .flatpickr-day {
  margin-top: 1px;
}

.flatpickr-weekwrapper {
  float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  box-shadow: 1px 0 0 #e6e6e6;
}

.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
  display: block;
  width: 100%;
  max-width: none;
  color: rgba(57, 57, 57, 0.3);
  background: transparent;
  cursor: default;
  border: none;
}

.flatpickr-innerContainer {
  display: block;
  display: flex;
  box-sizing: border-box;
  overflow: hidden;
}

.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  box-sizing: border-box;
}

.flatpickr-time {
  text-align: center;
  outline: 0;
  display: block;
  height: 0;
  line-height: 40px;
  max-height: 40px;
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
}

.flatpickr-time:after {
  content: "";
  display: table;
  clear: both;
}

.flatpickr-time .numInputWrapper {
  flex: 1;
  width: 40%;
  height: 40px;
  float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #393939;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #393939;
}

.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
  width: 49%;
}

.flatpickr-time input {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  color: #393939;
  font-size: 14px;
  position: relative;
  box-sizing: border-box;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}

.flatpickr-time input.flatpickr-hour {
  font-weight: bold;
}

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
  font-weight: 400;
}

.flatpickr-time input:focus {
  outline: 0;
  border: 0;
}

.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  height: inherit;
  float: left;
  line-height: inherit;
  color: #393939;
  font-weight: bold;
  width: 2%;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
  background: #eee;
}

.flatpickr-input[readonly] {
  cursor: pointer;
}
@keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  overflow: hidden;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  backface-visibility: hidden;
  outline: none;
}

.glightbox-container.inactive {
  display: none;
}

.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}

.glightbox-container .gslider {
  transition: transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex !important;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
  width: 100%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}

.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
  position: relative;
}

.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}

.glightbox-container .gslide-inner-content {
  width: 100%;
}

.glightbox-container .ginner-container {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 100%;
  margin: auto;
  height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
  flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 165px;
  -webkit-overflow-scrolling: touch;
  touch-action: auto;
}

.gslide:not(.current) {
  pointer-events: none;
}

.gslide-image {
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  touch-action: none;
  margin: auto;
  min-width: 200px;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
  width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
  width: auto;
  max-width: 100%;
}

.gslide-image img.zoomable {
  position: relative;
}

.gslide-image img.dragging {
  cursor: grabbing !important;
  transition: none;
}

.gslide-video {
  position: relative;
  max-width: 100vh;
  width: 100% !important;
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
  display: none;
}

.gslide-video .gvideo-wrapper {
  width: 100%;
  /* max-width: 160vmin; */
  margin: auto;
}

.gslide-video::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}

.gslide-video.playing::before {
  display: none;
}

.gslide-video.fullscreen {
  max-width: 100% !important;
  min-width: 100%;
  height: 75vh;
}

.gslide-video.fullscreen video {
  max-width: 100% !important;
  width: 100% !important;
}

.gslide-inline {
  background: #fff;
  text-align: left;
  max-height: calc(100vh - 40px);
  overflow: auto;
  max-width: 100%;
  margin: auto;
}

.gslide-inline .ginlined-content {
  padding: 20px;
  width: 100%;
}

.gslide-inline .dragging {
  cursor: grabbing !important;
  transition: none;
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 75vh;
  height: 100%;
}

.gslide-media {
  display: flex;
  width: auto;
}

.zoomed .gslide-media {
  box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
  margin: 0 auto;
  flex-direction: column;
}

.gslide-description {
  position: relative;
  flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
  max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
  margin: 0 auto;
  width: 100%;
}

.gslide-description p {
  margin-bottom: 12px;
}

.gslide-description p:last-child {
  margin-bottom: 0;
}

.zoomed .gslide-description {
  display: none;
}

.glightbox-button-hidden {
  display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
  height: auto !important;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 19px 11px;
  max-width: 100vw !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  transition: opacity 0.3s linear;
  padding-bottom: 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
  color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 0.4;
}

.gdesc-open .gdesc-inner {
  padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

.glightbox-desc {
  display: none !important;
}

.glightbox-open {
  overflow: hidden;
}

.gloader {
  height: 25px;
  width: 25px;
  animation: lightboxLoader 0.8s infinite linear;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: calc(100vh + 1px);
  position: fixed;
  top: -1px;
  left: 0;
  background: #000;
  will-change: opacity;
}

.glightbox-mobile .goverlay {
  background: #000;
}

.gprev,
.gnext,
.gclose {
  z-index: 99999;
  cursor: pointer;
  width: 26px;
  height: 44px;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
  display: block;
  width: 25px;
  height: auto;
  margin: 0;
  padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

.gbtn.focused {
  outline: 2px solid #0f3d81;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */
.glightbox-clean .gslide-description {
  background: #fff;
}

.glightbox-clean .gdesc-inner {
  padding: 22px 20px;
}

.glightbox-clean .gslide-title {
  font-size: 1em;
  font-weight: normal;
  font-family: arial;
  color: #000;
  margin-bottom: 19px;
  line-height: 1.4em;
}

.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
}

.glightbox-clean .gslide-video {
  background: #000;
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 4px;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
  fill: #fff;
}

.glightbox-clean .gprev {
  position: absolute;
  top: -100%;
  left: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gnext {
  position: absolute;
  top: -100%;
  right: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gclose {
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  position: absolute;
}

.glightbox-clean .gclose svg {
  width: 18px;
  height: auto;
}

.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/
.gfadeIn {
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  animation: gzoomOut 0.5s ease;
}
@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    flex-direction: row;
  }
  .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-top .gslide-image,
  .glightbox-container .ginner-container.desc-top .gslide-image img {
    order: 1;
  }
  .glightbox-container .ginner-container.desc-left .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-image {
    order: 1;
  }
  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }
  .gslide-image img.zoomable {
    cursor: zoom-in;
  }
  .zoomed .gslide-image img.zoomable {
    cursor: grab;
  }
  .gslide-inline {
    max-height: 95vh;
  }
  .gslide-external {
    max-height: 100vh;
  }
  .gslide-description.description-left,
  .gslide-description.description-right {
    max-width: 275px;
  }
  .glightbox-open {
    height: auto;
  }
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
  .glightbox-clean .gslide-media {
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
  .glightbox-clean .description-left .gdesc-inner,
  .glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }
  .glightbox-clean .gprev,
  .glightbox-clean .gnext,
  .glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
  .glightbox-clean .gnext:hover,
  .glightbox-clean .gclose:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .glightbox-clean .gprev {
    top: 45%;
  }
  .glightbox-clean .gnext {
    top: 45%;
  }
}
@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 20px;
  }
}
@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}
.loader {
  top: 50%;
  left: 50%;
  position: absolute;
  width: 100px;
  height: 100px;
  transform: translate(-50%, -50%);
}

body > .loader {
  position: fixed;
  z-index: 10;
}

.loader:before,
.loader:after {
  content: "";
  border-radius: 50%;
  position: absolute;
  inset: 0;
  box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.3) inset;
}

.loader:after {
  box-shadow: 0 2px 0 var(--blue) inset;
  animation: rotate 2s linear infinite;
}

@keyframes rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  margin: 0;
  background-color: transparent;
  border: 0;
  color: inherit;
  font-family: inherit;
  font-size: 14px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.3s, border-color 0.3s, outline 0.3s;
}

.btn__close {
  display: none;
}

.btn.opened .btn__close {
  display: flex;
}
.btn.opened .btn__open {
  display: none;
}

.btn--lg {
  gap: 10px;
  padding: 10px 15px;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  border-radius: 40px;
}

.btn--sm {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 10px 15px;
  min-height: 40px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  border-radius: 20px;
}

.btn--bd {
  color: var(--white);
  border: 1px solid var(--white);
}

.btn--bd-blue {
  color: var(--blue);
  border: 1px solid var(--blue);
}

.btn--bd-gray {
  color: var(--text);
  border: 1px solid var(--gray);
}

.bd--glass {
  color: var(--white);
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 0 rgba(150, 100, 255, 0), 0 6px 30px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.25);
  transition: all 0.35s cubic-bezier(0.23, 1, 0.32, 1);
}

.btn--blue {
  color: var(--white);
  background-color: var(--blue2);
}

.btn--blue-dark {
  color: var(--white);
  background-color: var(--blue);
}

.btn--white {
  color: var(--blue2);
  background-color: var(--white);
}

.btn--gray {
  background: var(--gray);
}

.more-btn {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--blue);
  border-radius: 30px;
  font-weight: 700;
  background-color: var(--sky-blue);
  text-decoration: none;
}

.btn--full {
  padding: 10px;
  justify-content: center;
  width: 100%;
  border-radius: 15px;
}

@media (hover: hover) {
  .bd--glass:hover {
    color: var(--shitty-blue);
    background: rgba(255, 255, 255, 0.8);
  }
  .btn--bd-blue:hover {
    color: var(--blue-light2);
    border: 1px solid var(--blue-light2);
  }
  .btn--bd:hover {
    color: var(--blue);
    border: 1px solid var(--blue);
  }
  .btn--bd-gray:hover {
    color: var(--blue);
    border: 1px solid var(--sky-blue);
  }
  .btn--white:hover {
    color: var(--white);
    background-color: var(--blue2);
  }
  .btn--blue-dark:hover {
    background-color: var(--blue2);
  }
  .more-btn:hover {
    background-color: var(--blue2);
  }
}
.arr {
  justify-content: center;
  width: 30px;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 60px;
  background: var(--white);
  border-radius: 50%;
  box-shadow: 7px 9px 17.9px 0 rgba(13, 57, 91, 0.3);
}

.arr {
  position: absolute;
  z-index: 1;
  top: 50%;
  transform: translate(0, -50%);
}

.arr--left {
  left: 0;
  transform: translate(calc(-1 * var(--padding)), -50%);
}

.arr--right {
  right: 0;
  transform: translate(calc(1 * var(--padding)), -50%) scale(-1, 1);
}

@media (min-width: 768px) {
  .arr {
    width: 60px;
  }
}
@media (min-width: 1760px) {
  .arr--left {
    transform: translate(-50%, -50%);
  }
  .arr--right {
    transform: translate(50%, -50%) scale(-1, 1);
  }
  .arr {
    width: 80px;
  }
}
.reestr {
  display: flex;
  position: relative;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}
.reestr p {
  position: relative;
  margin: 0;
}
.reestr::before {
  content: "";
  width: 60px;
  height: 60px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='151' height='151' fill='none' viewBox='0 0 151 151'%3E%3Cpath fill='%23e0edf9' d='M58.395 4.719h9.142l-.08 2.598C67 13.918 67 13.918 69.166 19.877c.71.735 1.446 1.41 2.241 2.054.957.834 1.678 1.848 2.434 2.86q.4.514.8 1.025l.564.727c1.04-.347 1.225-.636 1.88-1.493l.62-.796c.172-.224.172-.224.35-.452.787-1.003 1.597-1.986 2.404-2.973l.982-1.205.427-.524.415-.52.486-.474c.644-1.139.541-2.309.55-3.595l.016-.848q.023-1.338.036-2.677l.03-1.817q.037-2.225.062-4.45h9.143v12.976l1.474.295c3.836 2.003 6.496 4.887 7.872 9.033.659 2.555.479 5.216.441 7.833l-.012 1.618q-.016 1.965-.043 3.93h-6.783v19.76h23.299c-.035-4.654-.035-4.654-.08-9.307-.054-8.254 1.858-15.002 7.748-21.07l.547-.613c4.086-4.425 9.718-6.236 15.434-7.424l1.395-.301a171 171 0 0 1 6.437-1.274l.665-.12q.042 10.12.061 20.243.009 4.701.028 9.401.019 4.101.022 8.201.002 2.169.014 4.336.011 2.048.009 4.095 0 .745.007 1.49c.088 10.075-3.894 18.976-10.921 26.134-4.773 4.697-10.763 7.735-17.237 9.268l-.67.159c-2.76.578-5.572.634-8.381.762l-1.575.077q-1.912.094-3.826.181l.532.577c5.775 6.323 7.431 12.78 7.431 21.248h7.373l-.589-2.065c-.367-3.095-.29-6.351 1.179-9.142l.369-.756c1.823-3.398 4.639-5.273 8.184-6.618 3.194-.927 7.408-.688 10.322.885l.832.445c3.435 2.012 5.585 4.824 6.705 8.671.668 3.142.446 6.919-1.048 9.759l-.369.756c-1.83 3.411-4.765 5.433-8.35 6.691-2.234.487-4.451.559-6.731.55h-.89q-1.444-.001-2.887-.005l-2.012-.001q-2.637-.002-5.275-.008-2.695-.004-5.392-.005l-10.563-.015-.018-1.071q-.035-1.998-.076-3.994l-.031-1.718c-.112-8.753-.112-8.753-4.299-16.221l-.477-.559c-2.455-2.695-6.342-4.329-9.937-4.712-2.058.054-3.595 1.386-5.19 2.562-.912.645-.912.645-1.501.645q.96 2.496 1.924 4.991l.684 1.773a946 946 0 0 0 3.592 9.21l.273.687q.629 1.584 1.265 3.167l.447 1.122.39.971c.272.788.272.788.272 1.673-.585.515-1.15.957-1.788 1.4l-.561.395c-6.341 4.321-14.29 6.014-21.864 4.775-5.306-1.038-9.845-3.308-14.127-6.57.217-1.46.761-2.771 1.296-4.136l.308-.793q.496-1.278.995-2.555l.682-1.756 1.373-3.529q1.258-3.234 2.508-6.471l1.088-2.81.353-.911.245-.633-.687-.259c-.936-.393-1.636-.938-2.447-1.548-1.8-1.204-2.998-1.56-5.124-1.142-4.455 1.09-8.16 3.371-10.69 7.28-2.01 3.566-2.303 7.347-2.38 11.348l-.016.729q-.03 1.325-.056 2.651l-.13 6.009H28.904l3.244 5.899v.884a470 470 0 0 1-3.102 1.781q-.528.301-1.055.606-.756.437-1.517.868l-.922.529c-.777.345-.777.345-1.662.05-.441-.652-.441-.652-.91-1.522l-.53-.975-.281-.523c-.491-.916-.992-1.827-1.491-2.739l-.308-.564a188 188 0 0 0-2.987-5.215 349 349 0 0 1-4.11-7.189 398 398 0 0 0-4.638-8.091 389 389 0 0 1-4.375-7.708l-.494-.888-.435-.786a27 27 0 0 0-.97-1.55v-.884a469 469 0 0 1 3.101-1.781q.528-.301 1.055-.607a266 266 0 0 1 1.517-.867l.922-.529c.778-.345.778-.345 1.662-.05.387.543.387.543.78 1.263l.451.814.484.89q.518.937 1.039 1.875l.54.977c.841 1.501 1.714 2.983 2.586 4.466a487 487 0 0 1 4.369 7.613l.533.945.495.883.435.776c.38.732.38.732.97 2.207h11.207v-3.539c.361-7.135 2.86-13.183 7.963-18.286l-.94-.035c-11.807-.461-11.807-.461-15.87-1.734l-.609-.189C15.934 99.509 8.228 93.086 3.765 84.6 2.348 81.778 1.316 78.867.59 75.795l-.156-.648c-.546-2.587-.513-5.155-.5-7.784l-.001-1.552q0-2.095.007-4.19.005-2.193.005-4.388.004-4.148.013-8.297.009-4.725.013-9.45.009-9.716.03-19.431 2.328.458 4.654.927.789.158 1.577.313c8.97 1.766 8.97 1.766 12.422 3.81l.584.337c1.991 1.196 3.607 2.71 5.24 4.345l.584.52c4.03 3.653 6.573 9.79 7.085 15.111.039 1.143.034 2.284.029 3.427l-.001.872q-.004 1.602-.01 3.203l-.018 7.244h23.299v-19.76h-6.784q-.041-2.351-.065-4.703-.008-.798-.024-1.595c-.098-5.21.614-9.422 4.31-13.406 1.606-1.504 3.355-2.573 5.512-3.005z'/%3E%3C/svg%3E");
}

.reestr__inside {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tag {
  padding: 10px 15px;
  color: var(--white);
  font-size: 14px;
  font-weight: 700;
  line-height: 140%;
  text-transform: uppercase;
  white-space: nowrap;
  border-radius: 40px;
  background: rgba(13, 57, 91, 0.4);
}

.short-it {
  display: flex;
  flex-direction: column;
  border-radius: 30px;
  overflow: hidden;
  background-color: var(--white);
}

.short-it__img {
  position: relative;
  min-height: 140px;
  border-radius: 30px;
  overflow: hidden;
  aspect-ratio: 680/300;
}
.short-it__img img {
  position: absolute;
  inset: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  min-width: 100%;
  min-height: 100%;
}

.short-it__img-inside {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  justify-content: space-between;
  align-content: space-between;
  gap: 10px;
  padding: 15px 15px 20px 15px;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 78, 139, 0) 30%, rgba(0, 78, 139, 0.9) 100%);
}

.short-it__content {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  padding: 7px 12px 14px 14px;
}

.short-it__price {
  align-self: flex-end;
  color: var(--blue);
  font-size: var(--size-14-30);
  font-weight: 700;
  line-height: 1.4;
}

.short-it__name {
  grid-column: 1;
  grid-row: 2;
  color: var(--white);
  font-size: var(--size-16-20);
  font-weight: 700;
  line-height: 1.4;
}

.short-it__days {
  align-self: flex-start;
}

.date-it {
  padding: 10px 13px;
  color: var(--white);
  font-size: 14px;
  line-height: 1.4;
  text-transform: uppercase;
  white-space: nowrap;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.4);
}

.short-it__dates {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
  text-align: right;
}

.short-it__dates-info {
  color: var(--gray2);
  font-size: 14px;
  line-height: 1.4;
}

.short-it__dates-days {
  color: #303030;
  font-size: 16px;
  font-weight: 700;
}

.short-it {
  position: relative;
}

.short-it__link {
  position: absolute;
  inset: 0;
}

@media (max-width: 767px) {
  .short-it .date-it {
    padding: 4px 5px;
  }
  .short-it .tag {
    padding: 4px 5px;
  }
  .short-it__name {
    grid-column: 1/-1;
  }
}
@media (min-width: 768px) {
  .short-it__days {
    grid-row: 2;
  }
  .short-it__content {
    padding: 42px 30px;
  }
  .short-it__img-inside {
    padding: 30px;
  }
}
.its-slider__wrapper {
  display: flex;
  gap: 20px;
}

.swiper-initialized .its-slider__wrapper {
  gap: 0;
}

.its-slider__slide {
  width: 304px;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .its-slider__slide {
    width: 440px;
  }
}
@media (min-width: 768px) {
  .its-slider__slide {
    width: 680px;
  }
}
.about-it {
  padding: 13px 15px 20px 15px;
  border-radius: 30px;
  background: var(--sky-blue);
  background-repeat: no-repeat;
  background-position: right -40% center;
  background-size: 70%;
}

.about-it__name {
  margin: 0;
  color: var(--blue);
  font-size: var(--size-16-20);
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
}

.about-it__text {
  font-size: var(--size-12-16);
}

.about-its {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
}

@media (min-width: 1024px) {
  .about-it {
    padding: 40px 40px 60px 40px;
  }
}
@media (min-width: 768px) {
  .about-its {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }
}
.more-block {
  display: flex;
  justify-content: center;
}
.more-block.hidden {
  display: none;
}

.socials__it {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  border-radius: 50%;
  background: var(--blue2);
  aspect-ratio: 1;
}

@media (min-width: 1024px) {
  .socials__it {
    width: 100px;
  }
  .socials__it svg {
    width: 40px;
    height: 40px;
  }
}
.socials {
  display: flex;
  gap: 20px;
}

.contacts-block__phone {
  position: relative;
  color: var(--white);
  text-decoration: none;
}

@media (hover: hover) {
  .contacts-block__phone:hover {
    color: var(--blue-light2);
  }
}
.contacts-block {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 27px;
  padding: 20px 15px 40px 15px;
  color: var(--white);
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.2;
  border-radius: 30px;
  overflow: hidden;
}

.contacts-block__phones {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 768px) {
  .contacts-block {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    -moz-column-gap: 20px;
         column-gap: 20px;
    align-items: center;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .contacts-block__text {
    grid-row: 1/3;
  }
}
@media (min-width: 1024px) {
  .contacts-block {
    padding: 30px;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
  }
  .contacts-block__phones {
    position: relative;
  }
  .contacts-block__phones::before {
    content: "";
    position: absolute;
    left: -60px;
    top: 50px;
    width: 623px;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: var(--blue2);
    transform: translateY(-50%);
  }
  .contacts-block__socials {
    position: relative;
    z-index: 1;
    justify-content: flex-end;
  }
}
@media (min-width: 1500px) {
  .contacts-block {
    padding: 50px 60px;
  }
  .contacts-block__phones {
    align-items: flex-end;
  }
}
@media (min-width: 1700px) {
  .contacts-block__phones {
    font-size: 38px;
  }
}
.to-top {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  color: var(--blue);
  text-align: center;
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.2;
}

.to-top__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  aspect-ratio: 1;
  background-color: rgba(0, 78, 139, 0.2);
  border-radius: 50%;
}

.to-top__back {
  position: absolute;
  inset: 0;
}

.bottom-block {
  padding-top: 40px;
}

.bottom-block__inside {
  position: relative;
  padding-top: 40px;
}
.bottom-block__inside .container {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.bottom-block__inside::before {
  content: "";
  position: absolute;
  width: 100%;
  top: 0;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='98' height='44' fill='none' viewBox='0 0 98 44'%3E%3Cpath fill='%23e0edf9' d='M1623 67c22.09 0 37-19.091 37 3v90c0 22.091-14.91 40-37 40H40c-22.091 0-40-17.909-40-40V70c0-22.091 17.909-40 40-40z'/%3E%3Cpath fill='%23e0edf9' d='M58 0c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h17c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h17c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h16c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.091 0 40 17.909 40 40 0-22.091 17.909-40 40-40h18c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h17c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h18c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h18c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h18c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h17c22.09 0 40 17.909 40 40 0-22.091 17.91-40 40-40h18c22.09 0 40 17.909 40 40v104c0 22.091-17.91 40-40 40h-18c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-17c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-18c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-18c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-18c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-17c-22.09 0-40-17.909-40-40 0 22.091-17.91 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-16c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-17c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-18c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40h-17c-22.091 0-40-17.909-40-40 0 22.091-17.909 40-40 40H40c-22.091 0-40-17.909-40-40V39C0 16.909 16 0 40 0z'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-repeat: repeat-x;
  transform: translateY(-100%);
}

@media (min-width: 1024px) {
  .bottom-block__inside .container {
    gap: 70px;
  }
}
.sign-in {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 15px 15px 30px 15px;
  color: var(--white);
  font-family: Montserrat;
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.2;
  border-radius: 30px;
}

.sign-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sign-form__wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sign-form__label {
  display: flex;
  background-color: var(--white);
  border-radius: 30px;
  overflow: hidden;
}

.sign-form__input {
  border: 0;
  padding: 10px 20px;
  margin: 0;
  color: var(--text);
  font-size: 14px;
  line-height: 1.4;
  width: 100%;
}

.agree {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 20px;
}

.agree__text {
  font-size: 14px;
  line-height: 140%;
  font-weight: 400;
}
.agree__text a {
  color: inherit;
  text-decoration-line: underline;
}

.agree__check {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 20px;
  height: 20px;
  aspect-ratio: 1;
  border-radius: 6px;
  border: 0;
  background-color: var(--white);
  background-size: 13px 10px;
  background-position: center;
  background-repeat: no-repeat;
}

.agree__check:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='10' fill='none' viewBox='0 0 13 10'%3E%3Cpath fill='%23303030' d='M10.29.45a1.25 1.25 0 1 1 1.92 1.6l-6.25 7.5a1.25 1.25 0 0 1-1.844.084l-3.75-3.75a1.25 1.25 0 1 1 1.768-1.768l2.782 2.782z'/%3E%3C/svg%3E");
}

@media (min-width: 768px) {
  .sign-form__wrapper {
    flex-direction: row;
    background-color: var(--white);
    padding: 7px;
    border-radius: 30px;
  }
  .sign-form__label {
    flex-grow: 1;
  }
}
@media (min-width: 1024px) {
  .sign-in {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    padding: 50px;
  }
  .sign-in__form {
    max-width: 660px;
    justify-self: flex-end;
  }
}
.custom-select {
  position: fixed;
  top: 50%;
  left: 50%;
  padding-block: 20px;
  z-index: 15;
  max-height: 200px;
  background-color: var(--white);
  border-radius: 20px;
  overflow-y: auto;
  scrollbar-width: thin;
  filter: drop-shadow(8px 21px 51px var(--blue-transparent));
}

.custom-select__label {
  display: flex;
  width: 100%;
  padding: 0;
  border: 0;
  background-color: transparent;
  text-align: left;
}
.custom-select__label span {
  display: flex;
  padding: 6px 20px;
  width: 100%;
}
.custom-select__label input:checked + span,
.custom-select__label input[checked=true] + span {
  background: var(--blue-transparent);
}
.custom-select__label.selected span {
  background: var(--blue-transparent);
}
.custom-select__label:focus span, .custom-select__label:focus-visible span, .custom-select__label:hover span {
  background: var(--blue-transparent);
}

.js-select input {
  display: flex;
  background-color: transparent;
  border: none;
}

.js-select-search__chosen {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.fast-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px 2px 2px 10px;
  border-radius: 40px;
  white-space: nowrap;
  line-height: 1;
  background: var(--blue-transparent);
  cursor: pointer;
}
.fast-item::after {
  content: "";
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background-color: var(--blue);
  border-radius: 50%;
  background-size: 5px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 5.5L5.5 0.5' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M0.5 0.5L5.5 5.5' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.fast-item input {
  position: absolute;
  opacity: 0;
}

.qty {
  display: flex;
  width: 100px;
}

.qty__add {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: var(--white);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  background-color: var(--blue2);
}
.qty__add:hover {
  background-color: var(--blue);
}

.qty__input {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--black, #231F20);
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  border: 0;
  cursor: auto;
}

.pseudo-select {
  position: relative;
}

.pseudo-select.opened {
  z-index: 3;
}

.pseudo-select__block {
  position: absolute;
  top: calc(100% - 1px);
  min-width: 100%;
  max-height: 0;
  overflow: hidden;
  filter: drop-shadow(6px 8px 4px rgba(13, 57, 91, 0.2));
}

.pseudo-select.opened .pseudo-select__block {
  max-height: 212px;
}

.pseudo-select__block-inside {
  display: flex;
  flex-direction: column;
  margin-top: 10px;
  padding-block: 10px;
  max-height: 200px;
  background-color: var(--white);
  overflow-y: auto;
  border-radius: 20px;
}

.pseudo-select__link {
  display: flex;
  padding: 5px 20px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  text-decoration: none;
  transition: background-color 0.3s;
}

@media (hover: hover) {
  .pseudo-select__link:hover {
    background-color: var(--blue-transparent);
  }
}
.pseudo-select-top {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 10px 13px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  border: 1px solid var(--white);
  border-radius: 40px;
  cursor: pointer;
}

.bread {
  padding-top: 20px;
  padding-bottom: 0;
}

.bread__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 15px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.bread__link {
  color: var(--grey-text, #777);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
}

@media (hover: hover) {
  a.bread__link:hover {
    color: var(--blue);
  }
}
span.bread__link {
  color: var(--blue);
}

.bread__it {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
}
.bread__it::after {
  content: "";
  height: 1px;
  width: 10px;
  background-color: var(--dark-grey, #8B8F8F);
}
.bread__it:last-child::after {
  display: none;
}

.cookie {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 8;
  padding-top: 13px;
  padding-bottom: 17px;
  color: var(--text);
  transition: transform 0.6s;
  width: 100%;
  background: var(--sky-blue, #E0EDF9);
}
.cookie .container {
  position: relative;
}

.cookie__content {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

.cookie__text {
  margin: 0;
  max-width: 1322px;
  font-size: 14px;
}

.cookie__text a {
  position: relative;
  display: inline-flex;
  color: var(--blue);
}

.cookie__close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 15px;
  height: 15px;
  display: none;
}
.cookie__close svg {
  width: 100%;
  height: 100%;
}

.cookie.move-left {
  transform: translate3d(-200%, 0, 0);
}

@media (min-width: 1024px) {
  .cookie__content {
    flex-direction: row;
    justify-content: space-between;
  }
  .cookie__text {
    text-align: left;
  }
}
.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 4;
  width: calc(100% - var(--padding) * 2);
  max-width: 700px;
  transform: translate(calc(-200svw - 50%), -50%);
  max-height: calc(100svh - 20px);
  border-radius: 15px;
  overflow: hidden;
}

.popup.opened {
  transform: translate(-50%, -50%);
}

.popup__inside {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 30px 10px;
  background-color: var(--white);
  height: 100%;
  overflow-y: auto;
  scrollbar-width: thin;
  max-height: calc(100svh - 20px);
  background-size: 300px;
  background-repeat: no-repeat;
  background-position: top right;
  background-image: url("data:image/svg+xml,%3Csvg width='302' height='373' viewBox='0 0 302 373' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M179.5 372.8C80.3 372.8 0 292.4 0 193.3H359.1C359 292.4 278.7 372.8 179.5 372.8Z' fill='%23E0EDF9'/%3E%3Cpath d='M179.5 193.3C98.4002 193.3 32.7002 127.6 32.7002 46.5H326.4C326.3 127.5 260.6 193.3 179.5 193.3Z' fill='%23E0EDF9'/%3E%3Cpath d='M179.5 46.4C116.3 46.4 65.0996 -4.8 65.0996 -68H294C293.9 -4.8 242.7 46.4 179.5 46.4Z' fill='%23E0EDF9'/%3E%3C/svg%3E");
}

.popup__close {
  position: absolute;
  width: 16px;
  height: 16px;
  top: 16px;
  right: 16px;
}

.popup__top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
  text-align: center;
}

.popup__name {
  margin: 0;
  font-size: var(--size-20-30);
  font-weight: 700;
  letter-spacing: 1.2;
}

.popup__text {
  font-size: 14px;
  line-height: 1.78;
  letter-spacing: 0.56px;
  max-width: 400px;
}

.elt-content {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.elt-content__img {
  display: flex;
  aspect-ratio: 550/350;
  background-color: var(--gray);
  border-radius: 30px;
  overflow: hidden;
}
.elt-content__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.elt-content__content {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.elt-content__name {
  font-size: var(--size-20-30);
  font-weight: 700;
}

@media (min-width: 660px) {
  .popup {
    max-width: 637px;
  }
}
@media (min-width: 768px) {
  .popup__inside {
    padding: 40px;
  }
}
@media (min-width: 1024px) {
  .elt-content {
    gap: 40px;
  }
}
.label {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: flex-start;
}

.label__select-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  border-radius: 100px;
}
.label__select-wrapper .btn--round {
  position: absolute;
  right: 5px;
  top: 5px;
}
.label__select-wrapper:focus {
  background-color: var(--green-hover);
  outline: 0;
}

.label__select-wrapper.js-date {
  width: 185px;
}

.label__select {
  display: flex;
  align-items: center;
  z-index: 1;
  color: var(--white);
  width: 100%;
  height: 60px;
  padding: 5px 70px 5px 30px;
  border: 0;
  border-radius: 100px;
  background-color: transparent;
}
.label__select option {
  color: var(--text);
}

.label__select-search {
  border: 1px solid var(--white);
}

.label__select-search:focus-within,
.label__select-search:focus {
  border-color: var(--turquoise);
}

.label__name {
  margin-bottom: auto;
  font-size: var(--size-16-20);
  line-height: 1.2;
}

.label__text {
  width: 100%;
  padding: 15px 20px;
  border-radius: 20px;
  border: 1px solid var(--grey-line, #D3CFCF);
  background-color: var(--white);
}
.label__text:focus-within {
  outline: none;
  border-color: var(--blue);
}

.label__textarea {
  width: 100%;
  padding: 15px 20px;
  font-family: inherit;
  font-size: inherit;
  border-radius: 20px;
  border: 1px solid var(--grey-line, #D3CFCF);
  background-color: var(--white);
}
.label__textarea:focus-within {
  outline: none;
  border-color: var(--blue);
}

.label__input-file {
  position: relative;
  display: flex;
  width: 100%;
}

.label__input-fileinside {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: center;
  padding: 10px;
  width: 100%;
  border-radius: 15px;
  border: 1px dashed var(--shitty-blue, #004E8B);
}

.label__files {
  display: flex;
  flex-direction: column;
  gap: 10px 40px;
  align-items: flex-start;
  width: 100%;
}

.label__file {
  position: absolute;
  opacity: 0;
}
.label__file:focus + .label__input-fileinside {
  background-color: var(--green-hover);
}

.label__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  flex-grow: 1;
  width: 100%;
}

.select-search {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  padding: 9px 11px 11px 11px;
  min-height: 60px;
  background-color: var(--white);
  border-radius: 100px;
}

.select-search__search {
  display: flex;
  border: 0;
  flex-grow: 1;
}

.select-search__input {
  display: flex;
  border: 0;
  width: 100%;
  padding-inline: 10px;
  border-radius: 100px;
  border: 1px solid var(--white);
}
.select-search__input:focus-within {
  border-color: var(--turquoise);
}

.select-search__chosen {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.file-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 20px;
  padding: 5px 40px 5px 10px;
  color: var(--text);
  font-size: var(--size-14-16);
  font-weight: 500;
  line-height: 1.4;
  background: var(--sky-blue);
  transition: background-color 0.3s;
}
.file-item:hover, .file-item:focus {
  background-color: rgba(89, 128, 140, 0.7);
}

.file-item__close {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 20px;
  height: 20px;
  background-color: var(--text);
  border-radius: 50%;
  background-size: 5px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 5.5L5.5 0.5' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M0.5 0.5L5.5 5.5' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  transform: translateY(-50%);
}

@media (min-width: 1024px) {
  .label__btns {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
}
.label__ico-checks {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(40px, 100px));
  gap: 20px;
}

.file-item__prev {
  display: flex;
  border-radius: 50%;
  overflow: hidden;
  width: 50px;
  height: 50px;
}
.file-item__prev img,
.file-item__prev video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 15px;
}

.form__files-row {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.agree {
  display: flex;
  gap: 20px;
  color: var(--grey-text, #777);
  font-size: 14px;
  line-height: 1.4;
}
.agree a {
  color: var(--blue2);
}

.agree__check {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: 1px solid var(--grey-line, #D3CFCF);
}

.menu__link {
  display: flex;
  color: var(--text);
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}

@media (hover: hover) {
  .menu__link:hover {
    color: var(--blue);
  }
}
.menu__list {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (max-width: 1023px) {
  .menu__list {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .menu__list {
    flex-direction: row;
    gap: 20px;
  }
}
.header-contacts {
  display: flex;
  gap: 14px;
  align-items: center;
}

.header-contacts__soc {
  display: flex;
  text-decoration: none;
}

@media (max-width: 1023px) {
  .header-contacts__tels {
    display: none;
  }
}
@media (min-width: 1024px) {
  .header-contacts {
    gap: 5px;
  }
  .header-contacts__tels {
    display: flex;
    gap: 5px;
    padding-left: 5px;
  }
  .header__menu-toggler {
    display: none;
  }
  .header-contacts__tel {
    color: var(--text);
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.3s;
  }
}
@media (min-width: 1024px) and (hover: hover) {
  .header-contacts__tel:hover {
    color: var(--blue);
  }
}
.phones__it {
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--text);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-transform: uppercase;
  text-decoration: none;
}

@media (hover: hover) {
  .phones__it:hover {
    color: var(--blue);
  }
}
.phones__it-info {
  color: var(--gray2);
}

.phones__it-span {
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 430px) {
  .phones__it-span {
    width: 100px;
  }
  .phones__it-info {
    display: none;
  }
}
.phones__block-inside {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px 10px;
  border-radius: 20px;
  background-color: var(--white);
}

.phones__block {
  max-height: 0;
  transition: max-height 0.3s;
  overflow: hidden;
}

.phones.opened .phones__block {
  max-height: 200px;
}

.phones {
  position: relative;
  z-index: 2;
}

.phones__block {
  position: absolute;
  left: 0;
  top: 100%;
}

.phones__line {
  display: flex;
  gap: 5px;
  align-items: center;
}

@media (min-width: 1024px) {
  .js-phones-toggler {
    display: none;
  }
}
.header {
  position: relative;
  padding-top: 15px;
  padding-bottom: 17px;
  z-index: 3;
}

.header__container {
  display: flex;
  align-items: center;
  gap: 14px;
}

.header__contacts {
  margin-right: auto;
}

.header__enter {
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 3px 5px;
  color: var(--blue);
  color: #004E8B;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  border-radius: 30px;
  border: 1px solid var(--blue);
  min-height: 22px;
}

@media (max-width: 767px) {
  .header__enter span {
    display: none;
  }
}
@media (max-width: 1023px) {
  .header__menu {
    position: absolute;
    top: 100%;
    z-index: 4;
    left: 0;
    width: 100%;
    height: 100svh;
    padding-block: 30px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: var(--white);
    border-top: 1px solid var(--gray);
    transform: translateX(-100svw);
    transition: transform 0.3s;
  }
  .header__menu.opened {
    transform: translateX(0);
  }
  .menu__link {
    padding-inline: 20px;
    padding-block: 5px;
  }
}
@media (min-width: 768px) {
  .header__enter {
    padding: 6px 15px;
  }
}
.filter__label {
  display: flex;
  align-items: center;
  flex-grow: 1;
  gap: 10px;
  padding: 10px 15px;
  background-color: var(--white);
  border-radius: 20px;
}
.filter__label svg {
  color: var(--blue);
}

.label__input {
  display: flex;
  width: 100%;
  border: 0;
  background-color: transparent;
}
.label__input:focus-within {
  outline: 0;
}

.filter__label:focus-within {
  outline: 1px solid var(--blue);
}

.filter {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 15px;
  border-radius: 30px;
  background-color: var(--blue);
}

.filter--book {
  justify-content: space-between;
}

.filter__label--grow {
  flex-grow: 10;
}

.filter__btn {
  min-width: 130px;
}

.filter__remark {
  display: none;
}

.filter__accom-inp {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
  color: var(--white);
  font-size: var(--size-14-20);
  font-weight: 700;
  line-height: 1.4;
  background-color: transparent;
}
.filter__accom-inp:focus, .filter__accom-inp:focus-within {
  outline: 0;
}

.filter--accom .pseudo-select-top {
  color: var(--white);
}

.filter__accom-date {
  display: flex;
  max-width: 200px;
  text-align: center;
}

.filter__label--persons {
  max-width: 400px;
  margin-right: auto;
}

.filter__counts {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--white);
}
.filter__counts span {
  font-weight: 700;
}

.filter__total {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
}

.filter__total-text {
  color: var(--white);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}

.filter__counts-input {
  margin: 0;
  padding: 3px 20px 5px 20px;
  width: 80px;
  text-align: center;
  color: var(--text);
  border-radius: 20px;
  background: var(--white);
  border: 1px solid var(--white);
}

@media (min-width: 768px) {
  .filter {
    flex-direction: row;
  }
}
@media (min-width: 1200px) {
  .filter {
    position: relative;
  }
  .filter--remark {
    border-top-left-radius: 0;
  }
  .filter__remark {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    padding: 7.5px 30px;
    color: var(--white);
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
    border-radius: 30px 30px 0 0;
    background-color: var(--blue);
    transform: translate(0, -100%);
  }
}
.routes-menu__list,
.routes-menu__sub-sub {
  margin: 0;
  padding: 0;
  list-style: none;
}

.routes-menu {
  position: absolute;
  width: 100%;
  left: 0;
  display: flex;
  gap: 5px;
  z-index: 1;
  padding-top: 40px;
  padding-bottom: 80px;
  max-height: calc(100svh - 54px);
  overflow: hidden;
  overflow-y: auto;
  border-radius: 0 0 15px 15px;
  background: var(--sky-blue, #E0EDF9);
  filter: drop-shadow(-8px 4px 41px rgba(0, 78, 139, 0.23));
  overscroll-behavior: contain;
}
.routes-menu .btn {
  transition: transform 0.3s;
}

.routes-menu__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.swiper-initialized .routes-menu {
  gap: 0;
}

.routes-menu__li {
  position: relative;
  border-radius: 15px;
  background-color: var(--white);
  padding-block: 25px;
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: contain;
  background-size: 212px;
}

.routes-menu__link {
  display: flex;
  padding-block: 5px;
  padding-inline: 16px;
  color: var(--blue);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}

.routes-toggler.opened svg {
  transform: rotate(180deg);
}

.routes-toggler {
  display: flex;
  align-items: center;
  gap: 5px;
  display: flex;
  align-items: center;
  padding: 7px 12px;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  color: var(--white);
  border-radius: 40px;
  background: var(--blue2);
}
.routes-toggler.disabled {
  opacity: 0.3;
}

.routes-menu__sub-ul {
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--text);
}

.routes-menu__sub-div {
  display: flex;
  align-items: center;
}
.routes-menu__sub-div .btn {
  transform: rotate(-90deg);
}

.routes-menu__sub-link {
  display: flex;
  align-items: center;
  flex-grow: 1;
  color: inherit;
  padding-block: 5px;
  padding-inline: 16px;
  text-decoration: none;
  transition: color 0.3s;
}

.routes-menu__close {
  position: absolute;
  right: var(--padding);
  top: 8px;
  color: var(--blue);
}

@media (hover: hover) {
  .routes-menu__sub-link:hover {
    color: var(--blue);
  }
}
.routes-menu__sub-li {
  position: relative;
  display: flex;
  flex-direction: column;
  transition: background-color 0.3s;
}

.routes-menu__sub-sub {
  z-index: 2;
  display: flex;
  flex-direction: column;
  max-height: 0;
  overflow: hidden;
}
.routes-menu__sub-sub li {
  display: flex;
  width: 100%;
}
.routes-menu__sub-sub li:first-child .routes-menu__sub-link {
  padding-top: 15px;
}
.routes-menu__sub-sub li:last-child .routes-menu__sub-link {
  padding-bottom: 30px;
}

@media (max-width: 1023px) {
  .routes-menu {
    top: 0;
    transform: translateX(calc(-200svw - 100%));
    transition: transform 0.3s;
  }
  .trips-opened .routes-menu {
    transform: translateX(0);
  }
}
@media (min-width: 1024px) {
  .routes-menu {
    position: absolute;
    top: 0;
    width: 100%;
    left: 0;
    padding-top: 190px;
    transform: translateY(-200%);
    transition: transform 0.3s;
    max-height: calc(100svh - 190px);
  }
  .trips-opened .routes-menu {
    transform: translateY(0);
  }
  .routes-toggler {
    position: relative;
    z-index: 3;
  }
  .routes-menu__sub-sub {
    position: absolute;
    top: 0;
    left: calc(100% - 11px);
    background-color: var(--white);
    flex-direction: column;
    align-items: center;
    border-radius: 0 15px 15px 15px;
  }
  .routes-menu__sub-sub li {
    display: flex;
    text-align: left;
  }
  .routes-menu__li {
    padding-inline: 16px;
  }
}
.filter-persons {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 16px 16px 40px 16px;
  background-color: var(--white);
  border-radius: 30px;
}

.filter-persons__name {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}

.pers-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 100px;
  gap: 7 10px;
  line-height: 1.2;
  align-items: center;
}

.pers-row__name {
  grid-column: 1;
  grid-row: 1;
  font-size: 14px;
  font-weight: 600;
}

.pers-row__remark {
  grid-column: 1;
  grid-row: 2;
  font-size: 12px;
}

.pers-row__nums {
  grid-column: 2;
  grid-row: 1/3;
}

.logo {
  display: flex;
  align-items: center;
}
.logo svg {
  max-width: 100%;
  height: auto;
}

.top-block {
  position: relative;
  padding-bottom: 1000px;
  padding-top: 12px;
  margin-bottom: -1000px;
  overflow: hidden;
}

.trips-opened .top-block__logo {
  color: var(--blue);
}

.top-block__routes {
  z-index: 2;
}

.top-block__container {
  display: grid;
  grid-template-columns: 65px minmax(0, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 8px;
  padding-bottom: 40px;
}

.top-block__filter {
  position: relative;
  grid-column: 1/-1;
}

.top-block__filter--index .more-block {
  display: none;
}

.top-block__filter-btn {
  position: relative;
  z-index: 1;
}

.top-block__filter--inside .top-block__filter-filter {
  max-height: 70px;
}

.top-block__filter.opened:before {
  height: 0;
}
.top-block__filter.opened .top-block__filter-filter {
  max-height: 500px;
}
.top-block__filter.opened .btn__open {
  display: none;
}
.top-block__filter.opened .btn__close {
  display: flex;
}

.top-block__logo {
  color: var(--white);
}

@media (max-width: 767px) {
  .top-block__filter--inside:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(-1 * var(--padding));
    right: calc(-1 * var(--padding));
    bottom: -300px;
    background: linear-gradient(180deg, rgba(66, 164, 208, 0) 0%, rgba(133, 196, 224, 0.99) 37.5%, #FFF 80.17%);
  }
  .top-block__filter .filter__label {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .top-block__filter-btn {
    display: none;
  }
}
@media (min-width: 1024px) {
  .top-block__filter {
    z-index: 3;
  }
  .top-block__logo {
    z-index: 3;
  }
  .top-block {
    padding-top: 32px;
  }
}
@media (min-width: 1200px) {
  .top-block__container {
    grid-template-columns: 238px minmax(0, 1fr);
  }
  .top-block__logo {
    grid-row: 1/3;
  }
  .top-block__filter {
    grid-column: 2;
    grid-row: 2;
  }
  .top-block__routes {
    padding-left: 250px;
  }
}
.footer-menu__sub,
.footer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-menu__link {
  display: flex;
  padding-block: 15px;
  color: var(--white);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  text-decoration: none;
}

.footer-menu__sub-link {
  display: flex;
  padding-block: 5px;
  color: var(--white);
  font-size: 14px;
  font-weight: 600;
  line-height: 140%;
  text-decoration: none;
}

.footer-menu__item {
  margin-bottom: 10px;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.footer-menu__item:last-child {
  margin-bottom: 0;
}

.ya-ru {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 3px 10px;
  padding: 11px 15px;
  border-radius: 20px;
}

.ya-ru__img {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #000003;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}
.ya-ru__img img {
  height: 24px;
  width: auto;
}

.ya-ru__stars {
  display: flex;
  align-items: center;
  gap: 2px;
}

.ya-ru__text {
  grid-column: 1/-1;
  color: #303030;
  font-size: 10px;
  line-height: 1.2;
}

.developed {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 10px 15px;
  color: var(--gray);
  font-size: 12px;
  font-weight: 700;
  line-height: 140%;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 20px;
  border: 1px solid var(--gray);
}
.developed p {
  margin: 0;
  max-width: 154px;
}

.footer__btns {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}

.footer__info {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.footer__logo {
  grid-column: 1;
  grid-row: 1;
}

.footer__link {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--white);
  font-weight: 700;
}

.footer__top {
  padding-top: 40px;
  padding-bottom: 40px;
}
.footer__top .container {
  display: grid;
  grid-template-columns: 130px auto;
  gap: 20px;
}

.footer-menu,
.footer__info {
  grid-column: 1/3;
}

.footer-menu {
  -moz-columns: 250px auto;
       columns: 250px auto;
  -moz-column-gap: 20;
       column-gap: 20;
}

.footer__center {
  padding-block: 30px;
}
.footer__center .container {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
}

.footer-block {
  display: flex;
  padding: 6px 8px;
  text-decoration: none;
  color: var(--text);
  max-width: 460px;
  border-radius: 20px;
  border: 1px solid var(--sky-blue);
}

.footer-block__reestr {
  align-items: center;
  font-weight: 400;
}
.footer-block__reestr::before {
  flex-shrink: 0;
  margin-right: -20px;
}

.footer__operator {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: center;
  padding: 20px;
}
.footer__operator img {
  max-height: 78px;
}
.footer__operator p {
  margin: 0;
}
.footer__operator::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: calc(100% - 20px);
  width: 1px;
  background-color: var(--sky-blue);
}

.footer__socials {
  display: flex;
  gap: 10px;
}

.footer__social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  text-decoration: none;
  background-color: var(--sky-blue);
}

.footer__btm {
  padding-block: 10px;
}
.footer__btm .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  color: var(--white);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.footer__infos {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.footer__infos p {
  margin: 0;
}

@media (min-width: 1024px) {
  .footer__top .container {
    grid-template-columns: 130px 1fr auto;
  }
  .footer__center .container {
    justify-content: space-between;
  }
  .footer-menu {
    grid-column: 2;
    grid-row: 1/3;
  }
  .footer__info {
    grid-column: 3;
    grid-row: 2;
    justify-content: flex-end;
    align-items: flex-end;
  }
  .footer__btns {
    grid-column: 3;
    grid-row: 1;
  }
  .footer__logo {
    grid-column: 1;
    grid-row: 1/3;
  }
  .footer-block__reestr {
    max-width: 380px;
    gap: 10px;
  }
  .footer-block__reestr:before {
    margin: 0;
  }
}
@media (min-width: 1500px) {
  .footer-menu {
    -moz-columns: 4;
         columns: 4;
  }
  .footer__top .container {
    -moz-column-gap: 100px;
         column-gap: 100px;
  }
}
.slide {
  position: relative;
  display: flex;
  min-height: 300px;
  padding: 15px;
  color: var(--white);
  border-radius: 30px;
  overflow: hidden;
}
.slide::before {
  content: "";
  z-index: 1;
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 78, 139, 0) 30%, rgba(0, 78, 139, 0.9) 100%);
}

.slide__image {
  position: absolute;
  min-width: 100%;
  min-height: 101%;
  top: 50%;
  left: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transform: translate(-50%, -50%);
}

.slide__content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 1;
  gap: 20px;
}

.slide__title {
  margin: 0;
  font-size: var(--size-30-40);
  font-weight: 700;
  line-height: 1.2;
  /* 36px */
}

@media (min-width: 768px) {
  .slide {
    padding: 40px;
    min-height: 400px;
  }
}
@media (min-width: 1024px) {
  .slide {
    padding: 60px;
    min-height: 500px;
  }
}
.top-slider__wrapper {
  display: flex;
  gap: 20px;
}

.swiper-initialized .top-slider__wrapper {
  gap: 0;
}

.top-slider__slide {
  width: 100%;
  flex-shrink: 0;
  background-color: var(--white);
}

.top-slider {
  position: relative;
}

@media (max-width: 767px) {
  .top-slider__dots {
    top: 17px;
    right: 18px;
    bottom: auto;
  }
}
@media (min-width: 1280px) {
  .top-slider {
    position: relative;
  }
}
.types-it {
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: 14px 16px;
  min-height: 140px;
  border-radius: 30px;
  overflow: hidden;
}

.types-it__link {
  position: absolute;
  inset: 0;
}

.types-it__image {
  position: absolute;
  top: 50%;
  left: 50%;
  min-height: 100%;
  min-height: 100%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
  transform: translate(-50%, -50%);
}

.types-it__btn {
  position: relative;
}

.types {
  position: relative;
}

.types__wrapper {
  display: flex;
  gap: 20px;
}

.swiper-initialized .types__wrapper {
  gap: 0;
}

.types__it {
  width: 300px;
  flex-shrink: 0;
}

@media (hover: hover) {
  .types-it:hover .bd--glass {
    color: var(--shitty-blue);
    background: rgba(255, 255, 255, 0.8);
  }
}
@media (min-width: 768px) {
  .types-it {
    padding: 30px;
    min-height: 200px;
  }
}
@media (min-width: 1024px) {
  .types__it {
    width: calc(20% - 16px);
  }
  .types--long .types__it {
    width: calc(25% - 15px);
  }
}
.routes-it {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 30px;
  color: var(--white);
  font-size: var(--size-14-20);
  font-weight: 700;
  line-height: 1.2;
  background-color: var(--blue);
  transition: box-shadow 0.3s;
}
.routes-it img {
  -o-object-position: bottom left;
     object-position: bottom left;
  max-height: 91%;
}

.routes-it__link {
  position: absolute;
  inset: 0;
}

@media (hover: hover) {
  .routes-it:hover {
    box-shadow: 7px 9px 17.9px 0 rgba(13, 57, 91, 0.3);
  }
}
.routes-it__name {
  padding: 12px 15px 0 15px;
}

.routes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width: 600px) {
  .routes__it:nth-child(4n+1) {
    color: var(--text);
    background-color: var(--sky-blue);
  }
  .routes__it:nth-child(4n+4) {
    color: var(--text);
    background-color: var(--sky-blue);
  }
  .routes-it {
    aspect-ratio: 155/160;
    overflow: hidden;
  }
}
@media (min-width: 601px) {
  .routes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .routes__it:nth-child(2n+1) {
    color: var(--text);
    background-color: var(--sky-blue);
  }
}
@media (min-width: 768px) {
  .routes-it__name {
    padding: 30px 30px 0 30px;
  }
}
@media (min-width: 1024px) {
  .routes {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  }
}
.sale-slide {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 34px 15px 24px 15px;
  min-height: 200px;
  border-radius: 30px;
  background-color: var(--blue-light2);
  overflow: hidden;
}

.sale-slide__name {
  margin: 0;
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.2;
}

.sale-slide__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sale-slide__img {
  display: flex;
  justify-content: flex-end;
  background: lightgray 50%/cover no-repeat;
}

.sale-slide__link {
  position: absolute;
  inset: 0;
  z-index: 1;
}

@media (hover: hover) {
  .sale-slide:hover .btn--bd-blue {
    color: var(--white);
    border-color: var(--white);
  }
}
@media (max-width: 1023px) {
  .sale-slide__img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    transform: translateY(-50%);
  }
  .sale-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 30px;
    opacity: 0.6;
    background: var(--blue-light2);
  }
}
@media (min-width: 768px) {
  .sale-slide {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 34px 40px;
  }
  .sale-slide__img {
    justify-self: flex-end;
  }
  .sale-slide__img img {
    position: absolute;
    top: 50%;
    right: 0;
    width: auto;
    max-width: 100%;
    transform: translateY(-50%);
  }
}
@media (min-width: 1024px) {
  .sale-slide {
    padding: 34px 60px;
  }
}
.sale-slider {
  position: relative;
}

.sale-slider__slider {
  overflow: hidden;
  border-radius: 30px;
}

.sale-slider__wrapper {
  display: flex;
}

.sale-slider__slide {
  width: 100%;
  flex-shrink: 0;
}

@media (max-width: 767px) {
  .sale-slider__dots {
    display: none;
  }
}
.about-deco {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 20px;
}

.about-deco__img {
  grid-column: 1/4;
  grid-row: 1/3;
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1;
}

.about-deco__img2 {
  grid-row: 2/4;
  grid-column: 3/7;
  border: 6px solid white;
  border-radius: 12px;
  overflow: hidden;
  max-width: 360px;
}
.about-deco__img2 img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-deco__info {
  grid-column: 4/7;
  display: flex;
  flex-direction: column;
  padding-top: 25px;
  font-size: 8.425px;
  font-weight: 700;
  line-height: 1.4;
}
.about-deco__info span {
  color: var(--blue);
  font-size: 35.204px;
  line-height: 0.9;
}

.about-deco__reestr {
  grid-row: 4;
  grid-column: 1/-1;
}
.about-deco__reestr::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 151px;
  height: 151px;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .about-deco__info {
    font-size: 16px;
  }
  .about-deco__info span {
    font-size: 60px;
  }
  .about-deco__img2 {
    border-radius: 30px;
    border-width: 23px;
  }
}
@media (min-width: 1024px) {
  .about-deco__info {
    padding-top: 60px;
    font-size: 20px;
  }
  .about-deco__info span {
    font-size: 80px;
  }
  .about-deco__reestr {
    padding-left: 190px;
  }
  .about-deco__reestr:before {
    transform: translate(50%, -50%);
  }
}
.about-block {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 40px;
}

@media (min-width: 768px) {
  .about-block {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1300px) {
  .about-block {
    -moz-column-gap: 200px;
         column-gap: 200px;
  }
}
.item-top {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 500px;
  border-radius: 30px;
  overflow: hidden;
}
.item-top img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.item-top__inside {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  flex-grow: 1;
  padding: 50px 25px;
  width: 100%;
  height: 100%;
  color: var(--white);
  background: linear-gradient(180deg, rgba(9, 12, 24, 0) 0.15%, rgba(9, 12, 24, 0.23) 62.74%, rgba(9, 12, 24, 0.71) 99.85%);
}

.item-top__dates-row {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 15px;
  margin-bottom: 30px;
}

.item-top__dates {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.item-top__route-row {
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.4;
}

.item-top__dates-btm {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 60px;
  align-items: center;
}

.item-top__h1 {
  max-width: 800px;
  margin-block: 0;
  margin-right: auto;
  font-size: var(--size-30-50);
  font-weight: 700;
  line-height: 1.4;
}

.item-top__price {
  margin: 0;
  font-size: var(--size-20-30);
  font-weight: 700;
  line-height: 1.4;
}

@media (min-width: 768px) {
  .item-top__date-it {
    margin-bottom: 0;
    margin-right: 20px;
  }
}
.await-it {
  display: grid;
  grid-template-columns: 40px 1fr;
  align-items: center;
  gap: 15px;
  padding: 5px 30px 5px 5px;
  text-decoration: none;
  color: var(--text, #303030);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  border-radius: 40px;
  border: 1px solid var(--gray);
  transition: background-color 0.3s;
}

@media (hover: hover) {
  a.await-it:hover {
    background-color: var(--blue-transparent);
  }
  a.await-it:hover .await-it__img::before {
    opacity: 1;
  }
}
.await-it__img {
  position: relative;
  aspect-ratio: 1;
  border-radius: 30px;
  overflow: hidden;
}
.await-it__img img {
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.await-it__img::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(9, 12, 24, 0.2) 0%, rgba(9, 12, 24, 0.4) 100%);
  backdrop-filter: blur(3px);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' viewBox='0 0 30 30'%3E%3Cpath fill='%23fff' d='M13.75 13.75V10h2.5v3.75H20v2.5h-3.75V20h-2.5v-3.75H10v-2.5z'/%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M3.75 15c0 6.213 5.037 11.25 11.25 11.25h7.5a3.75 3.75 0 0 0 3.75-3.75V15c0-6.213-5.037-11.25-11.25-11.25S3.75 8.787 3.75 15M15 6.25a8.75 8.75 0 1 1 0 17.5 8.75 8.75 0 0 1 0-17.5' clip-rule='evenodd'/%3E%3C/svg%3E");
  background-size: 30px;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.3s;
}

.await {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: flex-start;
  align-items: center;
}

@media (min-width: 768px) {
  .await {
    gap: 20px;
  }
  .await-it {
    grid-template-columns: 60px 1fr;
    padding: 10px 30px 10px 10px;
    max-width: 300px;
  }
}
@media (min-width: 768px) {
  .await-it {
    grid-template-columns: 80px 1fr;
  }
}
.item-info__dates {
  display: flex;
  align-items: center;
  padding: 10px 13px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--blue);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  border-radius: 30px;
  background: rgba(0, 78, 139, 0.1);
}

.item-info__route {
  padding: 10px 15px;
  border-radius: 30px;
  color: var(--blue);
  font-size: 14px;
  line-height: 140%;
}
.item-info__route span {
  font-weight: 700;
}

.item-info {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px 20px;
}

.item-info__img-inside {
  position: relative;
  aspect-ratio: 1;
  border-radius: 30px;
  overflow: hidden;
}
.item-info__img-inside img {
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.item-info__img {
  position: relative;
  width: 66.6666666667%;
  margin-left: auto;
}
.item-info__img::before {
  content: "";
  position: absolute;
  display: block;
  width: 80%;
  aspect-ratio: 1;
  left: 0;
  bottom: 0;
  transform: translate(-70%, calc(53% + var(--size-40-100)));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='456' height='485' fill='none' viewBox='0 0 456 485'%3E%3Cpath fill='%23fff' d='M227.7 0C101.9 0 0 102 0 227.7h54.9c0-95.4 77.3-172.8 172.8-172.8s172.8 77.4 172.8 172.8h54.9C455.4 102 353.5 0 227.7 0'/%3E%3Cpath fill='%23fff' d='M227.7 104.5c-68.1 0-123.3 55.2-123.3 123.2h246.5c0-68-55.1-123.2-123.2-123.2M227.7 484.7C101.9 484.7 0 382.7 0 257h54.9c0 95.4 77.3 172.8 172.8 172.8S400.5 352.4 400.5 257h54.9c0 125.7-101.9 227.7-227.7 227.7'/%3E%3Cpath fill='%23fff' d='M227.7 380.2c-68.1 0-123.3-55.2-123.3-123.2h246.5c0 68-55.1 123.2-123.2 123.2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.item-info__deco {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 50%;
  transform: translateX(-50%);
}

.item-info__text {
  position: relative;
}

.item-info__content {
  position: relative;
  z-index: 1;
}

.item-info__file {
  font-weight: 700;
  color: var(--blue);
  display: block;
  margin-top: 30px;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .item-info {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 20px;
  }
  .item-info__file {
    margin-top: 50px;
    margin-bottom: 0;
  }
  .item-info__img {
    width: 100%;
    padding-left: 10%;
  }
  .item-info__img-inside {
    aspect-ratio: unset;
    height: 100%;
    width: 100%;
  }
  .item-info__deco {
    transform: translate(-52%, 17%);
  }
  .item-info__text {
    max-width: 600px;
  }
}
@media (min-width: 1024px) {
  .item-info__img {
    padding-left: 0;
  }
  .item-info__deco {
    width: 65%;
  }
  .item-info__content {
    max-width: 1060px;
  }
}
@media (min-width: 1300px) {
  .item-info__img::before {
    width: 455px;
  }
}
.program__row {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 20px 11px;
  width: 100%;
  border-bottom: 1px solid var(--gray);
}
.program__row:last-child {
  border-bottom: 0;
}
.program__row.active {
  color: var(--white);
  background-color: var(--blue);
  border-radius: 30px;
}

[data-imgs] {
  cursor: pointer;
}
[data-imgs]:hover {
  color: var(--blue2);
}

.program__day {
  padding: 3px 13px 1px 13px;
  font-size: 12px;
  line-height: 1.4;
  text-transform: uppercase;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.4);
  width: -moz-fit-content;
  width: fit-content;
}

.program {
  width: 100%;
}

@media (min-width: 1024px) {
  .program {
    padding-bottom: 40px;
  }
  .program__row {
    padding: 26px 30px;
  }
}
.program-slider {
  position: relative;
}

.program-slider__wrapper {
  display: flex;
  height: 100%;
}

.program-slider__slider {
  width: 100%;
  overflow: hidden;
  aspect-ratio: 320/240;
}

.program-slider__slide {
  position: relative;
  display: flex;
  width: 100%;
  flex-shrink: 0;
  color: var(--white);
  font-size: var(--size-14-20);
  font-weight: 700;
  overflow: hidden;
}
.program-slider__slide img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.program-slider__name {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px 15px;
  min-width: 100%;
  min-height: 100%;
  border-radius: 30px 0 0 30px;
  background: linear-gradient(180deg, rgba(9, 12, 24, 0) 51.71%, rgba(9, 12, 24, 0.23) 74.2%, rgba(9, 12, 24, 0.71) 93.09%);
}

.program-slider__dots {
  position: absolute;
  bottom: 15px;
  right: 15px;
  display: flex;
  gap: 5px;
}
.program-slider__dots .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border: 1px solid var(--white);
  border-radius: 50%;
}
.program-slider__dots .swiper-pagination-bullet-active {
  background-color: var(--white);
}

@media (min-width: 1024px) {
  .program-slider {
    height: 100%;
  }
  .program-slider__slider {
    aspect-ratio: unset;
    height: 100%;
  }
  .program-slider__wrapper {
    height: 100%;
  }
  .program-slider__slide {
    display: flex;
  }
  .program-slider__name {
    padding: 40px;
  }
}
.item-program {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: 10px;
  border-radius: 30px;
  overflow: hidden;
}

.tabs__panels {
  display: grid;
  padding: 10px 15px 15px 15px;
  background-color: var(--sky-blue);
}

.tabs__btn {
  min-width: 180px;
  border-radius: 30px;
  overflow: hidden;
  transition: transform 0.3s;
}
.tabs__btn.active .tabs__btn-inside {
  background-color: var(--sky-blue);
}
.tabs__btn[aria-selected=true] .tabs__btn-inside {
  background-color: var(--sky-blue);
}

.tabs {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

@media (hover: hover) {
  .tabs__btn:hover {
    transform: translate(-20px, 0);
  }
  .tabs__btn:hover .tabs__btn-inside {
    background-color: var(--sky-blue);
  }
}
.tabs__btn-inside {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 5px;
  padding: 12px 15px 8px 15px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  background-color: var(--white);
  transition: background-color 0.3s;
}

.tabs__btn-sp {
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
}

.tabs__row {
  display: flex;
}

.tabs__panel {
  grid-column: 1;
  grid-row: 1;
  transition: opacity 0.3s, z-index 0.3s;
}
.tabs__panel[aria-selected=true] {
  z-index: 1;
  opacity: 1;
}
.tabs__panel.noshow {
  opacity: 0;
}

@media (max-width: 1023px) {
  .tabs__btn {
    margin-right: -90px;
    filter: drop-shadow(6px 8px 18.8px rgba(13, 57, 91, 0.2));
  }
  .tabs__row {
    overflow-y: auto;
    scrollbar-width: thin;
  }
  .tabs__panels {
    border-radius: 30px;
  }
}
@media (min-width: 1024px) {
  .item-program {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    background-color: var(--sky-blue);
  }
  .item-program__right {
    display: flex;
    max-height: 630px;
    padding: 26px 26px 26px 0;
  }
  .tabs__panel {
    display: flex;
    height: 100%;
  }
  .tabs__panels {
    padding-left: 20px;
    overflow-y: auto;
    scrollbar-width: thin;
  }
  .tabs {
    position: relative;
  }
  .tabs__row {
    flex-direction: column;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-100%, -50%);
  }
  .tabs__btn {
    border-radius: 30px 0 0 30px;
    padding-right: 20px;
    margin-bottom: -30px;
    background-color: var(--sky-blue);
  }
  .tabs__btn.active, .tabs__btn[aria-selected=true] {
    z-index: 1;
    transform: translate(-20px, -20px);
  }
  .tabs__btn-inside {
    padding: 12px 60px 12px 28px;
  }
  .item-program__right {
    position: relative;
  }
  .item-program__right::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    height: 116px;
    background: linear-gradient(180deg, rgba(224, 237, 249, 0) 0%, #E0EDF9 61.21%);
  }
}
.room-tabs {
  padding: 20px 15px 40px 15px;
  border-radius: 30px;
  overflow: hidden;
}

.room-tabs__row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.room-tabs__panels {
  display: grid;
}

.room-tabs__panel {
  grid-column: 1;
  grid-row: 1;
  transition: opacity 0.3s, z-index 0.3s;
}

.room-tabs__btn[aria-selected=true] {
  color: var(--white);
  background-color: var(--blue2);
  border-color: var(--blue2);
}

.room-tabs__wrapper {
  display: flex;
}

.room-tabs__panel.noshow {
  opacity: 0;
  z-index: -1;
}

.room-tabs__slide {
  width: 100%;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .room-tabs {
    padding: 30px 30px 30px 30px;
  }
  .room-tabs__wrapper {
    gap: 20px;
  }
}
@media (min-width: 1024px) {
  .room-tabs {
    padding: 50px 40px 40px 40px;
  }
  .room-tabs__slide {
    width: 90%;
  }
}
.room-panel__img {
  display: flex;
  aspect-ratio: 250/150;
  border-radius: 30px;
  overflow: hidden;
}
.room-panel__img img {
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.room-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 30px 20px;
}

.room-panel__name {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 700;
}

.room-panel__text {
  margin-top: 0;
  margin-bottom: 20px;
  font-size: var(--size-12-16);
}
.room-panel__text p {
  margin-block: 15px;
}
.room-panel__text p:first-child {
  margin-top: 0;
}
.room-panel__text p:last-child {
  margin-bottom: 0;
}

.room-panel__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.room-panel__price {
  font-size: var(--size-20-30);
  font-weight: 700;
}

.room-panel__label {
  position: relative;
  display: flex;
}

.room-panel__chosen {
  display: none;
}

.room-panel__input {
  position: absolute;
  opacity: 0;
}
.room-panel__input:checked ~ .room-panel__nonchosen {
  display: none;
}
.room-panel__input:checked ~ .room-panel__chosen {
  display: flex;
}

@media (min-width: 768px) {
  .room-panel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .room-panel__content {
    max-width: 400px;
  }
  .room-panel__img {
    aspect-ratio: unset;
    max-height: 417px;
  }
}
@media (min-width: 1024px) {
  .room-panel {
    grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
  }
}
.accomodation {
  padding: 15px;
  border-radius: 30px;
}

@media (min-width: 768px) {
  .accomodation {
    padding: 40px;
  }
}
@media (min-width: 1024px) {
  .accomodation {
    padding: 100px 100px 100px 75px;
    background-size: 360px 440px;
    background-position: top right 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='441' fill='none' viewBox='0 0 360 441'%3E%3Cpath fill='%23fff' d='M179.5 440.8C80.3 440.8 0 360.4 0 261.3h359.1c-.1 99.1-80.4 179.5-179.6 179.5M179.5 261.3c-81.1 0-146.8-65.7-146.8-146.8h293.7c-.1 81-65.8 146.8-146.9 146.8M179.5 114.4C116.3 114.4 65.1 63.2 65.1 0H294c-.1 63.2-51.3 114.4-114.5 114.4'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
  }
}
.tour-it {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 15px;
  border-radius: 30px;
  background-position: bottom right;
  background-size: 60%;
  background-repeat: no-repeat;
}
.tour-it:nth-child(3n+1) {
  background-position: bottom right 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='341' height='303' fill='none' viewBox='0 0 341 303'%3E%3Cpath fill='%23fff' d='M170.4 0C76.3 0 0 77.737 0 173.608v251.956h56.7V172.895c0-63.982 50.9-115.943 113.8-115.943 62.8 0 113.8 51.859 113.8 115.943v252.567H341V173.608C340.8 77.737 264.5 0 170.4 0'/%3E%3Cpath fill='%23fff' d='M250.2 425.462H90.6V171.061c0-44.93 35.7-81.302 79.8-81.302s79.8 36.372 79.8 81.302z'/%3E%3C/svg%3E");
}
.tour-it:nth-child(3n+2) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='425' height='415' fill='none' viewBox='0 0 425 415'%3E%3Cpath fill='%23fff' d='M442 438.742c-.877-87.072-50.238-162.492-122.151-200.704-13.53-7.266-13.53-26.685 0-33.951 71.787-38.337 121.023-113.632 121.9-200.703V.252h-3.132c-87.071.877-162.366 50.113-200.703 121.9-7.266 13.53-26.685 13.656-33.826 0C165.25 49.237 88.452-.25.128.001c-.251 88.324 49.236 165.248 122.275 203.961 13.531 7.266 13.531 26.685 0 33.951C49.363 276.626-.374 353.675.003 441.999c88.324.251 165.372-49.361 204.085-122.401 7.266-13.656 26.685-13.531 33.952 0 38.211 72.037 113.631 121.273 200.828 122.276H442z'/%3E%3C/svg%3E");
}
.tour-it:nth-child(3n) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='351' height='403' fill='none' viewBox='0 0 351 403'%3E%3Cpath fill='%23fff' d='M486 204.149H336.749L442.323 98.576l-54.898-54.899-105.574 105.574V0h-77.702v149.251L98.576 43.677 43.677 98.576l105.574 105.573H0v77.702h149.251L43.677 387.425l54.899 54.898 105.573-105.574V486h77.702V336.749l105.574 105.574 54.898-54.898-105.574-105.574H486z'/%3E%3C/svg%3E");
}

.tour-it__list--incl li:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='12' fill='none' viewBox='0 0 15 12'%3E%3Cpath fill='%2358ba7d' d='M12.348.54a1.5 1.5 0 1 1 2.304 1.92l-7.5 9a1.5 1.5 0 0 1-2.213.1l-4.5-4.5A1.5 1.5 0 1 1 2.56 4.94L5.9 8.277z'/%3E%3C/svg%3E");
}

.tour-it__list--excl li:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='3' fill='none' viewBox='0 0 16 3'%3E%3Cpath stroke='%23777' stroke-linecap='round' stroke-width='3' d='M14.5 1.5h-13'/%3E%3C/svg%3E");
}

.tour-it__list--info li::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' viewBox='0 0 12 12'%3E%3Cpath fill='%230084bf' d='M5.991 0h.073c.342.001.677.007 1.013.078l.07.014C8.01.272 8.82.608 9.534 1.13l.04.03c.178.129.34.27.499.42q.069.066.144.126c.053.045.098.088.142.14q.068.081.14.158c.827.872 1.318 2.064 1.47 3.245l.006.048c.016.134.02.266.021.4l.001.067c.005.925.005.925-.075 1.311l-.014.07c-.231 1.103-.724 2.112-1.498 2.935-.057.06-.057.06-.106.123a1 1 0 0 1-.128.13 6 6 0 0 0-.22.199c-.78.707-1.772 1.162-2.797 1.372l-.05.01A5.4 5.4 0 0 1 6.076 12L5.87 12a5.5 5.5 0 0 1-.923-.079l-.081-.013-.181-.036-.066-.015a5.9 5.9 0 0 1-2.699-1.445 3 3 0 0 0-.137-.12 1 1 0 0 1-.143-.14 4 4 0 0 0-.14-.158C1.206 9.682.97 9.32.757 8.95l-.03-.053a5.9 5.9 0 0 1-.633-1.75A5.5 5.5 0 0 1 0 6.009v-.072c.001-.342.009-.677.078-1.013l.014-.072c.164-.82.483-1.61.969-2.292l.032-.046c.154-.217.321-.414.505-.605.06-.061.112-.126.165-.192q.04-.038.083-.075.082-.068.159-.14C2.776.77 3.808.304 4.84.093l.05-.01c.367-.07.73-.085 1.101-.084M2.164 2.458a5 5 0 0 0-.291.35 5.4 5.4 0 0 0-.461.71l-.025.047c-.104.191-.19.388-.27.591l-.025.064-.023.06-.02.055a.2.2 0 0 0 .012.143c.144.178.324.3.515.421.248.164.36.463.426.74a3.2 3.2 0 0 1-.067 1.44c-.115.416-.09.892.015 1.308l.013.048c.09.342.223.678.536.869.438.252.936.39 1.414.549.79.261.79.261 1.087.418a.7.7 0 0 0 .345.082.4.4 0 0 0 .14-.094c.045-.288-.2-.575-.35-.805-.92-1.394-.92-1.394-.806-2.065.109-.42.359-.764.666-1.062.412-.4.645-.925.677-1.498.003-.3-.05-.629-.265-.854-.158-.143-.35-.25-.53-.363-.703-.45-.703-.45-.796-.796a.72.72 0 0 1 .14-.562c.31-.371.742-.62 1.141-.885a16 16 0 0 0 .59-.405c.077-.057.147-.114.212-.184-1.542-.04-2.929.59-4 1.678m6.013-.438-.05.049A1.64 1.64 0 0 0 7.68 3.26c.018.38.316.694.555.965.474.544.474.544.487.848-.011.127-.056.244-.1.365l-.11.33-.015.047c-.056.176-.08.397-.001.57.113.184.285.32.492.382q.105.022.21.04l.08.014a11 11 0 0 0 .59.083l.316.037.118.013.054.006c.137.016.22.048.308.154.095.176.096.362.104.558.005.107.015.21.032.317.399-.399.418-1.453.427-1.99-.026-1.49-.63-2.797-1.684-3.835-.527-.492-.815-.684-1.365-.144'/%3E%3C/svg%3E");
}

.tour-it__list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin: 0;
  padding: 0;
  font-size: 14px;
  list-style: none;
}
.tour-it__list li {
  position: relative;
  padding-left: 35px;
}
.tour-it__list li:before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 15px;
  height: 15px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.tour-it__name {
  margin: 0;
  font-size: var(--size-20-30);
  font-weight: 700;
}

.tour-info__wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

.tour-info__it {
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .tour-info__wrapper {
    gap: 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tour-it {
    padding: 30px;
  }
}
@media (min-width: 1024px) {
  .tour-info__wrapper {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .tour-info__it {
    width: 100%;
  }
  .tour-it {
    padding: 60px;
    gap: 20px;
  }
}
.item-galley {
  display: grid;
  gap: 15px;
}
.item-galley.opened .item-galley__it.hidden {
  display: block;
}

.item-galley__it.hidden {
  display: none;
}

.item-galley__it {
  aspect-ratio: 1;
  border-radius: 30px;
  overflow: hidden;
}
.item-galley__it img {
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

@media (min-width: 500px) and (max-width: 767px) {
  .item-galley {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .item-galley__it:nth-child(3n+1) {
    grid-column: 1/-1;
    aspect-ratio: unset;
  }
}
@media (min-width: 768px) {
  .item-galley {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
  }
  .item-galley__it:nth-child(6n+2) {
    grid-row: span 2;
    grid-column: 2;
    aspect-ratio: unset;
  }
  .item-galley__it:nth-child(6n+3) {
    grid-column: span 2;
    aspect-ratio: unset;
  }
}
.route-row {
  z-index: 2;
  max-width: 100%;
  padding-block: 42px;
}
.route-row svg {
  width: 100%;
  height: auto;
}

.route-row__inside {
  position: relative;
}

.route-row__dot {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--blue);
  font-size: var(--size-10-20);
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  cursor: pointer;
}
.route-row__dot:last-child .route-row__dot-text {
  transform: translateX(-100%);
}

.route-row__dot-inside {
  position: relative;
  width: 20px;
  height: 20px;
  background-color: rgba(129, 171, 255, 0.1);
  border-radius: 50%;
  backdrop-filter: blur(0.947px);
}
.route-row__dot-inside::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 50%;
  border-radius: 50%;
  background-color: var(--blue);
  transform: translate(-50%, -50%);
}

.route-card {
  position: absolute;
  width: 160px;
  padding: 8px 8px 30px 8px;
  background-color: var(--white);
  box-shadow: 6px 8px 18.8px 0 rgba(13, 57, 91, 0.2);
  transform: translate(-50%, calc(-100% - 50px)) rotate(15deg);
}
.route-card img {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 1024px) {
  .route-row__dot-inside {
    width: 44px;
    height: 44px;
  }
}
.category-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.category-tags .btn {
  position: relative;
}

.category-tags__it {
  font-size: var(--size-12-20);
  padding-inline: 20px;
}
.category-tags__it:nth-child(n+9) {
  display: none;
}

.category-tags.opened .category-tags__it:nth-child(n+9) {
  display: flex;
}
.category-tags.opened .js-tags-more {
  display: none;
}

@media (min-width: 1024px) {
  .category-tags {
    gap: 20px;
  }
}
@media (min-width: 1220px) {
  .category-tags__it {
    padding-block: 13px;
  }
}
.opt {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  gap: 10px;
  font-weight: 600;
  font-size: var(--size-12-14);
}

.opt__img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 3px;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath fill='%23e0edf9' d='M9.164.741c.107-.988 1.565-.988 1.672 0 .089.827 1.22 1.024 1.59.277.443-.893 1.813-.401 1.57.563-.203.807.792 1.373 1.399.797.726-.69 1.843.234 1.28 1.059-.47.69.267 1.557 1.038 1.22.921-.403 1.65.842.836 1.427-.682.49-.29 1.554.552 1.497 1.005-.068 1.258 1.348.29 1.623-.81.23-.81 1.362 0 1.592.968.275.715 1.691-.29 1.623-.841-.057-1.234 1.007-.552 1.497.814.585.085 1.83-.836 1.427-.77-.337-1.509.53-1.038 1.22.563.825-.555 1.749-1.28 1.06-.607-.578-1.602-.011-1.399.796.243.964-1.127 1.456-1.57.563-.37-.747-1.501-.55-1.59.277-.107.988-1.565.988-1.672 0-.089-.827-1.22-1.024-1.59-.277-.443.893-1.813.401-1.57-.563.203-.807-.792-1.373-1.399-.797-.726.69-1.842-.235-1.28-1.059.47-.69-.267-1.557-1.038-1.22-.921.403-1.65-.842-.836-1.427.682-.49.29-1.554-.552-1.497-1.005.068-1.258-1.348-.29-1.623.81-.23.81-1.362 0-1.592-.968-.275-.715-1.691.29-1.623.841.057 1.234-1.007.552-1.497-.814-.585-.085-1.83.836-1.427.77.337 1.509-.53 1.038-1.22-.562-.825.555-1.749 1.28-1.06.607.577 1.602.011 1.399-.796C5.76.617 7.13.125 7.574 1.018c.37.747 1.501.55 1.59-.277'/%3E%3C/svg%3E");
}
.opt__img svg {
  width: 100%;
}

@media (min-width: 1024px) {
  .opt__img {
    width: 40px;
    height: 40px;
    padding: 10px;
  }
}
.category-top {
  position: relative;
  display: flex;
  min-height: 500px;
  border-radius: 30px;
  overflow: hidden;
}
.category-top img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.category-top__inside {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  position: relative;
  min-height: 100%;
  width: 100%;
  padding: 30px 30px 18px 30px;
  color: var(--white);
  background: linear-gradient(180deg, rgba(9, 12, 24, 0) 0.15%, rgba(9, 12, 24, 0.23) 62.74%, rgba(9, 12, 24, 0.71) 99.85%);
}

.category-top__row {
  display: flex;
  align-self: flex-end;
  gap: 20px;
  width: 100%;
  padding-top: 30px;
  overflow-x: auto;
  scrollbar-width: thin;
  border-top: 1px solid var(--white);
}

.category-top__left {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 40px;
}

.category-top__right {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 30px;
}

.category-top__price {
  font-size: var(--size-20-30);
  font-weight: 700;
}

@media (min-width: 768px) {
  .category-top__inside {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 50px 20px;
  }
  .category-top__row {
    grid-column: 1/-1;
  }
  .category-top__left {
    margin-bottom: 0;
    justify-content: flex-end;
    gap: 20px;
  }
  .category-top__right {
    margin-bottom: 0;
    justify-content: flex-end;
    gap: 30px;
  }
}
@media (min-width: 1024px) {
  .category-top__inside {
    padding: 40px 60px 40px 60px;
  }
  .category-top__row {
    gap: 40px;
  }
}
.category-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

@media (min-width: 768px) {
  .category-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1300px) {
  .category-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }
}
.managers {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 40px 20px;
}

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

.manager__phone {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  color: var(--text);
  font-weight: 600;
  text-decoration: none;
}
.manager__phone svg {
  color: var(--blue);
}
.manager__phone:last-child {
  margin-bottom: 0;
}

.manager__position {
  margin-top: 0;
  margin-bottom: 10px;
}

.manager__name {
  margin-top: auto;
  margin-bottom: 20px;
  font-size: var(--size-16-20);
  font-weight: 700;
}

.contacts-top {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  padding: 15px;
  border-radius: 30px;
  overflow: hidden;
}

.contact-row {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px 20px;
}
.contact-row svg {
  grid-row: 1/3;
}

.contact-row__name {
  margin: 0;
  font-size: var(--size-16-20);
  font-weight: 700;
}

.contacts-top__left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.contacts-top__left .phones {
  margin-bottom: 10px;
}
.contacts-top__left .phones:last-child {
  margin-bottom: 0;
}

.contact-row__soc {
  display: flex;
  gap: 10px;
}
.contact-row__soc a {
  display: flex;
  text-decoration: none;
}

.contacts-top__map-map {
  position: relative;
  display: flex;
  aspect-ratio: 821/387;
  border-radius: 30px;
  overflow: hidden;
}

.contacts-top__info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  color: var(--shitty-blue, #004E8B);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.contacts-top__map {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.contacts-top__map .ymaps3--map-container {
  position: absolute;
  inset: 0;
}

.contacts-top__map-map > ymaps3 {
  position: absolute;
  inset: 0;
}

@media (min-width: 768px) {
  .contacts-top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 30px;
  }
  .contact-row__contacts .header-contacts__tel,
  .contact-row .phones__it {
    font-size: 16px;
  }
}
@media (min-width: 1024px) {
  .contacts-top {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    padding: 50px 60px;
  }
}
.page-404 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 30px;
}

.page-404__img {
  display: flex;
  order: -1;
}

.page-404__content {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 570px;
  font-size: var(--size-16-20);
}

@media (min-width: 768px) {
  .page-404 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .page-404__img {
    order: 2;
  }
}
@media (min-width: 1024px) {
  .page-404__img {
    padding-right: 100px;
  }
}
.overflow {
  overflow: hidden;
}

.mb-40-100 {
  margin-bottom: var(--size-40-100);
}

.mb-20-30 {
  margin-bottom: var(--size-20-30);
}

.mb-20-60 {
  margin-bottom: var(--size-20-60);
}

.mb-30-50 {
  margin-bottom: var(--size-30-50);
}

.mb-40-60 {
  margin-bottom: var(--size-40-60);
}

.pt-10-40 {
  padding-top: var(--size-10-40);
}

.pb-40-100 {
  padding-bottom: var(--size-40-100);
}

.pt-40-100 {
  padding-top: var(--size-40-100);
}

.bg-white {
  background-color: var(--white);
}

.bg-sky {
  background-color: var(--sky-blue);
}

.bg-blue {
  background-color: var(--blue);
}

.bg-gradient {
  background-color: var(--blue);
  background: linear-gradient(180deg, #004E8B 0%, #0084BF 100%);
}

table {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid var(--text);
}

.overlay {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(28, 31, 44, 0.63);
  transition: height 0.6s;
  top: 0;
  height: 100%;
  z-index: 3;
}
/*# sourceMappingURL=style.css.map */
