

/* Start:/b2b/franshiza/assets/css/style.css?1774855573151877*/
:root {
  /* Colors */
  --c-primary: #FFA400;
  /* Orange */
  --c-primary-hover: #E79500;
  --c-text-main: #333333;
  --c-text-muted: #666666;
  --c-border: #E5E5E5;
  --c-bg-light: #F9F9F9;
  --c-white: #FFFFFF;

  /* Typography */
  --font-family: 'Montserrat', sans-serif;
  --fz-base: 16px;
  --fz-sm: 14px;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* Layout */
  --container-width: 1850px;
  --container-padding: 0 40px;
  --border-radius: 4px;
  --transition: 0.3s ease;
}


/* Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  font-size: var(--fz-base);
  color: var(--c-text-main);
  background-color: black;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

a {
  text-decoration: none;
  color: inherit;
}

button {
  cursor: pointer;
  border: none;
  background: none;
  font-family: inherit;
}

input {
  font-family: inherit;
}

/* Reusable Blocks */
.container {
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: var(--container-padding);
}

@media (max-width: 1024px) {
  .container {
    padding: 0 20px;
  }
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 24px;
  border-radius: var(--border-radius);
  font-size: var(--fz-base);
  font-weight: var(--fw-semibold);
  transition: background-color var(--transition), color var(--transition);
}

.btn--primary {
  background-color: var(--c-primary) !important;
  color: var(--c-white) !important;
}

.btn--primary:hover {
  background-color: var(--c-primary-hover) !important;
}

.btn--icon-only {
  width: 48px;
  padding: 0;
  flex-shrink: 0;
}

.icon {
  display: inline-block;
  vertical-align: middle;
}

/* Specific Blocks: Header */
.header {
  border-bottom: 1px solid var(--c-border);
}

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 96px;
  width: 100%;
}

.header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.header__catalog-btn {
  padding: 0 20px;
  gap: 8px;
  flex-shrink: 0;
  white-space: nowrap;
}

.header__search {
  flex: 1 1 auto;
  max-width: 450px;
  min-width: 200px;
  position: relative;
}

.header__search-input {
  width: 100%;
  height: 48px;
  border: 1px solid var(--c-border);
  border-radius: var(--border-radius);
  padding: 0 48px 0 16px;
  font-size: var(--fz-sm);
  color: var(--c-text-main);
  outline: none;
  transition: border-color var(--transition);
}

.header__search-input:focus {
  border-color: var(--c-primary);
}

.header__search-input::placeholder {
  color: #999999;
}

.header__search-btn {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  color: var(--c-text-main);
}

.zamershchik-btn {
  padding: 0 24px;
  width: auto;
  white-space: nowrap;
  flex-shrink: 0;
}

.header__actions {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
}

.action-link {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fz-base);
  font-weight: var(--fw-medium);
  transition: color var(--transition);
  position: relative;
  padding-bottom: 4px;
  white-space: nowrap;
  flex-shrink: 0;
}

.action-link:hover {
  color: var(--c-primary);
}

.action-link--active {
  color: var(--c-text-main);
}

.action-link--active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--c-primary);
}

.header__phone {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: var(--fw-semibold);
  white-space: nowrap;
  flex-shrink: 0;
}

.header__phone-number {
  font-size: 15px;
  white-space: nowrap;
}

.header__phone-devices {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

/* Specific Blocks: Subheader */
/* Mobile menu toggle вЂ” hidden by default on desktop */
.mob-menu__input {
  display: none;
}

.mob-menu__btn {
  display: none;
}

.subheader {
  background-color: #3f3d3b;
  /* Dark grayish-brown background */
  position: sticky;
  top: 0;
  z-index: 1000;
}

/* Subtle grid lines background effect - simulating the design */
.subheader::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: 120px 100%;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  pointer-events: none;
}

.subheader__inner {
  display: flex;
  align-items: center;
  height: 96px;
  gap: clamp(2px, 0.5vw, 20px);
  position: relative;
  z-index: 1;
  width: 100%;
}

.subheader__cta-btn {
  margin-left: auto;
  height: 45px;
  padding: 0 clamp(8px, 1vw, 40px);
  font-size: clamp(11px, 0.95vw, 16px);
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(20px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  white-space: nowrap;
}

.subheader__cta-btn.visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.subheader__links {
  display: flex;
  align-items: center;
  gap: clamp(2px, 0.8vw, 20px);
}

.subheader__link {
  display: inline-flex;
  align-items: center;
  height: 45px;
  padding: 0 clamp(4px, 1.2vw, 22px);
  border: 1px solid var(--c-white);
  border-radius: 4px;
  font-size: clamp(10px, 0.85vw, 14px);
  font-weight: var(--fw-medium);
  color: var(--c-white);
  gap: clamp(2px, 0.3vw, 8px);
  transition: all var(--transition);
  white-space: nowrap;
}

.subheader__link:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.subheader__link--accent {
  border-color: var(--c-primary);
  color: var(--c-primary);
}

.subheader__link--accent:hover {
  background-color: rgba(240, 163, 58, 0.1);
}

.subheader__dropdown-btn {
  display: inline-flex;
  align-items: center;
  height: 45px;
  padding: 0 clamp(4px, 2vw, 25px);
  background-color: #EFEFEF;
  border-radius: 4px;
  font-size: clamp(10px, 0.85vw, 16px);
  font-weight: var(--fw-semibold);
  color: var(--c-text-main);
  gap: clamp(2px, 0.4vw, 12px);
  transition: background-color var(--transition);
  white-space: nowrap;
}

.subheader__dropdown-btn:hover {
  background-color: #E2E2E2;
}

/* Specific Blocks: Hero */
.hero {
  position: relative;
  min-height: 700px;
  display: flex;
  align-items: stretch;
  background-color: #222;
  overflow: hidden;
}

section.hero .hero__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Placeholder for actual background image, you can replace with your actual path */
  background-image: url('/local/templates/main/assets/pages/images/background.png');
  background-size: cover;
  background-position: 0px -70px;
  background-color: #2b2b2b;
  /* Fallback */
}

/* Overlay to darken background */
section.hero .hero__bg::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  /* Adjust opacity if needed to match design exactly */
}

section.hero .hero__wrap {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 80px;
  padding-bottom: 60px;
  width: 100%;
}

section.hero .hero__inner {
  display: flex;
  justify-content: space-between;
  margin-bottom: auto;
  /* Push stats to bottom */
  height: 470px;
}

section.hero .hero__content {
  flex: 1 1 auto;
  max-width: 800px;
}

section.hero .hero__title {
  color: var(--c-white);
  font-size: clamp(34px, 6.5vw, 60px);
  line-height: 1.1;
  margin-top: 15px;
  font-weight: 800;
  letter-spacing: -6px;
  display: flex;
  flex-direction: column;
}

section.hero .hero__title .hero__title__secondary {
  color: var(--c-white);
  line-height: 1.1;
  margin-top: 5px;
  font-weight: 800;
  letter-spacing: -2px;
}

.text-primary {
  color: var(--c-primary);
  display: flex;
  text-transform: uppercase;
  margin-top: 15px;
}

section.hero .hero__form-wrapper {
  flex-shrink: 0;
  align-content: flex-end;
  min-width: 385px;
}

.hero-form {
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 24px;
  padding: 25px 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Unified Form Field Style */
.input,
.modal-input,
.modal-select,
.c-select__header {
  width: 100%;
  height: 48px;
  padding: 0 24px;
  background-color: var(--c-white);
  border: 1px solid #EDEDED;
  border-radius: 8px;
  font-size: 14px;
  color: var(--c-text-main);
  outline: none;
  transition: all var(--transition);
  box-sizing: border-box;
}

.c-select__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.input:focus,
.modal-input:focus,
.modal-select:focus,
.c-select.is-active .c-select__header {
  border-color: var(--c-primary);
  box-shadow: 0 0 0 2px rgba(255, 164, 0, 0.2);
}

.input::placeholder,
.modal-input::placeholder {
  color: #8C8C8C;
}

.select-wrapper {
  position: relative;
  width: 100%;
}

.select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  padding-right: 40px;
  color: #8C8C8C;
}

.select-arrow {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  pointer-events: none;
  color: #8C8C8C;
  display: flex;
}

section.hero .hero-form__btn {
  height: 48px;
  font-size: 16px;
  margin-top: 12px;
  width: 100%;
  border-radius: 8px;
}

/* Hero Stats Section */
section.hero .hero__stats {
  display: flex;
  justify-content: space-between;
  margin-top: clamp(30px, 5vh, 65px);
  padding-right: clamp(0px, 4vw, 60px);
  align-items: flex-end;
  border-top: none;
  gap: clamp(10px, 2vw, 40px);
}

.stat-item {
  color: var(--c-white);
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 8px;
}

.stat-item__value {
  font-size: clamp(18px, 3.2vw, 60px);
  font-weight: var(--fw-bold);
  line-height: 1;
  white-space: nowrap;
}

.stat-item__label {
  font-size: clamp(14px, 1.5vw, 22px);
  opacity: 0.9;
  letter-spacing: -1px;
  font-weight: var(--fw-regular);
  white-space: nowrap;
}

/* Sections Common */
.section {
  padding: 30px 0;
}

section h2.title__style {
  font-size: clamp(30px, 4vw, 52px);
  font-weight: var(--fw-bold);
  line-height: 1.1;
  color: var(--c-text-main);
  margin-bottom: 67px;
}

/* Specific Blocks: Features */
.features {
  background-color: var(--c-white);
  padding-top: 35px;
}

section.features .features__header {
  margin-bottom: 40px;
}

section.features .features__title {
  color: #3b3936;
  font-size: 55px;
  letter-spacing: -1.3px;
  margin-bottom: 0;
}

section.features .features__desc {
  font-size: clamp(16px, 1.5vw + 2px, 24px);
  line-height: 1.5;
  color: var(--c-text-main);
  opacity: 0.8;
}

section.features .features__grid {
  display: grid;
  grid-template-columns: repeat(3, clamp(301px, 29.427vw, 565px));
  justify-content: space-between;
}

section.features .feature-card {
  background-color: #4A4846;
  border-radius: 24px;
  max-height: 305px;
  padding: clamp(20px, 3vw, 56px) clamp(10px, 2vw, 20px) clamp(10px, 2vw, 20px);
  text-align: center;
  color: var(--c-white);
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  overflow: hidden;
  min-height: clamp(120px, 16vw, 310px);
}

/* Abstract wave pattern for feature card background */
section.features .feature-card__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('/local/templates/main/assets/pages/images/backgroundCard.png') no-repeat right center;
  pointer-events: none;
  z-index: 1;
}

section.features .feature-card__title {
  font-size: clamp(18px, 2.2vw, 40px);
  font-weight: var(--fw-bold);
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
  white-space: nowrap;
}

section.features .feature-card__desc {
  font-size: clamp(16px, 1.5vw, 22px);
  line-height: 1.4;
  opacity: 0.9;
  position: relative;
  z-index: 2;
  margin-bottom: 30px;
}

section.features .feature-card__link {
  font-size: clamp(18px, 1.5vw + 2px, 25px);
  color: var(--c-primary);
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px;
  font-weight: var(--fw-medium);
  position: relative;
  z-index: 2;
  transition: color var(--transition);
}

section.features .feature-card__link:hover {
  color: var(--c-primary-hover);
}

/* Specific Blocks: Advantages */
.advantages {
  background-color: var(--c-white);
  padding-bottom: 70px;
  margin-top: 10px;
}

section.advantages .advantages__header {
  margin-bottom: 80px;
}

section.advantages .advantages__title {
  color: #3b3936;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

section.advantages .advantages__desc {
  font-size: clamp(16px, 1.5vw + 2px, 24px);
  line-height: 1.5;
  color: var(--c-text-main);
  opacity: 0.8;
}

section.advantages .advantages__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: clamp(30px, 5vw, 70px) clamp(15px, 5vw, 75px);
}

section.advantages .adv-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 325px;
}

section.advantages .adv-card__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 24px;
}

section.advantages .adv-card__title {
  font-size: clamp(1vw, 2vw, 32px);
  font-weight: var(--fw-bold);
  color: #3B3936;
  line-height: 1.3;
  letter-spacing: -1.5px;
}

section.advantages .adv-card__icon {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  margin-top: 10px;
  margin-right: 10px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

section.advantages .adv-card__icon svg {
  width: 48px;
  height: 48px;
}

section.advantages .adv-card__desc {
  font-size: clamp(16px, 1.5vw, 22px);
  line-height: 1.6;
  color: #4A4846;
  opacity: 0.9;
  margin-bottom: 35px;
  flex-grow: 1;
  /* Pushes button to bottom if texts are different heights */
}

section.advantages .adv-card__btn {
  background-color: #3D3935;
  color: var(--c-white);
  height: 68px;
  padding: 0 50px;
  font-size: 20px;
  border-radius: 6px;
  margin-top: auto;
}

section.advantages .adv-card__btn:hover {
  background-color: #929292;
}

.bottom-cta__phone {
  display: contents;
  gap: 10px;
}

/* Specific Blocks: Business Model */
.biz-model {
  background-color: var(--c-white);
  padding-bottom: 80px;
}

section.biz-model .biz-model__title {
  color: #3b3936;
  letter-spacing: 0.3px;
  margin-bottom: clamp(30px, 4vw, 60px);
}

section.biz-model .biz-model__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 20px;
}

section.biz-model .biz-model__tag {
  display: inline-flex;
  align-items: center;
  height: clamp(48px, 4vw, 56px);
  padding: 0 clamp(20px, 2vw, 32px) 0 clamp(16px, 1.5vw, 24px);
  border: 1px solid #E5E5E5;
  border-radius: 50px;
  /* Fully rounded */
  font-size: clamp(14px, 1.2vw, 20px);
  color: var(--c-text-main);
  background-color: var(--c-white);
}

section.biz-model .biz-model__tag-circle {
  width: 16px;
  height: 16px;
  border: 2px solid var(--c-primary);
  border-radius: 50%;
  margin-right: 16px;
  flex-shrink: 0;
}

section.biz-model .biz-model__tag strong {
  font-weight: var(--fw-bold);
  font-size: clamp(20px, 2vw, 30px);
  margin-right: 8px;
  margin-bottom: 10px;
  letter-spacing: -1px;
  color: #3b3936;
}

section.biz-model .biz-model__tag-text {
  font-weight: var(--fw-regular);
  font-size: clamp(14px, 1.2vw, 26px);
  letter-spacing: -1px;
  color: var(--c-text-muted);
  margin-bottom: 10px;
  margin-right: 9px;
}

/* Specific Blocks: CTA Banner */
.cta-banner {
  position: relative;
  min-height: clamp(400px, 30vw, 570px);
  display: flex;
  padding: clamp(40px, 5vw, 70px) 0;
  background-color: #3b3936;
}

section.cta-banner .cta-banner__bg-planet {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: url('/local/templates/main/assets/pages/images/planet.png') no-repeat left bottom / contain;
  pointer-events: none;
  z-index: 1;
}

section.cta-banner .cta-banner__bg-showroom {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: url('/local/templates/main/assets/pages/images/background_yurkas.png') no-repeat right center / cover;
  pointer-events: none;
  background-position: -80px;
  z-index: 1;
}

section.cta-banner .cta-banner__bg-showroom::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #3B3936 0%, rgba(59, 57, 54, 0.9) 15%, rgba(59, 57, 54, 0) 40%);
  pointer-events: none;
}

section.cta-banner .cta-banner__container {
  position: relative;
  z-index: 4;
  width: 100%;
}

section.cta-banner .cta-banner__content {
  max-width: 900px;
}

section.cta-banner .cta-banner__title {
  font-size: clamp(26px, 2.5vw + 2px, 42px);
  font-weight: var(--fw-bold);
  color: var(--c-white);
  line-height: 1.4;
  margin-bottom: clamp(30px, 5vw, 80px);
}

section.cta-banner .cta-banner__desc {
  font-size: clamp(16px, 1.5vw, 22px);
  color: var(--c-white);
  opacity: 0.9;
  margin-bottom: clamp(30px, 4vw, 60px);
}

section.cta-banner .cta-banner__btn {
  background-color: #F8A502 !important;
  color: #ffffff !important;
  height: clamp(44px, 4vw, 50px) !important;
  min-width: clamp(250px, 20vw, 330px) !important;
  font-size: clamp(14px, 1.2vw, 18px) !important;
}

/* Specific Blocks: Assortment */
.assortment {
  background-color: var(--c-white);
  padding-bottom: 70px;
  padding-top: 60px;
}

section.assortment .assortment__header {
  margin-bottom: 60px;
}

section.assortment .assortment__title {
  color: #3b3936;
  margin-bottom: 5px;
  /* font-size: clamp(26px, 3vw, 52px); */
  letter-spacing: 0.2px;
}

section.assortment .assortment__desc {
  font-size: clamp(16px, 1.2vw + 4px, 23px);
  line-height: 1.5;
  color: var(--c-text-main);
  opacity: 0.8;
}

section.assortment .assortment__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(8px, 1.2vw, 16px);
  height: clamp(320px, 25vw, 470px);
}

section.assortment .assortment-card {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background-color: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
}

section.assortment .assortment-card__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%);
  transition: transform var(--transition), filter var(--transition);
}

section.assortment .assortment-card:hover .assortment-card__img {
  transform: scale(1.05);
  /* Slight zoom on hover for interactivity */
  filter: grayscale(0%);
}

/* Semi-transparent center overlay line */
section.assortment .assortment-card__overlay {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 180px;

  background-color: rgba(240, 163, 58, 0.85);
  /* Orange with transparency */
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  align-content: center;
}

section.assortment .assortment-card__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--c-white);
}

section.assortment .assortment-card__value {
  font-size: clamp(24px, 4vw, 54px);
  font-weight: var(--fw-bold);
  line-height: 1;
  flex-wrap: nowrap;

}

section.assortment .assortment-card__label {
  font-size: clamp(12px, 1.8vw, 36px);
  font-weight: var(--fw-bold);
  line-height: 1.2;
  white-space: nowrap;
}

/* Specific Blocks: Steps */
.steps {
  background-color: var(--c-white);
  padding-bottom: 40px;
  padding-top: 20px;
  --steps-gap: clamp(80px, 9vw, 145px);
}

section.steps .steps__header {
  margin-bottom: 80px;
}

section.steps .steps__title {
  color: #3b3936;
  margin-bottom: 8px;
}

section.steps .steps__desc {
  font-size: clamp(14px, 1.2vw, 22px);
  color: var(--c-text-main);
  opacity: 0.8;
}

section.steps .steps__visual {
  position: relative;
  padding-top: 10px;
}

section.steps .steps__track {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: calc(var(--steps-gap) * 5.5);
  pointer-events: none;
  z-index: 1;
}

section.steps .steps__svg {
  width: 100%;
}

section.steps .steps__svg--desktop {
  display: block;
}

section.steps .steps__svg--mobile {
  display: none;
}

section.steps .steps__svg--mobile-small {
  display: none;
}



section.steps .steps__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: clamp(40px, 4vw, 145px);
  padding-top: calc(var(--steps-gap) * 0.48);
  /* 70 / 145 = 0.48 */
  align-items: start;
  position: relative;
  z-index: 2;
}

@media (min-width: 1500px) {
  section.steps .steps__grid {
    row-gap: clamp(20px, 6vw, 145px);
  }
}

section.steps .step-card {
  position: relative;
  grid-column: var(--col);
  grid-row: var(--row);
  max-height: 270px;
  display: flex;
  flex-direction: column;
}

/* Align columns: 1st start (17.5% margin), 2nd center, 3rd end (17.5% margin) */
section.steps .step-card[style*="--col: 1"] {
  justify-self: start;
}

section.steps .step-card[style*="--row: 2"] {
  margin-top: 20px;
}

section.steps .step-card[style*="--row: 1"] {
  justify-self: start;
  margin-left: 4.2%;
}

section.steps .step-card[style*="--row: 1"] .step-card__content {
  transform: translateX(-12px);
}

section.steps .step-card[style*="--row: 2;"] {
  justify-self: start;
  margin-left: 23.1%;
}

section.steps .step-card[style*="--row: 2;"] .step-card__content {
  margin-top: 10px;
}

section.steps .step-card[style*="--row: 2;"] .step-card__marker {
  margin-top: 0px;
}

/* Removed redundant step 4 override to follow row 2 logic */

.step-marker {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
  z-index: 5;
}

section.steps .step-card__marker {
  position: relative;
  height: 24px;
  width: 24px;
  margin-bottom: 24px;
}

.step-marker__number {
  position: absolute;
  top: -40px;
  left: 0;
  font-size: 32px;
  font-weight: var(--fw-bold);
  color: #E5E5E5;
  /* light gray */
}

