/* @font-face {
  font-family: Cambria;
  src: url(../fonts/Cambria\ Lite_.ttf);
} */

* {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;

  font-style: normal;
}

html {
  font-size: 16px;
  min-height: 100vh;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

a {
  text-decoration: none;
}

:root {
  --main: #A3686A;
  --font-size: 16px;
  --orange: #F07E01;
  --violet: #3B2B98;
  --blue: #01A3D4;
  --green: #00A65A;
  --pink: #AB4986;
  --brown: #C66835;
  --red: #DF2A1F;
  --gray: #E5DFDF;
  --white: #ffffff;
}

.main-color {
  color: var(--main);
}


.main-color-i {
  color: var(--main) !important;
}

.black {
  color: var(--black);
}

.orange {
  color: var(--orange);
}

.violet {
  color: var(--violet);
}

.blue {
  color: var(--blue);
}

.green {
  color: var(--green);
}

.pink {
  color: var(--pink);
}

.brown {
  color: var(--brown);
}

.red {
  color: var(--red);
}

.gray {
  color: var(--gray);
}

.white {
  color: var(--white);
}

.active-bc>* {
  color: var(--white) !important;
}

.bg-main-color {
  background-color: var(--main);
}

.bg-orange {
  background-color: var(--orange);
}

.bg-violet {
  background-color: var(--violet);
}

.bg-blue {
  background-color: var(--blue);
}

.bg-green {
  background-color: var(--green);
}

.bg-pink {
  background-color: var(--pink);
}

.bg-brown {
  background-color: var(--brown);
}

.bg-red {
  background-color: var(--red);
}

.bg-gray {
  background-color: var(--gray);
}

.bg-white {
  background-color: var(--white);
}

.border-radius-6px {
  border-radius: 6px;
}

.border-radius-4px {
  border-radius: 4px;
}

.fs-6px {
  font-size: 6px;
}

.fs-7px {
  font-size: 7px;
}

.fs-8px {
  font-size: 8px;
}

.fs-9px {
  font-size: 9px;
}

.fs-10px {
  font-size: 10px;
}

.fs-11px {
  font-size: 11px;
}

.fs-12px {
  font-size: 12px;
}

.fs-13px {
  font-size: 13px;
}

.fs-14px {
  font-size: 14px;
}

.fs-15px {
  font-size: 15px;
}

.fs-16px {
  font-size: 16px;
}

.fs-17px {
  font-size: 17px;
}

.fs-18px {
  font-size: 18px;
}

.fs-19px {
  font-size: 19px;
}

.fs-20px {
  font-size: 20px;
}

.fs-21px {
  font-size: 21px;
}

.fs-22px {
  font-size: 22px;
}

.fs-23px {
  font-size: 23px;
}

.fs-24px {
  font-size: 24px;
}

.fs-25px {
  font-size: 25px;
}

.fs-26px {
  font-size: 26px;
}

.fs-27px {
  font-size: 27px;
}

.fs-28px {
  font-size: 28px;
}

.fs-29px {
  font-size: 29px;
}

.fs-30px {
  font-size: 30px;
}

.fs-31px {
  font-size: 31px;
}

.fs-32px {
  font-size: 32px;
}

.fw-100 {
  font-weight: 100;
}

.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

.fw-900 {
  font-weight: 900;
}

.fw-1000 {
  font-weight: 1000;
}

.border-main-color-1px {
  border: 1px solid var(--main);
}

.border-orange-1px {
  border: 1px solid var(--orange);
}

.border-violet-1px {
  border: 1px solid var(--violet);
}

.border-blue-1px {
  border: 1px solid var(--blue);
}

.border-green-1px {
  border: 1px solid var(--green);
}

.border-pink-1px {
  border: 1px solid var(--pink);
}

.border-brown-1px {
  border: 1px solid var(--brown);
}

.border-red-1px {
  border: 1px solid var(--red);
}

.border-gray-1px {
  border: 1px solid var(--gray);
}

.border-white-1px {
  border: 1px solid var(--white);
}

.border-main-color-2px {
  border: 2px solid var(--main);
}

.border-orange-2px {
  border: 2px solid var(--orange);
}

.border-violet-2px {
  border: 2px solid var(--violet);
}

.border-blue-2px {
  border: 2px solid var(--blue);
}

.border-green-2px {
  border: 2px solid var(--green);
}

.border-pink-2px {
  border: 2px solid var(--pink);
}

.border-brown-2px {
  border: 2px solid var(--brown);
}

.border-red-2px {
  border: 2px solid var(--red);
}

.border-gray-2px {
  border: 2px solid var(--gray);
}

.border-white-2px {
  border: 2px solid var(--white);
}

.label-element-0 {
  padding: 0;
  border-radius: 6px;
}

.label-element {
  padding: 6px 10px;
  border-radius: 6px;
}

.label-element-2 {
  padding: 3px 6px;
  border-radius: 6px;
}

.label-element-3 {
  padding: 4px 8px;
  border-radius: 6px;
}

.header-gap {
  gap: 10px;
}

.menu-gap {
  gap: 8px;
}

.icons-gap {
  gap: 6px;
}

.logo-text {
  font-size: 20px;
}

.logo-header-image {
  height: 32px;
}

.place-order-link {}

.menu-icon-link>img {
  max-height: 20px;
}

.menu-icon-link>svg {
  height: 20px;
}

.language-link {
  border-radius: 50%;
  height: 20px;
  width: 20px;
  min-height: 20px;
  min-width: 20px;
  max-height: 20px;
  max-width: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.active-language {
  background-color: var(--main);
  color: var(--white);
}

.mobile-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  max-width: 0 !important;
  background-color: var(--white);
  position: fixed;
  overflow: hidden;
  z-index: 999;
}

.show-mobile-menu {
  max-width: 100% !important;
}

.account-menu {
  max-height: 0;
  overflow: hidden;
  min-width: 100%;
  background-color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: .1s;
  position: absolute;
  top: 24px;
  right: 0;
}

.account-menu>a {
  padding: 4px;
  color: var(--main);
}

.show-account-menu {
  max-height: 300px !important;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
  border: 1px solid var(--main);
}

.account-burger {
  cursor: pointer;
  transition: .1s;
}

.swiper-container {
  width: 100%;
  height: auto;
}

.category-slide {
  min-height: 300px;
  border-radius: 6px;
  background-position: bottom right;
  background-size: auto 240px;
  background-repeat: no-repeat;
  width: 100%;
  display: flex;
  flex-direction: column;
  color: #000;
}

.slide-description>h2 {}

.rating-picture {
  max-width: 40px;
}

.w-max-content {
  width: max-content;
}

.mt-60px {
  margin-top: 60px;
}

#header {
  z-index: 1000;
  width: 100%;
}

