/* Стили для поиска в h-services */
/* При активном поиске показываем только секцию "01", остальные скрыты через JavaScript */
.h-services.search-active [data-srv-section="01"] {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  position: relative !important;
}

.h-services.search-active [data-srv-section="02"],
.h-services.search-active [data-srv-section="03"] {
  display: none !important;
}

.h-services.search-active .h-services__list-col[data-h-search="col2"] {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
  position: relative !important;
}

.h-services.search-active .h-services__list-col[data-h-search="col2"] .h-services__items {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  position: relative !important;
}

.h-services.search-no-results .h-services__list-col[data-h-search="col2"],
.h-services.search-no-results .h-services__list-col[data-h-search="col3"] {
  display: none !important;
}

.h-services__search-empty {
  display: none;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 40px;
}

.h-services.search-no-results .h-services__search-empty {
  display: flex !important;
}

/* Шрифт PP-M для regbox */
@font-face {
  font-family: "PP-M";
  src: url(/wp-content/themes/ava_theme/font/PPNeueMontreal-Medium.otf);
}
@font-face {
  font-family: "PP-M";
  src: url(/wp-content/themes/ava_theme/font/PPNeueMontreal-MediumItalic.otf);
  font-style: italic;
}
@font-face {
  font-family: "PP-M";
  src: url(/wp-content/themes/ava_theme/font/PPNeueMontreal-Bold.otf);
  font-weight: bold;
}
@font-face {
  font-family: "PP-M";
  src: url(/wp-content/themes/ava_theme/font/PPNeueMontreal-BoldItalic.otf);
  font-weight: bold;
  font-style: italic;
}

/* Стили для попапа выбора города (regbox) */