section.steps .step-card__dot {
  width: 24px;
  height: 24px;
  background-color: var(--c-primary);
  border: 2px solid var(--c-white);
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

section.steps .step-card__tag {
  position: absolute;
  bottom: calc(100% + 12px);
  background-color: var(--c-primary);
  color: var(--c-white);
  padding: 2px 16px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 4px;
  font-size: clamp(20px, 2.5vw, 34px);
  font-weight: var(--fw-bold);
  white-space: nowrap;
  z-index: 3;
}

section.steps .step-card__tag::after {
  content: '';
  position: absolute;
  top: 99%;
  left: 50%;
  transform: translateX(-50%);
  border: 12px solid transparent;
  border-top-color: var(--c-primary);
}

section.steps .step-card__title {
  font-size: clamp(10px, 1.6vw, 36px);
  font-weight: var(--fw-bold);
  letter-spacing: -0.3px;
  line-height: 1.3;
  color: #3b3936;
  margin-top: 14px;
  margin-bottom: 20px;
}

section.steps .step-card__desc {
  font-size: clamp(6px, 1.2vw, 20px);
  line-height: 1.5;
  color: var(--c-text-muted);
}


.network {
  background-color: var(--c-white);
  padding-bottom: 0px;
  padding-top: 35px;
  /* map goes to bottom edge */
}

section.network .network__title {
  color: #3b3936;
  margin-bottom: 40px;
}

section.network .network__wrap {
  position: relative;
  width: 100%;
  height: clamp(600px, 47vw, 908px);
  background-color: #E6E6E6;
  /* fallback color */
}

section.network .network__map {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

/* CSS trick to make Yandex Maps tiles grayscale without affecting our custom colorful pins */
section.network .network__map [class$="-ground-pane"] {
  filter: grayscale(100%) contrast(0.9) brightness(1.05);
  opacity: 0.8;
}

section.network .network__ui-container {
  position: relative;
  z-index: 5;
  height: 100%;
  padding-top: 50px;
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  pointer-events: none;
  /* Let clicks pass through to map by default */
}

/* Re-enable clicks for our UI elements */
section.network .network__filters,
section.network .network__legend {
  pointer-events: auto;
}

/* Filters */
section.network .network__filters {
  display: flex;
  gap: 16px;
}

section.network .map-dropdown {
  position: relative;
  display: inline-block;
}

section.network .map-dropdown__header {
  background-color: #3D3935;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  width: clamp(180px, 15vw, 220px);
  height: clamp(40px, 4vw, 48px);
  padding: 0 clamp(10px, 1vw, 16px);
  border-radius: 6px;
  gap: clamp(6px, 1vw, 12px);
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: background-color var(--transition);
  font-family: var(--font-family);
}

section.network .map-dropdown__header:hover {
  background-color: #3D3935;
}

/* Mobile Active State */
section.network .map-dropdown.is-active .map-dropdown__header {
  background-color: #929292;
  border-radius: 6px 6px 0 0;
}

@media (min-width: 992px) {

  /* PC Active State */
  section.network .map-dropdown.is-active .map-dropdown__header {
    background-color: #3D3935;
  }
}

section.network .map-dropdown.is-active .map-dropdown__list {
  display: block;
}

section.network .map-dropdown__arrow {
  transition: stroke var(--transition), color var(--transition), transform var(--transition);
  color: #FFFFFF;
}

section.network .map-dropdown__header:hover .map-dropdown__arrow {
  color: #FFA400;
}

section.network .map-dropdown.is-active .map-dropdown__arrow {
  transform: rotate(180deg);
  color: #FFA400;
  /* Orange arrow when active on PC/Mobile */
}

section.network .map-dropdown__list {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  min-width: 200px;
  background-color: #3D3935;
  border-radius: 0 0 6px 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 10;
  max-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
}

/* Custom Scrollbar for Dropdown Menu */
section.network .map-dropdown__list::-webkit-scrollbar {
  width: 4px;
}

section.network .map-dropdown__list::-webkit-scrollbar-track {
  background: #3D3935;
  margin: 6px 0;
}

section.network .map-dropdown__list::-webkit-scrollbar-thumb {
  background: #929292;
  border-radius: 4px;
}

section.network .map-dropdown__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  color: #FFFFFF;
  cursor: pointer;
  transition: background-color var(--transition);
}

section.network .map-dropdown__item:hover {
  background-color: #929292;
}

section.network .map-dropdown__item-text {
  font-size: 16px;
  font-weight: var(--fw-medium);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 12px;
}

section.network .map-dropdown__text {
  font-size: 16px;
  font-weight: var(--fw-medium);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  /* РћРіСЂР°РЅРёС‡РёРІР°РµС‚ С€РёСЂРёРЅСѓ Рё РІС‹СЂР°РІРЅРёРІР°РµС‚ Р±РµР№РґР¶/РёРєРѕРЅРєСѓ Рє РєСЂР°СЋ */
}

section.network .map-dropdown__badge {
  background-color: #FFA400;
  color: #FFFFFF;
  font-size: 11px;
  font-weight: var(--fw-bold);
  min-width: 20px;
  height: 20px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  transition: background-color var(--transition);
}

section.network .map-dropdown__item:hover .map-dropdown__badge {
  /* Or stays the same */
}


/* Legend */
section.network .network__legend {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}

.legend-card {
  background-color: var(--c-white);
  padding: clamp(12px, 1.5vw, 24px) clamp(20px, 3vw, 42px);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: clamp(10px, 2vw, 32px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  /* slight drop shadow */
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.legend-card:not(.is-active) {
  opacity: 0.5;
}

.legend-card__marker-img {
  width: clamp(32px, 3vw, 48px);
  height: clamp(32px, 3vw, 48px);
  object-fit: contain;
}

/* .legend-card:nth-child(2) {
  padding-right: 55px;
  gap: 50px
}

.legend-card:nth-child(3) {
  padding-right: 55px;
  gap: 50px
} */

.legend-card__text {
  font-size: clamp(16px, 1.2vw + 2px, 23px);
  font-weight: var(--fw-medium);
  color: #3B3936;
}

/* Custom CSS Pins */
/* These pins are used both inside the legend and inside Yandex Maps! */
.map-pin {
  position: relative;
  width: 32px;
  height: 44px;
  /* total height from top to tip */
  display: flex;
  justify-content: center;
  padding-top: 4px;
  /* visual push down logo */
}

.map-pin--static {
  transform: scale(0.9);
  /* scale down slightly for legend */
  margin-bottom: -4px;
  /* tweak spacing */
}

/* The drop shape using border radius */
.map-pin__shape {
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  /* makes square sit point-down */
  box-sizing: border-box;
}

/* The 'Р®' logo inside */
.map-pin__logo {
  position: relative;
  z-index: 2;
  font-family: var(--font-family);
  font-weight: 800;
  font-size: 16px;
  line-height: 22px;
  /* vertically align text */
  margin-right: -1px;
  /* tiny optical fix */
}

/* The shadow base below the pin */
.map-pin__base {
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 4px;
  background-color: rgba(0, 0, 0, 0.25);
  border-radius: 50%;
  z-index: -1;
}

/* Pin Theme: White / Orange (РўСѓС‚ РјРѕР¶РµС‚ Р±С‹С‚СЊ РІР°С€ СЃР°Р»РѕРЅ) */
.map-pin--white .map-pin__shape {
  background-color: var(--c-white);
  border: 4px solid var(--c-primary);
}

.map-pin--white .map-pin__logo {
  color: var(--c-primary);
}

/* Pin Theme: Orange / White (Р”РµР»Р°СЋС‚СЃСЏ) */
.map-pin--orange-white .map-pin__shape {
  background-color: var(--c-primary);
  border: 4px solid var(--c-primary);
}

.map-pin--orange-white .map-pin__logo {
  color: var(--c-white);
}

/* Pin Theme: Orange / Black (РЈР¶Рµ РѕС‚РєСЂС‹С‚С‹) */
.map-pin--orange-black .map-pin__shape {
  background-color: var(--c-primary);
  border: 4px solid var(--c-primary);
}

.map-pin--orange-black .map-pin__logo {
  color: #222222;
}

/* Specific Blocks: Reviews */
.reviews {
  background-color: #EBEBEB;
  padding: 50px 0;
  padding-bottom: 90px;
  overflow: hidden;
  /* Prevent horizontal scroll on document */
}

section.reviews .reviews__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 55px;
}

section.reviews .reviews__title {
  font-size: clamp(32px, 4vw, 55px);
  letter-spacing: -1px;
  margin-bottom: 0;
}

section.reviews .reviews__nav {
  display: flex;
  align-items: center;
  gap: 12px;
}

section.reviews .reviews__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background-color: #EBEBEB;
  border-radius: 8px;
  transition: background-color var(--transition);
}

section.reviews .reviews__btn:hover {
  background-color: #DEE0E4;
}

section.reviews .reviews__slider {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  padding-bottom: 1px;
  /* Avoid clipping drop shadows if any */
  /* Hide scrollbar for a cleaner look */
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* IE and Edge */
}

section.reviews .reviews__slider::-webkit-scrollbar {
  display: none;
  /* Chrome, Safari, Opera */
}

.review-card {
  flex: 0 0 clamp(280px, 20vw, 340px);
  background-color: var(--c-white);
  border-radius: 12px;
  padding: clamp(16px, 1.5vw, 20px) clamp(16px, 1.5vw, 24px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: clamp(340px, 25vw, 400px);
}

.review-card__top {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.review-card__author {
  display: flex;
  align-items: center;
  gap: 12px;
}

.review-card__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(40px, 4vw, 68px);
  height: clamp(40px, 4vw, 68px);
  background-color: var(--c-primary);
  color: var(--c-white);
  border-radius: 50%;
  font-size: clamp(18px, 1.5vw, 24px);
  font-weight: var(--fw-bold);
}

.review-card__name {
  font-size: clamp(16px, 1.2vw, 24px);
  font-weight: var(--fw-bold);
  color: #000;
}

.review-card__stars {
  display: flex;
  align-items: center;
  gap: 4px;
}

.review-card__text {
  font-size: 15px;
  line-height: 1.5;
  margin-top: 5px;
  color: var(--c-text-main);
  position: relative;
  /* Max lines limit before fade */
  max-height: calc(15px * 1.5 * 7);
  overflow: hidden;
}

/* Simulated text fade effect at bottom */
.review-card__text--faded::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 40px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--c-white));
  pointer-events: none;
}

.review-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 24px;
  padding-top: 24px;
}

.review-card__date {
  font-size: 14px;
  color: #999999;
}

.review-card__more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: var(--fw-bold);
  color: #000;
  transition: color var(--transition);
}

.review-card__more:hover {
  color: var(--c-primary);
}

/* Specific Blocks: Open Salons Slider */
.open-salons {
  position: relative;
  min-height: clamp(600px, 48vw, 900px);
  display: flex;
  align-items: center;
  padding: clamp(30px, 3vw, 40px) 0;
  color: var(--c-white);
  overflow: hidden;
  background-color: #222;
}

section.open-salons .open-salons__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Simulating the dark hallway image with a gradient since we don't have the final asset yet */
  background-image: linear-gradient(rgba(30, 30, 32, 0.7), rgba(30, 30, 32, 0.7)), url('/local/templates/main/assets/pages/images/background2.jpg');
  background-color: #333;
  /* Fallback */
  background-size: cover;
  background-position: center;
  z-index: 0;
}

section.open-salons .open-salons__container {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

section.open-salons .open-salons__title {
  text-align: center;
  color: var(--c-white);
  letter-spacing: 1px;
  font-size: clamp(32px, 4vw, 52px);
  margin-top: clamp(15px, 2vw, 30px);
  margin-bottom: clamp(40px, 5vw, 80px);
}

section.open-salons .open-salons__title-accent {
  color: var(--c-primary);
}

section.open-salons .open-salons__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

section.open-salons .open-salons__slide {
  margin-top: 10px;
  margin-left: 40px;
  display: none;
  animation: fadeSlideIn 0.5s ease forwards;
}

section.open-salons .open-salons__slide.active {
  display: block;
}

@keyframes fadeSlideIn {
  from {
    opacity: 0;
    transform: translateX(20px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

section.open-salons .open-salons__city {
  font-size: clamp(36px, 5vw, 52px);
  font-weight: var(--fw-bold);
  letter-spacing: 0.5px;
  margin-bottom: clamp(20px, 3vw, 55px);
  line-height: 1.1;
}

section.open-salons .open-salons__stats {
  display: flex;
  flex-direction: column;
  gap: 36px;
  max-width: 400px;
}

section.open-salons .salon-stat__val {
  color: var(--c-primary);
  font-size: clamp(24px, 2.5vw, 36px);
  font-weight: var(--fw-bold);
  margin-bottom: 4px;
  line-height: 1.2;
}

section.open-salons .salon-stat__desc {
  font-size: clamp(16px, 1.5vw, 24px);
  font-weight: var(--fw-regular);
  color: #E0E0E0;
  line-height: 1.4;
}

section.open-salons .open-salons__footer {
  margin-top: 60px;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

section.open-salons .open-salons__pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  width: 100%;
  max-width: 1300px;
  margin-bottom: 40px;
}

section.open-salons .open-salons__bullet {
  position: relative;
  flex: 1;
  height: 2px;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: background-color var(--transition);
}

section.open-salons .open-salons__bullet::after {
  content: '';
  position: absolute;
  top: -10px;
  bottom: -10px;
  left: 0;
  right: 0;
}

section.open-salons .open-salons__bullet--active {
  background-color: var(--c-white);
  height: 3px;
  transform: translateY(-0.5px);
}

section.open-salons .open-salons__bullet:hover {
  background-color: rgba(255, 255, 255, 0.7);
}

section.open-salons .open-salons__btn {
  width: clamp(280px, 25vw, 450px);
  font-size: clamp(14px, 1.2vw, 18px);
  height: 48px;
  border-radius: 8px;
  color: var(--c-white);
  font-weight: var(--fw-bold);
}

/* Specific Blocks: FAQ Section */
.faq-section {
  background-color: #EBEBEB;
  padding-top: 60px;
}

.faq-cta {
  position: relative;
  background-color: #45403C;
  border-radius: 36px;
  padding: 48px 64px;
  overflow: hidden;
  display: flex;
  align-items: center;
}

.faq-cta__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 50%;
  pointer-events: none;
  background: radial-gradient(circle at 75% 50%,
      transparent 0%,
      transparent 15%,
      rgba(255, 255, 255, 0.04) 15.1%,
      rgba(255, 255, 255, 0.04) 25%,
      transparent 25.1%,
      transparent 40%,
      rgba(255, 255, 255, 0.02) 40.1%,
      rgba(255, 255, 255, 0.02) 55%,
      transparent 55.1%);
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
}

.faq-cta__content {
  position: relative;
  z-index: 1;
}

.faq-cta__title {
  color: var(--c-white);
  font-size: clamp(28px, 4vw, 52px) !important;
  margin-top: 10px !important;
  font-weight: var(--fw-bold);
  margin-bottom: 15px !important;
  line-height: 1.2 !important;
}

.faq-cta__desc {
  color: #D1D1D1;
  font-size: clamp(16px, 1.5vw, 24px) !important;
  line-height: 1.5 !important;
  margin-top: 0px !important;
  margin-bottom: clamp(25px, 3vw, 45px) !important;
}

.faq-cta__btn {
  border-radius: 6px;
  font-size: 18px;
  padding: 0 60px;
}

.faq__main-title {
  font-size: clamp(32px, 4vw, 52px);
  font-weight: var(--fw-bold);
  color: var(--c-text-main);
  margin-top: clamp(50px, 6vw, 100px) !important;
  margin-bottom: clamp(30px, 6vw, 80px);
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

section.faq-section .faq-item {
  background-color: var(--c-white);
  border-radius: 24px;
  overflow: hidden;
  transition: box-shadow var(--transition);
}

section.faq-section .faq-item__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px 46px;
  cursor: pointer;
  user-select: none;
}

section.faq-section .faq-item__title {
  font-size: clamp(20px, 2.2vw, 34px);
  font-weight: var(--fw-bold);
  color: var(--c-text-main);
  margin: 0;
  letter-spacing: -1.5px;
  padding-right: 24px;
}

section.faq-section .faq-item__icon {
  flex-shrink: 0;
  display: flex;
  margin-right: 20px;
  align-items: center;
  justify-content: center;
  transition: transform var(--transition);
}

.section.faq-section .faq-item__icon svg {
  width: 40px;
  height: 40px;
}

section.faq-section .faq-item--active .faq-item__icon {
  transform: rotate(180deg);
}

section.faq-section .faq-item__content {
  display: none;
}

section.faq-section .faq-item--active .faq-item__content {
  display: block;
}

section.faq-section .faq-item__inner {
  padding: 0 clamp(20px, 3vw, 46px) clamp(20px, 3vw, 46px) clamp(20px, 3vw, 46px);
  color: #4A4A4A;
  margin-top: 25px;
  font-size: clamp(16px, 1.5vw, 24px);
  line-height: 1.6;
}

section.faq-section .faq-item__inner p:nth-child(2) {
  margin-top: 20px;
}

section.faq-section .faq-item__inner p {
  margin-bottom: 0;
}

section.faq-section .faq-item__inner strong {
  color: var(--c-text-main);
  font-weight: var(--fw-bold);
}

/* Specific Blocks: Bottom CTA Footer */
.bottom-cta {
  background-color: #4A4745;
  color: var(--c-white);
  padding: 50px 0 80px 0;
}

section.bottom-cta .bottom-cta__top {
  margin-bottom: 40px;
}

section.bottom-cta .bottom-cta__title {
  font-size: clamp(32px, 4vw, 52px);
  font-weight: var(--fw-bold);
  margin-bottom: 15px;
}

section.bottom-cta .bottom-cta__desc {
  font-size: clamp(16px, 1.5vw, 22px);
  line-height: 1.5;
  color: #D1D1D1;
}

section.bottom-cta .bottom-cta__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: clamp(20px, 3vw, 40px);
}

section.bottom-cta .bottom-cta__btn {
  font-size: 22px;
  border-radius: 6px;
  height: 48px;
  padding: 0 50px;
}

section.bottom-cta .bottom-cta__contacts {
  display: flex;
  align-items: center;
  gap: clamp(10px, 2vw, 30px);
  flex-wrap: nowrap;
}

section.bottom-cta .bottom-cta__label {
  font-size: 24px;
  color: var(--c-white);
}

section.bottom-cta .bottom-cta__link {
  font-size: clamp(16px, 1.5vw, 24px);
  color: var(--c-primary);
  font-weight: var(--fw-medium);
  transition: color var(--transition);
  white-space: nowrap;
}

section.bottom-cta .bottom-cta__link:hover {
  color: var(--c-primary-hover);
}

section.bottom-cta .bottom-cta__socials {
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.5vw, 25px);
  margin-left: 30px;
}

.social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--transition), transform var(--transition);
}

.social-icon:hover {
  opacity: 0.8;
  transform: translateY(-2px);
}

/* =========================================
   FOOTER
========================================= */
.footer {
  background-color: #EBEBEB;
  color: #3B3936;
  padding-top: 25px;
}

.footer__top {
  border-bottom: 1px solid #D1D1D1;
  padding-bottom: 25px;
}

.footer__top-inner {
  display: grid;
  grid-template-columns: clamp(220px, 18vw, 350px) repeat(5, 1fr);
  gap: clamp(15px, 2vw, 30px);
  align-items: center;
}

.footer__logo {
  text-decoration: none;
  display: flex;
  align-items: center;
  max-width: 100%;
}

.footer__logo img {
  height: 48px;
  width: auto;
}

.footer__top-links {
  display: contents;
  /* Allows the links to become grid items directly */
}

.footer__top-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #000;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  transition: opacity 0.3s;
}

.footer__top-link:hover {
  opacity: 0.7;
}

.footer__top-link svg {
  color: #000;
}

.footer__main {
  padding: 20px 0;
}

.footer__grid {
  display: grid;
  grid-template-columns: clamp(220px, 18vw, 350px) repeat(5, 1fr);
  gap: clamp(15px, 2vw, 30px);
}

.footer__informer {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}

/* Yandex Review Widget */
.yandex-review-widget {
  background: #3B3936;
  border-radius: 6px;
  padding: 16px;
  max-width: 250px;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: none;
}

.yandex-review-widget__header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.yandex-review-widget__star {
  color: #FFA400;
  font-size: 22px;
  line-height: 1;
}

.yandex-review-widget__score {
  font-weight: 700;
  font-size: 20px;
  color: #fff;
  line-height: 1;
}

.yandex-review-widget__y-logo {
  background: #fff;
  color: #ff0000;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-weight: 900;
  font-size: 16px;
  margin-left: auto;
}

