@font-face {
  font-family: 'Golos Text';
  src: local('GolosText Regular'), local('GolosText-Regular'),
    url('../fonts/GolosText-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Golos Text';
  src: local('GolosText Medium'), local('GolosText-Medium'),
    url('../fonts/GolosText-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'Golos Text';
  src: local('GolosText SemiBold'), local('GolosText-SemiBold'),
    url('../fonts/GolosText-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Golos Text';
  src: local('GolosText Bold'), local('GolosText-Bold'),
    url('../fonts/GolosText-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

:root {
  --font-family: 'Golos Text', sans-serif;
  --color-primary: #1E1E1E;
  --color-secondary: #5A5A5A;
  --color-tetriary: #B3B3B3;
  --color-white: #FFFFFF;
  --color-orange: #FF6A13;
  --color-violet: #9F12FF;

  --bg-white: #FFFFFF;
  --bg-primary: #1E1E1E;
  --bg-primary-hover: #434343; 
  --bg-secondary: #F2F2F7;
  --bg-disabled: #E6E6E6;
  --bg-orange: #FF6A13;
  --bg-orange-hover: #E05A0C;
  --bg-violet: #9F12FF;
  --bg-overlay: rgba(0, 0, 0, 0.5);

  --border-color-primary: #1E1E1E;
  --border-color-secondary: #D9D9D9;
  --border-color-hover: #B3B3B3;
  --border-color-white: #FFFFFF;
  --border-color-orange: #FF6A13;

  --trans-10: 0.1s ease-in-out;
  --trans-15: 0.15s ease-in-out;
  --trans-20: 0.2s ease-in-out;
  --trans-25: 0.25s ease-in-out;
  --trans-aside: .3s ease-out;

  --animation-timing: 1.5s;
}

*,
*::after,
*::before {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding: 100px;
}
body {
  margin: 0;
  font-family: var(--font-family);
  -webkit-font-family: var(--font-family);
  font-weight: 400;
  font-size: 16px;
  color: var(--color-primary);

  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main {
  flex: 1;
}
h1,
h2,
h3,
h4 {
  margin: 0;
}
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  color: inherit;
}
a:hover {
  color: inherit;
}
p {
  margin: 0;
}
button {
  font-family: inherit;
  background-color: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: inherit;
}
button:focus {
  outline: none;
}
svg,
svg path {
  transition: var(--trans-15);
}
input {
  background-color: transparent;
  border: 0;
}
input:focus-visible,
textarea:focus-visible {
  outline: none;
}
address {
  margin: 0;
}
section {
  position: relative;
  padding: 100px 0;
}
form {
  margin: 0;
}
/* common */
.container {
  margin: 0 auto;
  padding: 0 40px;
  max-width: 1920px;
}
.title {
  font-weight: 500;
  font-size: 64px;
  line-height: 119%;
}
.c-orange {
  color: var(--color-orange);
}
.c-violet {
  color: var(--color-violet);
}
.c-white {
  color: var(--color-white);
}
.centered {
  display: flex;
  align-items: center;
  justify-content: center;
}
.cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contain {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.dropdown-menu {
  padding: 0;
  border: 0;
}
.row {
  --bs-gutter-x: 2.4rem;
}

/* buttons */
.button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  border-radius: 8px;
  transition: var(--trans-15);
  font-family: var(--font-family);
  font-weight: 600;
  font-size: 18px;
  line-height: 100%;
}
.button:not(.f-w) {
  width: 258px;
}
.button.f-w {
  width: 100%;
}
.orange-btn {
  background: var(--bg-orange);
  color: var(--color-white);
}
.orange-btn:hover,
.orange-btn:focus-visible {
  background: var(--bg-orange-hover);
  color: var(--color-white);
}
.orange-btn:disabled {
  background: var(--bg-disabled);
  color: var(--color-tetriary);
}

.black-btn {
  background: var(--bg-primary);
  color: var(--color-white);
}
.black-btn:hover,
.black-btn:focus-visible {
  background: var(--bg-primary-hover);
  color: var(--color-white);
}
.black-btn:disabled {
  background: var(--bg-disabled);
  color: var(--color-tetriary);
}

.orange-border-btn {
  background: transparent;
  color: var(--color-orange);
  border: 2px solid var(--border-color-orange);
}
.orange-border-btn:hover,
.orange-border-btn:focus-visible {
  background: var(--bg-orange-hover);
  color: var(--color-white);
  border-color: var(--bg-orange-hover);
}
.orange-border-btn:disabled {
  background: transparent;
  color: var(--color-tetriary);
  border-color: var(--border-color-secondary);
}

.black-border-btn {
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--border-color-primary);
}
.black-border-btn:hover,
.black-border-btn:focus-visible {
  background: var(--bg-primary-hover);
  color: var(--color-white);
  border-color: var(--bg-primary-hover);
}
.black-border-btn:disabled {
  background: transparent;
  color: var(--color-tetriary);
  border-color: var(--border-color-secondary);
}

/* Select */
.select > p {
  margin-bottom: 8px;
  font-size: 21px;
  line-height: 119%;
}
.select .input-wrapper::after {
  content: '';
  position: absolute;
  right: 16px;
  top: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background-image: url('../images/icons/select-trigger.svg');
  background-repeat: no-repeat;
  background-position: center center;
  transition: var(--trans-10);
}
.select .show .input-wrapper::after {
  transform: translateY(-2px) rotate(180deg);
}
.select-menu {
  padding: 8px 12px 8px 8px;
  height: 160px;
  border: 1px solid var(--border-color-secondary);
  border-radius: 8px;
  background: var(--bg-white);
  inset: 0px 0 auto 0 !important;
}
.select-list {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: auto;
  padding-right: 17px;
}
.no-scroll-select-menu {
  height: auto;
}
.no-scroll-select-menu .select-list {
  padding: 0;
}
.select-list::-webkit-scrollbar {
  width: 6px;
  border-radius: 12px;
}
.select-list::-webkit-scrollbar-track {
  background-color: var(--bg-secondary);
  border-radius: 12px;
}
.select-list::-webkit-scrollbar-thumb {
  background-color: var(--bg-primary);
  border-radius: 12px;
}
.select-list li {
  width: 100%;
}
.select-list li button {
  width: 100%;
  text-align: start;
  line-height: 131%;
  padding: 13.5px 16px;
  transition: var(--trans-15);
}
.select-list li:not(:last-child) button {
  border-bottom: 1px solid var(--border-color-secondary);
}
.select-list li button:hover,
.select-list li button:focus-visible {
  background: var(--bg-secondary);
}

/* Slide Arrows */
.splide__arrow {
  width: 100px;
  height: 100px;
  background-color: var(--bg-primary);
  opacity: 1;
  background-size: 15px 20px;
  background-repeat: no-repeat;
  background-position: center center;
  transition: var(--trans-15);
  top: 48%;
}
.splide__arrow:disabled {
  visibility: hidden;
}
.splide__arrow--next {
  background-image: url('../images/icons/slide-arrow-next.svg');
  right: 0;
}
.splide__arrow--prev {
  background-image: url('../images/icons/slide-arrow-prev.svg');
  left: 0;
}
.splide__arrow:hover,
.splide__arrow:focus-visible {
  background-color: var(--bg-primary-hover);
  opacity: 1;
}

/* Slider Shadows */
.shadows::after,
.shadows::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 153px;
  opacity: 0;
  visibility: hidden;
  transition: var(--trans-25);
}
.shadows::after {
  right: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
}
.shadows::before {
  z-index: 1;
  left: 0;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
}
.shadows.shadow-right::after {
  opacity: 1;
  visibility: visible;
}
.shadows.shadow-left::before {
  opacity: 1;
  visibility: visible;
}

/* Aside */
.offcanvas {
  border: none;
}
.aside {
  height: 100vh;
  overflow: auto;
  background-color: var(--bg-white);
}
.aside::-webkit-scrollbar {
  display: none;
}
.aside-close {
  position: absolute;
  top: 8px;
  right: 8px;
}
.aside-image {
  width: 100%;
  height: 445px;
}

/* Form */
.form-fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.form-fields-group {
  display: flex;
  gap: 16px;
  width: 100%;
}
.form-fields-group .input-wrapper {
  flex: 1;
}

/* input */
.input-wrapper {
  position: relative;
}
.input-wrapper input {
  padding: 0 16px;
  width: 100%;
  height: 64px;
  border: 1px solid var(--border-color-secondary);
  border-radius: 8px;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 16px;
  line-height: 100%;
  color: var(--color-primary);
  background: var(--bg-white);

  transition: var(--trans-15);
}
.input-wrapper input::placeholder {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 16px;
  line-height: 100%;
  color: var(--color-tetriary);
}
.input-wrapper input:not(:read-only):focus-visible {
  border-color: var(--border-color-primary);
}
.input-wrapper input:read-only {
  cursor: pointer;
}
.checkbox + label.error,
.input-wrapper label.error {
  display: block;
  text-align: start;
  color: #ff1e1e;
  font-size: 14px;
}
.checkbox + label.error {
  margin: -14px 0 0 32px;
}
.checkbox + label.error {
  margin-top: -16px;
}

/* checkbox */
.checkbox {
  display: flex;
  align-items: center;
}
.checkbox input {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  user-select: none;
}
.checkbox input + label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  line-height: 125%;
  color: var(--color-secondary);
}
.checkbox input + label a {
  text-decoration: underline;
}
.checkbox input + label::before {
  content: '';
  display: block;
  flex-shrink: 0;
  margin-right: 8px;
  width: 24px;
  height: 24px;
  background-color: var(--bg-white);
  border-radius: 2px;
}
.checkbox input:checked + label::before {
  background-image: url('../images/icons/checked.svg');
  background-repeat: no-repeat;
  background-size: 16px 14px;
  background-position: center;
}

/* modals */
.modal .modal-dialog {
  max-width: 758px;
}
.sm-modal .modal-dialog {
  max-width: 580px;
}
.modal .modal-content {
  background: var(--bg-white);
}
.modal .modal-body {
  display: flex;
  flex-direction: column;
  gap: 48px;
  padding: 40px;
}
.modal-close {
  position: absolute;
  z-index: 2;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 8px;
  right: 8px;
}
.modal-title {
  font-weight: 600;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.callback-modal-head {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.callback-modal-head p {
  font-size: 21px;
  line-height: 120%;
}

/* header */
.header {
  position: fixed;
  z-index: 10;
  inset: 0 0 auto 0;
  height: 98px;
  background-color: var(--bg-white);
}
.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header-left {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 16px;
  width: 267px;
}
.header-location-btn {
  padding-bottom: 10px;
}
.header-nav ul {
  display: flex;
  align-items: center;
  gap: 48px;
}
.header-nav ul li a {
  font-weight: 600;
  font-size: 18px;
  line-height: 100%;
}
.burger {
  display: none;
}

/* Hero */
.hero-head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
}
.hero-head-top,
.hero-head-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.slide-in-left {
  animation: slideInLeft var(--animation-timing) ease-in-out;
}
.slide-in-right {
  animation: slideInRight var(--animation-timing) ease-in-out;
}
.slide-in-up {
  animation: slideInUp var(--animation-timing) ease-in-out;
}
.slide-in-down {
  animation: slideInDown var(--animation-timing) ease-in-out;
}
.fade-in {
  animation: fadeIn var(--animation-timing) ease-in-out;
}

@keyframes slideInLeft {
  0% {
    transform: translateX(-100%);
  }
  20% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  0% {
    transform: translateX(100%);
  }
  20% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes slideInUp {
  0% {
    transform: translateY(120%);
  }
  20% {
    transform: translateY(120%);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes slideInDown {
  0% {
    transform: translateY(-120%);
  }
  20% {
    transform: translateY(-120%);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.hero-head-title {
  font-weight: 500;
  font-size: clamp(1px, 9.38vw, 180px);
  line-height: 100%;
  letter-spacing: -0.033em;
  text-transform: uppercase;
}
.hero-head-top-icon {
  max-width: 177px;
  width: 9.219vw;
  height: auto;
}
.hero-head-bottom {
  padding-right: 5px;
}
.hero-head-bottom-icons {
  display: flex;
  gap: 24px;
}
.hero-head-bottom-icon {
  max-width: 135px;
  width: 7.032vw;
  height: auto;
}
.hero-head {
  margin-bottom: 40px;
}
.inline-info-block {
  padding: 40px 50px 0 50px;
  height: 100%;
  background: #f2f2f7;
}
.inline-info-block p {
  margin-bottom: 32px;
  font-size: 21px;
  line-height: 119%;
  color: #000;
}
.inline-info-block ul {
  list-style: disc;
  padding-left: 46px;
}
.inline-info-block ul li::marker {
  font-size: 28px;
}
.inline-info-block ul li {
  font-size: 32px;
  line-height: 150%;
}
.inline-info-block .title {
  margin-bottom: 20px;
}
.inline-info-secondary .inline-info-block {
  padding-bottom: 40px;
}
.inline-info-secondary .inline-info-image {
  height: 100%;
}

/* Stats */
.stats-title {
  font-weight: 500;
  font-size: clamp(1px, 8.34vw, 160px);
  line-height: 104%;
  letter-spacing: -0.06em;
}

/* Vacancies */
.vacancy {
  position: relative;
  display: flex;
  align-items: flex-end;
  height: 41.354vw;
  max-height: 794px;
  cursor: pointer;
  background-size: cover;
  background-position: center;
}
.vacancy-footer {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 24px;
  width: 100%;
  height: 181px;
  background: rgba(0, 0, 0, 0.75);
}
.vacancy-name {
  font-weight: 600;
  font-size: 48px;
  line-height: 100%;
  color: var(--color-white);
  max-width: 256px;
}
.vacancy-footer-details {
  font-weight: 400;
  font-size: 21px;
  line-height: 119%;
  text-align: right;
  color: var(--color-white);
}

.vacancy-aside {
  width: 996px;
}
.vacancy-aside-image {
  margin-bottom: 32px;
}
.vacancy-aside-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 0 40px 40px 40px;
}
.vacancy-aside-name {
  margin-bottom: 12px;
}
.vacancy-aside-salary {
  font-weight: 600;
  font-size: 48px;
  line-height: 100%;
}
.vacancy-aside-descr {
  line-height: 131%;
}
.vacancy-aside-conditions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}
.vacancy-aside-condition {
  display: flex;
  align-items: center;
  padding: 17px 12px;
  border-radius: 8px;
  background: var(--bg-secondary);
  font-weight: 600;
  font-size: 24px;
  line-height: 125%;
  letter-spacing: -0.01em;
}
.vacancy-aside-responsibilities ul {
  list-style: disc;
  padding-left: 20px;
}

/* Join */
#join {
  background: var(--bg-secondary);
}
.join-wrapper {
  display: flex;
  gap: 40px;
}
.join-title {
  width: 587px;
}
.join-form {
  width: 586px;
}

/* Calculate */
#calculate {
  background: var(--bg-orange);
}
.calculate-total-block {
  margin-bottom: 20px;
  padding: 16px 24px;
  border-radius: 8px;
  background: var(--bg-white);
}
.calculate-total-block span {
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
  font-size: 24px;
  line-height: 125%;
  letter-spacing: -0.01em;
}
.calculate-total-block p {
  font-weight: 500;
  font-size: 80px;
  line-height: 103%;
  letter-spacing: -0.05em;
}
.calculate-friend {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 20px;
}
.calculate-friend span {
  font-size: 21px;
  line-height: 119%;
}
.calculate-friend span b {
  font-weight: 600;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
}
.calculate-friend .checkbox label::before {
  width: 20px;
  height: 20px;
  margin-top: 5px;
}

/* U-Can */
.u-can-title {
  margin-bottom: 48px;
}
.u-can-item {
  display: flex;
  gap: 40px;
}
.u-can-item-image {
  width: 46.5%;
  flex-shrink: 0;
}
.u-can-item-body {
  padding: 20px 20px 0 30px;
}
.u-can-item-title {
  margin-bottom: 13px;
  font-weight: 600;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
}
.u-can-item-title-descr {
  font-weight: 400;
  font-size: 21px;
  line-height: 119%;
  max-width: 190px;
}

/* Stories */
#stories {
  overflow: hidden;
}
.stories-wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.stories-title {
  margin-bottom: 38px;
}
.stories-line {
  width: 100vw;
  overflow: hidden;
  cursor: pointer;
}
.stories-line-list {
  width: max-content;
  display: flex;
  gap: 16px;
}
.stories-line-item {
  display: flex;
  align-items: center;
  gap: 16px;
}
.stories-line-item-title {
  font-weight: 500;
  font-size: 180px;
  line-height: 100%;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}
.stories-line-item-image {
  width: 231px;
  height: 130px;
}
.story-aside {
  width: 907px;
}
.story-aside-image {
  margin-bottom: 28px;
}
.story-aside-body {
  display: flex;
  flex-direction: column;
  gap: 28px;
  padding: 0 40px 40px 40px;
  font-size: 21px;
  line-height: 119%;
}
.story-aside-body img {
  width: 554px;
  height: 385px;
  object-fit: contain;
  object-position: left;
}
.story-aside-body p {
  font-size: 21px;
  line-height: 119%;
}

.vacancies-modal-address {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border-color-secondary);
}
.vacancies-modal-address p {
  font-size: 21px;
  line-height: 119%;
  color: var(--color-secondary);
}
.vacancies-modal-list .modal-title {
  margin-bottom: 20px;
}
.vacancies-modal-list ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.vacancies-modal-list ul li {
  display: flex;
  justify-content: space-between;
}
.vacancies-modal-list ul li span:first-of-type {
  font-size: 21px;
  line-height: 119%;
  color: var(--color-secondary);
  cursor: pointer;
}
.vacancies-modal-list ul li span:last-of-type {
  font-weight: 600;
  font-size: 24px;
  line-height: 125%;
  letter-spacing: -0.01em;
}

/* Advantages */
.advantages-nav {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 8px;
  padding-right: 54px;
}
.advantages-nav-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 60px;
  padding: 0 16px;
  border-bottom: 1px solid var(--border-color-secondary);
  transition: var(--trans-15);
}
.advantages-nav-item h4 {
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
}
.advantages-nav-item p {
  opacity: 0;
  font-size: 0;
  color: var(--color-white);
}
.advantages-nav-item.active {
  padding-left: 32px;
  height: 169px;
  background-color: var(--bg-orange);
  border-radius: 12px;
}
.advantages-nav-item.active h4 {
  font-size: 67px;
  margin-bottom: 6px;
  color: var(--color-white);
}
.advantages-nav-item.active p {
  opacity: 1;
  font-size: 21px;
}
.tab-pane {
  padding-left: 20px;
}
.advantages-image {
  max-width: 600px;
}

/* Videos */
.video {
  position: relative;
  height: 386px;
}
.video-play {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Locations */
#map {
  height: 575px;
  background-color: var(--bg-secondary);
}

/* FAQ */
.faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.faq-accordion-item {
  border-bottom: 1px solid var(--border-color-secondary);
}
.faq-accordion-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  width: 100%;
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
}
.faq-accordion-btn:not(.collapsed) svg {
  transform: rotate(180deg);
}
.faq-accordion-body {
  padding-bottom: 16px;
  line-height: 125%;
  color: var(--color-secondary);
}