#header.sticky {
  position: fixed;
  top: 0;
  left: 0;
  background-color: white;
  /* Можно изменить на нужный цвет */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  /* Тень для визуального эффекта */
  z-index: 1000;
  /* Убедитесь, что `header` выше других элементов */
}

.banner-background {
  background-color: var(--main);
  width: 100%;
  border-radius: 15px;

  display: flex;
}

.shops-background {
  border-radius: 15px;
  min-height: 80px;
  display: flex;
  flex-direction: row;
}

.shops-background>.icon-section {
  width: 30%;
  border-right: 1px solid var(--white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 80px;
}

.shops-background>.text-section {
  display: flex;
  height: 100%;
  min-height: 80px;
  align-items: center;
  padding-left: 8px;
  color: var(--white);
}

.shops-background>.text-section>h4 {
  margin: auto;
}

.arrow-container {
  border-right: 1px solid var(--white);
}

.arrow-container>img {
  height: 20px;
}

.cg-4px {
  column-gap: 4px;
}

.cg-6px {
  column-gap: 6px;
}

.gap-4px {
  gap: 4px;
}

.gap-8px {
  gap: 8px;
}

.gap-12px {
  gap: 12px;
}

.gap-16px {
  gap: 16px;
}

.gap-20px {
  gap: 20px;
}

.gap-2px {
  gap: 2px;
}

.up-company-logo {
  width: 100%;
  height: auto;
  max-width: 60px;
}

.master-body {
  max-height: 120px;
  overflow: hidden;
  position: relative;
  flex-grow:1;
}

.full-master-body {
  max-height: 9999px !important;
}

.read-more {
  position: absolute;
  bottom: 0;
  right: 0;
  background: var(--white);
  border: 0;
  text-decoration: underline;
}

.round-phone {
  display: flex;
  flex-direction: row;
  align-items: center;
  border: 1px solid var(--main);
  border-radius: 15px;
  gap: 6px;
  color: #000000;
}

.round-phone>img {
  height: 30px;
}


.round-phone>span {
  color: #000000;
  margin-right: 8px;
}

.social-link>img {
  height: 30px;
}

.price-block {}

.shadowed {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1),
    /* Нижняя тень */
    0 -1px 1px rgba(0, 0, 0, 0.05),
    /* Верхняя тень */
    1px 0 1px rgba(0, 0, 0, 0.05),
    /* Правая тень */
    -1px 0 1px rgba(0, 0, 0, 0.05);
  /* Левая тень */
}