.yandex-review-widget__reviews {
  font-size: 14px;
  color: #fff;
  font-weight: 400;
}

.footer__socials {
  display: flex;
  gap: 14px;
  margin-top: 5px;
  margin-left: 10px;
}

.social-link {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
}

.social-link:hover {
  background: #f0f0f0;
}

.social-link img {
  width: 20px;
  height: 20px;
}

.footer__disclaimer {
  font-size: 13px;
  color: #999;
  line-height: 1.5;
  margin: 15px 0 0 0;
}

.footer__title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 12px;
  color: #000;
}

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

.footer__nav a {
  text-decoration: none;
  font-size: 14px;
  color: #666;
  transition: color 0.3s;
}

.footer__nav a:hover {
  color: var(--c-primary, #e30613);
}

.footer__bottom {
  padding: 25px 0;
}

.footer__bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.footer__dev {
  display: flex;
  align-items: center;
  gap: 10px;
}

.footer__dev-icon {
  width: 32px;
  height: 32px;
  background-color: #6C5DD3;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
}

.footer__dev-info {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}

.footer__dev-name {
  font-weight: 600;
  font-size: 12px;
  color: #5c628e;
}

.footer__dev-prod {
  font-size: 11px;
  color: #7d88b4;
  text-transform: none;
  letter-spacing: 0;
}

.footer__copyright {
  font-size: 12px;
  color: #999;
}

@media (max-width: 1200px) {
  .footer__grid {
    grid-template-columns: repeat(3, 1fr);
  }


  .footer__informer {
    grid-column: span 3;
    max-width: none;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }

  .footer__disclaimer {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .footer__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer__informer {
    grid-column: span 2;
  }

  .footer__top-inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .footer__bottom-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .footer__grid {
    grid-template-columns: 1fr;
  }

  .footer__informer {
    grid-column: span 1;
  }
}

/* Franchise Modal */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99998;
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.modal.active {
  opacity: 1;
  visibility: visible;
}

.modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}

.modal-content {
  position: relative;
  background: #FFFFFF;
  width: clamp(300px, 90vw, 930px);
  border-radius: 20px;
  overflow: hidden;
  z-index: 99999;
  pointer-events: auto;
  max-height: 95vh;
  overflow-y: scroll;
  display: flex;
  flex-direction: column;
}

.modal-close {
  position: absolute;
  top: 35px;
  right: 25px;
  width: 46px;
  height: 46px;
  background: #EDEDED;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #666;
  z-index: 10002;
  transition: background 0.2s ease;
  cursor: pointer;
  border: none;
}

.modal-close:hover {
  background: #e0e0e0;
}

.modal-image-wrapper {
  width: 100%;
  height: auto;
  padding: clamp(20px, 4vw, 30px) clamp(20px, 5vw, 80px) 0 clamp(20px, 5vw, 80px);
  position: relative;
}

.modal-image {
  width: 100%;
  display: block;
}

.modal-body {
  padding: 20px clamp(20px, 5vw, 80px) clamp(20px, 5vw, 80px);
  display: flex;
  flex-direction: column;
}

.modal-title {
  font-size: clamp(24px, 3.5vw, 43px) !important;
  font-weight: 800;
  color: #3B3936;
  margin-bottom: 15px;
  line-height: 1.2;
  letter-spacing: -1.5px;
}

.modal-desc {
  font-size: clamp(14px, 1.8vw, 24px);
  line-height: 1.4;
  color: #666;
  max-height: clamp(150px, 20vh, 250px);
  overflow-y: scroll;
  margin-bottom: 15px;
}

.modal-form {
  display: flex;
  margin-top: 15px;
  flex-direction: column;
  gap: 12px;
}


.modal-select-wrapper {
  position: relative;
}

.modal-select-wrapper::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 12px;
  height: 8px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%23333333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat center center;
  pointer-events: none;
}

.modal-submit {
  margin-top: 20px;
  height: 48px;
  background-color: var(--c-primary);
  color: var(--c-white);
  font-weight: 700;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  width: 100%;
}


.modal-submit:hover {
  background-color: #E79500;
}

@media (max-width: 640px) {
  .modal-content {
    margin: 15px;
    max-width: calc(100% - 30px);
  }

  .modal-body {
    padding: 30px 20px 40px;
  }
}

/* Thanks Modal Specific Styles */
.modal--thanks .modal-content {
  text-align: center;
  min-height: auto;
  padding: 60px 40px;
}

.thanks-icon {
  width: 64px;
  height: 64px;
  background-color: #FFA400;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px;
  color: #fff;
}

.thanks-icon svg {
  width: 32px;
  height: 32px;
}

.modal--thanks .modal-title {
  font-size: 32px;
  margin-bottom: 12px;
  margin-top: 0;
}

.modal--thanks .modal-desc {
  font-size: 16px;
}

.modal--thanks .thanks-close-btn {
  margin-top: 32px;
  height: 56px;
  font-size: 18px;
  min-width: 180px;
  width: auto;
}

/* Custom Request Modal */
.r-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  align-items: center;
  justify-content: center;
}

.r-modal.active {
  display: flex !important;
}

.r-modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(40, 40, 40, 0.85);
}

.r-modal-content {
  position: relative;
  background: #fff;
  border-radius: 12px;
  width: clamp(300px, 90vw, 760px);
  padding: clamp(20px, 3vw, 40px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  z-index: 1001;
  box-sizing: border-box;
}

.r-modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 32px;
  height: 32px;
  background: #f2f2f2;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: #333;
  transition: 0.2s;
  padding: 0;
  line-height: 1;
}

.r-modal-close:hover {
  background: #e0e0e0;
}

.r-modal-body {
  text-align: left;
}

.r-modal-title {
  font-size: 24px;
  font-weight: 700;
  color: #333;
  margin-bottom: 10px;
  margin-top: 0;
}

.r-modal-desc {
  font-size: 14px;
  color: #666;
  line-height: 1.5;
  margin-bottom: 24px;
  margin-top: 0;
}

.r-modal-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.r-modal-submit {
  margin-top: 8px;
  background-color: #FFA400;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  height: 52px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: 0.2s;
}

.r-modal-submit:hover {
  background-color: #E79500;
}

@media (max-width: 640px) {
  .r-modal-content {
    margin: 15px;
    padding: 30px 20px;
  }
}

.modal-input.error {
  border-color: #E30613;
  color: #E30613;
}

.modal-input.error::placeholder {
  color: #E30613;
}

.input-wrapper {
  position: relative;
  width: 100%;
}

.error-icon {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  display: none;
}

.modal-input.error+.error-icon {
  display: block;
}

/* Make sure there isn't double padding on custom inputs */
.modal-input {
  box-sizing: border-box;
}

/* Custom Select in forms */
.c-select {
  position: relative;
  width: 100%;
}

.c-select.has-value .c-select__header {
  color: #333;
}

.c-select.has-value .c-select__header {
  color: #333;
}

.c-select.is-active .c-select__header {
  border-color: #FFA400;
  border-radius: 8px 8px 0 0;
}

.c-select__header svg {
  transition: transform 0.2s ease;
}

.c-select.is-active .c-select__header svg {
  transform: rotate(180deg);
}

.c-select__list {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: var(--c-white);
  border: 1px solid #EDEDED;
  border-top: none;
  border-radius: 0 0 8px 8px;
  z-index: 100;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.c-select.is-active .c-select__list {
  display: block;
}

.c-select__item {
  padding: 12px 20px;
  cursor: pointer;
  color: #333;
  transition: background-color 0.2s ease;
}

.c-select__item:hover {
  background-color: #dcdcdc;
}

.c-select.error .c-select__header {
  border-color: #E30613;
  color: #E30613;
}

/* Error icon placement inside select */
.c-select .error-icon {
  right: 48px;
}

.c-select.error .error-icon {
  display: block;
}


@media (max-width: 1024px) {
  .subheader__inner {
    height: auto;
    min-height: 96px;
    padding: 10px 20px;
    flex-wrap: wrap;
    gap: clamp(10px, 2vw, 18px) clamp(5px, 1vw, 10px);
    justify-content: space-between;
  }

  .subheader__links {
    width: 100%;
    order: 1;
    display: flex;
    justify-content: flex-start;
    gap: clamp(4px, 1.5vw, 17px);
    flex: 0 0 100%;
  }

  .subheader__link {
    justify-content: center;
    font-size: clamp(1px, 1.5vw, 14px);
    white-space: normal;
    text-align: center;
    height: 35px;
    line-height: 1.2;
    padding: 8px clamp(4px, 1.5vw, 25px);
  }

  .subheader__dropdown {
    order: 2;
    height: clamp(35px, 5vw, 48px);
    display: flex;
    align-items: center;
  }

  .subheader__cta-btn {
    order: 3;
    margin-left: auto;
    padding: 0 clamp(15px, 4.8vw, 50px);
    height: clamp(35px, 4.4vw, 45px);
    font-size: clamp(1px, 1.5vw, 13px);
    opacity: 0;
    visibility: hidden;
    transform: translateX(10px);
    flex-shrink: 0;
  }

  .subheader__cta-btn.visible {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }

  .subheader__dropdown-btn {
    height: clamp(35px, 4.4vw, 45px);
    padding: 0 clamp(15px, 4.8vw, 50px);
    font-size: clamp(1px, 1.5vw, 13px);
    background-color: #EFEFEF;
    color: #3b3936;
  }

  .hero {
    max-height: clamp(320px, 43vw, 440px);
    min-height: clamp(320px, 43vw, 440px);
  }

  section.hero .hero__bg {
    background-size: cover;
    background-position: 0 -20px;
  }

  section.hero .hero__inner {
    height: clamp(260px, 34vw, 350px);
    margin-bottom: clamp(10px, 2vw, 20px);
  }

  section.hero .hero__wrap {
    padding-top: 0;
    padding-bottom: 0;
    justify-content: flex-start;
  }

  section.hero .hero__title {
    margin-top: clamp(30px, 7.8vw, 70px);
    letter-spacing: -1px;
    font-size: clamp(24px, 3.9vw, 40px);
  }

  section.hero .hero__form-wrapper {
    min-width: unset;
    width: clamp(200px, 35vw, 325px);
    margin-top: clamp(10px, 2.5vw, 30px);
    margin-right: 10px;
    align-self: flex-start;
  }

  section.hero .hero-form__btn {
    margin-top: 0;
  }

  .hero-form {
    padding: clamp(15px, 2vw, 25px) clamp(10px, 2.5vw, 20px);
    gap: clamp(4px, 1vw, 20px);
    border-radius: clamp(16px, 2.5vw, 24px);
    margin-top: 0px;
  }

  section.hero .hero-form__input {
    font-size: clamp(12px, 1vw, 10px);
    height: clamp(30px, 4.8vw, 44px);
  }

  .c-select__header {
    font-size: clamp(8px, 1vw, 10px);
    height: clamp(30px, 4.8vw, 44px);
    padding: 10px 15px;
  }

  /* РўР°РєР¶Рµ Р°РґР°РїС‚РёСЂСѓРµРј РєРЅРѕРїРєСѓ РІРЅСѓС‚СЂРё С„РѕСЂРјС‹ */
  section.hero .hero-form__btn {
    height: clamp(30px, 5vw, 44px);
    font-size: clamp(13px, 1.6vw, 16px);
    margin-top: 10px;
  }

  section.hero .hero__stats {
    margin-top: 0px;
    padding-right: clamp(0px, 5vw, 40px);
    display: flex;
    gap: 20px 15px;
  }

  .stat-item {
    gap: 5px;
    flex: 1 1 calc(33.333% - 15px);
    min-width: fit-content;
  }

  .stat-item__value {
    font-size: clamp(12px, 3.5vw, 36px);
    letter-spacing: -1px;
    white-space: normal;
    line-height: 1.1;
  }

  .stat-item__label {
    font-size: clamp(8px, 1.3vw, 13px);
    letter-spacing: -1px;
    white-space: normal;
    line-height: 1.2;
  }

  section.steps .step-card[style*="--row: 2"] {
    margin-top: 0px;
  }



  .features {
    padding-top: clamp(25px, 5vw, 50px);
  }

  section.features .features__header {
    margin-bottom: clamp(30px, 6.8vw, 45px);
  }

  section.features .features__title {
    letter-spacing: 1px;
    font-size: clamp(30px, 5vw, 40px);
    letter-spacing: 0.7px;
    margin-bottom: clamp(10px, 1.5vw, 15px);
  }

  section.features .features__grid {
    gap: 5px;
    grid-template-columns: repeat(3, clamp(120px, 31vw, 315px));
  }

  section.features .feature-card {
    padding: clamp(15px, 3.4vw, 30px) clamp(10px, 1.5vw, 15px) 0 clamp(10px, 1.5vw, 15px);
    min-height: clamp(120px, 17vw, 170px);
    max-height: clamp(120px, 17vw, 170px);
  }

  section.features .feature-card__title {
    font-size: clamp(10px, 2.1vw, 22px);
    margin-bottom: 5px;
  }

  section.features .feature-card__desc {
    font-size: clamp(8px, 1.2vw, 12px);
    margin-bottom: clamp(10px, 2vw, 20px);
  }

  section.features .feature-card__link {
    font-size: clamp(14px, 1.5vw, 16px);
  }

  .advantages {
    padding-top: clamp(10px, 2.5vw, 15px);
    padding-bottom: clamp(10px, 5vw, 50px);
  }


  section.advantages .advantages__header {
    margin-bottom: clamp(30px, 6.8vw, 70px);
  }

  section.advantages .advantages__title {
    margin-bottom: clamp(10px, 2vw, 20px);
  }


  section.advantages .advantages__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(20px, 10vw, 35px) clamp(10px, 7vw, 70px);
  }

  section.advantages .adv-card__header {
    margin-bottom: clamp(10px, 2vw, 20px);
    padding-top: clamp(10px, 2vw, 10px);
  }

  /* РџРµСЂРµРєР»СЋС‡Р°РµРј РІ РѕРґРЅСѓ РєРѕР»РѕРЅРєСѓ РЅР° 490px Рё РЅРёР¶Рµ РґР»СЏ СѓРґРѕР±СЃС‚РІР° */
  @media (max-width: 490px) {
    section.advantages .advantages__grid {
      grid-template-columns: 1fr;
    }
  }

  section.advantages .adv-card {
    max-height: clamp(250px, 30vw, 300px);
    min-height: clamp(250px, 30vw, 300px);
  }

  section.advantages .adv-card__icon {
    width: clamp(40px, 6.2vw, 64px);
    height: clamp(40px, 6.2vw, 64px);
    margin-right: 0px;
    margin-top: 0px;
  }

  section.advantages .adv-card__icon img {
    width: clamp(30px, 5.8vw, 64px);
    height: clamp(30px, 5.8vw, 64px);
  }

  section.advantages .adv-card__title {
    font-size: clamp(16px, 2.5vw, 26px);
  }

  section.advantages .adv-card__desc {
    font-size: clamp(11px, 1.7vw, 18px);
    margin-bottom: clamp(15px, 3vw, 32px);
  }

  section.advantages .adv-card__btn {
    padding: clamp(8px, 1.5vw, 12px) clamp(20px, 4.4vw, 45px);
    font-size: clamp(13px, 1.6vw, 16px);
    height: auto;
  }


  .biz-model {
    padding-top: clamp(10px, 2vw, 20px);
    padding-bottom: clamp(30px, 5.8vw, 60px);
  }

  section.biz-model .biz-model__title {
    margin-bottom: clamp(15px, 3vw, 30px);
  }

  section.biz-model .biz-model__tags {
    gap: clamp(8px, 1.5vw, 16px);
  }

  section.biz-model .biz-model__tag strong {
    font-size: clamp(14px, 3vw, 25px);
    margin-bottom: 0;
  }

  section.biz-model .biz-model__tag-text {
    font-size: clamp(13px, 3vw, 22px);
    margin-bottom: 0;
  }

  section.biz-model .biz-model__tag {
    font-size: clamp(13px, 1.5vw, 16px);
    padding: clamp(6px, 1vw, 10px) clamp(15px, 3.9vw, 18px) clamp(6px, 1vw, 10px) clamp(10px, 2vw, 10px);
  }

  section.biz-model .biz-model__desc {
    font-size: clamp(13px, 1.5vw, 16px);
  }

  .cta-banner {
    padding: clamp(20px, 3.4vw, 35px) 0px;
    min-height: clamp(260px, 33vw, 345px);
    max-height: clamp(260px, 33vw, 345px);
  }

  section.cta-banner .cta-banner__title {
    letter-spacing: -1px;
    font-size: clamp(14px, 2.5vw, 26px);
    margin-bottom: 20px;
    max-width: 50%;
  }

  section.cta-banner .cta-banner__bg-showroom {
    background-position: -112px -3px;
  }

  section.cta-banner .cta-banner__desc {
    font-size: clamp(10px, 2vw, 20px);
    margin-bottom: clamp(10px, 2vw, 20px);
  }

  section.cta-banner .cta-banner__btn {
    min-width: clamp(100px, 18vw, 200px) !important;
    max-width: 200px;
    font-size: clamp(10px, 1.5vw, 16px);
  }

  .assortment {
    padding-top: 55px;
  }

  section.assortment .assortment__title {
    margin-bottom: clamp(8px, 1.5vw, 15px);
    letter-spacing: -0.3px;
  }

  section.assortment .assortment__desc {
    font-size: clamp(14px, 2vw, 20px);
    line-height: 1.2;
  }

  section.assortment .assortment-card__value {
    font-size: clamp(20px, 3.5vw, 30px);
    letter-spacing: -1px;
  }

  section.assortment .assortment__header {
    margin-bottom: clamp(10px, 2vw, 20px);
  }

  section.assortment .assortment-card__overlay {
    min-height: clamp(70px, 9.7vw, 100px);
  }

  section.assortment .assortment-card {
    max-height: clamp(200px, 26vw, 270px);
  }

  .steps {
    padding-bottom: 80px;
  }

  section.steps .steps__title {
    margin-bottom: clamp(8px, 1.5vw, 15px);
  }

  section.steps .steps__desc {
    font-size: clamp(14px, 2vw, 20px);
  }

  section.steps .steps__grid {
    grid-template-columns: 1fr 1fr;
    gap: 0;
    row-gap: calc(var(--steps-gap) * 1.8);
  }

  section.steps .step-card {
    justify-self: start;
    max-width: 400px;
    min-width: clamp(150px, 26vw, 400px);
    max-height: 13vw;
  }

  /* 1 С€Р°Рі (Row 1 Left) */
  section.steps .steps__grid>.step-card:nth-child(2) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin-left: 2%;
  }

  /* 2 С€Р°Рі (Row 1 Right) */
  section.steps .steps__grid>.step-card:nth-child(3) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin-left: 0;
  }

  /* 4 С€Р°Рі (Row 2 Left) */
  section.steps .steps__grid>.step-card:nth-child(7) {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin-left: 37%;
  }

  /* 3 С€Р°Рі (Row 2 Right) */
  section.steps .steps__grid>.step-card:nth-child(4) {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-left: 27%;
  }

  /* 5 С€Р°Рі (Row 3 Left) */
  section.steps .steps__grid>.step-card:nth-child(6) {
    grid-column: 1 !important;
    grid-row: 3 !important;
    margin-left: 37%;
  }

  /* 6 С€Р°Рі (Row 3 Right) */
  section.steps .steps__grid>.step-card:nth-child(5) {
    grid-column: 2 !important;
    grid-row: 3 !important;
    margin-left: 27%;
  }

  section.steps .step-card[style*="--row: 2"] .step-card__content {
    margin-top: 0px;
  }



  section.steps .steps__svg--desktop {
    display: none;
  }

  section.steps .steps__svg--mobile {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
  }

  section.steps .step-card__desc {
    font-size: clamp(8px, 1.7vw, 18px);
    letter-spacing: -1px;
  }


  section.steps .step-card__tag {
    transform: translateX(-20px);
    font-size: clamp(12px, 2vw, 20px);
  }

  section.steps .step-card__tag::after {
    transform: translateX(-40px);
    border: 10px solid transparent;
    border-top-color: var(--c-primary);
    left: 60%;
  }

  .reviews {
    padding-top: clamp(40px, 7.8vw, 80px);
    margin: 0 !important;
  }

  .open-salons {
    align-items: start;
    min-height: clamp(380px, 46.8vw, 480px);
  }

  section.open-salons .open-salons__title {
    margin-bottom: clamp(15px, 3vw, 30px);
    margin-top: 0;
  }

  section.open-salons .open-salons__slide {
    margin-left: 0;
  }

  section.open-salons .open-salons__city {
    font-size: clamp(20px, 3vw, 30px);
  }

  section.open-salons .open-salons__stats {
    gap: clamp(5px, 1vw, 10px);
    margin-left: clamp(5px, 1vw, 10px);
  }

  section.open-salons .salon-stat__val {
    font-size: clamp(14px, 1.8vw, 18px);
    margin-bottom: 0;
  }

  section.open-salons .salon-stat__desc {
    font-size: clamp(12px, 1.4vw, 14px);
  }

  section.open-salons .open-salons__footer {
    margin: clamp(15px, 3vw, 30px) 0;
  }

  section.open-salons .open-salons__pagination {
    max-width: 700px;
  }

  section.open-salons .open-salons__btn {
    height: clamp(30px, 3.4vw, 35px);
  }

  section.steps .steps__header {
    margin-bottom: clamp(15px, 3vw, 30px);
  }

  section.steps .step-card__title {
    letter-spacing: -0.3px;
    margin-top: clamp(2px, 1vw, 35px);
    margin-bottom: clamp(3px, 1vw, 20px);
    font-size: clamp(10px, 2vw, 24px);
  }

  .faq-section {
    padding-bottom: clamp(15px, 3vw, 30px);
    padding-top: clamp(15px, 3vw, 30px);
  }

  .faq-cta {
    padding: clamp(15px, 2vw, 20px) 40px;
  }

  section.faq-section .faq-item__icon {
    width: 20px;
    height: 20px;
  }

  .faq-cta__title {
    font-size: clamp(20px, 2.7vw, 28px) !important;
  }

  .faq-cta__desc {
    margin-bottom: clamp(10px, 2vw, 20px);
  }

  .faq-cta__btn {
    padding: 0 clamp(15px, 3.4vw, 35px);
  }

  .faq__main-title {
    margin-bottom: clamp(15px, 3vw, 30px) !important;
  }

  section.faq-section .faq-item__header {
    padding: clamp(8px, 1.5vw, 15px) clamp(20px, 4vw, 40px);
  }

  .faq-list {
    gap: clamp(6px, 1.2vw, 12px);
  }

  section.faq-section .faq-item__title {
    font-size: clamp(14px, 3vw, 25px);
  }

  .bottom-cta {
    padding: clamp(20px, 3.4vw, 35px) 0;
  }

  section.bottom-cta .bottom-cta__title {
    font-size: clamp(24px, 3.5vw, 36px);
  }

  section.bottom-cta .bottom-cta__desc {
    font-size: clamp(14px, 1.6vw, 16px);
  }

  section.bottom-cta .bottom-cta__btn {
    padding: 0 clamp(15px, 3.4vw, 35px);
    font-size: clamp(14px, 1.8vw, 18px);
  }

  section.bottom-cta .bottom-cta__bottom {
    flex-wrap: wrap;
    gap: clamp(15px, 3vw, 30px);
  }

  section.bottom-cta .bottom-cta__contacts {
    gap: clamp(8px, 2vw, 20px);
    flex-wrap: wrap;
    justify-content: center;
  }

  section.bottom-cta .bottom-cta__label {
    font-size: clamp(16px, 1.8vw, 24px);
  }

  section.bottom-cta .bottom-cta__link {
    font-size: clamp(14px, 1.6vw, 20px);
  }

  section.bottom-cta .bottom-cta__socials {
    gap: clamp(10px, 3vw, 26px);
  }

  section.bottom-cta .bottom-cta__socials .social-icon img {
    width: clamp(24px, 4vw, 40px);
    height: clamp(24px, 4vw, 40px);
  }

  section.bottom-cta .bottom-cta__phone {
    display: flex;
    flex-direction: column;
    gap: clamp(2px, 0.5vw, 10px);
    align-items: center;
  }

  /* Unified height maintained at 48px or removed to use global rule */

  .steps {
    --steps-gap: clamp(40px, 11vw, 145px)
  }

  .legend-card {
    padding: clamp(10px, 2vw, 20px) clamp(20px, 4vw, 40px);
    gap: clamp(10px, 2vw, 50px);
  }

  .legend-card__text {
    font-size: clamp(12px, 1.2vw + 2px, 23px);
  }
}