/* Feedback */
#feedback {
  padding: 100px 0 70px;
  background: linear-gradient(180deg, #ff6a13 0%, #9812ff 64.9%, #f4e6ff 100%);
}
.feedback-wrapper {
  display: flex;
  gap: 16px;
}
.feedback-form-wrapper {
  margin-left: auto;
  width: 566px;
  flex-shrink: 0;
}
.feedback-actions {
  display: flex;
  gap: 13px;
}
.feedback-file {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}
.feedback-file input {
  cursor: pointer;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  opacity: 0;
}
.feedback-file button {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-color: var(--bg-white);
}
.feedback-file span {
  width: 100px;
  overflow-wrap: anywhere;
  font-size: 14px;
  line-height: 120%;
  color: var(--color-white);
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* Footer */
#footer {
  padding: 64px 0 24px;
}
.footer-inner {
  display: flex;
  flex-direction: column;
  gap: 48px;
}
.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-logo {
  width: 160px;
  height: 56px;
}
.footer-contacts {
  display: flex;
  align-items: center;
  gap: 32px;
}
.footer-phone {
  font-weight: 400;
  font-size: 32px;
  line-height: 120%;
  text-align: center;
}
.footer-socials {
  display: flex;
  align-items: center;
  gap: 16px;
}
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-bottom-links {
  display: flex;
  flex-direction: column;
}
.footer-botom-links a {
  line-height: 125%;
  color: var(--color-secondary);
}
.footer-coopyright {
  line-height: 125%;
  text-align: right;
}
.footer-coopyright b {
  font-weight: 600;
}

