/* =========================================================
   HEADER FINAL PREMIUM SAFE
   Стабильная шапка без двойного слоя, с фирменным стилем
   ========================================================= */

.main-header,
.main-header *{
  box-sizing:border-box;
}

.main-header{
  position:relative !important;
  z-index:10000 !important;
  background:transparent !important;
  padding:10px 0 14px !important;
  overflow:visible !important;
}

.main-header a{
  text-decoration:none !important;
}

.main-header .header-container--v2{
  width:100% !important;
  max-width:1880px !important;
  margin:0 auto !important;
  padding:0 20px !important;
  min-height:114px !important;

  display:flex !important;
  align-items:center !important;
  gap:26px !important;

  border-radius:28px !important;
  background:
    radial-gradient(circle at 82% 24%, rgba(255,204,10,.16), transparent 18%),
    radial-gradient(circle at 94% 88%, rgba(221,42,27,.16), transparent 12%),
    linear-gradient(135deg, #050505 0%, #101010 58%, #181818 100%) !important;
  border:1px solid rgba(255,204,10,.12) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.main-header .header-logo--v2{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  margin:0 12px 0 0 !important;
}

.main-header .header-logo--v2 img{
  width:300px !important;
  max-width:100% !important;
  height:auto !important;
  display:block !important;
}

.main-header .header-nav--v2{
  flex:1 1 auto !important;
  min-width:0 !important;
  display:block !important;
}

.main-header .header-menu{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:34px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.main-header .header-menu__item{
  display:block !important;
  list-style:none !important;
  position:relative !important;
}

.main-header .header-menu__link{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:42px !important;
  padding:10px 0 !important;

  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  position:relative !important;
  opacity:.98 !important;
}

.main-header .header-menu__link::after{
  content:'' !important;
  position:absolute !important;
  left:0 !important;
  bottom:2px !important;
  width:0 !important;
  height:2px !important;
  border-radius:999px !important;
  background:#ffcc0a !important;
  transition:width .25s ease !important;
}

.main-header .header-menu__link:hover{
  color:#ffcc0a !important;
}

.main-header .header-menu__link:hover::after{
  width:100% !important;
}

.main-header .header-menu__caret{
  width:8px !important;
  height:8px !important;
  border-right:2px solid #ffcc0a !important;
  border-bottom:2px solid #ffcc0a !important;
  transform:rotate(45deg) !important;
  margin-top:-3px !important;
  transition:transform .2s ease !important;
}

.main-header .header-menu__item--dropdown:hover .header-menu__caret{
  transform:rotate(225deg) !important;
}

.main-header .header-dropdown{
  position:absolute !important;
  top:calc(100% + 6px) !important;
  left:-14px !important;
  min-width:300px !important;
  padding:10px !important;
  border-radius:18px !important;

  background:
    linear-gradient(180deg, rgba(17,17,17,.98) 0%, rgba(8,8,8,.98) 100%) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 22px 40px rgba(0,0,0,.32) !important;

  display:none !important;
  z-index:99999 !important;
}

.main-header .header-menu__item--dropdown:hover .header-dropdown{
  display:block !important;
}

.main-header .header-dropdown__link{
  display:block !important;
  padding:12px 14px !important;
  border-radius:12px !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:600 !important;
  text-transform:none !important;
}

.main-header .header-dropdown__link:hover{
  background:rgba(255,204,10,.12) !important;
  color:#ffcc0a !important;
}

.main-header .header-right-block--v2{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:14px !important;
  flex:0 0 auto !important;
  min-width:max-content !important;
}

.main-header .header-phone--v2{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:0 20px !important;
  border-radius:999px !important;

  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:800 !important;
  white-space:nowrap !important;

  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.main-header .header-phone--v2:hover{
  color:#ffcc0a !important;
  border-color:rgba(255,204,10,.24) !important;
}

.main-header .header-personal-link--v2{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:0 22px !important;
  border-radius:14px !important;

  background:linear-gradient(135deg, #ffcc0a 0%, #f1be05 100%) !important;
  color:#111 !important;
  border:1px solid #ffcc0a !important;

  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  white-space:nowrap !important;

  box-shadow:0 14px 28px rgba(255,204,10,.18) !important;
}

.main-header .header-personal-link--v2:hover{
  transform:translateY(-1px) !important;
  filter:brightness(1.03) !important;
}

.main-header .header-burger{
  display:none !important;
  width:48px !important;
  height:48px !important;
  margin-left:auto !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.04) !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  gap:6px !important;
}

.main-header .header-burger span{
  width:22px !important;
  height:2px !important;
  border-radius:999px !important;
  background:#ffcc0a !important;
  display:block !important;
}

.main-header .header-mobile{
  position:fixed !important;
  inset:0 !important;
  background:rgba(0,0,0,.72) !important;
  display:none !important;
  z-index:99999 !important;
  padding:18px !important;
}

.main-header .header-mobile.is-open{
  display:block !important;
}

.main-header .header-mobile__inner{
  width:100% !important;
  max-width:520px !important;
  height:100% !important;
  overflow:auto !important;
  padding:16px !important;
  border-radius:18px !important;
  background:#858283 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 22px 44px rgba(0,0,0,.36) !important;
}

.main-header .header-mobile__top{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:14px !important;
}

.main-header .header-mobile__logo img{
  width:210px !important;
  height:auto !important;
  display:block !important;
}

.main-header .header-mobile__close{
  width:44px !important;
  height:44px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.04) !important;
  color:#fff !important;
  font-size:18px !important;
  font-weight:800 !important;
}

.main-header .header-mobile__links{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  margin-top:8px !important;
}

.main-header .header-mobile__link{
  display:block !important;
  padding:13px 14px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.03) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}

.main-header .header-mobile__group{
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:12px !important;
  overflow:hidden !important;
}

.main-header .header-mobile__accordion{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  text-align:left !important;
  padding:13px 14px !important;
  background:rgba(255,255,255,.03) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}

.main-header .header-mobile__caret{
  width:8px !important;
  height:8px !important;
  border-right:2px solid #ffcc0a !important;
  border-bottom:2px solid #ffcc0a !important;
  transform:rotate(45deg) !important;
  transition:transform .2s ease !important;
}

.main-header .header-mobile__accordion.is-open .header-mobile__caret{
  transform:rotate(225deg) !important;
}

.main-header .header-mobile__submenu{
  display:none !important;
  padding:6px 10px 12px !important;
  background:rgba(41,40,41,.16) !important;
}

.main-header .header-mobile__submenu.is-open{
  display:block !important;
}

.main-header .header-mobile__submenu a{
  display:block !important;
  padding:10px 10px !important;
  border-radius:10px !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:600 !important;
}

.main-header .header-mobile__submenu a:hover,
.main-header .header-mobile__submenu a:focus-visible{
  background:rgba(255,204,10,.10) !important;
  color:#FFCC0A !important;
}

.main-header .header-mobile__bottom{
  margin-top:16px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
}

.main-header .header-mobile__phone{
  display:block !important;
  padding:13px 14px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.03) !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:800 !important;
}

.main-header .header-mobile__cabinet{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:13px 14px !important;
  border-radius:12px !important;
  background:linear-gradient(135deg, #ffcc0a 0%, #f1be05 100%) !important;
  color:#111 !important;
  font-weight:900 !important;
  border:1px solid #ffcc0a !important;
}

/* hard sync desktop / mobile */
@media (max-width: 1280px){
  .main-header .header-container--v2{
    gap:18px !important;
    min-height:96px !important;
  }
  .main-header .header-logo--v2 img{
    width:270px !important;
  }
  .main-header .header-menu{
    gap:24px !important;
  }
  .main-header .header-menu__link{
    font-size:14px !important;
  }
  .main-header .header-phone--v2{
    display:none !important;
  }
  .main-header .header-personal-link--v2{
    min-height:46px !important;
    padding:0 18px !important;
    font-size:14px !important;
  }
}

@media (max-width: 920px){
  .main-header{
    padding:10px 0 12px !important;
  }
  .main-header .header-container--v2{
    min-height:76px !important;
    padding:0 16px !important;
    gap:12px !important;
  }
  .main-header .header-logo--v2 img{
    width:230px !important;
  }
  .main-header .header-nav--v2,
  .main-header .header-right-block--v2{
    display:none !important;
  }
  .main-header .header-burger{
    display:flex !important;
  }
}

@media (min-width: 1281px){
  .main-header .header-mobile{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .main-header .header-burger{
    display:none !important;
  }
  .main-header .header-nav--v2{
    display:block !important;
  }
  .main-header .header-right-block--v2{
    display:flex !important;
  }
}


/* =========================================================
   FIX: убрать ощущение "двойной" шапки
   Причина: базовый .main-header из css/style.css рисует свой фон/границу,
   а .header-container--v2 рисует второй тёмный блок.
   Ниже жёстко оставляем только один визуальный слой.
   ========================================================= */

.main-header{
  background: transparent !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  padding: 8px 0 10px !important;
}

.main-header::before,
.main-header::after,
.main-header .header-container--v2::before,
.main-header .header-container--v2::after{
  content: none !important;
  display: none !important;
}

.main-header .header-container--v2{
  min-height: 108px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(255,204,10,.10) !important;
  box-shadow:
    0 16px 34px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

@media (max-width: 1280px){
  .main-header{
    padding: 8px 0 10px !important;
  }
  .main-header .header-container--v2{
    min-height: 92px !important;
  }
}

@media (max-width: 920px){
  .main-header{
    padding: 8px 0 10px !important;
  }
  .main-header .header-container--v2{
    min-height: 74px !important;
    border-radius: 24px !important;
  }
}


/* =========================================================
   FIX: dropdown "Услуги" не должен пропадать при переводе курсора
   На некоторых ПК между пунктом меню и выпадающим списком получается микрозазор.
   Добавляем hover-bridge и убираем лишний отступ сверху.
   ========================================================= */

.main-header .header-menu__item--dropdown{
  position: relative !important;
  padding-bottom: 14px !important;
  margin-bottom: -14px !important;
}

.main-header .header-menu__item--dropdown::after{
  content: "" !important;
  position: absolute !important;
  left: -12px !important;
  right: -12px !important;
  top: 100% !important;
  height: 18px !important;
  display: block !important;
}

.main-header .header-dropdown{
  top: calc(100% - 4px) !important;
  left: -14px !important;
  margin-top: 0 !important;
}

.main-header .header-dropdown:hover,
.main-header .header-menu__item--dropdown:hover .header-dropdown{
  display: block !important;
}




/* =========================================================
   FINAL OVERRIDE: full width square header + premium hover pills
   ========================================================= */

.main-header{
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.main-header .header-container--v2{
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 34px !important;
  min-height: 96px !important;
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.03) !important;
  background:#858283 !important;
}

.main-header .header-logo--v2{
  margin-right: 18px !important;
}

.main-header .header-menu{
  gap: 10px !important;
}

.main-header .header-menu__item{
  position: relative !important;
}

.main-header .header-menu__link{
  min-height: 52px !important;
  padding: 0 22px !important;
  border-radius: 16px !important;
  z-index: 1 !important;
  transition: color .22s ease !important;
}

.main-header .header-menu__link::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: 16px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.07) 0%, rgba(255,255,255,.03) 100%) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 10px 24px rgba(0,0,0,.16) !important;
  opacity: 0 !important;
  transform: scale(.96) !important;
  transition: opacity .22s ease, transform .22s ease, border-color .22s ease !important;
  z-index: -1 !important;
}

.main-header .header-menu__link::after{
  display: none !important;
}

.main-header .header-menu__link:hover::before,
.main-header .header-menu__item--dropdown:hover > .header-menu__link::before,
.main-header .header-menu__link:focus-visible::before{
  opacity: 1 !important;
  transform: scale(1) !important;
  border-color: rgba(255,204,10,.16) !important;
}

.main-header .header-menu__link:hover,
.main-header .header-menu__item--dropdown:hover > .header-menu__link,
.main-header .header-menu__link:focus-visible{
  color: #ffffff !important;
}

.main-header .header-menu__link--dropdown{
  gap: 8px !important;
}

.main-header .header-menu__caret{
  margin-top: -2px !important;
}

.main-header .header-menu__item--dropdown{
  padding-bottom: 16px !important;
  margin-bottom: -16px !important;
}

.main-header .header-menu__item--dropdown::after{
  height: 20px !important;
}

.main-header .header-dropdown{
  top: calc(100% - 2px) !important;
  left: -6px !important;
}

.main-header .header-right-block--v2{
  gap: 14px !important;
}

.main-header .header-phone--v2{
  min-height: 46px !important;
  padding: 0 22px !important;
}

.main-header .header-personal-link--v2{
  min-height: 46px !important;
  padding: 0 28px !important;
  border-radius: 14px !important;
}

@media (max-width: 1280px){
  .main-header .header-container--v2{
    min-height: 86px !important;
    padding: 0 22px !important;
    border-radius: 0 !important;
  }

  .main-header .header-logo--v2 img{
    width: 270px !important;
  }

  .main-header .header-menu{
    gap: 8px !important;
  }

  .main-header .header-menu__link{
    min-height: 48px !important;
    padding: 0 18px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 920px){
  .main-header{
    padding: 0 !important;
  }

  .main-header .header-container--v2{
    min-height: 74px !important;
    padding: 0 16px !important;
    border-radius: 0 !important;
  }

  .main-header .header-logo--v2 img{
    width: 230px !important;
  }
}




/* ========================================================= */
/* HOME UNDERLAY FINAL — SMALL FILE, LOADED LAST             */
/* ========================================================= */

/*
  Причина проблемы на "том самом" ПК:
  style.css слишком перегружен старыми версиями фиксов (V7, V25, V26 и т.д.),
  часть из них конфликтует по специфичности и содержит очень большие встроенные data:image.
  На отдельных браузерах/ПК это может приводить к тому, что поздние правила
  применяются нестабильно или не применяются вовсе.

  Поэтому финальный фон выносим в отдельный небольшой CSS,
  который и так подключается ПОСЛЕДНИМ (header-final.css).
*/

/* Только главная */
.main-page-content{
  background: transparent !important;
}

/* Подложка на секциях главной — тем же уровнем специфичности */
.main-page-content > .main-slider-section,
.main-page-content > .about-us-section,
.main-page-content > .online-evaluation-section,
.main-page-content > .main-advantages-section,
.main-page-content > .main-addresses-section,
.main-page-content > .main-yandex-reviews-section,
.main-page-content > .home-news-section{
  background-color:#f3f3f3 !important;
  background-image:url('/upload/main-page-underlay-yellow-diamonds.v25.png?v=28') !important;
  background-repeat:repeat !important;
  background-size:980px 820px !important;
  background-position:center top !important;
}

/* Внутренние premium-обертки прозрачные */
.main-page-content .c4g-about-premium-v3,
.main-page-content .c4g-online-eval-premium,
.main-page-content .c4g-advantages-premium,
.main-page-content .c4g-main-reviews-premium{
  background:transparent !important;
}

/* Поднимаем контент над фоном */
.main-page-content > .main-slider-section > .container,
.main-page-content > .about-us-section > .container,
.main-page-content > .online-evaluation-section > .container,
.main-page-content > .main-advantages-section > .container,
.main-page-content > .main-addresses-section > .container,
.main-page-content > .main-yandex-reviews-section > .container,
.main-page-content > .home-news-section > .container{
  position:relative !important;
  z-index:1 !important;
}

@media (max-width:1200px){
  .main-page-content > .main-slider-section,
  .main-page-content > .about-us-section,
  .main-page-content > .online-evaluation-section,
  .main-page-content > .main-advantages-section,
  .main-page-content > .main-addresses-section,
  .main-page-content > .main-yandex-reviews-section,
  .main-page-content > .home-news-section{
    background-size:760px 635px !important;
  }
}

@media (max-width:768px){
  .main-page-content > .main-slider-section,
  .main-page-content > .about-us-section,
  .main-page-content > .online-evaluation-section,
  .main-page-content > .main-advantages-section,
  .main-page-content > .main-addresses-section,
  .main-page-content > .main-yandex-reviews-section,
  .main-page-content > .home-news-section{
    background-size:560px 470px !important;
  }
}

@media (max-width:576px){
  .main-page-content > .main-slider-section,
  .main-page-content > .about-us-section,
  .main-page-content > .online-evaluation-section,
  .main-page-content > .main-advantages-section,
  .main-page-content > .main-addresses-section,
  .main-page-content > .main-yandex-reviews-section,
  .main-page-content > .home-news-section{
    background-size:420px 352px !important;
  }
}




/* ========================================================= */
/* V35 SAFE: ТОЛЬКО ВЫРАВНИВАНИЕ ОТСТУПОВ БЕЗ ЛОМА ВЕРСТКИ   */
/* ========================================================= */

/*
  Что делаем:
  - берем чистую версию с подложкой из v28
  - НЕ трогаем контейнеры, flex, gap, inner wrappers
  - выравниваем только верхние отступы секций главной

  Логика:
  - у всех секций на главной оставляем их существующий нижний отступ
  - убираем разный верхний padding у следующих секций
  - первому блоку задаем нормальный верхний отступ от шапки
*/

.main-page-content > .main-slider-section{
  padding-top: 56px !important;
}

.main-page-content > .about-us-section,
.main-page-content > .online-evaluation-section,
.main-page-content > .main-advantages-section,
.main-page-content > .main-addresses-section,
.main-page-content > .main-yandex-reviews-section,
.main-page-content > .home-news-section{
  padding-top: 0 !important;
}

/* На случай внешних margin у внутренних блоков */
.main-page-content .c4g-about-premium-v3,
.main-page-content .c4g-online-eval-premium,
.main-page-content .c4g-advantages-premium,
.main-page-content .c4g-main-reviews-premium{
  margin-top: 0 !important;
}

@media (max-width:1200px){
  .main-page-content > .main-slider-section{
    padding-top: 44px !important;
  }
}

@media (max-width:768px){
  .main-page-content > .main-slider-section{
    padding-top: 32px !important;
  }
}

@media (max-width:576px){
  .main-page-content > .main-slider-section{
    padding-top: 24px !important;
  }
}




/* ========================================================= */
/* V36: ТОЛЬКО СТИЛЬ ЗАГОЛОВКА ОТЗЫВОВ                       */
/* ========================================================= */

.c4g-main-reviews-premium__head{
  margin-bottom:22px !important;
  text-align:center !important;
}

.c4g-main-reviews-premium__title{
  margin:0 !important;
  color:#000 !important;
  font-size:40px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
}

@media (max-width:768px){
  .c4g-main-reviews-premium__title{
    font-size:32px !important;
    line-height:1.12 !important;
  }
}


/* =========================================================
   C4G HEADER RESPONSIVE FIX
   Вставить в самый конец /css/header-final.css

   Исправляет адаптацию шапки на промежуточных разрешениях:
   - меню и кнопка «Личный кабинет» больше не налезают друг на друга;
   - на узких ноутбуках шапка становится компактнее;
   - на планшетах и маленьких экранах включается бургер-меню раньше;
   - убирается горизонтальный скролл из-за шапки.
   ========================================================= */

html,
body{
  max-width:100% !important;
  overflow-x:hidden !important;
}

.main-header,
.main-header .header-container--v2{
  max-width:100% !important;
}

.main-header .header-container--v2{
  flex-wrap:nowrap !important;
}

.main-header .header-nav--v2{
  min-width:0 !important;
}

.main-header .header-menu{
  min-width:0 !important;
}

.main-header .header-right-block--v2{
  flex-shrink:0 !important;
}

/* Большие ноутбуки: делаем элементы компактнее, но оставляем обычное меню */
@media (max-width: 1500px) and (min-width: 1281px){
  .main-header .header-container--v2{
    min-height:88px !important;
    padding-left:24px !important;
    padding-right:24px !important;
    gap:14px !important;
  }

  .main-header .header-logo--v2{
    margin-right:8px !important;
  }

  .main-header .header-logo--v2 img{
    width:245px !important;
  }

  .main-header .header-menu{
    gap:6px !important;
  }

  .main-header .header-menu__link{
    min-height:46px !important;
    padding-left:13px !important;
    padding-right:13px !important;
    font-size:13px !important;
    letter-spacing:.01em !important;
  }

  .main-header .header-phone--v2{
    display:none !important;
  }

  .main-header .header-personal-link--v2{
    min-height:46px !important;
    padding-left:18px !important;
    padding-right:18px !important;
    font-size:14px !important;
    border-radius:14px !important;
  }
}

/* Узкие ноутбуки и планшеты: включаем бургер раньше, чтобы шапка не ломалась */
@media (max-width: 1280px){
  .main-header{
    padding:0 !important;
  }

  .main-header .header-container--v2{
    min-height:74px !important;
    padding-left:16px !important;
    padding-right:16px !important;
    gap:12px !important;
    justify-content:space-between !important;
  }

  .main-header .header-logo--v2{
    margin-right:0 !important;
    min-width:0 !important;
  }

  .main-header .header-logo--v2 img{
    width:230px !important;
    max-width:calc(100vw - 96px) !important;
  }

  .main-header .header-nav--v2,
  .main-header .header-right-block--v2{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .main-header .header-burger{
    display:flex !important;
    flex:0 0 48px !important;
    width:48px !important;
    height:48px !important;
    margin-left:auto !important;
  }
}

@media (min-width: 769px) and (max-width: 1280px){
  .main-header .header-container--v2{
    box-shadow:none !important;
  }
}

/* Десктоп: гарантированно показываем обычную шапку только там, где хватает места */
@media (min-width: 1281px){
  .main-header .header-mobile{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .main-header .header-burger{
    display:none !important;
  }

  .main-header .header-nav--v2{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }

  .main-header .header-right-block--v2{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

@media (max-width: 576px){
  .main-header .header-container--v2{
    min-height:68px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .main-header .header-logo--v2 img{
    width:205px !important;
    max-width:calc(100vw - 86px) !important;
  }

  .main-header .header-burger{
    flex-basis:44px !important;
    width:44px !important;
    height:44px !important;
    border-radius:13px !important;
  }
}

@media (max-width: 380px){
  .main-header .header-logo--v2 img{
    width:185px !important;
  }
}


/* =========================================================
   C4G: REMOVE YELLOW DECORATIVE UNDERLAY — FINAL
   Вставить в самый конец /css/header-final.css

   Задача:
   - убрать жёлтые декоративные ромбы/подложку;
   - оставить единый спокойный фон #F3F3F3;
   - не трогать тёмные hero-блоки, карточки, кнопки и контент.
   ========================================================= */

html,
body,
body .wraper,
body main,
body .page,
body .main-page-content{
  background-color:#F3F1ED !important;
  background-image:none !important;
}

/* Главная: убираем фон-картинку с контейнера и основных секций */
body .main-page-content,
body .main-page-content > .main-slider-section,
body .main-page-content > .about-us-section,
body .main-page-content > .online-evaluation-section,
body .main-page-content > .main-advantages-section,
body .main-page-content > .main-addresses-section,
body .main-page-content > .main-yandex-reviews-section,
body .main-page-content > .home-news-section,
body .main-page-content > .license-section{
  background-color:#F3F1ED !important;
  background-image:none !important;
  background-repeat:no-repeat !important;
  background-size:auto !important;
  background-position:center center !important;
}

/* Убираем декоративные псевдослои, которые могли рисовать ромбы */
body .main-page-content::before,
body .main-page-content::after,
body .main-page-content > .main-slider-section::before,
body .main-page-content > .main-slider-section::after,
body .main-page-content > .about-us-section::before,
body .main-page-content > .about-us-section::after,
body .main-page-content > .online-evaluation-section::before,
body .main-page-content > .online-evaluation-section::after,
body .main-page-content > .main-advantages-section::before,
body .main-page-content > .main-advantages-section::after,
body .main-page-content > .main-addresses-section::before,
body .main-page-content > .main-addresses-section::after,
body .main-page-content > .main-yandex-reviews-section::before,
body .main-page-content > .main-yandex-reviews-section::after,
body .main-page-content > .home-news-section::before,
body .main-page-content > .home-news-section::after,
body .main-page-content > .license-section::before,
body .main-page-content > .license-section::after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  background:none !important;
  background-image:none !important;
}

/* Дополнительная защита: если где-то фон задан через старую картинку */
body [style*="main-page-underlay-yellow-diamonds"],
body [style*="yellow-diamonds"]{
  background-image:none !important;
}
/* =========================================================
   C4G HOME: MOBILE MAIN SLIDER FIX V2
   Вставить в самый конец /css/header-final.css

   Важно:
   Этот файл исправляет предыдущий mobile-slider-fix, из-за которого
   слайды могли «слипнуться» и отображаться с перекосом.
   ========================================================= */

@media (max-width: 768px){
  html,
  body{
    overflow-x:hidden !important;
  }

  body .wraper,
  body main,
  body .page,
  body .main-page-content,
  body .main-page-content > .main-slider-section{
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body .main-page-content > .main-slider-section{
    padding-top:16px !important;
    padding-bottom:36px !important;
  }

  body .main-page-content > .main-slider-section > .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:12px !important;
    padding-right:12px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body .c4g-premium-main-slider,
  body .c4g-premium-main-slider__swiper{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    border-radius:22px !important;
    box-sizing:border-box !important;
  }

  /* Возвращаем Swiper нормальную механику: не ломаем flex-basis и не обнуляем зазор */
  body .c4g-premium-main-slider__swiper .swiper-wrapper{
    display:flex !important;
    align-items:stretch !important;
    height:auto !important;
    box-sizing:content-box !important;
  }

  body .c4g-premium-main-slider__swiper .swiper-slide{
    flex:0 0 auto !important;
    width:calc(100vw - 24px) !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    margin-right:18px !important;
    box-sizing:border-box !important;
  }

  body .c4g-premium-slide{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    height:auto !important;
    display:block !important;
    padding:18px 16px 64px !important;
    border-radius:22px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body .c4g-premium-slide__content,
  body .c4g-premium-slide__text,
  body .c4g-premium-slide__list,
  body .c4g-premium-slide__actions,
  body .c4g-premium-slide__btn,
  body .c4g-premium-slide__hint{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body .c4g-premium-slide__eyebrow{
    max-width:100% !important;
    white-space:normal !important;
    margin-bottom:10px !important;
  }

  body .c4g-premium-slide__title{
    width:100% !important;
    max-width:100% !important;
    font-size:30px !important;
    line-height:1.04 !important;
    margin:0 0 10px !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  body .c4g-premium-slide__text{
    font-size:14px !important;
    line-height:1.48 !important;
    margin:0 0 14px !important;
  }

  body .c4g-premium-slide__list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:9px !important;
    margin:0 0 16px !important;
  }

  body .c4g-premium-slide__list-item{
    width:100% !important;
    min-height:0 !important;
    padding:11px 12px !important;
    border-radius:14px !important;
    font-size:13px !important;
    line-height:1.35 !important;
    box-sizing:border-box !important;
  }

  body .c4g-premium-slide__actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:10px !important;
    margin:0 !important;
  }

  body .c4g-premium-slide__btn,
  body .c4g-premium-slide__hint{
    min-height:46px !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
  }

  /* На телефонах правый блок карточек ломает ширину — прячем его */
  body .c4g-premium-slide__aside,
  body .c4g-premium-icon-grid,
  body .c4g-premium-icon-card{
    display:none !important;
  }

  body .c4g-premium-main-slider__arrow,
  body .c4g-premium-main-slider .swiper-button-prev,
  body .c4g-premium-main-slider .swiper-button-next{
    display:none !important;
  }

  body .c4g-premium-main-slider__pagination{
    bottom:16px !important;
  }
}

@media (max-width:420px){
  body .main-page-content > .main-slider-section > .container{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  body .c4g-premium-main-slider__swiper .swiper-slide{
    width:calc(100vw - 24px) !important;
  }

  body .c4g-premium-slide{
    padding:16px 14px 60px !important;
  }

  body .c4g-premium-slide__title{
    font-size:28px !important;
  }
}

@media (max-width:360px){
  body .main-page-content > .main-slider-section > .container{
    padding-left:10px !important;
    padding-right:10px !important;
  }

  body .c4g-premium-main-slider__swiper .swiper-slide{
    width:calc(100vw - 20px) !important;
  }

  body .c4g-premium-slide{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  body .c4g-premium-slide__title{
    font-size:26px !important;
  }
}
/* =========================================================
   C4G NEWS: MOBILE FIX
   Вставить в самый конец /css/header-final.css или общего CSS

   Исправляет новости на телефоне:
   - карточки идут в одну колонку;
   - изображения не сжимаются в узкие полосы;
   - текст не вылезает и не режется по буквам;
   - убирается горизонтальный сдвиг.
   ========================================================= */

@media (max-width: 768px){
  html,
  body{
    overflow-x:hidden !important;
  }

  body .home-news-section,
  body .news-list-page,
  body .news-page,
  body .news-section{
    overflow-x:hidden !important;
    background:#F3F1ED !important;
  }

  body .home-news-section > .container,
  body .news-list-page > .container,
  body .news-page > .container,
  body .inner-page-content > .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:14px !important;
    padding-right:14px !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  body .home-news-section{
    padding-top:42px !important;
    padding-bottom:52px !important;
  }

  body .section-title,
  body .news-list-page h1,
  body .news-page h1,
  body .inner-page-content h1{
    font-size:32px !important;
    line-height:1.08 !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    margin-bottom:24px !important;
    max-width:100% !important;
    overflow-wrap:break-word !important;
  }

  body .home-news-grid,
  body .news-list-page,
  body .news-list-page .row,
  body .news-list-grid,
  body .news-grid,
  body .news-list,
  body .news-items,
  body .news-page__grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  body .home-news-grid > *,
  body .news-list-page > *,
  body .news-list-page .row > *,
  body .news-list-grid > *,
  body .news-grid > *,
  body .news-list > *,
  body .news-items > *,
  body .news-page__grid > *{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:0 0 100% !important;
    box-sizing:border-box !important;
  }

  body .news-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    border-radius:20px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:0 12px 26px rgba(0,0,0,.07) !important;
    transform:none !important;
  }

  body .news-card:hover{
    transform:none !important;
  }

  body .news-card__image{
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10 !important;
    min-height:0 !important;
    overflow:hidden !important;
    background:#ececec !important;
  }

  body .news-card__image img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
  }

  body .news-card__content,
  body .news-card-content{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:18px !important;
    box-sizing:border-box !important;
    background:#fff !important;
  }

  body .news-card__title,
  body .news-card-title,
  body .news-card h2,
  body .news-card h3{
    font-size:19px !important;
    line-height:1.28 !important;
    margin-bottom:10px !important;
    max-width:100% !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }

  body .news-card__date,
  body .news-card-date{
    font-size:13px !important;
    line-height:1.3 !important;
  }

  body .all-news-link-wrapper{
    margin-top:26px !important;
  }

  body .btn-more{
    width:100% !important;
    max-width:320px !important;
    min-height:48px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:12px 18px !important;
    box-sizing:border-box !important;
  }
}

@media (max-width: 420px){
  body .home-news-section > .container,
  body .news-list-page > .container,
  body .news-page > .container,
  body .inner-page-content > .container{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  body .section-title,
  body .news-list-page h1,
  body .news-page h1,
  body .inner-page-content h1{
    font-size:29px !important;
    margin-bottom:20px !important;
  }

  body .news-card__content,
  body .news-card-content{
    padding:16px !important;
  }

  body .news-card__title,
  body .news-card-title,
  body .news-card h2,
  body .news-card h3{
    font-size:18px !important;
  }
}
/* =========================================================
   C4G NEWS PAGE: MOBILE FIX FOR /news/
   Вставить в самый конец общего CSS, который подключается на странице /news/

   Исправляет отдельную страницу новостей:
   - на телефоне карточки идут в одну колонку;
   - карточки не сжимаются в узкие столбцы;
   - изображения сохраняют нормальные пропорции;
   - текст не режется по буквам;
   - убирается горизонтальный сдвиг.
   ========================================================= */

@media (max-width: 768px){
  html,
  body{
    overflow-x:hidden !important;
  }

  /* Контейнеры отдельной страницы новостей */
  body .news-page,
  body .news-list-page,
  body .news-section,
  body .news-list-section,
  body .all-news-page,
  body .page-news,
  body .c4g-news-page,
  body .news{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  body .news-page > .container,
  body .news-list-page > .container,
  body .news-section > .container,
  body .news-list-section > .container,
  body .all-news-page > .container,
  body .page-news > .container,
  body .c4g-news-page > .container,
  body .news > .container,
  body .news-page .container,
  body .news-list-page .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:14px !important;
    padding-right:14px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  /* Заголовок */
  body .news-page h1,
  body .news-list-page h1,
  body .news-section h1,
  body .all-news-page h1,
  body .page-news h1,
  body .c4g-news-page h1,
  body .news h1{
    font-size:34px !important;
    line-height:1.05 !important;
    text-align:center !important;
    margin:24px 0 24px !important;
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }

  /* Сетки новостей: Bitrix, bootstrap, кастомные grid/flex */
  body .news-list,
  body .news-items,
  body .news-grid,
  body .news-list-grid,
  body .news-page__grid,
  body .news-section__grid,
  body .all-news-grid,
  body .c4g-news-grid,
  body .news-page .row,
  body .news-list-page .row,
  body .news-section .row,
  body .all-news-page .row,
  body .page-news .row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  /* Bootstrap-колонки внутри списка новостей */
  body .news-page .row > [class*="col-"],
  body .news-list-page .row > [class*="col-"],
  body .news-section .row > [class*="col-"],
  body .all-news-page .row > [class*="col-"],
  body .page-news .row > [class*="col-"]{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  /* Прямые дети сеток */
  body .news-list > *,
  body .news-items > *,
  body .news-grid > *,
  body .news-list-grid > *,
  body .news-page__grid > *,
  body .news-section__grid > *,
  body .all-news-grid > *,
  body .c4g-news-grid > *{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  /* Карточки новостей */
  body .news-card,
  body .news-item,
  body .news-list-item,
  body .news-preview,
  body .news-element,
  body .c4g-news-card,
  body .news-page article,
  body .news-list-page article{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    border-radius:22px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  /* Картинки */
  body .news-card img,
  body .news-item img,
  body .news-list-item img,
  body .news-preview img,
  body .news-element img,
  body .c4g-news-card img,
  body .news-page article img,
  body .news-list-page article img{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10 !important;
    object-fit:cover !important;
    display:block !important;
  }

  /* Если картинка лежит в отдельной обертке */
  body .news-card__image,
  body .news-card-image,
  body .news-item__image,
  body .news-preview__image,
  body .news-list-item__image,
  body .c4g-news-card__image{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10 !important;
    overflow:hidden !important;
    border-radius:18px 18px 0 0 !important;
  }

  /* Текстовая часть */
  body .news-card__content,
  body .news-card-content,
  body .news-item__content,
  body .news-preview__content,
  body .news-list-item__content,
  body .c4g-news-card__content,
  body .news-page article .content,
  body .news-list-page article .content{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:18px !important;
    box-sizing:border-box !important;
  }

  /* Названия */
  body .news-card__title,
  body .news-card-title,
  body .news-item__title,
  body .news-preview__title,
  body .news-list-item__title,
  body .c4g-news-card__title,
  body .news-page article h2,
  body .news-page article h3,
  body .news-list-page article h2,
  body .news-list-page article h3{
    font-size:22px !important;
    line-height:1.18 !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    margin-bottom:10px !important;
  }

  /* Дата и описание */
  body .news-card__date,
  body .news-card-date,
  body .news-item__date,
  body .news-preview__date,
  body .news-list-item__date,
  body .c4g-news-card__date{
    font-size:13px !important;
    line-height:1.35 !important;
    margin-top:8px !important;
  }

  body .news-card__text,
  body .news-card-text,
  body .news-item__text,
  body .news-preview__text,
  body .news-list-item__text,
  body .c4g-news-card__text,
  body .news-page article p,
  body .news-list-page article p{
    font-size:14px !important;
    line-height:1.55 !important;
    max-width:100% !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }
}

@media (max-width: 420px){
  body .news-page > .container,
  body .news-list-page > .container,
  body .news-section > .container,
  body .news-list-section > .container,
  body .all-news-page > .container,
  body .page-news > .container,
  body .c4g-news-page > .container,
  body .news > .container,
  body .news-page .container,
  body .news-list-page .container{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  body .news-page h1,
  body .news-list-page h1,
  body .news-section h1,
  body .all-news-page h1,
  body .page-news h1,
  body .c4g-news-page h1,
  body .news h1{
    font-size:30px !important;
    margin:20px 0 20px !important;
  }

  body .news-card__content,
  body .news-card-content,
  body .news-item__content,
  body .news-preview__content,
  body .news-list-item__content,
  body .c4g-news-card__content,
  body .news-page article .content,
  body .news-list-page article .content{
    padding:16px !important;
  }

  body .news-card__title,
  body .news-card-title,
  body .news-item__title,
  body .news-preview__title,
  body .news-list-item__title,
  body .c4g-news-card__title,
  body .news-page article h2,
  body .news-page article h3,
  body .news-list-page article h2,
  body .news-list-page article h3{
    font-size:20px !important;
  }
}

/*
 * FIX: стабильное положение точек пагинации главного слайдера
 * Смысл правки: не привязывать точки к растягивающейся ширине контейнера,
 * а жёстко центрировать их через left:50% + translateX(-50%).
 */

body .main-slider-section,
body .c4g-premium-main-slider,
body .c4g-premium-main-slider__swiper {
  position: relative !important;
}

body .c4g-premium-main-slider__pagination,
body .c4g-premium-main-slider .swiper-pagination,
body .main-slider-section .swiper-pagination.c4g-premium-main-slider__pagination {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 18px !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  z-index: 8 !important;
  white-space: nowrap !important;
}

body .c4g-premium-main-slider__pagination .swiper-pagination-bullet,
body .c4g-premium-main-slider .swiper-pagination-bullet {
  flex: 0 0 12px !important;
  width: 12px !important;
  height: 12px !important;
  margin: 0 !important;
}

@media (max-width: 767px) {
  body .c4g-premium-main-slider__pagination,
  body .c4g-premium-main-slider .swiper-pagination,
  body .main-slider-section .swiper-pagination.c4g-premium-main-slider__pagination {
    bottom: 14px !important;
    gap: 8px !important;
  }
}

@media (max-width: 420px) {
  body .c4g-premium-main-slider__pagination,
  body .c4g-premium-main-slider .swiper-pagination,
  body .main-slider-section .swiper-pagination.c4g-premium-main-slider__pagination {
    bottom: 12px !important;
  }

  body .c4g-premium-main-slider__pagination .swiper-pagination-bullet,
  body .c4g-premium-main-slider .swiper-pagination-bullet {
    flex-basis: 11px !important;
    width: 11px !important;
    height: 11px !important;
  }
}

/* C4G: единая ширина основных контейнеров */
:root {
  --c4g-container-width: 1360px;
  --c4g-page-gutter: 24px;
}

@media (max-width: 1024px) {
  :root {
    --c4g-page-gutter: 20px;
  }
}

@media (max-width: 768px) {
  :root {
    --c4g-page-gutter: 16px;
  }
}

@media (min-width: 769px) {
  .main-header {
    background: #858283 !important;
  }

  .main-header .header-container--v2,
  .main-page-content > .main-slider-section > .container,
  .main-page-content > .home-news-section > .container,
  .main-page-content > .main-addresses-section > .container,
  .main-page-content > .main-yandex-reviews-section > .container,
  .main-page-content > .about-us-section > .container,
  .main-page-content > .online-evaluation-section > .container,
  .premium-footer > .footer-container {
    width: calc(100% - (var(--c4g-page-gutter) * 2)) !important;
    max-width: var(--c4g-container-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }

  .main-page-content .c4g-about-premium-v3__inner,
  .main-page-content .c4g-online-eval-premium__inner,
  .main-page-content .c4g-main-reviews-premium__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* C4G: компактная desktop-шапка в контейнере 1360px */
@media (min-width: 1281px) {
  .main-header,
  .main-header .header-container--v2 {
    background: #858283 !important;
  }

  .main-header .header-container--v2 {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) 196px !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 16px !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  .main-header .header-logo--v2 {
    margin-right: 0 !important;
  }

  .main-header .header-nav--v2 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .main-header .header-menu {
    justify-content: center !important;
    gap: 6px !important;
  }

  .main-header .header-menu__link {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .main-header .header-right-block--v2 {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 196px !important;
    min-width: 196px !important;
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    overflow: visible !important;
  }

  .main-header .header-phone--v2 {
    display: inline-flex !important;
    width: 100% !important;
    min-height: auto !important;
    height: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  .main-header .header-personal-link--v2 {
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 14px !important;
    border-radius: 17px !important;
    box-shadow: 0 6px 14px rgba(255,204,10,.14) !important;
    text-align: center !important;
  }
}

/* C4G: устойчивый compact desktop внутри контейнера 1360px */
@media (min-width: 1281px) and (max-width: 1500px) {
  .main-header .header-container--v2 {
    grid-template-columns: 220px minmax(0, 1fr) 190px !important;
    gap: 10px !important;
  }

  .main-header .header-logo--v2 img {
    width: 220px !important;
    height: auto !important;
  }

  .main-header .header-menu {
    gap: 2px !important;
  }

  .main-header .header-menu__link {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 13px !important;
  }

  .main-header .header-right-block--v2 {
    width: 190px !important;
    min-width: 190px !important;
  }

  .main-header .header-personal-link--v2 {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* C4G: плавающая нижняя навигация только для mobile */
.c4g-mobile-bottom-nav {
  display: none !important;
}

@media (max-width: 768px) {
  .premium-footer {
    padding-bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .c4g-mobile-bottom-nav {
    position: fixed !important;
    left: 50% !important;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 9990 !important;
    width: calc(100% - 24px) !important;
    max-width: 440px !important;
    padding: 6px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 2px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    border-radius: 28px !important;
    background: rgba(133,130,131,.9) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.24) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
    transform: translateX(-50%) !important;
  }

  .c4g-mobile-bottom-nav__item {
    min-width: 0 !important;
    min-height: 60px !important;
    padding: 6px 3px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    border-radius: 21px !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background-color .2s ease, color .2s ease, transform .2s ease !important;
  }

  .c4g-mobile-bottom-nav__item svg {
    width: 24px !important;
    height: 24px !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  .c4g-mobile-bottom-nav__item.is-active {
    color: #FFCC0A !important;
    background: rgba(255,204,10,.1) !important;
  }

  .c4g-mobile-bottom-nav__item:active {
    transform: translateY(-1px) !important;
  }
}

/* C4G HOME NEWS: text-first editorial layout */
body .main-page-content > .home-news-section {
  padding-top: 0 !important;
  padding-bottom: 48px !important;
}

body .home-news-section .home-news-header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 28px !important;
  margin-bottom: 22px !important;
}

body .home-news-section .home-news-heading {
  min-width: 0 !important;
}

body .home-news-section .home-news-eyebrow {
  display: block !important;
  margin-bottom: 8px !important;
  color: #9B7900 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body .home-news-section .home-news-header .section-title {
  margin: 0 !important;
  color: #292829 !important;
  font-size: clamp(34px, 3vw, 42px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

body .home-news-section .all-news-link-wrapper {
  flex: 0 0 auto !important;
  margin: 0 !important;
  text-align: right !important;
}

body .home-news-section .btn-more {
  width: auto !important;
  max-width: none !important;
  min-height: 0 !important;
  padding: 8px 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #292829 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: none !important;
  transition: color .2s ease !important;
}

body .home-news-section .btn-more::after {
  content: "→";
  font-size: 19px;
  line-height: 1;
  transition: transform .2s ease;
}

body .home-news-section .btn-more:hover {
  border: 0 !important;
  background: transparent !important;
  color: #858283 !important;
}

body .home-news-section .btn-more:hover::after {
  transform: translateX(2px);
}

body .home-news-section .home-news-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 2fr) minmax(320px, .95fr) !important;
  grid-template-rows: repeat(2, minmax(185px, 1fr)) !important;
  align-items: stretch !important;
  gap: 20px !important;
  width: 100% !important;
  min-width: 0 !important;
}

body .home-news-section .news-card {
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  transform: none !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}

body .home-news-section .news-card--featured {
  grid-row: 1 / span 2 !important;
  min-height: 360px !important;
  padding: 0 !important;
  border: 1px solid rgba(41,40,41,.06) !important;
  border-radius: 28px !important;
  display: grid !important;
  grid-template-columns: 210px minmax(0, 1fr) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(41,40,41,.08) !important;
  color: #292829 !important;
}

body .home-news-section .news-card--secondary {
  min-height: 185px !important;
  padding: 0 !important;
  border: 1px solid rgba(41,40,41,.06) !important;
  border-radius: 24px !important;
  display: grid !important;
  grid-template-columns: 110px minmax(0, 1fr) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(41,40,41,.07) !important;
  color: #292829 !important;
}

body .home-news-section .news-card__topline {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

body .home-news-section .news-card__label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body .home-news-section .news-card__label::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #FFCC0A;
}

body .home-news-section .news-card--featured .news-card__label {
  color: #B78D00 !important;
}

body .home-news-section .news-card--featured .news-card__label::before {
  display: none !important;
}

body .home-news-section .news-card--secondary .news-card__label {
  color: #B78D00 !important;
}

body .home-news-section .news-card--secondary .news-card__label::before {
  display: none !important;
}

body .home-news-section .news-card__index {
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
}

body .home-news-section .news-card--featured .news-card__index {
  color: rgba(41,40,41,.34) !important;
}

body .home-news-section .news-card--secondary .news-card__index {
  color: rgba(41,40,41,.34) !important;
}

body .home-news-section .news-card__date {
  display: flex !important;
  align-items: flex-end !important;
  gap: 12px !important;
  margin: 0 !important;
}

body .home-news-section .news-card--featured .news-card__date {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 28px 22px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  border-right: 3px solid #FFCC0A !important;
  background: #858283 !important;
  color: #fff !important;
  text-align: center !important;
}

body .home-news-section .news-card--secondary .news-card__date {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 18px 12px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border-right: 2px solid #FFCC0A !important;
  background: #858283 !important;
  color: #fff !important;
  text-align: center !important;
}

body .home-news-section .news-card__date-day {
  display: block !important;
  font-weight: 900 !important;
  line-height: .82 !important;
  letter-spacing: -.05em !important;
}

body .home-news-section .news-card--featured .news-card__date-day {
  font-size: clamp(68px, 5.4vw, 78px) !important;
  line-height: .86 !important;
}

body .home-news-section .news-card--secondary .news-card__date-day {
  font-size: clamp(42px, 3.4vw, 48px) !important;
  line-height: .86 !important;
  color: #fff !important;
}

body .home-news-section .news-card__date-meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding-bottom: 3px !important;
}

body .home-news-section .news-card__date-month {
  font-size: 12px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
}

body .home-news-section .news-card__date-year,
body .home-news-section .news-card__date-fallback {
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
}

body .home-news-section .news-card--featured .news-card__date-year {
  color: rgba(255,255,255,.72) !important;
}

body .home-news-section .news-card--secondary .news-card__date-year {
  color: rgba(255,255,255,.72) !important;
}

body .home-news-section .news-card__content {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

body .home-news-section .news-card--featured .news-card__content {
  grid-column: 2 !important;
  grid-row: 2 !important;
  padding: 20px 34px 30px !important;
  justify-content: flex-start !important;
}

body .home-news-section .news-card--featured .news-card__topline {
  grid-column: 2 !important;
  grid-row: 1 !important;
  padding: 30px 34px 0 !important;
}

body .home-news-section .news-card--secondary .news-card__content {
  grid-column: 2 !important;
  grid-row: 2 !important;
  padding: 10px 20px 18px !important;
  justify-content: flex-start !important;
}

body .home-news-section .news-card--secondary .news-card__topline {
  grid-column: 2 !important;
  grid-row: 1 !important;
  padding: 18px 20px 0 !important;
}

body .home-news-section .news-card__title {
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

body .home-news-section .news-card--featured .news-card__title {
  max-width: 680px !important;
  margin: 0 0 16px !important;
  color: #292829 !important;
  font-size: clamp(32px, 2.6vw, 38px) !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: -.025em !important;
}

body .home-news-section .news-card--secondary .news-card__title {
  margin: 0 0 7px !important;
  color: #292829 !important;
  font-size: clamp(23px, 1.7vw, 26px) !important;
  line-height: 1.14 !important;
  font-weight: 850 !important;
}

body .home-news-section .news-card__text {
  margin: 0 0 22px !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
}

body .home-news-section .news-card__text,
body .home-news-section .news-card__text p {
  max-width: 100% !important;
  overflow-wrap: break-word !important;
}

body .home-news-section .news-card__text p {
  margin: 0 !important;
}

body .home-news-section .news-card--featured .news-card__text {
  margin-bottom: 18px !important;
  max-width: 620px !important;
  color: #5F5D5E !important;
  font-size: clamp(16px, 1.3vw, 17px) !important;
  line-height: 1.58 !important;
  -webkit-line-clamp: 3 !important;
}

body .home-news-section .news-card--secondary .news-card__text {
  margin-bottom: 9px !important;
  color: #5F5D5E !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  -webkit-line-clamp: 2 !important;
}

body .home-news-section .news-card__link {
  margin-top: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  border-bottom: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #FFCC0A !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body .home-news-section .news-card__link::after {
  content: "→";
  font-size: 17px;
  line-height: 1;
  transition: transform .2s ease;
}

body .home-news-section .news-card--featured .news-card__link {
  margin-top: auto !important;
  color: #FFCC0A !important;
  text-decoration: none !important;
}

body .home-news-section .news-card--secondary .news-card__link {
  color: #FFCC0A !important;
  font-size: 13px !important;
  text-decoration: none !important;
}

@media (hover: hover) and (pointer: fine) {
  body .home-news-section .news-card:hover {
    transform: translateY(-2px) !important;
  }

  body .home-news-section .news-card--featured:hover {
    box-shadow: 0 18px 40px rgba(41,40,41,.12) !important;
  }

  body .home-news-section .news-card--secondary:hover {
    border-color: rgba(133,130,131,.30) !important;
    box-shadow: 0 14px 34px rgba(41,40,41,.09) !important;
  }

  body .home-news-section .news-card:hover .news-card__link::after {
    transform: translateX(2px);
  }

  body .home-news-section .news-card:hover .news-card__link {
    color: #FFD633 !important;
    text-decoration: none !important;
  }
}

@media (min-width: 768px) and (max-width: 999px) {
  body .home-news-section .home-news-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
  }

  body .home-news-section .news-card--featured {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 330px !important;
    height: auto !important;
    grid-template-columns: 190px minmax(0, 1fr) !important;
  }

  body .home-news-section .news-card--secondary {
    min-height: 0 !important;
    height: auto !important;
  }
}

@media (max-width: 767px) {
  body .main-page-content > .home-news-section {
    padding-bottom: 46px !important;
  }

  body .home-news-section > .container {
    display: flex !important;
    flex-direction: column !important;
  }

  body .home-news-section .home-news-header {
    display: contents !important;
  }

  body .home-news-section .home-news-heading {
    order: 1 !important;
    margin-bottom: 20px !important;
  }

  body .home-news-section .home-news-header .section-title {
    font-size: 32px !important;
  }

  body .home-news-section .home-news-grid {
    order: 2 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    gap: 16px !important;
  }

  body .home-news-section .news-card--featured,
  body .home-news-section .news-card--secondary {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 0 !important;
    height: auto !important;
  }

  body .home-news-section .news-card--featured {
    padding: 0 !important;
    border-radius: 24px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
  }

  body .home-news-section .news-card--secondary {
    padding: 0 !important;
    border-radius: 22px !important;
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
  }

  body .home-news-section .news-card--secondary .news-card__date {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    padding: 16px 10px !important;
  }

  body .home-news-section .news-card--secondary .news-card__topline {
    grid-column: 2 !important;
    grid-row: 1 !important;
    padding: 18px 18px 0 !important;
  }

  body .home-news-section .news-card--secondary .news-card__content {
    grid-column: 2 !important;
    grid-row: 2 !important;
    padding: 10px 18px 18px !important;
  }

  body .home-news-section .news-card--featured .news-card__date {
    grid-column: 1 !important;
    grid-row: 1 !important;
    padding: 18px 22px !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    border-right: 0 !important;
    border-bottom: 3px solid #FFCC0A !important;
    text-align: left !important;
  }

  body .home-news-section .news-card--featured .news-card__date-meta {
    flex-direction: row !important;
    align-items: baseline !important;
    gap: 7px !important;
    padding-bottom: 0 !important;
  }

  body .home-news-section .news-card--featured .news-card__topline {
    grid-column: 1 !important;
    grid-row: 2 !important;
    padding: 20px 22px 0 !important;
  }

  body .home-news-section .news-card--featured .news-card__content {
    grid-column: 1 !important;
    grid-row: 3 !important;
    padding: 14px 22px 22px !important;
  }

  body .home-news-section .news-card--featured .news-card__date-day {
    font-size: 46px !important;
  }

  body .home-news-section .news-card--featured .news-card__title {
    font-size: clamp(24px, 7vw, 27px) !important;
  }

  body .home-news-section .news-card--secondary .news-card__title {
    font-size: clamp(21px, 4.2vw, 24px) !important;
  }

  body .home-news-section .all-news-link-wrapper {
    order: 3 !important;
    width: 100% !important;
    margin-top: 22px !important;
    text-align: left !important;
  }

  body .home-news-section .btn-more {
    width: auto !important;
    max-width: none !important;
  }

  body .home-news-section .news-card,
  body .home-news-section .news-card:hover {
    transform: none !important;
  }
}

@media (max-width: 430px) {
  body .home-news-section .home-news-header .section-title {
    font-size: 30px !important;
  }

  body .home-news-section .home-news-grid {
    gap: 14px !important;
  }

  body .home-news-section .news-card--secondary {
    padding: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
  }

  body .home-news-section .news-card--secondary .news-card__date {
    grid-column: 1 !important;
    grid-row: 1 !important;
    padding: 16px 18px !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    border-right: 0 !important;
    border-bottom: 2px solid #FFCC0A !important;
    text-align: left !important;
  }

  body .home-news-section .news-card--secondary .news-card__date-meta {
    flex-direction: row !important;
    align-items: baseline !important;
    gap: 7px !important;
    padding-bottom: 0 !important;
  }

  body .home-news-section .news-card--secondary .news-card__topline {
    grid-column: 1 !important;
    grid-row: 2 !important;
    padding: 18px 18px 0 !important;
  }

  body .home-news-section .news-card--secondary .news-card__content {
    grid-column: 1 !important;
    grid-row: 3 !important;
    padding: 10px 18px 18px !important;
  }

  body .home-news-section .news-card--featured .news-card__date,
  body .home-news-section .news-card--featured .news-card__topline {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  body .home-news-section .news-card--featured .news-card__content {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  body .home-news-section .news-card--featured .news-card__date-day {
    font-size: 42px !important;
  }

  body .home-news-section .news-card--featured .news-card__title {
    font-size: 24px !important;
  }

  body .home-news-section .news-card--secondary .news-card__title {
    font-size: 21px !important;
  }

  body .home-news-section .news-card--secondary .news-card__date-day {
    font-size: 40px !important;
  }

  body .home-news-section .news-card--featured .news-card__text {
    -webkit-line-clamp: 3 !important;
  }
}

/* C4G: premium homepage addresses */
body .main-addresses-section {
  --c4g-branch-panel-bg: #858283;
}

body .main-addresses-section .c4g-home-addresses-header {
  margin-bottom: 24px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

body .main-addresses-section .c4g-home-addresses-heading {
  min-width: 0 !important;
}

body .main-addresses-section .c4g-home-addresses-eyebrow {
  display: block !important;
  margin-bottom: 8px !important;
  color: #FFCC0A !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

body .main-addresses-section .addresses-section-title {
  margin: 0 !important;
  color: #292829 !important;
  font-size: clamp(34px, 3vw, 42px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.025em !important;
  text-align: left !important;
}

body .main-addresses-section .all-addresses-link {
  flex: 0 0 auto !important;
  margin: 0 0 5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #292829 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  text-align: left !important;
  text-decoration: none !important;
}

body .main-addresses-section .all-addresses-link::after {
  content: "→";
  color: #FFCC0A;
  font-size: 19px;
  line-height: 1;
  transition: transform .2s ease;
}

body .main-addresses-section .main-addresses-filters {
  margin: 0 0 22px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

body .main-addresses-section .main-region-btn {
  min-height: 44px !important;
  padding: 11px 20px !important;
  border: 1px solid rgba(133,130,131,.28) !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #292829 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  transform: none !important;
}

body .main-addresses-section .main-region-btn:hover {
  border-color: rgba(255,204,10,.72) !important;
  background: #fff !important;
  transform: translateY(-1px) !important;
}

body .main-addresses-section .main-region-btn.is-active {
  border-color: #FFCC0A !important;
  background: #FFCC0A !important;
  box-shadow: 0 8px 18px rgba(255,204,10,.16) !important;
  color: #171717 !important;
}

body .main-addresses-section .c4g-address-view-switcher {
  display: none !important;
}

body .main-addresses-section .main-addresses-layout {
  width: 100% !important;
  height: 520px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body .main-addresses-section .main-map-column {
  width: 100% !important;
  min-width: 0 !important;
  height: 520px !important;
  padding: 9px !important;
  overflow: hidden !important;
  border: 2px solid #FFCC0A !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(41,40,41,.08) !important;
  box-sizing: border-box !important;
}

body .main-addresses-section #main-yamap {
  border-radius: 21px !important;
  overflow: hidden !important;
}

body .main-addresses-section .main-list-column {
  width: 100% !important;
  min-width: 0 !important;
  height: 520px !important;
  padding: 16px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 1px solid rgba(133,130,131,.10) !important;
  border-radius: 28px !important;
  background: var(--c4g-branch-panel-bg) !important;
  box-sizing: border-box !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.65) transparent;
}

body .main-addresses-section .main-list-column::-webkit-scrollbar {
  width: 7px;
}

body .main-addresses-section .main-list-column::-webkit-scrollbar-button {
  display: none;
  width: 0;
  height: 0;
}

body .main-addresses-section .main-list-column::-webkit-scrollbar-track {
  background: transparent;
  margin-block: 12px;
}

body .main-addresses-section .main-list-column::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(255,255,255,.65);
}

body .main-addresses-section .c4g-home-addresses-list-label {
  margin: 2px 4px 12px !important;
  color: #FFCC0A !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body .main-addresses-section .address-item {
  margin: 0 0 12px !important;
  padding: 20px !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid rgba(133,130,131,.14) !important;
  border-radius: 21px !important;
  background: #fff !important;
  box-shadow: 0 6px 18px rgba(41,40,41,.05) !important;
  transform: none !important;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease !important;
}

body .main-addresses-section .address-item:last-child {
  margin-bottom: 0 !important;
}

body .main-addresses-section .address-item:hover {
  border-color: rgba(255,204,10,.48) !important;
  box-shadow: 0 10px 24px rgba(41,40,41,.08) !important;
  transform: translateY(-1px) !important;
}

body .main-addresses-section .address-item.expanded {
  border-color: #FFCC0A !important;
  box-shadow: 0 10px 26px rgba(255,204,10,.12) !important;
}

body .main-addresses-section .address-item__main-content {
  order: 1 !important;
  padding: 0 !important;
  cursor: pointer !important;
}

body .main-addresses-section .address-item__header {
  margin: 0 0 9px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
}

body .main-addresses-section .address-item__title {
  min-width: 0 !important;
  color: #292829 !important;
  font-size: clamp(19px, 1.5vw, 21px) !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
}

body .main-addresses-section .address-item__arrow {
  width: 34px !important;
  height: 34px !important;
  flex: 0 0 34px !important;
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(133,130,131,.18) !important;
  border-radius: 50% !important;
  background: #F3F1ED !important;
  transform: none !important;
}

body .main-addresses-section .address-item__arrow::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 2px solid #858283;
  border-bottom: 2px solid #858283;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .25s ease;
}

body .main-addresses-section .address-item.expanded .address-item__arrow {
  transform: none !important;
}

body .main-addresses-section .address-item.expanded .address-item__arrow::before {
  transform: translateY(2px) rotate(225deg);
}

body .main-addresses-section .address-item__address-line {
  color: #666364 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

body .main-addresses-section .address-item__body {
  order: 2 !important;
  color: #5F5D5E !important;
  transition: max-height .35s ease !important;
}

body .main-addresses-section .address-item.expanded .address-item__body {
  margin-top: 14px !important;
  padding-top: 14px !important;
  border-top: 1px solid rgba(133,130,131,.14) !important;
}

body .main-addresses-section .address-item__body p {
  margin: 0 0 10px !important;
  color: #5F5D5E !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body .main-addresses-section .address-item__body p:last-child {
  margin-bottom: 0 !important;
}

body .main-addresses-section .address-item__details-link {
  order: 3 !important;
  align-self: flex-start !important;
  position: static !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #C69A00 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  transform: none !important;
}

body .main-addresses-section .address-item__details-link::after {
  content: "→";
  color: #FFCC0A;
  font-size: 17px;
  line-height: 1;
  transition: transform .2s ease;
}

body .main-addresses-section .address-item__details-link:hover {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #A98000 !important;
  transform: none !important;
}

body .main-addresses-section .no-addresses-result {
  border: 1px solid rgba(255,204,10,.26) !important;
  background: #fff !important;
  color: #706D6E !important;
}

@media (hover: hover) and (pointer: fine) {
  body .main-addresses-section .all-addresses-link:hover::after,
  body .main-addresses-section .address-item__details-link:hover::after {
    transform: translateX(2px);
  }
}

@media (max-width: 1050px) {
  body .main-addresses-section .main-addresses-layout {
    height: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
  }

  body .main-addresses-section .main-map-column {
    height: 420px !important;
  }

  body .main-addresses-section .main-list-column {
    height: auto !important;
    max-height: 520px !important;
  }
}

@media (max-width: 768px) {
  body .main-addresses-section .c4g-home-addresses-header {
    margin-bottom: 20px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  body .main-addresses-section .addresses-section-title {
    font-size: 32px !important;
  }

  body .main-addresses-section .all-addresses-link {
    margin: 0 !important;
    font-size: 14px !important;
  }

  body .main-addresses-section .main-addresses-filters {
    margin-bottom: 18px !important;
    padding-bottom: 4px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none;
  }

  body .main-addresses-section .main-addresses-filters::-webkit-scrollbar {
    display: none;
  }

  body .main-addresses-section .c4g-address-view-switcher {
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 4px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 4px !important;
    border: 1px solid rgba(133,130,131,.18) !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-sizing: border-box !important;
  }

  body .main-addresses-section .c4g-address-view-switcher__button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 10px 14px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #292829 !important;
    font: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    cursor: pointer !important;
  }

  body .main-addresses-section .c4g-address-view-switcher__button.is-active {
    background: #FFCC0A !important;
    color: #171717 !important;
  }

  body .main-addresses-section .c4g-address-view-switcher__button:focus-visible {
    outline: 2px solid #292829 !important;
    outline-offset: 1px !important;
  }

  body .main-addresses-section .main-region-btn {
    min-height: 40px !important;
    padding: 10px 15px !important;
    font-size: 12px !important;
  }

  body .main-addresses-section .main-addresses-layout {
    gap: 16px !important;
  }

  body .main-addresses-section .main-addresses-layout.c4g-addresses--view-map .main-list-column {
    display: none !important;
  }

  body .main-addresses-section .main-addresses-layout.c4g-addresses--view-list .main-map-column {
    display: none !important;
  }

  body .main-addresses-section .main-map-column {
    height: 330px !important;
    padding: 7px !important;
    border-radius: 22px !important;
  }

  body .main-addresses-section #main-yamap {
    border-radius: 16px !important;
  }

  body .main-addresses-section .main-list-column {
    max-height: min(680px, 65vh) !important;
    padding: 12px !important;
    overflow-y: auto !important;
    border-radius: 22px !important;
  }

  body .main-addresses-section .address-item {
    padding: 17px !important;
    border-radius: 18px !important;
  }

  body .main-addresses-section .address-item__title {
    font-size: 18px !important;
  }

  body .main-addresses-section .address-item__details-link {
    position: static !important;
    margin-top: 12px !important;
    padding: 0 !important;
    font-size: 13px !important;
  }
}

/* C4G privacy policy */
.c4g-privacy {
  width: calc(100% - 48px);
  max-width: 1360px;
  margin: 0 auto;
  padding: 44px 0 72px;
  box-sizing: border-box;
  color: #292829;
  font-family: inherit;
}

.c4g-privacy__hero {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 24px;
  text-align: center;
}

.c4g-privacy__eyebrow {
  margin: 0 0 12px;
  color: #C89B00;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.c4g-privacy__title {
  max-width: 850px;
  margin: 0 auto 14px;
  color: #292829;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.08;
  font-weight: 900;
}

.c4g-privacy__edition {
  margin: 0;
  color: #777477;
  font-size: 15px;
  line-height: 1.5;
}

.c4g-privacy__card {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding: 46px 48px;
  border: 1px solid rgba(133,130,131,.12);
  border-radius: 24px;
  background: #FFFFFF;
  box-shadow: 0 20px 50px rgba(48,45,47,.07);
}

.c4g-privacy__section + .c4g-privacy__section {
  margin-top: 38px;
  padding-top: 38px;
  border-top: 1px solid rgba(133,130,131,.12);
}

.c4g-privacy__section h2 {
  margin: 0 0 18px;
  color: #292829;
  font-size: clamp(22px, 2.4vw, 26px);
  line-height: 1.25;
  font-weight: 850;
}

.c4g-privacy__section p,
.c4g-privacy__section li,
.c4g-privacy__details dt,
.c4g-privacy__details dd {
  font-size: 16px;
  line-height: 1.65;
}

.c4g-privacy__section p {
  margin: 0 0 14px;
}

.c4g-privacy__section p:last-child {
  margin-bottom: 0;
}

.c4g-privacy__section ul {
  margin: 0 0 18px;
  padding-left: 24px;
}

.c4g-privacy__section li + li {
  margin-top: 6px;
}

.c4g-privacy__section a {
  color: #B88B00;
  font-weight: 700;
  text-decoration-color: #FFCC0A;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.c4g-privacy__operator,
.c4g-privacy__contact {
  margin: 18px 0 20px;
  padding: 22px 24px;
  border-left: 4px solid #FFCC0A;
  border-radius: 16px;
  background: #F3F1ED;
}

.c4g-privacy__details {
  margin: 18px 0 0;
}

.c4g-privacy__details > div {
  display: grid;
  grid-template-columns: minmax(150px, .34fr) 1fr;
  gap: 18px;
  padding: 10px 0;
  border-top: 1px solid rgba(133,130,131,.12);
}

.c4g-privacy__details dt {
  color: #777477;
  font-weight: 700;
}

.c4g-privacy__details dd {
  margin: 0;
  color: #292829;
  font-weight: 600;
}

/* C4G footer legal links */
.premium-footer__legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px 22px;
  margin-top: 18px;
  padding: 16px 0;
  border-top: 1px solid rgba(255,255,255,.1);
}

.premium-footer__legal-link {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.8);
  font: inherit;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(255,204,10,.55);
  text-underline-offset: 3px;
  cursor: pointer;
  transition: color .2s ease;
}

.premium-footer__legal-link:hover,
.premium-footer__legal-link:focus-visible {
  color: #FFCC0A;
}

/* C4G cookie consent */
.c4g-cookie-consent[hidden] {
  display: none !important;
}

.c4g-cookie-consent {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 10010;
  width: calc(100% - 48px);
  max-width: 760px;
  padding: 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  box-sizing: border-box;
  border: 1px solid rgba(255,204,10,.22);
  border-radius: 22px;
  background: #F7F4EE;
  color: #292829;
  box-shadow: 0 18px 40px rgba(0,0,0,.18);
  transform: translateX(-50%);
}

.c4g-cookie-consent__content {
  min-width: 0;
}

.c4g-cookie-consent__title {
  margin: 0 0 8px;
  color: #292829;
  font-size: 21px;
  line-height: 1.25;
  font-weight: 850;
}

.c4g-cookie-consent__description {
  margin: 0;
  color: #514E50;
  font-size: 14px;
  line-height: 1.55;
}

.c4g-cookie-consent__description a {
  color: #C89B00;
  font-weight: 700;
  text-decoration-color: currentColor;
  text-underline-offset: 3px;
}

.c4g-cookie-consent__description a:hover {
  color: #D9AA00;
}

.c4g-cookie-consent__actions {
  display: flex;
  align-items: stretch;
  gap: 10px;
}

.c4g-cookie-consent__button {
  min-height: 44px;
  padding: 10px 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  font: inherit;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, opacity .2s ease, transform .2s ease;
}

.c4g-cookie-consent__button--essential {
  border: 1px solid rgba(92,90,91,.18);
  background: #FFFFFF;
  color: #292829;
}

.c4g-cookie-consent__button--all {
  border: 1px solid #FFCC0A;
  background: #FFCC0A;
  color: #171717;
}

.c4g-cookie-consent__button:hover {
  transform: translateY(-1px);
}

.c4g-cookie-consent__button--essential:hover {
  border-color: rgba(200,155,0,.34);
  background: #FFFCF5;
}

.c4g-cookie-consent__button--all:hover {
  background: #ffd42e;
}

.c4g-cookie-consent__button:active {
  opacity: .88;
  transform: none;
}

.c4g-cookie-consent__button:focus-visible,
.premium-footer__legal-link:focus-visible {
  outline: 3px solid rgba(255,204,10,.45);
  outline-offset: 3px;
}

@media (max-width: 900px) {
  .c4g-cookie-consent {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .c4g-cookie-consent__actions {
    justify-content: flex-end;
  }
}

@media (max-width: 768px) {
  .c4g-privacy {
    width: calc(100% - 28px);
    padding: 28px 0 50px;
  }

  .c4g-privacy__hero {
    margin-bottom: 18px;
    text-align: left;
  }

  .c4g-privacy__title {
    font-size: clamp(30px, 9vw, 40px);
  }

  .c4g-privacy__card {
    padding: 24px 22px;
    border-radius: 22px;
  }

  .c4g-privacy__section + .c4g-privacy__section {
    margin-top: 30px;
    padding-top: 30px;
  }

  .c4g-privacy__section p,
  .c4g-privacy__section li,
  .c4g-privacy__details dt,
  .c4g-privacy__details dd {
    font-size: 15px;
  }

  .c4g-privacy__operator,
  .c4g-privacy__contact {
    padding: 18px;
  }

  .c4g-privacy__details > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .premium-footer__legal {
    flex-direction: column;
  }

  .c4g-cookie-consent {
    position: fixed !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    left: 12px !important;
    width: calc(100% - 24px) !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    border-radius: 20px;
    transform: none !important;
  }

  .c4g-cookie-consent__content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
    align-self: stretch !important;
  }

  .c4g-cookie-consent__title {
    margin: 0 0 8px !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
  }

  .c4g-cookie-consent__description {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .c4g-cookie-consent__actions {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    align-self: stretch !important;
    justify-content: stretch !important;
  }

  .c4g-cookie-consent__button {
    width: 100% !important;
    min-height: 48px !important;
    padding: 9px 12px !important;
    white-space: normal !important;
  }
}

@media (max-width: 768px) and (max-height: 520px) {
  .c4g-cookie-consent {
    max-height: calc(100vh - 130px) !important;
    max-height: calc(100dvh - 130px - env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
}

@media (max-width: 360px) {
  .c4g-privacy {
    width: calc(100% - 24px);
  }

  .c4g-privacy__card {
    padding: 22px 20px;
  }

  .c4g-cookie-consent {
    padding: 17px !important;
  }
}