@media (max-width: 1200px) and (min-width: 1025px) {
  section.steps .steps__svg {
    height: calc(var(--steps-gap) * 3.5);
  }

  .subheader__cta-btn {
    padding: 0 16px;
    height: 44px;
  }
}

/* ===== MOBILE 490px AND BELOW (Modernized) ===== */
@media (max-width: 490px) {

  .subheader__inner {
    flex-wrap: wrap;
    padding: clamp(12px, 4vw, 20px);
    height: auto;
    gap: 0;
    align-items: flex-start;
  }

  /* Transition for smooth opening */
  .mob-menu {
    width: 100%;
    position: relative;
    background: transparent;
    border-radius: 0;
    padding: 0;
    margin: 0;
    transition: all 0.4s ease;
    display: flex;
    flex-direction: column;
  }

  .mob-menu__input {
    order: 1;
  }

  .subheader {
    border-radius: 0 0 30px 30px;
  }

  .mob-menu:has(.mob-menu__input:checked) {
    background: #3B3936;
    border-radius: 0 0 24px 24px;
    padding: 16px 16px 24px 16px;
    margin: -16px -16px 16px -16px;
    width: calc(100% + 32px);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
  }

  .mob-menu__btn {
    order: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    height: clamp(44px, 10vw, 52px);
    min-height: clamp(44px, 10vw, 52px);
    background: #EFEFEF;
    border-radius: 12px;
    color: #3b3936;
    font-size: clamp(15px, 3.5vw, 17px);
    font-weight: 700;
    cursor: pointer;
    transition: margin-bottom 0.4s ease;
    margin-bottom: 0;
    flex-shrink: 0;
  }

  /* Transition for arrow */
  .mob-menu__arrow {
    transition: transform 0.4s ease;
  }

  .mob-menu__input:checked+.mob-menu__btn {
    margin-bottom: 12px;
  }

  /* Rotate chevron when open */
  .mob-menu__input:checked+.mob-menu__btn .mob-menu__arrow {
    transform: rotate(180deg);
  }

  /* Smooth transition for hidden elements */
  .subheader__dropdown {
    order: 3;
    display: flex;
    flex-direction: column;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
    width: 100%;
  }

  .subheader__links {
    order: 4;
    display: flex;
    flex-direction: column;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
    width: 100%;
    gap: 12px;
  }

  /* Hide CTA in mobile menu per screenshot */
  .subheader__cta-btn {
    order: 5;
    display: none !important;
  }

  /* Show all when checkbox checked */
  .mob-menu__input:checked~.subheader__dropdown {
    max-height: 500px;
    opacity: 1;
    height: 48px;
    margin-top: 0;
  }

  .mob-menu__input:checked~.subheader__links {
    max-height: 600px;
    opacity: 1;
    margin-top: 12px;
  }

  /* Dropdown button styling on mobile */
  .subheader__dropdown-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #EFEFEF;
    color: #3b3936;
    border-radius: 12px;
    height: clamp(44px, 10vw, 52px);
    min-height: clamp(44px, 10vw, 52px);
    padding: 0 20px;
    box-sizing: border-box;
    font-weight: 700;
    font-size: clamp(15px, 3.5vw, 17px);
    border: none;
    flex-shrink: 0;
  }

  .subheader__link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: clamp(44px, 10vw, 52px);
    min-height: clamp(44px, 10vw, 52px);
    padding: 8px 20px;
    background: transparent;
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    font-size: clamp(15px, 3.5vw, 17px);
    font-weight: 700;
    color: #fff;
    white-space: normal;
    text-align: center;
    line-height: 1.2;
    flex-shrink: 0;
  }

  /* Accent item from designer's image */
  .subheader__link--accent {
    color: #F8A502;
    border-color: #F8A502;
  }

  .subheader__link svg {
    display: block;
    width: 18px;
    height: 18px;
  }

  /* --- HERO SECTION --- */
  .hero {
    min-height: auto;
    max-height: none;
  }

  section.hero .hero__inner {
    display: contents;
  }

  section.hero .hero__form-wrapper {
    min-width: max-content;
    order: 3;
  }

  section.hero .hero__bg {
    background-position: 47% 180px;
  }

  section.hero .hero__wrap {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 34px;
    padding-bottom: 30px;
    text-align: left;
  }

  section.hero .hero__title {
    font-size: clamp(30px, 6.7vw, 44px);
    line-height: 0.95;
    text-align: left;
    margin-top: 10px;
    margin-bottom: clamp(30vh, 36.5vh, 50vh);
    width: 100%;
    order: 1;
    letter-spacing: 0px;
  }

  section.hero .hero__title .hero__title__secondary {
    letter-spacing: 1px;
    margin-top: 20px;
  }

  .hero__bg {
    background-position: -50% 50%;
  }

  /* Stats: 3+2 layout as requested */
  section.hero .hero__stats {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    width: 100%;
    gap: clamp(5px, 2vw, 15px) clamp(5px, 2vw, 15px);
    margin-top: 0;
    padding-right: 0;
    padding-bottom: clamp(20px, 5vw, 40px);
    order: 2;
  }

  .stat-item {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 2px;
    grid-column: span 2;
  }

  /* 3 items in first row, 2 items in second row */
  section.hero .hero__stats .stat-item:nth-child(4),
  section.hero .hero__stats .stat-item:nth-child(5) {
    grid-column: span 3;
  }

  .stat-item__value {
    font-size: clamp(18px, 7vw, 36px);
    font-weight: 800;
    letter-spacing: -0.7px;
    white-space: nowrap;
    margin-bottom: 5px;
    line-height: 1.1;
  }

  .stat-item__label {
    font-size: clamp(8px, 3vw, 11px);
    white-space: normal;
    line-height: 1.3;
    opacity: 0.85;
    color: rgba(255, 255, 255, 0.8);
    letter-spacing: 0;
  }

  /* Form */
  section.hero .hero__form-wrapper {
    width: 100%;
    margin: 15px auto;
  }

  .hero-form {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.45);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 18px;
    padding: clamp(16px, 4.5vw, 22px) clamp(12px, 3.5vw, 18px);
    gap: clamp(14px, 4vw, 20px);
    margin-top: 0;
  }

  section.hero .hero-form__input,
  .c-select__header,
  .modal-input {
    background: #fff;
    border-radius: 8px;
    height: 56px;
    font-size: 14px;
    color: #3b3936;
    border: 1px solid #EDEDED;
  }

  section.hero .hero-form__btn {
    height: clamp(52px, 12vw, 60px);
    margin-top: 0px;
    font-size: clamp(17px, 4.5vw, 19px);
    border-radius: 12px;
  }

  section.advantages .advantages__grid {
    gap: 85px
  }

  section.advantages .advantages__title {
    font-size: 36px;
    letter-spacing: -1.4px;
    margin-bottom: 20px;
  }

  section.advantages .advantages__desc {
    font-size: 16px;
    margin-bottom: 30px;
    line-height: 1.6;
  }

  section.advantages .adv-card {
    min-height: 250px;
    margin-right: 7px;
    margin-top: 7px;
  }


  section.advantages .adv-card__icon img {
    width: 60px;
    margin-top: 10px;
    height: 60px;
  }

  section.advantages .adv-card__title {
    font-size: 26px;
  }

  section.advantages .adv-card__desc {
    font-size: 18px;
    line-height: 1.6;
  }

  section.advantages .adv-card__btn {
    width: 100%;
    height: 60px;
    padding: 15px 20px;
    font-size: 22px;
  }

  section.biz-model .biz-model__title {
    margin-bottom: 24px;
    font-weight: 900;
    font-size: 32px;
    letter-spacing: 0.5px;
    width: 80%;
  }

  section.biz-model .biz-model__tag {
    font-size: 16px;
    padding: 0px 10px;
    height: 35px;
  }

  section.biz-model .biz-model__tags {
    gap: 12px;
  }

  section.features {
    padding-top: 10px;
  }

  section.features .features__title {
    font-size: 40px;
    letter-spacing: -1.3px;
    line-height: 1;
    margin-bottom: 10px;
  }

  section.features .features__desc {
    line-height: 1.6;
    letter-spacing: 1px;
    margin-bottom: 50px;
  }

  /* Feature cards вЂ” single column on mobile */
  section.features .features__grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  section.features .feature-card {
    max-height: none;
    min-height: 240px;
  }

  section.features .feature-card__title {
    font-size: 30px;
    margin-top: 25px;
  }

  section.features .feature-card__desc {
    font-size: 16px;
    margin-top: 10px;
  }

  section.features .feature-card__link {
    font-size: 20px;
    margin-top: 20px;
  }

  /* Steps Mobile Vertical Timeline */
  .steps {
    padding-top: 30px;
    padding-bottom: 20px;
  }

  section.steps .steps__visual {
    position: relative;
    padding-left: 20px;
    margin-top: 30px;
  }

  section.steps .steps__grid {
    display: flex;
    flex-direction: column;
    gap: 36px;
  }

  section.steps .steps__track {
    position: absolute;
    left: 10px;
    top: 5px;
    width: 20px;
    height: 100%;
    z-index: 1;
  }

  section.steps .steps__svg--mobile {
    display: none;
  }

  section.steps .steps__svg--mobile-small {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: fill;
  }

  section.steps .steps__grid {
    gap: 20px;
    padding-top: 0px;
  }

  section.steps .steps__visual {
    padding-left: 0;
  }

  section.steps .steps__grid>.step-card,
  section.steps .steps__grid>.step-card:nth-child(n) {
    grid-column: auto !important;
    grid-row: auto !important;
    margin: 0 !important;
    max-width: 100%;
    max-height: none;
    justify-self: stretch;
    padding-left: 35px;
    /* Make space for track */
    position: relative;
    z-index: 2;
  }

  section.steps .steps__grid>.step-card {
    transform: translateY(-20px);
  }

  /* Source HTML row ordering:
     1, 2, 3 (nth-child 2,3,4)
     6, 5, 4 (nth-child 5,6,7)
     We need visual vertical order: 1, 2, 3, 4, 5, 6 */
  section.steps .steps__grid>.step-card:nth-child(2) {
    order: 1;
  }

  section.steps .steps__grid>.step-card:nth-child(3) {
    order: 2;
  }

  section.steps .steps__grid>.step-card:nth-child(4) {
    order: 3;
  }

  section.steps .steps__grid>.step-card:nth-child(7) {
    order: 4;
  }

  section.steps .steps__grid>.step-card:nth-child(6) {
    order: 5;
  }

  section.steps .steps__grid>.step-card:nth-child(5) {
    order: 6;
  }

  section.steps .step-card__marker {
    position: static;
    display: inline-block;
    height: auto;
    width: auto;
    margin-bottom: 12px;
    margin-left: 22px;
  }

  section.steps .step-card__tag {
    position: relative;
    bottom: auto;
    left: auto;
    display: inline-block;
    padding: 6px 16px;
    font-size: 24px;
    border-radius: 6px;
    line-height: 1;
  }

  /* Change tooltip pointer from down to left */
  section.steps .step-card__tag::after {
    top: 50%;
    left: -12px;
    transform: translateY(-50%);
    border-width: 12px 14px 12px 0;
    border-style: solid;
    border-color: transparent var(--c-primary) transparent transparent;
  }

  section.steps .step-card__content {
    padding-left: 0;
    transform: none;
    margin-top: 0;
  }

  section.steps .step-card__title {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 8px;
  }

  section.steps .step-card__desc {
    font-size: 14px;
    line-height: 1.4;
  }


  /* CTA Banner вЂ” showroom image moves below content */
  .cta-banner {
    flex-direction: column;
    min-height: 600px;
    padding: 0;
    background-color: #3B3936;
    /* Match the dark background */
  }

  section.cta-banner .cta-banner__bg-planet {
    background-position: 0px 0px;
  }

  section.cta-banner .cta-banner__bg-showroom {
    background-image: url(/b2b/franshiza/assets/css/../images/yurkas_mob.png);
  }

  section.cta-banner .cta-banner__container {
    padding: 30px 20px 30px;
    order: 1;
    /* Increased padding */
  }

  section.cta-banner .cta-banner__bg-showroom {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    height: 310px;
    order: 2;
    /* Taller image as in screenshot */
    background-position: center bottom;
    background-size: cover;
  }

  section.cta-banner .cta-banner__bg-showroom::before {
    display: none;
  }

  section.cta-banner .cta-banner__bg-planet {
    width: 100%;
  }

  section.cta-banner .cta-banner__btn {
    width: 100%;
    max-width: 500px;
    height: 64px;
    padding: 20px 0;
    background-color: #F8A502 !important;
    /* Premium orange */
    font-size: 22px !important;
    border-radius: 10px !important;
    margin-top: 10px !important;
  }

  section.cta-banner .cta-banner__title {
    font-size: 26px;
    line-height: 1.15;
    font-weight: 800;
    margin-bottom: 40px;
    max-width: 100%;
    text-align: left;
  }

  section.cta-banner .cta-banner__title br {
    display: none;
  }

  section.cta-banner .cta-banner__desc {
    font-size: 16px;
    margin-bottom: 24px;
    line-height: 1.4;
    text-align: left;
    color: rgba(255, 255, 255, 0.9);
  }

  /* Assortment cards вЂ” no filter, cards large (single column via grid) */
  section.assortment .assortment-card {
    max-height: none;
    height: 610px;
  }

  section.assortment .assortment-card__img {
    filter: grayscale(0%);
    /* Always in colour */
  }

  section.assortment .assortment-card:hover .assortment-card__img {
    filter: grayscale(0%);
  }

  section.assortment .assortment-card__overlay {
    min-height: 230px;
  }

  section.assortment .assortment-card__value {
    font-size: 72px;
  }

  section.assortment .assortment-card__label {
    font-size: 40px;
    white-space: normal;
  }

  /* Assortment grid вЂ” single column */
  section.assortment .assortment__grid {
    grid-template-columns: 1fr;
    height: auto;
    gap: 24px;
  }

  .assortment {
    padding-top: 80px;
  }

  section.assortment .assortment__title {
    font-size: 36px;
    letter-spacing: -2px;
    margin-bottom: 20px;
  }

  section.assortment .assortment__desc {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 25px;
  }

  /* Network map dropdown proportional scaling */
  section.network .network__filters {
    gap: 3vw;
  }

  section.network .map-dropdown__header {
    width: 44.5vw;
    height: 9.6vw;
    padding: 0 3vw;
    gap: 2vw;
    border-radius: 1.2vw;
    box-shadow: 0 0.8vw 2.4vw rgba(0, 0, 0, 0.1);
  }

  section.network .map-dropdown__text {
    font-size: 3.2vw;
  }

  section.network .map-dropdown__badge {
    font-size: 2.2vw;
    min-width: 4.5vw;
    height: 4.5vw;
    border-radius: 2.25vw;
    padding: 0 1.2vw;
  }

  section.network .map-dropdown__arrow {
    width: 2.5vw;
    height: 1.6vw;
  }

  section.reviews .reviews__btn.reviews__btn--prev,
  section.reviews .reviews__btn.reviews__btn--next {
    background-color: #3939391A;
  }

  .review-card {
    flex: 0 0 100%;
    background-color: var(--c-white);
    border-radius: 12px;
    padding: clamp(16px, 1.5vw, 24px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: clamp(400px, 35vw, 500px);
  }

  section.faq-section .faq-item__title {
    font-size: clamp(20px, 2.2vw, 44px);
  }

  .open-salons {
    min-height: 92vh;
    max-height: none;
    padding: 40px 0 20px;
    display: flex;
    flex-direction: column;
  }

  section.open-salons .open-salons__container {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: auto;
  }

  section.open-salons .open-salons__content {
    flex: none;
    margin: auto 0;
  }

  section.open-salons .open-salons__title {
    font-size: 32px;
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.1;
  }

  section.open-salons .open-salons__title-accent {
    display: block;
    font-size: 54px;
    margin-top: 5px;
  }

  section.open-salons .open-salons__slide {
    margin-left: 0;
  }

  section.open-salons .open-salons__city {
    font-size: 38px;
    margin-bottom: 35px;
  }

  section.open-salons .open-salons__stats {
    gap: 32px;
  }

  section.open-salons .salon-stat__val {
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 2px;
  }

  section.open-salons .salon-stat__desc {
    font-size: 16px;
    line-height: 1.3;
    color: #fff;
  }

  section.open-salons .open-salons__footer {
    margin-top: auto;
    margin-bottom: 0;
  }

  section.open-salons .open-salons__pagination {
    margin-bottom: 35px;
    gap: 10px;
  }

  section.open-salons .open-salons__btn {
    width: 100%;
    height: 64px;
    background-color: #F8A502 !important;
    font-size: 20px;
    font-weight: 700;
    border-radius: 12px;
  }

  .faq-cta {
    padding: 20px 30px;
  }

  .faq-cta__btn {
    width: 100%;
  }

  .faq-list {
    gap: 20px;
    margin: 40px 0;
  }

  /* Bottom CTA Mobile Adaptation */
  .bottom-cta {
    padding: 50px 0 60px;
    background-color: #3C3935;
  }

  section.bottom-cta .bottom-cta__top {
    text-align: left;
    margin-bottom: 25px;
  }

  section.bottom-cta .bottom-cta__title {
    font-size: 32px;
    line-height: 1.1;
    margin-bottom: 20px;
  }

  section.bottom-cta .bottom-cta__desc {
    font-size: 15px;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.9);
  }

  section.bottom-cta .bottom-cta__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
  }

  section.bottom-cta .bottom-cta__btn {
    width: 100%;
    height: 64px;
    font-size: 22px;
    font-weight: 700;
    border-radius: 12px;
    margin-bottom: 5px;
  }

  .section.advantages .adv-card__header {
    padding: 0px;
    margin-bottom: 20px;
  }

  section.bottom-cta .bottom-cta__contacts {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 12px 20px;
  }

  section.bottom-cta .bottom-cta__label {
    font-size: 18px;
    color: #fff;
    opacity: 0.8;
  }

  section.bottom-cta .bottom-cta__phone {
    flex-direction: row;
    gap: 15px;
    align-items: center;
  }

  section.bottom-cta .bottom-cta__link {
    font-size: 18px;
    font-weight: 600;
  }

  section.bottom-cta .bottom-cta__socials {
    margin-top: 5px;
    gap: 15px;
  }

  section.bottom-cta .bottom-cta__socials .social-icon {
    border-radius: 8px;
    width: 48px;
    height: 48px;
    padding: 0;
  }

  section.bottom-cta .bottom-cta__socials .social-icon img {
    width: 28px;
    height: 28px;
    filter: none;
  }
}