/* Overlay */
#overlay {
  position: fixed;
  inset: 0;
  background-color: var(--bg-overlay);
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transition: var(--trans-aside);
}
#overlay.visible {
  opacity: 1;
  visibility: visible;
}

/* Locations */
.locations-aside {
  width: 1153px;
}
.locations-aside-content {
  display: flex;
  flex-direction: column;
  padding: 8px 40px 0 40px;
  width: 100%;
  background-color: var(--bg-white);
}
.locations-aside.visible {
  transform: none;
}
.locations-aside-close {
  margin-left: auto;
  margin-bottom: 8px;
}
.locations-aside-search {
  width: 100%;
  margin-bottom: 24px;
}
.locations-aside-search input {
  padding: 0 16px;
  height: 50px;
  width: 100%;
  background: var(--bg-secondary);
}
.locations-aside-list {
  height: calc(100vh - 106px);
  padding-bottom: 40px;
  padding-right: 8px;
}
.locations-aside-table {
  display: flex;
  gap: 16px;
  height: 100%;
  overflow: auto;
}
.locations-aside-table::-webkit-scrollbar {
  width: 6px;
  border-radius: 12px;
}
.locations-aside-table::-webkit-scrollbar-track {
  background-color: var(--bg-secondary);
  border-radius: 12px;
}
.locations-aside-table::-webkit-scrollbar-thumb {
  background-color: var(--bg-primary);
  border-radius: 12px;
}
.locations-aside-table-cell {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.locations-aside-table-group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-left: 38px;
}
.locations-aside-table.serched {
  flex-direction: column;
  gap: 0;
}
.locations-aside-table.serched .locations-aside-table-cell {
  flex: 0;
}
.locations-aside-letter {
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-orange);
}
.locations-aside-item {
  text-align: start;
  width: max-content;
  transition: var(--trans-15);
}
.locations-aside-item:hover {
  color: var(--color-orange);
}
.cluster-icon {
  width: 42px;
  height: 42px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 8px;
  background: var(--bg-orange);
  color: var(--color-white);
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
}
.geo-modal-btns {
  display: flex;
  gap: 14px;
}
.bx-aside-nav {
  display: none !important;
}
.not-found-titles {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.not-found-title-wrapper {
  display: flex;
  justify-content: space-between;
  padding-top: 24px;
}
.not-found-title {
  font-weight: 500;
  font-size: 9.4vw;
  line-height: 100%;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}

#u-can {
  scroll-margin-top: -5px;
}