.master-card-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 150px;
  position: relative;
  overflow: hidden;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

.vip-label {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background-color: var(--white);
  border-radius: 4px;
  padding: 4px;
}

.checked-master {
  position: absolute;
  top: 2%;
  left: 2%;
  min-height: 22px;
  min-width: 22px;
  background-color: var(--white);
  border-radius: 11px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.checked-master>img {
  height: 16px;
}

.overflow-hidden {
  overflow: hidden;
}

.like-button {
  min-height: 22px;
  min-width: 22px;
  border: none;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: .2rem;
  right: 1rem;
  padding: 0;
}

.like-button>svg:last-child {
  display: none;
}

.added-master>svg:first-child {
  display: none;
}

.added-master>svg:last-child {
  display: block;
}

.icons-row>img {
  height: 14px;
}

.gap-4px {
  gap: 4px;
}

.cg-2px {
  column-gap: 2px;
}

.desc-icon {
  height: max-content;
  display: flex;
  justify-content: center;
  align-items: center;
}

.desc-icon>img {
  width: 8px;
}

.stat-image {
  height: 11px;
}

.choices__inner {
  background-color: transparent;
  border-radius: 6px;
  border: 1px solid var(--main);
  padding: 0;
  min-height: 24px;
}

.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 0;
}

.filter-text-input {
  border-radius: 6px;
  border: 1px solid var(--main);
  min-height: 24px;
  outline: none;
  padding-left: 4px;
  padding-right: 4px;
  width: 100%;
}

.filter-checkbox-input {
  display: none;
}

.filter-checkbox-input:checked~.label-element-2 {
  background-color: var(--main);
  color: var(--white);
}

.filter-checkbox-input:checked~.time-selector {
  display: flex;
  flex-direction: row;
}

.apply-filters {}

.master-gallery {
  min-height: 300px;
}

.master-slide {
  min-height: 400px;
  overflow: hidden;
  width: 100%;
  display: flex;
  background-size: cover;
  background-position: center;
  justify-content: center;
  align-items: center;
}

.master-slide>img {
  height: 80px;
  width: auto
}

.main-master-photo {
  height: 300px;
}

.swiper-pagination-bullet {
  background-color: var(--white);
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background-color: var(--main);
}

.stick {
  height: initial;
  width: 1px;
  background-color: rgba(0, 0, 0, .1);
  display: block;
}

.width-10px {
  width: 10px;
}

.m-lang {
  height: 18px;
  width: 18px;
  max-height: 18px;
  max-width: 18px;
  min-height: 18px;
  min-width: 18px;
  font-size: 10px;
  border-radius: 50%;
  background-color: var(--main);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--white);
}

.m-lang-disabled {
  background-color: #EBEBEB;
  color: var(--black);
}

.checked-profile-img {
  height: 14px;
}

.h-14px {
  height: 14px;
}

.h-24px {
  height: 24px;
}

.tab-part {
  border-top: 2px solid rgba(0, 0, 0, 0.1);
}

.mtab-option {
  position: relative;
}

.mtab-radio {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
}

.mtab-radio~.label-element-2 {
  background-color: #EBEBEB;
  color: var(--black);
}

.mtab-radio:checked~.label-element-2 {
  background-color: var(--main);
  color: var(--white);
}

.mtab {
  display: none;
  background-color: #F9F9F9;
  padding: 16px;
  border-radius: 6px;
}

.mtab[active-tab] {
  display: flex;
  flex-direction: column;
}

.service-checkbox {
  width: 14px;
}

.service-name {
  width: 60%;
}