/* ===== MOBILE 390px AND BELOW (Proportional scale-down) ===== */
@media (max-width: 390px) {

  /* --- SUBHEADER --- */
  .subheader__inner {
    padding: clamp(10px, 4.1vw, 16px);
  }

  .mob-menu:has(.mob-menu__input:checked) {
    padding: clamp(10px, 4.1vw, 16px) clamp(10px, 4.1vw, 16px) clamp(16px, 6.15vw, 24px) clamp(10px, 4.1vw, 16px);
  }

  .mob-menu__btn {
    height: clamp(38px, 12.3vw, 48px);
    min-height: clamp(38px, 12.3vw, 48px);
    border-radius: clamp(8px, 2.56vw, 10px);
    font-size: clamp(13px, 4.1vw, 16px);
    gap: clamp(8px, 3.08vw, 12px);
  }

  .subheader__dropdown-btn {
    border-radius: clamp(8px, 2.56vw, 10px);
    height: clamp(38px, 12.3vw, 48px);
    min-height: clamp(38px, 12.3vw, 48px);
    font-size: clamp(13px, 4.1vw, 16px);
    padding: 0 clamp(14px, 5.13vw, 20px);
  }

  .subheader__link {
    height: clamp(38px, 12.3vw, 48px);
    min-height: clamp(38px, 12.3vw, 48px);
    border-radius: clamp(8px, 2.56vw, 10px);
    font-size: clamp(13px, 4.1vw, 16px);
    padding: clamp(6px, 2.05vw, 8px) clamp(12px, 3.85vw, 15px);
  }

  .subheader__links {
    gap: clamp(8px, 3.08vw, 12px);
  }

  /* --- HERO --- */
  section.hero .hero__wrap {
    padding-top: clamp(24px, 8.72vw, 34px);
    padding-bottom: clamp(20px, 7.69vw, 30px);
  }

  section.hero .hero__title {
    font-size: clamp(24px, 8.46vw, 33px);
  }

  section.hero .hero__title .hero__title__secondary {
    margin-top: clamp(12px, 5.13vw, 20px);
  }

  section.hero .hero__stats {
    gap: clamp(3px, 1.28vw, 5px) clamp(3px, 1.28vw, 5px);
    padding-bottom: clamp(14px, 5.13vw, 20px);
  }

  .stat-item__value {
    font-size: clamp(14px, 5.64vw, 22px);
    margin-bottom: clamp(2px, 1.28vw, 5px);
  }

  .stat-item__label {
    font-size: clamp(7px, 2.31vw, 9px);
  }

  /* --- HERO FORM --- */
  section.hero .hero__form-wrapper {
    margin: clamp(8px, 3.85vw, 15px) auto;
  }

  .hero-form {
    border-radius: clamp(12px, 4.62vw, 18px);
    padding: clamp(12px, 4.62vw, 18px) clamp(10px, 3.59vw, 14px);
    gap: clamp(10px, 4.62vw, 18px);
  }

  section.hero .hero-form__input,
  .c-select__header,
  .modal-input {
    height: clamp(40px, 14.36vw, 56px);
    font-size: clamp(11px, 3.59vw, 14px);
  }

  section.hero .hero-form__btn {
    height: clamp(42px, 13.33vw, 52px);
    font-size: clamp(14px, 4.62vw, 18px);
    border-radius: clamp(8px, 3.08vw, 12px);
  }

  /* --- ADVANTAGES --- */
  section.advantages .advantages__grid {
    gap: clamp(50px, 21.79vw, 85px);
  }

  section.advantages .advantages__title {
    font-size: clamp(26px, 9.23vw, 36px);
    margin-bottom: clamp(14px, 5.13vw, 20px);
  }

  section.advantages .advantages__desc {
    font-size: clamp(13px, 4.1vw, 16px);
    margin-bottom: clamp(20px, 7.69vw, 30px);
  }

  section.advantages .adv-card {
    min-height: clamp(200px, 64.1vw, 250px);
  }

  section.advantages .adv-card__icon img {
    width: clamp(42px, 15.38vw, 60px);
    height: clamp(42px, 15.38vw, 60px);
  }

  section.advantages .adv-card__title {
    font-size: clamp(20px, 6.67vw, 26px);
  }

  section.advantages .adv-card__desc {
    font-size: clamp(14px, 4.62vw, 18px);
  }

  section.advantages .adv-card__btn {
    height: clamp(46px, 15.38vw, 60px);
    padding: clamp(10px, 3.85vw, 15px) clamp(14px, 5.13vw, 20px);
    font-size: clamp(17px, 5.64vw, 22px);
  }

  /* --- BIZ MODEL --- */
  section.biz-model .biz-model__title {
    font-size: clamp(24px, 8.21vw, 32px);
    margin-bottom: clamp(16px, 6.15vw, 24px);
  }

  section.biz-model .biz-model__tag {
    font-size: clamp(13px, 4vw, 16px);
    height: clamp(28px, 9.97vw, 35px);
  }

  section.biz-model .biz-model__tags {
    gap: clamp(8px, 3.08vw, 12px);
  }

  /* --- FEATURES --- */
  section.features .features__title {
    font-size: clamp(28px, 10.26vw, 40px);
    margin-bottom: clamp(6px, 2.56vw, 10px);
  }

  section.features .features__desc {
    margin-bottom: clamp(30px, 12.82vw, 50px);
  }

  section.features .features__grid {
    gap: clamp(20px, 8.72vw, 34px);
  }

  section.features .feature-card {
    min-height: clamp(180px, 61.54vw, 240px);
  }

  section.features .feature-card__title {
    font-size: clamp(22px, 7vw, 30px);
    margin-top: clamp(16px, 6vw, 25px);
  }

  section.features .feature-card__desc {
    font-size: clamp(13px, 4.1vw, 16px);
  }

  section.features .feature-card__link {
    font-size: clamp(16px, 5.13vw, 20px);
    margin-top: clamp(14px, 5.13vw, 20px);
  }

  /* --- STEPS --- */
  section.steps .step-card__tag {
    font-size: clamp(18px, 6.15vw, 24px);
    padding: clamp(4px, 1.54vw, 6px) clamp(10px, 4.1vw, 16px);
  }

  section.steps .step-card__title {
    font-size: clamp(16px, 5.13vw, 20px);
    margin-bottom: clamp(4px, 2.05vw, 8px);
  }

  section.steps .step-card__desc {
    font-size: clamp(11px, 3.59vw, 14px);
  }

  /* --- CTA BANNER --- */
  .cta-banner {
    min-height: clamp(460px, 153.85vw, 600px);
  }

  section.cta-banner .cta-banner__container {
    padding: clamp(20px, 7.69vw, 30px) clamp(14px, 5.13vw, 20px) clamp(20px, 7.69vw, 30px);
  }

  section.cta-banner .cta-banner__btn {
    height: clamp(48px, 16.41vw, 64px);
    font-size: clamp(17px, 5.64vw, 22px) !important;
  }

  section.cta-banner .cta-banner__title {
    font-size: clamp(20px, 6.67vw, 26px);
    margin-bottom: clamp(24px, 10.26vw, 40px);
  }

  section.cta-banner .cta-banner__desc {
    font-size: clamp(13px, 4.1vw, 16px);
    margin-bottom: clamp(16px, 6.15vw, 24px);
  }

  section.cta-banner .cta-banner__bg-showroom {
    height: clamp(220px, 79.49vw, 310px);
  }

  /* --- ASSORTMENT --- */
  .assortment {
    padding-top: clamp(50px, 20.51vw, 80px);
  }

  section.assortment .assortment__title {
    font-size: clamp(26px, 9.23vw, 36px);
    margin-bottom: clamp(14px, 5.13vw, 20px);
  }

  section.assortment .assortment__desc {
    font-size: clamp(14px, 4.62vw, 18px);
    margin-bottom: clamp(16px, 6.41vw, 25px);
  }

  section.assortment .assortment-card {
    height: clamp(420px, 156.41vw, 610px);
  }

  section.assortment .assortment-card__overlay {
    min-height: clamp(160px, 58.97vw, 230px);
  }

  section.assortment .assortment-card__value {
    font-size: clamp(48px, 18.46vw, 72px);
  }

  section.assortment .assortment-card__label {
    font-size: clamp(28px, 10.26vw, 40px);
  }

  section.assortment .assortment__grid {
    gap: clamp(16px, 6.15vw, 24px);
  }

  /* --- REVIEWS --- */
  .review-card {
    min-height: clamp(300px, 102.56vw, 400px);
    padding: clamp(12px, 4.1vw, 16px);
  }

  /* --- FAQ --- */
  section.faq-section .faq-item__title {
    font-size: clamp(16px, 5.13vw, 20px);
  }

  .faq-list {
    gap: clamp(12px, 5.13vw, 20px);
    margin: clamp(24px, 10.26vw, 40px) 0;
  }

  .faq-cta {
    padding: clamp(14px, 5.13vw, 20px) clamp(20px, 7.69vw, 30px);
  }

  /* --- OPEN SALONS --- */
  section.open-salons .open-salons__title {
    font-size: clamp(24px, 8.21vw, 32px);
  }

  section.open-salons .open-salons__title-accent {
    font-size: clamp(38px, 13.85vw, 54px);
  }

  section.open-salons .open-salons__city {
    font-size: clamp(28px, 9.74vw, 38px);
    margin-bottom: clamp(24px, 8.97vw, 35px);
  }

  section.open-salons .open-salons__stats {
    gap: clamp(20px, 8.21vw, 32px);
  }

  section.open-salons .salon-stat__val {
    font-size: clamp(18px, 6.15vw, 24px);
  }

  section.open-salons .salon-stat__desc {
    font-size: clamp(13px, 4.1vw, 16px);
  }

  section.open-salons .open-salons__btn {
    height: clamp(48px, 16.41vw, 64px);
    font-size: clamp(16px, 5.13vw, 20px);
  }

  section.open-salons .open-salons__pagination {
    margin-bottom: clamp(24px, 8.97vw, 35px);
  }

  /* --- BOTTOM CTA --- */
  .bottom-cta {
    padding: clamp(34px, 12.82vw, 50px) 0 clamp(40px, 15.38vw, 60px);
  }

  section.bottom-cta .bottom-cta__title {
    font-size: clamp(24px, 8.21vw, 32px);
    margin-bottom: clamp(14px, 5.13vw, 20px);
  }

  section.bottom-cta .bottom-cta__desc {
    font-size: clamp(12px, 3.85vw, 15px);
  }

  section.bottom-cta .bottom-cta__btn {
    height: clamp(48px, 16.41vw, 64px);
    font-size: clamp(17px, 5.64vw, 22px);
  }

  section.bottom-cta .bottom-cta__label {
    font-size: clamp(14px, 4.62vw, 18px);
  }

  section.bottom-cta .bottom-cta__link {
    font-size: clamp(14px, 4.62vw, 18px);
  }

  section.bottom-cta .bottom-cta__socials .social-icon {
    width: clamp(38px, 12.31vw, 48px);
    height: clamp(38px, 12.31vw, 48px);
  }

  section.bottom-cta .bottom-cta__socials .social-icon img {
    width: clamp(22px, 7.18vw, 28px);
    height: clamp(22px, 7.18vw, 28px);
  }
}




.offices-top__toggle {
  display: flex;
  margin-left: 13px;
}

.offices-top__list,
.offices-top__map {
  display: inline-flex;
  align-items: center;
  font-size: 17px;
  color: #BCBDBD !important;
  padding: 10px 6px 10px 29px;
  transition: all .25s ease;
  cursor: pointer;
  border-bottom: 2px solid #BCBDBD !important;
  position: relative;
  width: 105px;
  transition: all .25s ease;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
}

.offices-top__list:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 13px;
  background: url("data:image/svg+xml,%3Csvg width='18' height='13' viewBox='0 0 18 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect y='10' width='18' height='3' rx='1.5' fill='%23BCBDBD'/%3E%3Crect y='5' width='18' height='3' rx='1.5' fill='%23BCBDBD'/%3E%3Crect width='18' height='3' rx='1.5' fill='%23BCBDBD'/%3E%3C/svg%3E") center/cover no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all .25s ease;
}

.offices-top__map:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 20px;
  background: url("data:image/svg+xml,%3Csvg width='16' height='20' viewBox='0 0 16 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.98191 0C3.59177 0 0 3.59107 0 7.98027C0 13.3669 6.98346 19.4515 7.28294 19.7509C7.48228 19.851 7.78166 19.9502 7.981 19.9502C8.18034 19.9502 8.47991 19.851 8.67924 19.7509C8.97872 19.4515 15.9622 13.3669 15.9622 7.98027C15.9622 3.59107 12.3702 0 7.98009 0H7.98191ZM7.98191 17.655C5.88651 15.6602 1.9953 11.3711 1.9953 7.97933C1.9953 4.68767 4.6886 1.9939 7.98191 1.9939C11.2743 1.9939 13.9687 4.68673 13.9687 7.97933C13.9687 11.271 10.0773 15.6602 7.98191 17.655ZM7.98191 3.98967C5.78731 3.98967 3.99151 5.7852 3.99151 7.97933C3.99151 10.1735 5.78731 11.969 7.98191 11.969C10.1765 11.969 11.9725 10.1735 11.9725 7.97933C11.9725 5.7852 10.1765 3.98967 7.98191 3.98967ZM7.98191 9.9751C6.88414 9.9751 5.9868 9.0778 5.9868 7.98027C5.9868 6.88274 6.88414 5.98543 7.98191 5.98543C9.07969 5.98543 9.97721 6.88274 9.97721 7.98027C9.97721 9.0778 9.07969 9.9751 7.98191 9.9751Z' fill='%23BCBDBD'/%3E%3C/svg%3E") center no-repeat;
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  transition: all .25s ease;
}

.offices-top__list.active,
.offices-top__map.active {
  color: #FFA400 !important;
  border-bottom: 2px solid #FFA400 !important;
}

.offices-top__list:hover,
.offices-top__map:hover {
  border-bottom: 2px solid #FFA400 !important;
}

.offices-top__toggle:has(button:hover) .offices-top__list.active:not(:hover),
.offices-top__toggle:has(button:hover) .offices-top__map.active:not(:hover),
.offices-top__toggle:has(a:hover) .offices-top__list.active:not(:hover),
.offices-top__toggle:has(a:hover) .offices-top__map.active:not(:hover) {
  border-bottom: 2px solid #BCBDBD !important;
}

.offices-top__list.active:before {
  background: url("data:image/svg+xml,%3Csvg width='18' height='13' viewBox='0 0 18 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect y='10' width='18' height='3' rx='1.5' fill='%23FFA400'/%3E%3Crect y='5' width='18' height='3' rx='1.5' fill='%23FFA400'/%3E%3Crect width='18' height='3' rx='1.5' fill='%23FFA400'/%3E%3C/svg%3E") center/cover no-repeat;
}

.offices-top__map.active:before {
  background: url("data:image/svg+xml,%3Csvg width='16' height='20' viewBox='0 0 16 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.98191 0C3.59177 0 0 3.59107 0 7.98027C0 13.3669 6.98346 19.4515 7.28294 19.7509C7.48228 19.851 7.78166 19.9502 7.981 19.9502C8.18034 19.9502 8.47991 19.851 8.67924 19.7509C8.97872 19.4515 15.9622 13.3669 15.9622 7.98027C15.9622 3.59107 12.3702 0 7.98009 0H7.98191ZM7.98191 17.655C5.88651 15.6602 1.9953 11.3711 1.9953 7.97933C1.9953 4.68767 4.6886 1.9939 7.98191 1.9939C11.2743 1.9939 13.9687 4.68673 13.9687 7.97933C13.9687 11.271 10.0773 15.6602 7.98191 17.655ZM7.98191 3.98967C5.78731 3.98967 3.99151 5.7852 3.99151 7.97933C3.99151 10.1735 5.78731 11.969 7.98191 11.969C10.1765 11.969 11.9725 10.1735 11.9725 7.97933C11.9725 5.7852 10.1765 3.98967 7.98191 3.98967ZM7.98191 9.9751C6.88414 9.9751 5.9868 9.0778 5.9868 7.98027C5.9868 6.88274 6.88414 5.98543 7.98191 5.98543C9.07969 5.98543 9.97721 6.88274 9.97721 7.98027C9.97721 9.0778 9.07969 9.9751 7.98191 9.9751Z' fill='%23FFA400'/%3E%3C/svg%3E") center no-repeat;
}


.p-offices-list.minify .p-offices-list__tomap,
.p-offices-list.minify .p-offices-list__call,
.p-offices-list.minify .p-offices-list__top,
.p-offices-list.minify .p-offices-list__item.m-photo {
  display: none;
}

.p-offices-list.minify .p-offices-list__row {
  padding: 25px 0;
}

.p-offices-list.minify .p-offices-list__row:first-child {
  padding-top: 0;
}

.p-offices-list.minify .p-offices-list__item {
  width: 100% !important;
  margin-right: 0;
}

.p-offices-list.minify .p-offices-list__item.m-salon {
  grid-area: title;
  margin-right: 0;
  padding-right: 15px !important;
  padding-left: 0;
}

.p-offices-list.minify .p-offices-list__item.m-phone {
  grid-area: phone;
  white-space: nowrap;
  margin-bottom: 10px;
}

.p-offices-list.minify .p-offices-list__item.m-time {
  grid-area: time;
  margin-right: 0;
  /* white-space: nowrap; */
}

.p-offices-list.minify .p-offices-list__row {
  display: grid;
  grid-template-areas: "title phone" "title time";
  grid-template-columns: 1fr 200px;
}


.p-offices-list.minify .p-offices-list__salon {
  font-size: 22px;
  margin-bottom: 20px;
}


.p-offices-list.minify .offices-top__list:before,
.p-offices-list.minify .offices-top__map:before {
  position: static;
  transform: none;
  margin: 0 8px 0 0;
}

.p-offices-list.minify .layout--map .offices-inner {
  padding: 0 20px;
}

.p-offices-list.minify .p-offices-list__phone:before {

  left: 0;
}

.p-offices-list.minify .p-offices-list__phone {
  padding-left: 27px;
}

.p-offices-list.minify .p-offices-list__wrap {
  max-height: 640px;
  overflow-x: hidden;
  overflow-y: auto;
  margin-right: 10px;
  padding-right: 10px;
}

.p-offices-list.minify .offices-city {
  display: none;
}

.offices-city {
  display: flex;

  flex-wrap: wrap;
  padding-top: 37px;
  font-size: 17px;
}

.offices-city__item {
  margin: 0 17px 0 0;
  display: flex;
  align-items: center;
  text-decoration: none !important;
  color: #3D3935 !important;
}

.offices-city__txt {
  transition: all .25s ease;
}

.offices-city__txt:hover {
  color: #FFA400 !important;
}

.offices-city__count {
  margin-left: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #FFA400;
  border-radius: 20px;
  color: #3D3935;
  min-width: 17px;
  height: 17px;
  font-size: 13px;
  line-height: 1;
  padding: 0 5px;
}