.not-found-icon {
  width: 9.115vw;
  height: auto;
}
.not-found-icons {
  display: flex;
  gap: 50px;
}
.not-found-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
}
.not-found-descr {
  font-weight: 400;
  font-size: 21px;
  line-height: 119%;
}
.cookie {
  position: fixed;
  inset: auto 40px 40px 40px;
  background-color: white;
  padding: 40px;
  box-shadow: 0 6px 15px 0 rgba(158, 169, 174, 0.2);
  border: 1px solid black;
}
.cookie button {
  position: absolute;
  top: 8px;
  right: 8px;
}
.cookie p {
  font-size: 21px;
  line-height: 119%;
}
#tg-bot {
  padding-top: 0px;
}
.tg-bot-title {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
}
.tg-bot-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 566px;
  height: 64px;
  border-radius: 8px;
  background-color: #28A8E9;
  color: var(--color-white) !important;
  font-weight: 600;
  font-size: 18px;
  transition: var(--trans-15);
}
.tg-bot-link:hover {
  opacity: .9;
}
.feedback-policy-descr {
  margin-top: 21px;
  font-size: 12px;
  line-height: 120%;
  color: var(--color-white);
}
.feedback-policy-descr a {
  text-decoration: underline;
}
.float-tg {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 1;
  width: 60px;
  height: 60px;
  transition: var(--trans-15);
}
.float-tg:hover {
  opacity: .9;
}
.float-tg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}