.service-price {
  width: 25%;
}

.border-bottom-1px {
  border-bottom: 1px solid rgba(0, 0, 0, .5);
}

.services-comments>* {
  margin: 0;
  font-weight: 700;
}

.disabled-text {
  opacity: .5;
}

.small-gallery-preview {
  max-width: 100%;
}

/* Сбрасываем стили дефолтных стрелок */
.swiper-button-prev,
.swiper-button-next {
  background: none;
  /* Убираем фон */
  color: transparent;
  /* Делаем текст стрелок прозрачным */
  width: auto;
  /* Чтобы размеры соответствовали вашим изображениям */
  height: auto;
}

/* Стили кастомных изображений */
.swiper-button-prev img,
.swiper-button-next img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  /* Подгоняем изображение */
  display: block;
}

.swiper-button-prev img {
  transform: rotate(180deg);
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: none;
}

.star-rating {
  height: 14px;
}

.accordion-button:not(.collapsed) {
  background-color: var(--main) !important;
  color: var(--white);
}

.reviews-container {
  max-height: 400px;
  overflow: auto;
}

.site-input-style {
  border: none;
  outline: none;
  border-bottom: 1px solid var(--main);
  line-height: 24px;
  background-color: transparent;
}

.border-none {
  border: none;
}

.star-rating-checkbox {
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  gap: 8px;
}

.star-rating-checkbox input {
  display: none;
}

.star-rating-checkbox label {
  position: relative;
  width: 30px;
  height: 30px;
  cursor: pointer;
}

.star-rating-checkbox label img.filled {
  display: none;
}

.star-rating-checkbox input:checked~label img.filled,
.star-rating-checkbox label:hover img.filled,
.star-rating-checkbox label:hover~label img.filled {
  display: inline-block;
}

.star-rating-checkbox input:checked~label img.empty,
.star-rating-checkbox label:hover img.empty,
.star-rating-checkbox label:hover~label img.empty {
  display: none;
}

.partner-logo-container {
  max-height: 100px;
  max-width: 100px;
  min-height: 100px;
  border-radius: 50%;
  min-width: 100px;
  background-color: var(--white);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--main);
  overflow: hidden;
}

.partner-logo-container>img {
  max-width: 80%;
}

.rg-8px {
  row-gap: 8px;
}

.leaflet-container a {
  color: #000000 !important;
}

.leaflet-control-attribution {
  display: none !important;
}

.auth-form-container {
  margin-top: 150px;
  margin-bottom: 150px;
  width: 100%;
}

.form-control:focus {
  box-shadow: none !important;
  border-color: var(--main) !important;
}

.btn-senetkar {
  background-color: var(--main);
  border: none;
}

.btn-senetkar:hover {
  background-color: var(--main);
}

.btn-senetkar:active {
  background-color: var(--main);
}

.btn-senetkar:focus {
  background-color: var(--main);
}

.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
  background-color: var(--main);
}

.vertical-line {
  width: 1px;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  margin-left: auto;
  margin-right: auto;
}

.horizontal-line {
  height: 1px;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.1);
}

hr {
  border-color: rgba(0, 0, 0, 0.1);
  border-width: 1px;
}

#CompanyChooseContainer {
  display: none;
}

#CompanyChooseContainer>div {
  width: 100%;
}

.nav-link {
  color: var(--main);
}

.add-new-phone-row,
.add-new-sl-row,
.add-new-note,
.add-new-service,
.add-new-qa,
.add-new-yt-row,
.add-new-education,
.add-new-experience,
.add-new-cert,
.add-new-participation,
.add-new-achievement,
.add-new-confrance,
.add-new-paper,
.add-new-why-us {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  background-color: transparent;
  border: 0;
  margin-top: 8px;
}

.phone-item>label>img {
  height: 20px;
  margin-left: 8px;
  margin-right: 8px;
}

.trash-button,
.trash-button-s,
.trash-button-n {
  background-color: transparent;
  border: none;
  color: var(--red);
}

#AddressContainer>.choices {
  margin-bottom: 8px;
}

.s-control {
  border-radius: 6px;
  border: 1px solid var(--main);
  padding: 4px 16px 4px 4px;
  height: 29px;
}

.mb-8px {
  margin-bottom: 8px;
}

.cat-logo {
  width: 20px;
}