.dropdown-container {
  position: relative;
  border: 2px solid transparent;
  padding: 5px 13px;
  border-radius: 8px;
}

.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: -2px;
  margin: -3px 0 0 0;
  background-color: white;
  border: 2px solid #D9DADA;
  border-top: 0;
  width: calc(100% + 4px);
  border-radius: 8px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  padding: 0 9px;
  z-index: 1;
}

.dropdown-container.active {
  border: 2px solid #D9DADA;
}

.dropdown-container.active .dropdown-menu {
  display: block;
}

.dropdown-menu a {
  display: flex;
  align-items: center;
  padding: 4px 9px;
  color: #383938 !important;
  text-decoration: none;
  transition: background-color 0.2s;
  margin: 0 -9px;
}

.dropdown-menu a:last-child {
  border-bottom: none;
}

.dropdown-menu a:hover {
  background-color: #D9DADA;
}

.ymaps-link:before {
  content: '';
  display: inline-block;
  width: 28px;
  height: 28px;
  background: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 0.5C23.0081 0.5 29.5 6.99187 29.5 15C29.5 23.0081 23.0081 29.5 15 29.5C6.99187 29.5 0.5 23.0081 0.5 15C0.5 6.99187 6.99187 0.5 15 0.5Z' fill='white' stroke='%23D9DADA'/%3E%3Cpath d='M7.32752 6.84066L6.57883 7.77653C6.25226 8.18474 6.29521 8.77559 6.67738 9.13226L13.5 15.5001V25.0001H16.5V15.5001L23.3226 9.13226C23.7048 8.77559 23.7477 8.18473 23.4212 7.77653L22.6725 6.84066C22.3094 6.38676 21.6371 6.33703 21.2112 6.73256L15 12.5001L8.78884 6.73256C8.3629 6.33703 7.69064 6.38676 7.32752 6.84066Z' fill='%23FF0013'/%3E%3C/svg%3E%0A") center/cover no-repeat;
  margin-right: 7px;
}

.gmaps-link:before {
  content: '';
  display: inline-block;
  width: 28px;
  height: 28px;
  background: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_4_33)'%3E%3Cpath d='M15.1235 30C23.3037 30 29.9351 23.2843 15C29.9351 6.71573 23.3037 0 15.1235 0C6.94323 0 0.311829 6.71573 0.311829 15C0.311829 23.2843 6.94323 30 15.1235 30Z' fill='%23FEFEFE'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat;
  margin-right: 7px;
}

.dropdown__links {
  border-top: 1px solid #D9DADA;
  margin: 3px 0 0 0;
}

.page-seo {
  margin: 80px 0;
}


.photo-popup {
  display: block;
  cursor: pointer;
}

/* Modal styles */
.photo-modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10000;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.photo-modal-overlay.active {
  display: flex;
  opacity: 1;
}

.photo-modal-container {
  position: relative;
  max-width: 700px;
  max-height: 90%;
  padding: 30px 25px 25px;
  border-radius: 20px;
  background: #fff;
  overflow-y: auto;
}

.photo-modal-image {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  border-radius: 20px;
  display: block;
  margin: 40px 0 0 0;
}

.photo-modal-close {
  position: absolute;
  top: 22px;
  right: 25px;
  width: 34px;
  height: 34px;
  background: #EBEBEB;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #3D3935;
  transition: all 0.3s ease;
  z-index: 10001;
}

.photo-modal-close:hover {
  background: #DEE0E4;
}

.photo-modal-close:before {
  content: 'Р“вЂ”';
  line-height: 1;
}

.photo-modal-title {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0 40px 0 0;
  font-size: 20px;
  margin: 0 0 -15px 0;
  line-height: 1.1;
  font-weight: 800;
}

/* Call Modal styles */
.call-modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10000;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.call-modal-overlay.active {
  display: flex;
  opacity: 1;
}

.call-modal-container {
  position: relative;
  max-width: 500px;
  width: 90%;
  padding: 30px 25px 25px;
  border-radius: 20px;
  background: #fff;
}

.call-modal-title {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0 40px 0 0;
  font-size: 20px;
  line-height: 1.1;
  font-weight: 800;
  font-family: 'Gilroy', sans-serif;
  color: #3D3935;
  margin: 0 0 15px 0;
}

.call-modal-text {
  font-size: 16px;
  line-height: 1.5;
  color: #3D3935;
}

.layout .call-modal-close {
  position: absolute;
  top: 22px;
  right: 25px;
  width: 34px;
  height: 34px;
  background: #EBEBEB;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #3D3935;
  transition: all 0.3s ease;
  z-index: 10001;
}

.layout .call-modal-close:hover {
  background: #DEE0E4;
}

.layout .call-modal-close:before {
  content: 'Р“вЂ”';
  line-height: 1;
}

/* Custom select in call modal */
.call-modal-form__item.m-select {
  position: relative;
}

.call-modal-select-native {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.call-modal-select {
  position: relative;
  width: 100%;
}

.call-modal-select__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px;
  height: 64px;
  background: #EBEBEB;
  border-radius: 8px;
  cursor: pointer;
}