/* Bootstrap grid override */
.rowava {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.colava {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

/* Fancybox override */
.fancybox-slide--html {
  overflow: hidden !important;
}

/* Базовые стили для borders и close кнопки */
.main-sone-borders {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.main-sone-borders .row {
  height: 100%;
}

.main-sone-border {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  border-right: 1px solid rgba(238, 238, 238, 0.4);
}

.main-sone-borders--black .main-sone-border {
  border-right: 1px solid rgba(27, 27, 27, 0.2);
}

.main-sone-borders-row-alter {
  display: none !important;
}

.menu-close,
.globalpop-close {
  position: absolute;
  right: 1.0416666667vw;
  top: 1.0416666667vw;
  width: 1.9791666667vw;
  height: 1.9791666667vw;
  cursor: pointer;
  z-index: 234;
}

.menu-close path,
.globalpop-close path {
  transition: 0.6s;
  transform-style: preserve-3d;
  transform-origin: center;
}

.menu-close:hover path,
.globalpop-close:hover path {
  transform: rotateX(180deg);
}

#regbox {
  width: 100vw !important;
  height: 100dvh !important;
  position: fixed !important;
  display: none;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.regbox-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
  pointer-events: all;
  transform: translateY(-120%);
  transition: 0.6s;
  display: flex;
  justify-content: flex-end;
}

.regbox-inner {
  position: relative;
  height: 100%;
  width: 100%;
  background: #EEE;
  overflow: auto;
  padding-bottom: 1.5625vw;
}

.regbox-inner::-webkit-scrollbar {
  display: none !important;
}

.regbox-svg {
  position: sticky;
  left: 0;
  top: 0;
  width: 100%;
  height: 100dvh;
  margin-bottom: -100dvh;
  pointer-events: none;
}

.regbox-h {
  color: rgb(27, 27, 27);
  font-family: "PP-M";
  font-size: 2.34375vw;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.04em;
  padding-top: 1.5625vw;
  padding-left: 1.0416666667vw;
  margin-bottom: 1.5625vw;
}

.regbox-flex {
  padding-left: 1.0416666667vw;
  padding-right: 1.0416666667vw;
  display: flex;
  flex-direction: column;
  gap: 1.0416666667vw;
  margin-bottom: 1.5625vw;
}

.regbox-flex-word {
  color: rgb(27, 27, 27);
  font-family: "PP-M";
  font-size: 1.5625vw;
  font-weight: 500;
  line-height: 110%;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}

.regbox-flex-cities {
  display: flex;
  flex-direction: column;
  gap: 0.5208333333vw;
}

.regbox-flex-cities a {
  color: rgba(27, 27, 27, 0.4) !important;
  font-family: "PP-M";
  font-size: 1.0416666667vw;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: -0.03em;
  text-align: left;
  transition: 0.6s;
  display: inline-block;
  width: fit-content;
}

.regbox-flex-cities a:hover {
  opacity: 0.5;
}

@media screen and (max-width: 1449px) {
  .regbox-inner {
    padding-bottom: 1.4641288433vw;
  }
  .regbox-svg {
    height: 100dvh;
    margin-bottom: -100dvh;
  }
  .regbox-h {
    font-size: 2.5622254758vw;
    line-height: 100%;
    letter-spacing: -0.04em;
    padding-top: 1.4641288433vw;
    padding-left: 1.4641288433vw;
    margin-bottom: 1.4641288433vw;
  }
  .regbox-flex {
    padding-left: 1.4641288433vw;
    padding-right: 1.4641288433vw;
    gap: 1.4641288433vw;
    margin-bottom: 1.4641288433vw;
  }
  .regbox-flex-word {
    font-size: 1.8301610542vw;
    line-height: 110%;
    letter-spacing: -0.05em;
  }
  .regbox-flex-cities {
    gap: 0.7320644217vw;
  }
  .regbox-flex-cities a {
    font-size: 1.1713030747vw;
    line-height: 120%;
    letter-spacing: -0.03em;
  }
}

@media screen and (max-width: 991px) {
  .regbox-inner .main-sone-border {
    border-right: 1px solid rgba(27, 27, 27, 0.1);
  }
  .regbox-inner .main-sone-borders {
    position: sticky;
    margin-top: -100vh;
    height: 100vh;
  }
  .regbox-svg {
    width: 97.3958333333vw;
    left: 1.3020833333vw;
  }
  .regbox-inner {
    padding-bottom: 0;
  }
  .regbox-svg {
    height: 100dvh;
    margin-bottom: -100dvh;
  }
  .regbox-h {
    font-size: 4.5572916667vw;
    line-height: 100%;
    letter-spacing: -0.04em;
    padding-top: 2.6041666667vw;
    padding-left: 1.3020833333vw;
    margin-bottom: 2.6041666667vw;
  }
  .regbox-flex {
    padding-left: 1.3020833333vw;
    padding-right: 1.3020833333vw;
    gap: 2.6041666667vw;
    margin-bottom: 2.6041666667vw;
  }
  .regbox-flex-word {
    font-size: 3.2552083333vw;
    line-height: 110%;
    letter-spacing: -0.05em;
  }
  .regbox-flex-cities {
    gap: 1.3020833333vw;
  }
  .regbox-flex-cities a {
    font-size: 2.0833333333vw;
    line-height: 120%;
    letter-spacing: -0.03em;
  }
}

@media screen and (max-width: 575px) {
  .regbox-inner .main-sone-border {
    border-right: 1px solid rgba(27, 27, 27, 0.1);
  }
  .regbox-svg {
    width: 94.4444444444vw;
    left: 2.7777777778vw;
  }
  .regbox-inner {
    padding-bottom: 0;
  }
  .regbox-svg {
    height: 100dvh;
    margin-bottom: -100dvh;
  }
  .regbox-h {
    font-size: 6.9444444444vw;
    line-height: 100%;
    letter-spacing: -0.04em;
    padding-top: 5.5555555556vw;
    padding-left: 2.7777777778vw;
    margin-bottom: 11.1111111111vw;
  }
  .regbox-flex {
    padding-left: 2.7777777778vw;
    padding-right: 2.7777777778vw;
    gap: 5.5555555556vw;
    margin-bottom: 8.3333333333vw;
  }
  .regbox-flex-word {
    font-size: 5.5555555556vw;
    line-height: 110%;
    letter-spacing: -0.05em;
  }
  .regbox-flex-cities {
    gap: 2.7777777778vw;
  }
  .regbox-flex-cities a {
    font-size: 3.8888888889vw;
    line-height: 120%;
    letter-spacing: -0.03em;
  }
  .main-sone-borders-row {
    display: none !important;
  }
  .main-sone-borders-row-alter {
    display: flex !important;
  }
  .main-sone-border-alter-l {
    width: 2.7777777778vw;
    right: auto;
    left: 0;
  }
  .main-sone-border-alter-r {
    width: calc(100% - 2.7777777778vw);
    right: auto;
    left: 0;
  }
}

@media screen and (max-width: 1449px) {
  .menu-close,
  .globalpop-close {
    right: 1.4641288433vw;
    top: 1.4641288433vw;
    width: 2.7818448023vw;
    height: 2.7818448023vw;
  }
}

@media screen and (max-width: 991px) {
  .main-sone-borders-row {
    display: none !important;
  }
  .main-sone-borders-row-alter {
    display: flex !important;
  }
  .main-sone-border-alter-l {
    width: 1.3020833333vw;
    right: auto;
    left: 0;
  }
  .main-sone-border-alter-r {
    width: calc(100% - 1.3020833333vw);
    right: auto;
    left: 0;
  }
  .menu-close,
  .globalpop-close {
    right: 1.3020833333vw;
    top: 2.6041666667vw;
    width: 4.9479166667vw;
    height: 4.9479166667vw;
  }
}