.social-link-item,
.note-item {
  display: flex;
  flex-direction: row;
  gap: 8px;
}

.cursor-pointer {
  cursor: pointer;
}

.uploaded-image,
.existing-image {
  position: relative;
  max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 8px;
}

.trash-image {

  padding: 4px;
  height: max-content;
  width: max-content;
  border: 0;
  display: none;
  min-height: 1.5rem;
  min-width: 1.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.delete-image-label {
  padding: 4px;
  height: max-content;
  width: max-content;
  border: 0;
  min-height: 1.5rem;
  min-width: 1.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  cursor: pointer;
  background-color: var(--white);
  position: absolute;
  top: 0;
  left: 0;
}

.delete_image {
  display: none;
}



.delete_image:checked~* {
  display: none;
}

img~.trash-image {
  display: flex !important;
}

.image-input {
  display: none;
}

.toggler-options {
  display: flex;
  flex-direction: row;
  border: 1px solid var(--main);
  border-radius: 6px;

}

.toggler-option {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  cursor: pointer;
}

.toggler-option>input {
  display: none;
}

.toggler-option>label {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  min-height: 20px;
  cursor: pointer;
}

.toggler-option>input:checked~label {
  background-color: var(--green);
  color: var(--white);
}

.toggler-option:first-child>label {
  padding: 8px;
  border-right: 1px solid var(--main);
  cursor: pointer;

}

.service-edit-row {
  display: flex;
  flex-direction: row;
  gap: 8px;
}

.numeric-text-input {
  min-width: 60px;
  max-width: 60px;
}

div[language] {
  display: none;
}

div[active-language] {
  display: flex;
  flex-grow: 1;
}

div[active-language]>input {
  flex-grow: 1;
}

.lang-tab-switcher:checked~label {
  background-color: var(--main);
  color: var(--white);
}

.lang-tab-switcher {
  display: none;
}

.lang-tab-label {
  padding: 8px;
  border-radius: 6px;
  cursor: pointer;
}

#address_suggestions>option {
  cursor: pointer;
}

#address_suggestions>option:hover {
  background-color: var(--main);
  color: var(--white);
}

.education-item,
.experience-item,
.cert-item,
.participation-item,
.achievement-item,
.confrance-item,
.paper-item {
  display: flex;
  flex-direction: row;
  width: 100%;
  flex-wrap: wrap;
}

.noUi-connect {
  background-color: var(--main);
}

@media (max-width: 767.98px) {
  #ToggleFilters~.form-group {
    display: none !important;
  }

  #ToggleFilters:checked~.form-group {
    display: flex !important;
  }

  .master-card-image {
    min-height: 220px;
  }

  .tab-part {
    flex-wrap: nowrap !important;
    overflow-x:auto;
  }

  .mtab-radio ~ .label-element-2 {
    flex-wrap: nowrap;
    white-space: nowrap;
  }

  .mtab {
    padding: 4px; 
  }
}

.choices__list--dropdown,
.choices__list[aria-expanded] {
  z-index: 999;
}

.custom-checkbox {
  display: none;
}

.custom-label-unchecked {
  display: flex !important;
}

.custom-label-checked {
  display: none !important;
}

.custom-checkbox:checked~.custom-label-checked {
  display: flex !important;
}

.custom-checkbox:checked~.custom-label-unchecked {
  display: none !important;
}


.custom-label-checked>img,
.custom-label-unchecked>img {
  height: 1.5rem;
}

.cat-img {
  height: 80px;
}

.master-cat-info {
  max-width: 80%;
  margin-top: .2rem;
  margin-left: .2rem;
  margin-bottom: .2rem;
}

@media screen and (max-width: 767.98px) {
  .cat-img {
    height: 50px;
  }

  .banner-background {
    min-height: max-content;
  }

}

.sf {
  display: none;
}

.time-selector {
  display: none;
  z-index: 10;
}

.cursor-pointer {
  cursor: pointer;
}

.small-gallery-preview {
  height: 120px;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.loader {
  width: 50px;
  height: 50px;
  border: 5px solid #f3f3f3;
  border-top: 5px solid var(--main);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin-top: 20px;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

div[paid="off"] {
  display: none;
}

div[paid="on"] {
  display: flex;;
}

.paidline ~ div  {
  display: none !important;
}