.call-modal-select__trigger:hover .call-modal-select__arrow {
  background: url("data:image/svg+xml,%3Csvg width='11' height='7' viewBox='0 0 11 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.219195 0.220729C0.513419 -0.0735762 0.988674 -0.0735762 1.2829 0.220729L5.26468 4.20367L9.24661 0.220729C9.54083 -0.0735762 10.0161 -0.0735762 10.3103 0.220729C10.6045 0.515033 10.6045 0.990456 10.3103 1.28476L5.79734 5.79893C5.50312 6.09324 5.02786 6.09324 4.73364 5.79893L0.220668 1.28476C-0.073556 0.990456 -0.073556 0.515033 0.220668 0.220729H0.219195Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center no-repeat;
}

.call-modal-select__value {
  font-size: 22px;
  color: #393939;
}

.call-modal-select__value.placeholder {
  color: #393939;
}

.call-modal-select__arrow {
  width: 11px;
  height: 7px;
  background: url("data:image/svg+xml,%3Csvg width='11' height='7' viewBox='0 0 11 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.219121 0.220729C0.513345 -0.0735762 0.988674 -0.0735762 1.2829 0.220729L5.26475 4.20367L9.24653 0.220729C9.54076 -0.0735762 10.0161 -0.0735762 10.3103 0.220729C10.6045 0.515033 10.6045 0.990456 10.3103 1.28476L5.79734 5.79893C5.50312 6.09324 5.02786 6.09324 4.73364 5.79893L0.220668 1.28476C-0.073556 0.990456 -0.073556 0.515033 0.220668 0.220729H0.219121Z' fill='%23383938'/%3E%3C/svg%3E") center no-repeat;
  transition: all .25s ease;
}

.call-modal-select.open .call-modal-select__arrow {
  transform: rotate(180deg);
  background: url("data:image/svg+xml,%3Csvg width='11' height='7' viewBox='0 0 11 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.219195 0.220729C0.513419 -0.0735762 0.988674 -0.0735762 1.2829 0.220729L5.26468 4.20367L9.24661 0.220729C9.54083 -0.0735762 10.0161 -0.0735762 10.3103 0.220729C10.6045 0.515033 10.6045 0.990456 10.3103 1.28476L5.79734 5.79893C5.50312 6.09324 5.02786 6.09324 4.73364 5.79893L0.220668 1.28476C-0.073556 0.990456 -0.073556 0.515033 0.220668 0.220729H0.219195Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center no-repeat;
}

.call-modal-select__options {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  background: #EBECEC;
  border-radius: 8px;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 10;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.call-modal-select.open .call-modal-select__options {
  max-height: 200px;
  overflow-y: auto;
  opacity: 1;
  visibility: visible;
}

.call-modal-select__option {
  padding: 12px 16px;
  font-size: 16px;
  color: #3D3935;
  background: #EBECEC;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.call-modal-select__option:hover {
  background-color: #B2B3B3;
}

.call-modal-select__option.selected {
  background-color: #e3e3e3;
}

.map-scale {
  display: inline-flex;
  align-items: center;
  background: #3D3935;
  border-radius: 8px;
  color: #fff !important;
  text-decoration: none !important;
  position: absolute;
  bottom: 45px;
  left: 6px;
  z-index: 999;
  font-size: 17px;
  padding: 13px 16px;
}

.map-scale:after {
  content: "";
  display: inline-block;
  width: 23px;
  height: 23px;
  background: url("data:image/svg+xml,%3Csvg width='23' height='23' viewBox='0 0 23 23' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.849176 13.4701C1.30771 13.4785 1.68075 13.8532 1.67978 14.3045L1.66631 20.527L7.88811 20.5411C8.34664 20.5495 8.71969 20.9242 8.71871 21.3755C8.7177 21.8413 8.34304 22.2143 7.88451 22.2059L0.830976 22.1891C0.372413 22.1953 -0.000634169 21.8206 0.000374128 21.3547L0.0156549 14.3012C0.0166315 13.8499 0.391291 13.477 0.849853 13.4708L0.849176 13.4701Z' fill='white'/%3E%3Cpath d='M21.351 8.73596C20.8925 8.72759 20.5194 8.35284 20.5204 7.90157L20.5339 1.6791L14.3121 1.66495C13.8536 1.65658 13.4805 1.28184 13.4815 0.830568C13.4825 0.364743 13.8572 -0.00821736 14.3157 0.000153357L21.3692 0.0169398C21.8278 0.0107535 22.2008 0.385501 22.1998 0.851326L22.1845 7.90486C22.1836 8.35613 21.8089 8.72909 21.3503 8.73528L21.351 8.73596Z' fill='white'/%3E%3C/svg%3E") center/cover no-repeat;
  transition: all .25s ease;
  margin-left: 8px;
}

.map-scale:hover:after {
  background: url("data:image/svg+xml,%3Csvg width='23' height='23' viewBox='0 0 23 23' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.849176 13.4701C1.30771 13.4785 1.68075 13.8532 1.67978 14.3045L1.66631 20.527L7.88811 20.5411C8.34664 20.5495 8.71969 20.9242 8.71871 21.3755C8.7177 21.8413 8.34304 22.2143 7.88451 22.2059L0.830976 22.1891C0.372413 22.1953 -0.000634169 21.8206 0.000374128 21.3547L0.0156549 14.3012C0.0166315 13.8499 0.391291 13.477 0.849853 13.4708L0.849176 13.4701Z' fill='%23FFA400'/%3E%3Cpath d='M21.351 8.73596C20.8925 8.72759 20.5194 8.35284 20.5204 7.90157L20.5339 1.6791L14.3121 1.66495C13.8536 1.65658 13.4805 1.28184 13.4815 0.830568C13.4825 0.364743 13.8572 -0.00821736 14.3157 0.000153357L21.3692 0.0169398C21.8278 0.0107535 22.2008 0.385501 22.1998 0.851326L22.1845 7.90486C22.1836 8.35613 21.8089 8.72909 21.3503 8.73528L21.351 8.73596Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center/cover no-repeat;
}

.layout .offices-top__search .offices__search {
  width: 100%;
  height: 100%;
}

.layout--map .section.section--offices {
  margin-top: 44px !important;
}

.selected-text {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 130px;
}

.offices-city__list {
  display: flex;
  flex-wrap: wrap;
}

.offices-city__toggle {
  display: none;
  color: #3D3935;
}

.offices-city__toggle:hover {
  color: #FFA400 !important;
}

.offices-city__list.active {
  max-height: unset;
}

.title-links__item,
.layout--map .title-links__item,
.p-offices-list__salon,
.p-offices-list__title,
.photo-modal-title {
  font-family: 'Gilroy', sans-serif;
}

.p-offices-nothing {
  font-size: 30px;
  line-height: 1.2;
  font-family: 'Gilroy', sans-serif;
  font-weight: 800;
  padding: 35px 0;
}

.p-offices-list.minify .p-offices-nothing {
  padding: 0 20px 0 0;
}

.p-offices-list__scroll {
  display: none;
  width: 100%;
  height: 42px;
  position: absolute;
  left: 0;
  top: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, rgba(102, 102, 102, 0.00) 100%);
  z-index: 100;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}

.p-offices-list__scroll.active {
  opacity: 1;
  pointer-events: all;
}

.p-offices-list__scroll:after {
  content: "";
  display: inline-block;
  width: 34px;
  height: 16px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: url("data:image/svg+xml,%3Csvg width='34' height='16' viewBox='0 0 34 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M33.3036 15.4243C32.3414 16.1919 30.7969 16.1919 29.8647 15.4243L17.014 4.83979L4.16052 15.4243C3.19828 16.1919 1.65384 16.1919 0.721676 15.4243C-0.240555 14.6319 -0.240555 13.3601 0.721676 12.5925L15.2918 0.594281C16.224 -0.198093 17.7685 -0.198093 18.7307 0.594281L33.3009 12.5925C34.233 13.3601 34.233 14.6319 33.3009 15.4243H33.3036Z' fill='white'/%3E%3C/svg%3E") center no-repeat;
}

.call-modal-container.m-form {
  max-width: 915px;
  padding: 47px 73px 66px;
}

.m-form .call-modal-title {
  font-size: 43px;
  margin-bottom: 22px;
}

.call-modal-txt {
  font-size: 22px;
  margin-bottom: 25px;
}

.layout .m-form .call-modal-close {
  width: 48px;
  height: 48px;
}

.layout .m-form .call-modal-close:before {
  font-size: 32px;
}

.call-modal-form__item {
  margin-bottom: 20px;
}

.call-modal-form__submit {
  display: block;
  background: #FFA400 !important;
  border-radius: 8px;
  text-align: center !important;
  color: #fff !important;
  font-size: 24px;
  line-height: 1;
  font-family: 'Gilroy', sans-serif;
  font-weight: 800;
  padding: 20px 10px;
  border: 0;
  width: 100%;
  cursor: pointer;
  text-decoration: none !important;
  transition: background .25s ease;
}

.call-modal-form__submit:hover {
  background: #E79500 !important;
}


.layout .call-modal-form__item input[type=email],
.layout .call-modal-form__item input[type=tel],
.layout .call-modal-form__item input[type=text] {
  width: 100%;
  outline: none;
  background: #fff;
  /* border: 1px solid #EBEBEB; */
  border: 1px solid #929292;
  border-radius: 8px;
  padding: 10px 19px;
  height: 64px;
  font-size: 22px;
}

.layout .call-modal-form__item input[type=email]:focus,
.layout .call-modal-form__item input[type=tel]:focus,
.layout .call-modal-form__item input[type=text]:focus,
.layout .call-modal-form__item input[type=email]:hover,
.layout .call-modal-form__item input[type=tel]:hover,
.layout .call-modal-form__item input[type=text]:hover {
  border-color: #FFA400 !important;
}


.layout .call-modal-form__item input[type=email]::-webkit-input-placeholder,
.layout .call-modal-form__item input[type=tel]::-webkit-input-placeholder,
.layout .call-modal-form__item input[type=text]::-webkit-input-placeholder {
  color: #929292
}

.layout .call-modal-form__item input[type=email]::-moz-placeholder,
.layout .call-modal-form__item input[type=tel]::-moz-placeholder,
.layout .call-modal-form__item input[type=text]::-moz-placeholder {
  color: #929292
}

.layout .call-modal-form__item input[type=email]:-ms-input-placeholder,
.layout .call-modal-form__item input[type=tel]:-ms-input-placeholder,
.layout .call-modal-form__item input[type=text]:-ms-input-placeholder {
  color: #929292
}

.layout .call-modal-form__item input[type=email]::placeholder,
.layout .call-modal-form__item input[type=tel]::placeholder,
.layout .call-modal-form__item input[type=text]::placeholder {
  color: #929292
}


.form-agree-input {
  position: relative;
  z-index: 0;
}

.form-agree-input .checkbox__label {
  font-size: 16px;
  order: 2;
  color: #383938;
  text-align: left;
}

.form-agree-input .checkbox__label a {
  text-decoration: underline;
}

.form-agree-input .checkbox__label a:hover {
  text-decoration: none;
  color: #FFA400 !important;
}

.form-agree-input input[type="checkbox"] {
  order: 1;
}

.form-agree-input input[type="checkbox"]:checked,
.form-agree-input input[type="checkbox"]:not(:checked) {
  position: absolute;
  left: -9999px;
}

.form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:checked+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:not(:checked)+label+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label:before {
  border: 1px solid #BCBDBD;
}

.form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:checked+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:not(:checked)+label+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label:before {
  content: "";
  position: absolute;
  left: 0;
  top: -5px;
  border-radius: 8px;
  cursor: pointer;
  z-index: 5;
  width: 28px;
  height: 28px;
  transition: all 0.3s ease;
  background: #fff;
}

.form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label:before,
.form-agree-input input[type="checkbox"]:checked+label.checkbox__label:before {
  background: #FFA400;
  border-color: #FFA400;
}

.form-agree-input input[type="checkbox"]:checked+label.checkbox__label:hover:before,
.form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label:hover:before {
  border-color: #FFA400;
}

.form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label:after,
.form-agree-input input[type="checkbox"]:checked+label.checkbox__label:after,
.form-agree-input input[type="checkbox"]:not(:checked)+label+label.checkbox__label:after,
.form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label:after {
  content: "";
  display: inline-block;
  width: 17px;
  height: 13px;
  background: url("data:image/svg+xml,%3Csvg width='17' height='13' viewBox='0 0 17 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.1669 0.230407C16.5436 0.565397 16.5781 1.14213 16.2429 1.52201L6.47928 12.4973C6.30647 12.6941 6.05764 12.8046 5.79497 12.8046C5.5323 12.8046 5.28347 12.6941 5.11066 12.4973L0.230583 7.00968C-0.104663 6.63325 -0.0701117 6.05306 0.306608 5.71807C0.683328 5.38308 1.26396 5.41761 1.5992 5.79404L5.79497 10.5115L14.8743 0.306374C15.2095 -0.0700581 15.7867 -0.104583 16.1669 0.230407Z' fill='white' fill-opacity='0.8'/%3E%3C/svg%3E%0A") center/cover no-repeat;
  position: absolute;
  left: 8px;
  top: 3px;
  z-index: 10;
}

.form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label,
.form-agree-input input[type="checkbox"]:checked+label.checkbox__label,
.form-agree-input input[type="checkbox"]:not(:checked)+label+label.checkbox__label,
.form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label {
  position: relative;
  cursor: pointer;
  padding-left: 50px;
  display: block;
}

.form-agree-input input[type="checkbox"]:checked+.checkbox__label:after {
  opacity: 1;
}

.form-agree-input input[type="checkbox"]:not(:checked)+.checkbox__label:after,
.form-agree-input input[type="checkbox"]:not(:checked)+label+.checkbox__label:after {
  opacity: 0;
}

.call-modal__done {
  display: none;
}

.call-modal__err {
  display: none;
}

.call-modal-container.is-done .call-modal__view {
  display: none;
}

.call-modal-container.is-done .call-modal__done {
  display: block;
}

.call-modal-container.is-err .call-modal__view {
  display: none;
}

.call-modal-container.is-err .call-modal__err {
  display: block;
}

.call-modal__done,
.call-modal__done .call-modal-title {
  text-align: center;
}

.layout .offices__map {
  overflow: hidden;
}

/* Р С™Р В°РЎРѓРЎвЂљР С•Р СР Р…Р В°РЎРЏ Р С—Р В°Р Р…Р ВµР В»РЎРЉ Р С‘Р Р…РЎвЂћР С•РЎР‚Р СР В°РЎвЂ Р С‘Р С‘ Р Р…Р В° Р С”Р В°РЎР‚РЎвЂљР Вµ */
.map-info-panel {
  position: absolute;
  /* top: 20px; */
  bottom: 20px;
  right: 20px;
  width: 400px;
  max-width: calc(100% - 40px);
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  padding: 17px;
  z-index: 1000;
  box-sizing: border-box;
}

.map-info-panel__close {
  position: absolute;
  top: 25px;
  right: 25px;
  width: 29px;
  height: 29px;
  border: none;
  background: #EBEBEB url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.23013 0.23013C0.536971 -0.0767101 1.03446 -0.0767101 1.3413 0.23013L5.5 4.38883L9.6587 0.23013C9.96554 -0.0767101 10.463 -0.0767101 10.7699 0.23013C11.0767 0.536971 11.0767 1.03446 10.7699 1.3413L6.61117 5.5L10.7699 9.6587C11.0767 9.96554 11.0767 10.463 10.7699 10.7699C10.463 11.0767 9.96554 11.0767 9.6587 10.7699L5.5 6.61117L1.3413 10.7699C1.03446 11.0767 0.536971 11.0767 0.23013 10.7699C-0.0767101 10.463 -0.0767101 9.96554 0.23013 9.6587L4.38883 5.5L0.23013 1.3413C-0.0767101 1.03446 -0.0767101 0.536971 0.23013 0.23013Z' fill='black'/%3E%3C/svg%3E") center no-repeat !important;
  border-radius: 8px;
  cursor: pointer;
  transition: all .2s ease;
  z-index: 1;
}

.map-info-panel__close:hover {
  background: #DEE0E4 url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.23013 0.23013C0.536971 -0.0767101 1.03446 -0.0767101 1.3413 0.23013L5.5 4.38883L9.6587 0.23013C9.96554 -0.0767101 10.463 -0.0767101 10.7699 0.23013C11.0767 0.536971 11.0767 1.03446 10.7699 1.3413L6.61117 5.5L10.7699 9.6587C11.0767 9.96554 11.0767 10.463 10.7699 10.7699C10.463 11.0767 9.96554 11.0767 9.6587 10.7699L5.5 6.61117L1.3413 10.7699C1.03446 11.0767 0.536971 11.0767 0.23013 10.7699C-0.0767101 10.463 -0.0767101 9.96554 0.23013 9.6587L4.38883 5.5L0.23013 1.3413C-0.0767101 1.03446 -0.0767101 0.536971 0.23013 0.23013Z' fill='black'/%3E%3C/svg%3E") center no-repeat !important;
}

.map-info-panel__image {
  margin: 0 0 16px 0;
  border-radius: 8px;
  height: 180px;
  overflow: hidden;
}

.map-info-panel__image img {
  display: block;
  width: 100%;
  object-fit: cover;
}

.map-info-panel__title {
  margin: 0 0 12px;
  font-size: 19px;
  line-height: 1.1;
  font-family: 'Gilroy', sans-serif;
  font-weight: 800;
  color: #3D3935;
  margin-bottom: 15px;
  padding: 0 43px 0 0;
}

.map-info-panel__description {
  font-size: 17px;
  line-height: 1.2;
  color: #3D3935;
}

.map-info-panel__description span {
  display: block;
  margin-bottom: 4px;
}

.map-info-panel .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin: 0 0 -3px 0;
  border-top: 2px solid #D9DADA;
  border-radius: 8px 8px 0 0;
  border-bottom: 0;
}

.map-info-panel .dropdown__links {
  border-top: 0;
  border-bottom: 1px solid #D9DADA;
  margin: 0 0 3px 0;
}

.map-info-panel .p-offices-list__links {
  margin: 15px 0 -10px 0;
}


@media (max-width: 1600px) {

  .p-offices-list__item.m-time,
  .p-offices-list__item.m-phone,
  .p-offices-list__item.m-photo {
    width: 240px;
    padding: 0;
  }

  .p-offices-list__call {
    padding: 0;
  }

  .p-offices-list__row {
    font-size: 14px;
  }

  .p-offices-list__phone {
    padding-left: 20px;
  }

  .p-offices-list__phone:before {
    left: 0;
    top: 1px;
  }
}

@media (max-width: 1400px) {
  .p-offices-list__item {
    flex-grow: 1;
    width: 25% !important;
    flex: unset;
    padding: 0 !important;
  }

  .p-offices-list__salon {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .p-offices-list__links {
    flex-direction: column;
    align-items: flex-start;
    padding: 0 0 0 10px;
  }

  .map-info-panel .p-offices-list__links {
    flex-direction: row;
    align-items: center;
    padding: 0;
  }

  .p-offices-list__tomap {
    margin-left: 0;
  }

  .dropdown-container {
    margin-left: -5px;
    padding: 5px;
    margin-bottom: 0;
  }

  .dropdown-menu a {
    padding: 4px 5px;
  }

  .p-offices-list__more,
  .dropdown-container {
    margin-bottom: 10px;
  }

  .minify .dropdown-container {
    margin-bottom: 0;
  }

  .p-offices-list__more,
  .p-offices-list__route {

    padding-left: 22px;
  }

  .p-offices-list__more:before {
    left: 5px;
  }

  .ymaps-link:before,
  .gmaps-link:before {
    width: 22px;
    height: 22px;
  }

  .map-info-panel .p-offices-list__more,
  .map-info-panel .dropdown-container {
    margin-bottom: 0;
  }
}

@media (max-width: 1300px) {
  .custom-select-wrapper {
    min-width: 180px;
    margin: 0 5px 0 0;
  }

  .custom-select-trigger .selected-value,
  .custom-select-option {
    font-size: 14px;
  }

  .offices-top__selectList {
    margin-right: 5px;
  }

  .layout--map .offices__search input[type=text] {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

  .offices-top__list,
  .offices-top__map {
    font-size: 14px;
    padding: 9px 2px 9px 25px;
    width: 94px;
  }
}

@media (max-width: 1199.98px) {
  .page-seo {
    margin: 60px 0;
  }
}

@media (max-width: 1100px) {
  .offices-top {
    flex-wrap: wrap;
    margin-bottom: 0;
  }

  .offices-top__selectList {
    margin-right: 0;
    width: 100%;
    margin-bottom: 20px;
  }

  .custom-select-wrapper {
    min-width: unset;
    flex: 1;
  }

  .p-offices-list__item.m-photo {
    display: none;
  }

  .p-offices-list__item.m-phone {
    margin-right: 0;
  }

  .p-offices-list.minify {
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }

  .p-offices-list.minify .p-offices-list__salon {
    font-size: 16px;
  }

  .p-offices-nothing {
    font-size: 24px;
  }
}

@media (max-width: 767.98px) {
  .layout--map .offices__search {
    position: relative !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: auto !important;
  }

  .custom-select-trigger {
    height: 50px;
    padding: 10px;
  }

  .custom-select-trigger .selected-value,
  .custom-select-option {
    font-size: 15px;
  }

  .offices-top__selectList {
    flex-wrap: wrap;
    margin: 0 -3px;
    order: 1;
    width: calc(100% + 6px);
  }

  .custom-select-wrapper {
    width: 50%;
    flex: unset;
    margin: 0 0 12px;
    padding: 0 3px;
  }

  .custom-select-wrapper.m-type {
    width: 100%;
  }

  .title-links__item,
  .layout--map a.title-links__item {
    font-size: 22px;
    margin: 0 15px 0 0;
  }

  .title-links__item:last-child,
  .layout--map a.title-links__item:last-child {
    margin-right: 0;
  }

  .offices-top__toggle {
    margin-left: 0;
    width: 100%;
    order: 2;
    margin-bottom: 20px;
  }

  .offices-top__search {
    width: 100%;
    order: 3;
  }

  .offices-top__list,
  .offices-top__map {
    width: 50%;
    text-align: center !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .offices-top__list:before,
  .offices-top__map:before {
    position: static;
    transform: none;
    margin: 0 8px 0 0;
  }

  .p-offices-list__phone:before {
    width: 12px;
    height: 16px;
  }

  .p-offices-list__time:before {
    width: 14px;
    height: 14px;
  }

  .p-offices-list__tomap,
  .p-offices-list__call,
  .p-offices-list__top {
    display: none;
  }

  .p-offices-list__row {
    padding: 14px 0;
    display: grid;
    grid-template-areas: "title phone" "title time";

    grid-template-columns: 1fr 140px;
  }

  .p-offices-list__row:first-child {
    padding-top: 0;
  }

  .p-offices-list__item {
    width: 100% !important;
  }

  .p-offices-list__item.m-salon {
    grid-area: title;
    margin-right: 0;
    padding-right: 15px !important;
  }

  .p-offices-list__item.m-phone {
    grid-area: phone;
    white-space: nowrap;
    font-size: 12px;
  }

  .p-offices-list__item.m-time {
    grid-area: time;
    margin-right: 0;
    font-size: 12px;
  }

  .p-offices-list.minify {
    width: 100%;
  }

  .p-offices-list.minify .p-offices-list__wrap {
    display: none;
  }

  .p-offices-list.minify .p-offices-nothing {
    padding: 30px 0;
  }

  .offices-city {
    font-size: 15px;
    padding-top: 25px;
  }

  .offices-city__item {
    margin: 0 10px 5px 0;
  }

  .offices-city__count {
    min-width: 16px;
    height: 16px;
    font-size: 12px;
    padding: 0 5px;
  }

  .p-offices-list__links {
    flex-direction: column;
    padding: 0;
  }

  .p-offices-list__salon {
    font-size: 15px;
  }

  .p-offices-list__more {
    margin: 0 9px 0 0;
  }

  .p-offices-list__route:before {
    width: 14px;
    height: 12px;
  }

  .p-offices-map {
    height: 500px;
  }

  .p-offices-list__phone {
    padding-left: 15px;
  }

  .p-offices-list__time {
    padding-left: 17px;
  }

  .p-offices-list .p-offices-list__time:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.1551 2.00736C5.66799 2.00736 2.00741 5.66784 2.00741 10.1549C2.00741 14.6419 5.66799 18.3024 10.1551 18.3024C14.6423 18.3024 18.3029 14.6419 18.3029 10.1549C18.3029 5.66784 14.6423 2.00736 10.1551 2.00736ZM0 10.1549C0 4.60512 4.48716 0 10.1551 0C15.705 0 20.3103 4.48704 20.3103 10.1549C20.3103 15.7047 15.8231 20.3098 10.1551 20.3098C4.60524 20.3098 0 15.8227 0 10.1549ZM10.1551 4.01472C10.7456 4.01472 11.2179 4.48704 11.2179 5.07744V9.68257L13.9338 12.3984C14.288 12.7526 14.288 13.4611 13.9338 13.8154C13.5795 14.1696 12.871 14.1696 12.5168 13.8154L9.44664 10.7453C9.21048 10.5091 9.21048 10.273 9.21048 10.0368V4.95936C9.21048 4.36896 9.68281 3.89664 10.2732 3.89664L10.1551 4.01472Z' fill='%233D3935'/%3E%3C/svg%3E%0A") center/cover no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }

  .page-seo {
    padding: 20px 0 40px;
  }

  .photo-modal-container {
    max-width: 95%;
    max-height: 95%;
    padding: 20px;
  }

  .photo-modal-close {
    top: -35px;
    right: 10px;
    width: 35px;
    height: 35px;
    font-size: 28px;
  }

  .photo-modal-image {
    max-height: 85vh;
  }

  .call-modal-container {
    max-width: 95%;
    padding: 20px;
  }

  .layout .call-modal-close {
    top: 15px;
    right: 15px;
  }

  .call-modal-title {
    font-size: 18px;
    padding-right: 35px;
  }

  .map-scale {
    bottom: 45px;
    font-size: 15px;
    padding: 9px 11px;
  }

  .p-offices-list__phone {
    pointer-events: all;
  }

  .layout--map .section.section--offices {
    margin-top: 15px !important;
  }

  .custom-select-options {
    width: calc(200% + 6px);
  }

  .custom-select-wrapper:nth-child(2) .custom-select-options {
    left: auto;
    right: 0;
  }

  .custom-select-wrapper.m-type .custom-select-options {
    width: 100%;
  }

  .layout .offices__wrapper {
    z-index: 1;
  }

  .offices-city__toggle {
    display: inline-block;
  }

  .offices-city__list {
    max-height: 55px;
    overflow: hidden;
  }

  .p-offices-list__scroll {
    display: inline-block;
  }

  .layout .offices__wrapper {
    margin-left: 0;
    margin-right: 0;
  }

  .m-form .call-modal-title {
    font-size: 26px;
  }

  .call-modal-container.m-form {
    padding: 30px 25px;
  }

  .call-modal-txt {
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 20px;
  }

  .form-agree-input .checkbox__label {
    font-size: 14px;
  }

  .form-agree-input input[type="checkbox"]:checked+label+label.checkbox__label,
  .form-agree-input input[type="checkbox"]:checked+label.checkbox__label,
  .form-agree-input input[type="checkbox"]:not(:checked)+label+label.checkbox__label,
  .form-agree-input input[type="checkbox"]:not(:checked)+label.checkbox__label {
    padding-left: 39px;
  }

  .layout .call-modal-form__item input[type=email],
  .layout .call-modal-form__item input[type=tel],
  .layout .call-modal-form__item input[type=text] {
    font-size: 18px;
    padding: 8px 13px;
    height: 48px;
  }

  .call-modal-select__trigger {
    font-size: 18px;
    padding: 8px 13px;
    height: 48px;
  }

  .call-modal-select__value {
    font-size: 18px;
  }

  .p-offices-list__phone.m-mobile {
    display: block;
  }

  .p-offices-list__phone.m-desktop {
    display: none;
  }

  .map-info-panel {
    top: 20px;
    bottom: 20px;
    right: 10px;
    left: 10px;
    width: auto;
    max-width: none;
    max-height: calc(100% - 40px);
    overflow-y: auto;
  }
}

a.text-decoration_none {
  text-decoration: none !important;
}

a.inactive {
  color: #BCBDBD !important;
}

.offices-top {
  display: flex;
  margin: 32px 0;
}

.offices-top__search {
  flex: 1;
}

.title-links {
  display: flex;
}

.title-links__item,
.layout--map a.title-links__item {
  color: #BCBDBD;
  text-decoration: none;
  border-bottom: 2px solid #BCBDBD;
  margin: 0 33px 0 0;
}

.title-links__item:hover,
.layout--map a.title-links__item:hover {
  border-bottom: 2px solid #FFA400 !important;
}

.title-links__item:last-child,
.layout--map a.title-links__item:last-child {
  margin: 0;
}

.title-links__item.active,
.layout--map .title-links__item.active {
  color: #3D3935;
  border-bottom: 2px solid #FFA400;
}

.title-links:has(.title-links__item:hover) .title-links__item.active:not(:hover) {
  border-bottom: 2px solid #BCBDBD;
}

.layout--map .offices__search {
  width: 100%;
}

.layout--map .offices__search input[type=text] {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  box-shadow: none !important;
  border: 1px solid #EBEBEB !important;
  border-radius: 8px !important;
}

.layout--map .offices-inner {
  overflow: hidden;
  align-items: flex-start;
}

.layout--map .offices__search input[type=text]:focus,
.layout--map .offices__search input[type=text]:hover {
  border-color: #FFA400 !important;
}

.layout--map .offices__search button {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 17 17' fill='none'%3E%3Cpath d='M6.64556 1.66174C3.89225 1.66174 1.65742 3.89516 1.65742 6.64882C1.65742 9.40435 3.89225 11.6359 6.64556 11.6359C9.40918 11.6359 11.6337 9.40341 11.6337 6.64882C11.6337 3.89516 9.40918 1.66174 6.64556 1.66174ZM0.000913932 6.64882C0.000913932 2.97634 2.97416 0 6.64556 0C10.3273 0 13.3005 2.97634 13.3005 6.64882C13.3005 8.18611 12.7811 9.60083 11.9032 10.7264L16.3823 15.2045C16.7117 15.5292 16.7117 16.055 16.3823 16.3797C16.0632 16.7053 15.5344 16.7053 15.205 16.3797L10.725 11.9016C9.59727 12.7765 8.1907 13.2986 6.64465 13.2986C2.97325 13.2986 0 10.3213 0 6.64788L0.000913932 6.64882Z' fill='%233D3935'/%3E%3C/svg%3E") center no-repeat !important;
  width: 17px;
  height: 17px;
}



.layout--map .offices-balloon {
  margin-top: 0 !important;
}

.layout--map .select.select--alt.ss-main {
  background: #3D3935;
  padding: 11px 24px;
  width: 100%;
}

.layout--map .offices__controls {
  min-width: 225px;
}

.offices-top__selectList {
  display: flex;
  margin-right: 19px;
}

.custom-select-wrapper {
  position: relative;
  margin: 0 13px 0 0;
  min-width: 225px;
}

.custom-select-wrapper:last-child {
  margin-right: 0;
}

.custom-select {
  position: relative;
  width: 100%;
  height: 100%;
}

.custom-select-trigger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  cursor: pointer;
  transition: all 0.3s ease;
  user-select: none;
  color: #fff;
  border-radius: 8px;
  background: #3D3935;
  height: 100%;
}


.custom-select-trigger .selected-value {
  font-size: 17px;
  display: flex;
  align-items: center;
}

.custom-select-trigger .arrow {
  width: 12px;
  height: 7px;
  background: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.238388 0.239296C0.567813 -0.0797652 1.09658 -0.0797652 1.41572 0.239296L5.81616 4.63878L10.2156 0.239296C10.5451 -0.0797652 11.0738 -0.0797652 11.393 0.239296C11.7224 0.568649 11.7224 1.0973 11.393 1.41636L6.40482 6.40344C6.08569 6.7328 5.55692 6.7328 5.2275 6.40344L0.239348 1.41636C-0.0797826 1.0973 -0.0797826 0.568649 0.239348 0.239296H0.238388Z' fill='white'/%3E%3C/svg%3E") center no-repeat;
  transition: transform 0.3s ease;
}

.custom-select-trigger:hover .arrow {
  background: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.238388 0.239296C0.567813 -0.0797652 1.09658 -0.0797652 1.41572 0.239296L5.81616 4.63878L10.2156 0.239296C10.5451 -0.0797652 11.0738 -0.0797652 11.393 0.239296C11.7224 0.568649 11.7224 1.0973 11.393 1.41636L6.40482 6.40344C6.08569 6.7328 5.55692 6.7328 5.2275 6.40344L0.239348 1.41636C-0.0797826 1.0973 -0.0797826 0.568649 0.239348 0.239296H0.238388Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center no-repeat;
}

.custom-select-trigger.active .arrow {
  transform: rotate(180deg);
  background: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.238388 0.239296C0.567813 -0.0797652 1.09658 -0.0797652 1.41572 0.239296L5.81616 4.63878L10.2156 0.239296C10.5451 -0.0797652 11.0738 -0.0797652 11.393 0.239296C11.7224 0.568649 11.7224 1.0973 11.393 1.41636L6.40482 6.40344C6.08569 6.7328 5.55692 6.7328 5.2275 6.40344L0.239348 1.41636C-0.0797826 1.0973 -0.0797826 0.568649 0.239348 0.239296H0.238388Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center no-repeat;
}

.custom-select-options {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  color: #fff;
  border-radius: 8px;
  background: #3D3935;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 2;
}

.custom-select-options.open {
  max-height: 300px;
  overflow-y: auto;
  opacity: 1;
  visibility: visible;
}

.custom-select-option {
  padding: 11px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: #fff;
  font-size: 17px;
}

.custom-select-option:hover {
  background-color: #929292;
}

.custom-select-option.selected {
  background-color: #929292;
}

.custom-select-option.highlighted {
  background-color: #929292;
}

.result {
  text-align: center;
  padding: 20px;
  background: #f8f9fa;
  border-radius: 8px;
}

.result p {
  color: #333;
  font-size: 16px;
}

.result span {
  font-weight: bold;
  color: #667eea;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.custom-select-options.open {
  animation: fadeIn 0.3s ease;
}

.custom-select__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #FFA400;
  border-radius: 20px;
  color: #3D3935;
  min-width: 23px;
  height: 23px;
  font-size: 13px;
  line-height: 1;
  margin: 0 9px;
  padding: 0 6px;
}

.custom-select-options {
  --sb-track-color: #3d3935;
  --sb-track-color-wh: #fff;
  --sb-thumb-color: #8b8b8b;
  --sb-thumb-color-wh: #fff;
  --sb-size: 6px;
}

.p-offices-list__wrap {
  --sb-track-color-wh: #fff;
  --sb-thumb-color: #8b8b8b;
  --sb-thumb-color-wh: #fff;
  --sb-size: 6px;
}

.custom-select-options::-webkit-scrollbar,
.p-offices-list__wrap::-webkit-scrollbar {
  width: var(--sb-size);
}

.custom-select-options::-webkit-scrollbar-track {
  background: var(--sb-track-color);
  border-radius: 3px;
}

.p-offices-list__wrap::-webkit-scrollbar-track {
  background: var(--sb-track-color-wh);
  border-radius: 3px;
}

.custom-select-options::-webkit-scrollbar-thumb,
.p-offices-list__wrap::-webkit-scrollbar-thumb {
  background: var(--sb-thumb-color);
  border-radius: 3px;
}

@supports not selector(::-webkit-scrollbar) {

  .custom-select-options,
  .p-offices-list__wrap {
    scrollbar-color: var(--sb-thumb-color) var(--sb-track-color);
  }
}


.p-offices-map-view {
  flex: 1;
  overflow: hidden;
  display: none;
}

.p-offices-map {
  width: 100%;
  height: 640px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-radius: 8px;
}

.p-offices-list {
  width: 100%;
  color: #3D3935;
}

.p-offices-list.minify {
  min-width: 632px;
  max-width: 632px;
}

.p-offices-list__top {
  display: flex;
  font-weight: 800;
}

.p-offices-list__title {
  border-radius: 8px;
  background: #EBEBEB;
  padding: 17px 24px;
}

.p-offices-list__top .p-offices-list__item.m-photo {
  padding-right: 0;
}

.p-offices-list__top .p-offices-list__item.m-salon {
  padding-left: 0;
}

.p-offices-list__row {
  display: flex;
  padding: 24px 0;
  border-bottom: 2px solid #EBEBEB;
  color: #3D3935;
  font-size: 16px;
}

.p-offices-list__item.m-salon {
  flex: 1;
  margin-right: 13px;
  padding-left: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.p-offices-list__links {
  display: flex;
  align-items: center;
}

.p-offices-list__more,
.p-offices-list__route,
.p-offices-list__tomap {
  text-decoration: none !important;
}

.p-offices-list__more,
.p-offices-list__route {
  color: #3D3935 !important;
  display: inline-block;

  position: relative;
}

.p-offices-list__more {
  margin-right: 16px;
}

.p-offices-list__more:hover,
.p-offices-list__route:hover {
  color: #FFA400 !important;
}

.p-offices-list__tomap {
  color: #FFA400 !important;
  padding-left: 25px;
  position: relative;
  margin-left: 13px;
}

.p-offices-list__tomap:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 20px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all .25s ease;
  background: url("data:image/svg+xml,%3Csvg width='16' height='20' viewBox='0 0 16 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.98191 0C3.59177 0 0 3.59107 0 7.98027C0 13.3669 6.98346 19.4515 7.28294 19.7509C7.48228 19.851 7.78166 19.9502 7.981 19.9502C8.18034 19.9502 8.47991 19.851 8.67924 19.7509C8.97872 19.4515 15.9622 13.3669 15.9622 7.98027C15.9622 3.59107 12.3702 0 7.98009 0H7.98191ZM7.98191 17.655C5.88651 15.6602 1.9953 11.3711 1.9953 7.97933C1.9953 4.68767 4.6886 1.9939 7.98191 1.9939C11.2743 1.9939 13.9687 4.68673 13.9687 7.97933C13.9687 11.271 10.0773 15.6602 7.98191 17.655ZM7.98191 3.98967C5.78731 3.98967 3.99151 5.7852 3.99151 7.97933C3.99151 10.1735 5.78731 11.969 7.98191 11.969C10.1765 11.969 11.9725 10.1735 11.9725 7.97933C11.9725 5.7852 10.1765 3.98967 7.98191 3.98967ZM7.98191 9.9751C6.88414 9.9751 5.9868 9.0778 5.9868 7.98027C5.9868 6.88274 6.88414 5.98543 7.98191 5.98543C9.07969 5.98543 9.97721 6.88274 9.97721 7.98027C9.97721 9.0778 9.07969 9.9751 7.98191 9.9751Z' fill='%23FFA400'/%3E%3C/svg%3E") center no-repeat;
}

.p-offices-list__more {
  padding-left: 15px;
}

.p-offices-list__more:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 14px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all .25s ease;
  background: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.287855 13.7133C-0.0959516 13.317 -0.0959516 12.6811 0.287855 12.2972L5.5801 7.00576L0.287855 1.71315C-0.0959516 1.31694 -0.0959516 0.680991 0.287855 0.297159C0.684042 -0.0990534 1.31997 -0.0990534 1.70377 0.297159L7.70286 6.29662C8.09905 6.68045 8.09905 7.31643 7.70286 7.71264L1.70377 13.7121C1.31997 14.096 0.684042 14.096 0.287855 13.7121V13.7133Z' fill='%233D3935'/%3E%3C/svg%3E") center no-repeat;
}

.p-offices-list__more:hover:before {
  background: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.287855 13.7133C-0.0959516 13.317 -0.0959516 12.6811 0.287855 12.2972L5.5801 7.00576L0.287855 1.71315C-0.0959516 1.31694 -0.0959516 0.680991 0.287855 0.297159C0.684042 -0.0990534 1.31997 -0.0990534 1.70377 0.297159L7.70286 6.29662C8.09905 6.68045 8.09905 7.31643 7.70286 7.71264L1.70377 13.7121C1.31997 14.096 0.684042 14.096 0.287855 13.7121V13.7133Z' fill='%23FFA400'/%3E%3C/svg%3E") center/cover no-repeat;
}

.p-offices-list__route {
  padding-left: 25px;
}

.p-offices-list__route:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 15px;
  background: url("data:image/svg+xml,%3Csvg width='19' height='18' viewBox='0 0 19 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M14.1491 7.03398H4.41595C3.74004 7.03398 3.06413 6.81553 2.56846 6.37864C2.16291 5.98544 1.84749 5.46116 1.84749 4.8932C1.84749 4.32524 2.11785 3.80097 2.56846 3.40777C3.06413 2.97087 3.74004 2.75243 4.41595 2.75243H10.6794C11.2201 2.75243 11.6257 2.35922 11.6257 1.83495C11.6257 1.31068 11.2201 0.917476 10.6794 0.917476H4.41595C2.11785 0.917476 0 2.53398 0 4.84951C0 7.16505 2.11785 8.78155 4.41595 8.78155H14.1491C14.825 8.78155 15.5009 9 15.9966 9.43689C16.4021 9.8301 16.7175 10.3544 16.7175 10.9223C16.7175 11.4903 16.4472 12.0146 15.9966 12.4078C15.5009 12.8447 14.825 13.0631 14.1491 13.0631H10.0035L11.4004 11.534C11.7608 11.1408 11.7158 10.5728 11.3102 10.267C10.9047 9.91747 10.3189 9.96117 10.0035 10.3544L7.20971 13.3689C6.89429 13.7184 6.89429 14.2427 7.20971 14.5922L10.0035 17.6068C10.364 18 10.9498 18 11.3102 17.6942C11.7158 17.3447 11.7158 16.7767 11.4004 16.4272L10.0035 14.8981H14.1491C16.4472 14.8981 18.565 13.2816 18.565 10.966C18.565 8.65049 16.4472 7.03398 14.1491 7.03398ZM17.0329 1.87864C17.0329 2.92718 16.1768 3.75728 15.0953 3.75728C14.0139 3.75728 13.1577 2.92718 13.1577 1.87864C13.1577 0.830097 14.0139 0 15.0953 0C16.1768 0 17.0329 0.830097 17.0329 1.87864ZM5.09186 14.1553C5.09186 15.2039 4.23571 16.034 3.15425 16.034C2.07279 16.034 1.21664 15.2039 1.21664 14.1553C1.21664 13.1068 2.07279 12.2767 3.15425 12.2767C4.23571 12.2767 5.09186 13.1068 5.09186 14.1553Z' fill='%233D3935'/%3E%3C/svg%3E") center/cover no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all .25s ease;
}

.p-offices-list__route:hover:before {
  background: url("data:image/svg+xml,%3Csvg width='19' height='18' viewBox='0 0 19 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M14.1491 7.03398H4.41595C3.74004 7.03398 3.06413 6.81553 2.56846 6.37864C2.16291 5.98544 1.84749 5.46116 1.84749 4.8932C1.84749 4.32524 2.11785 3.80097 2.56846 3.40777C3.06413 2.97087 3.74004 2.75243 4.41595 2.75243H10.6794C11.2201 2.75243 11.6257 2.35922 11.6257 1.83495C11.6257 1.31068 11.2201 0.917476 10.6794 0.917476H4.41595C2.11785 0.917476 0 2.53398 0 4.84951C0 7.16505 2.11785 8.78155 4.41595 8.78155H14.1491C14.825 8.78155 15.5009 9 15.9966 9.43689C16.4021 9.8301 16.7175 10.3544 16.7175 10.9223C16.7175 11.4903 16.4472 12.0146 15.9966 12.4078C15.5009 12.8447 14.825 13.0631 14.1491 13.0631H10.0035L11.4004 11.534C11.7608 11.1408 11.7158 10.5728 11.3102 10.267C10.9047 9.91747 10.3189 9.96117 10.0035 10.3544L7.20971 13.3689C6.89429 13.7184 6.89429 14.2427 7.20971 14.5922L10.0035 17.6068C10.364 18 10.9498 18 11.3102 17.6942C11.7158 17.3447 11.7158 16.7767 11.4004 16.4272L10.0035 14.8981H14.1491C16.4472 14.8981 18.565 13.2816 18.565 10.966C18.565 8.65049 16.4472 7.03398 14.1491 7.03398ZM17.0329 1.87864C17.0329 2.92718 16.1768 3.75728 15.0953 3.75728C14.0139 3.75728 13.1577 2.92718 13.1577 1.87864C13.1577 0.830097 14.0139 0 15.0953 0C16.1768 0 17.0329 0.830097 17.0329 1.87864ZM5.09186 14.1553C5.09186 15.2039 4.23571 16.034 3.15425 16.034C2.07279 16.034 1.21664 15.2039 1.21664 14.1553C1.21664 13.1068 2.07279 12.2767 3.15425 12.2767C4.23571 12.2767 5.09186 13.1068 5.09186 14.1553Z' fill='%23FFA400'/%3E%3C/svg%3E%0A") center/cover no-repeat;
}

.p-offices-list__item.m-time {
  margin-right: 13px;
  width: 340px;
}

.p-offices-list__item.m-phone {
  margin-right: 13px;
  width: 340px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.p-offices-list__call {
  color: #3D3935 !important;
  text-decoration: none !important;
  display: block;
  padding-left: 25px;
}

.p-offices-list__call:hover {
  color: #FFA400 !important;
}

.p-offices-list__item.m-photo {
  width: 367px;
  padding-right: 16px;
}

.p-offices-list__item.m-photo img {
  display: block;
  max-width: 100%;
  border-radius: 8px;
  max-height: 200px;
  width: 100%;
  object-fit: cover;
}

.p-offices-list__phones {
  margin-bottom: 15px;
}

.p-offices-list__phone {
  padding-left: 45px;
  position: relative;
  margin-bottom: 5px;
  text-decoration: none !important;
  display: block;
  color: #3D3935 !important;
}

a.p-offices-list__phone:hover {
  color: #FFA400 !important;
}

.p-offices-list__phone.m-mobile {
  display: none;
}

.p-offices-list__phone:last-child {
  margin-bottom: 0;
}

.p-offices-list__phone:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 20px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='25' viewBox='0 0 19 25' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.49156 19.5576C9.26089 21.8242 12.4356 23.9179 15.7183 22.3902C17.9092 21.3709 17.9218 20.8583 15.9927 18.0625C14.6048 16.0505 14.2309 15.6457 13.0681 16.4154C11.1724 17.3403 11.0494 17.2744 9.38134 15.3368C8.59999 14.4285 6.86247 11.9015 6.43165 10.0265C6.2133 9.0756 6.2543 8.46451 7.07998 7.96195C8.07716 7.35587 8.86274 6.86583 8.19684 5.71377L6.45174 2.69589C5.7482 1.68409 5.5248 1.18153 4.66482 1.52464C3.79062 1.87359 3.02437 2.40538 2.3066 3.76113C1.47757 5.32809 1.15376 6.71473 1.65737 8.90947C2.43872 12.3105 5.42275 16.9071 7.49156 19.5568V19.5576Z' stroke='%233D3935' stroke-width='2.83457' stroke-miterlimit='22.9256'/%3E%3C/svg%3E") center/cover no-repeat;
  position: absolute;
  left: 25px;
  top: 3px;
}

.p-offices-list__time {
  padding-left: 27px;
  position: relative;
}

.p-offices-list.minify .p-offices-list__time:before,
.map-info-panel__description .p-offices-list__time:before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 2.17436C6.13953 2.17436 2.17442 6.13938 2.17442 10.9997C2.17442 15.8601 6.13953 19.8251 11 19.8251C15.8605 19.8251 19.8256 15.8601 19.8256 10.9997C19.8256 6.13938 15.8605 2.17436 11 2.17436ZM0 10.9997C0 4.98825 4.86047 0 11 0C17.0116 0 22 4.86034 22 10.9997C22 17.0112 17.1395 21.9995 11 21.9995C4.98837 21.9995 0 17.1391 0 10.9997ZM11 4.34873C11.6395 4.34873 12.1512 4.86034 12.1512 5.49986V10.4881L15.093 13.4299C15.4767 13.8136 15.4767 14.581 15.093 14.9647C14.7093 15.3485 13.9419 15.3485 13.5581 14.9647L10.2326 11.6392C9.97674 11.3834 9.97674 11.1276 9.97674 10.8718V5.37196C9.97674 4.73244 10.4884 4.22082 11.1279 4.22082L11 4.34873Z' fill='%233D3935'/%3E%3C/svg%3E") center/cover no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.map-info-panel__description .p-offices-list__phone,
.map-info-panel__description .p-offices-list__time {
  padding-left: 35px;
}

.map-info-panel__description .p-offices-list__phone:before {
  left: 5px;
  top: 1px;
}

.p-offices-list__salon {
  font-size: 22px;
  line-height: 1.1;
  font-weight: 800;
  color: #3D3935;
  text-decoration: none !important;
  transition: color .25s ease !important;
}

.p-offices-list__salon:hover {
  color: #FFA400 !important;
}
/* End */


/* Start:/b2b/franshiza/assets/css/style_2.css?17748819941935*/
section.hero .business-form__item,
.r-modal-content .business-form__item,
#franchiseModal .business-form__item {
	margin-bottom:0;
}
.hero__bg {background:none;}
.hero__bg img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}
.assortment-card__label {
	max-width: 80%;
	text-wrap: auto;
    white-space: unset !important;
}
section.cta-banner .cta-banner__bg-showroom,
section.cta-banner .cta-banner__bg-planet  {
	background:none !important;
}
section.cta-banner .cta-banner__bg-showroom img,
section.cta-banner .cta-banner__bg-planet img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.adv-card .popup_data {
	display:none;
}

section.reviews.section {
	margin:0;
}


section.hero .hero__inner {
	height:auto !important;
}

@media(min-width:491px){
	section.hero .hero__form-wrapper {
		max-width: 385px;
	}
}

@media(max-width:490px){
	section.hero .hero__form-wrapper {
		min-width: 100%;
	}
}   


.business__title h1 br {
	display:block !important;
}

@media (min-width: 1620px) {
    section.new-reviews-slider .slider-wrapper--secondary>.swiper>.swiper-wrapper>.swiper-slide {
        width: calc((100% - 80px) / 5);
    }
}

@media(min-width: 1025px){
	section h2.title__style.reviews__title {
		margin-bottom: 31px;
	}
}

@media(max-width: 1200px){
	section.new-reviews-slider .section-new__header {
		position:relative;
	}
	section.new-reviews-slider .section-new__header-controls {
		position: absolute;
		right: 0;
		bottom: 0;
	}
	section.new-reviews-slider .swiper-button-disabled {
		display:flex !important;
	}
}

body .layout section.new-reviews-slider.section-new {
	padding-bottom:80px;
}

@media(max-width: 1024px){
	body .layout section.new-reviews-slider.section-new {
		padding-bottom:22px;
	}
}

@media(max-width: 490px){
	body .layout section.new-reviews-slider.section-new {
		padding-bottom:17px;
	}
	section.new-reviews-slider {
    	padding-top: 33px !important;
	}
}









/* End */


/* Start:/local/templates/main/components/bitrix/news.list/franshiza_map/style.css?17748001904814*/
/* Кастомная панель информации на карте */
.map-info-panel {
    position: absolute;
    /* top: 20px; */
    bottom: 20px;
    right: 20px;
    width: 400px;
    max-width: calc(100% - 40px);
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    padding: 17px;
    z-index: 1000;
    box-sizing: border-box;
}

.map-info-panel__close {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 29px;
    height: 29px;
    border: none;
    background: #EBEBEB url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.23013 0.23013C0.536971 -0.0767101 1.03446 -0.0767101 1.3413 0.23013L5.5 4.38883L9.6587 0.23013C9.96554 -0.0767101 10.463 -0.0767101 10.7699 0.23013C11.0767 0.536971 11.0767 1.03446 10.7699 1.3413L6.61117 5.5L10.7699 9.6587C11.0767 9.96554 11.0767 10.463 10.7699 10.7699C10.463 11.0767 9.96554 11.0767 9.6587 10.7699L5.5 6.61117L1.3413 10.7699C1.03446 11.0767 0.536971 11.0767 0.23013 10.7699C-0.0767101 10.463 -0.0767101 9.96554 0.23013 9.6587L4.38883 5.5L0.23013 1.3413C-0.0767101 1.03446 -0.0767101 0.536971 0.23013 0.23013Z' fill='black'/%3E%3C/svg%3E") center no-repeat!important;
    border-radius: 8px;
    cursor: pointer;
    transition: all .2s ease;
    z-index: 1;
}

.map-info-panel__close:hover {
    background: #DEE0E4 url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.23013 0.23013C0.536971 -0.0767101 1.03446 -0.0767101 1.3413 0.23013L5.5 4.38883L9.6587 0.23013C9.96554 -0.0767101 10.463 -0.0767101 10.7699 0.23013C11.0767 0.536971 11.0767 1.03446 10.7699 1.3413L6.61117 5.5L10.7699 9.6587C11.0767 9.96554 11.0767 10.463 10.7699 10.7699C10.463 11.0767 9.96554 11.0767 9.6587 10.7699L5.5 6.61117L1.3413 10.7699C1.03446 11.0767 0.536971 11.0767 0.23013 10.7699C-0.0767101 10.463 -0.0767101 9.96554 0.23013 9.6587L4.38883 5.5L0.23013 1.3413C-0.0767101 1.03446 -0.0767101 0.536971 0.23013 0.23013Z' fill='black'/%3E%3C/svg%3E") center no-repeat!important;
}

.map-info-panel__image {
    margin: 0 0 16px 0;
    border-radius: 8px;
    height: 180px;
    overflow: hidden;
}

.map-info-panel__image img {
    display: block;
    width: 100%;
    object-fit: cover;
}

.map-info-panel__title {
    margin: 0 0 12px;
    font-size: 19px;
    line-height: 1.1;
    font-family: 'Gilroy', sans-serif;
    font-weight: 800;
    color: #3D3935;
    margin-bottom: 15px;
    padding: 0 43px 0 0;
}

.map-info-panel__description {
    font-size: 17px;
    line-height: 1.2;
    color: #3D3935;
}

.map-info-panel__description span {
    display: block;
    margin-bottom: 4px;
}
.map-info-panel .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin: 0 0 -3px 0;
    border-top: 2px solid #D9DADA;
    border-radius: 8px 8px 0 0;
    border-bottom: 0;
}
.map-info-panel .dropdown__links {
    border-top: 0;
    border-bottom: 1px solid #D9DADA;
    margin: 0 0 3px 0;
}
.map-info-panel .p-offices-list__links {
    margin: 15px 0 -10px 0;
}


@media (max-width: 1600px){
    .p-offices-list__item.m-time,
    .p-offices-list__item.m-phone,
    .p-offices-list__item.m-photo{
        width: 240px;
        padding: 0;
    }
    .p-offices-list__call{
        padding: 0;
    }
    .p-offices-list__row{
        font-size: 14px;
    }
    .p-offices-list__phone{
        padding-left: 20px;
    }
    .p-offices-list__phone:before{
        left: 0;
        top: 1px;
    }
}

@media (max-width: 1400px){
    .p-offices-list__item{
        flex-grow: 1;
        width: 25%!important;
        flex: unset;
        padding: 0!important;
    }
    .p-offices-list__salon{
        font-size: 20px;
        margin-bottom: 20px;
    }
    .p-offices-list__links {
        flex-direction: column;
        align-items: flex-start;
        padding: 0 0 0 10px;
    }
    .map-info-panel .p-offices-list__links {
        flex-direction: row;
        align-items: center;
        padding: 0;
    }
    .p-offices-list__tomap{
        margin-left: 0;
    }
    .dropdown-container{
        margin-left: -5px;
        padding: 5px;
        margin-bottom: 0;
    }
    .dropdown-menu a{
        padding: 4px 5px;
    }
    .p-offices-list__more,
    .dropdown-container{
         margin-bottom: 10px;
    }  
    .minify .dropdown-container{
         margin-bottom: 0;
    }  
    .p-offices-list__more,
    .p-offices-list__route{
       
        padding-left: 22px;
    }
    .p-offices-list__more:before{
        left: 5px;
    }
    .ymaps-link:before,
    .gmaps-link:before{
        width: 22px;
        height: 22px;
    }
    .map-info-panel .p-offices-list__more,
    .map-info-panel .dropdown-container {
        margin-bottom: 0;
    }
}
/* End */
/* /b2b/franshiza/assets/css/style.css?1774855573151877 */
/* /b2b/franshiza/assets/css/style_2.css?17748819941935 */
/* /local/templates/main/components/bitrix/news.list/franshiza_map/style.css?17748001904814 */
