
body.kv24e-page .entry-title{display:none}.kv24e{font-family:Inter,Arial,sans-serif;color:#132238;background:#fff}.kv24e *{box-sizing:border-box}.kv24e-container{max-width:1240px;margin:0 auto;padding:0 24px}.kv24e-header{position:sticky;top:0;z-index:50;background:var(--kv24e-dark);color:#fff}.kv24e-header__inner{min-height:68px;display:flex;align-items:center;gap:24px;justify-content:space-between}.kv24e-logo{color:#fff;text-decoration:none;font-weight:900;line-height:.9}.kv24e-logo span{display:block;font-size:22px}.kv24e-logo b{display:block;color:var(--kv24e-accent);font-size:13px;text-transform:uppercase;letter-spacing:.14em}.kv24e nav{display:flex;gap:24px}.kv24e nav a,.kv24e-link{color:#fff;text-decoration:none;font-weight:800}.kv24e-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.kv24e-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 20px;font-weight:900;text-decoration:none;font-size:var(--kv24e-button);cursor:pointer;white-space:nowrap}.kv24e-btn--gold{background:var(--kv24e-accent);color:#0b1f3a;box-shadow:0 14px 32px rgba(229,191,61,.25)}.kv24e-btn--dark{background:var(--kv24e-dark);color:#fff}.kv24e-btn--white{background:#fff;color:#0b1f3a;border:1px solid #dde6f0}.kv24e-btn--outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}.kv24e-hero{background:radial-gradient(circle at top right,rgba(229,191,61,.25),transparent 32%),linear-gradient(135deg,var(--kv24e-dark),#071629);color:#fff;padding:86px 0}.kv24e-hero__grid,.kv24e-two{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.kv24e h1{font-size:var(--kv24e-h1);line-height:1.04;margin:20px 0}.kv24e h2{font-size:var(--kv24e-h2);line-height:1.08;margin:0 0 18px}.kv24e p{font-size:var(--kv24e-body);line-height:1.55;color:#667085}.kv24e-hero p,.kv24e-section--dark p{color:rgba(255,255,255,.82)}.kv24e-eyebrow{display:inline-flex;border:1px solid rgba(229,191,61,.45);background:rgba(229,191,61,.08);color:var(--kv24e-accent);border-radius:999px;padding:9px 16px;font-weight:900}.kv24e-hero-card,.kv24e-panel{background:#fff;color:#132238;border-radius:28px;padding:28px;box-shadow:0 20px 50px rgba(11,31,58,.12)}.kv24e-section{padding:82px 0}.kv24e-section--dark{background:linear-gradient(135deg,var(--kv24e-dark),#123b69);color:#fff}.kv24e-section--soft{background:#f6f8fb}.kv24e-section-head{text-align:center;max-width:900px;margin:0 auto 34px}.kv24e-cards-mini,.kv24e-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.kv24e-cards-mini div,.kv24e-docs article{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:20px}.kv24e-cards-mini b,.kv24e-docs b{display:block;color:#fff;font-size:22px}.kv24e-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:30px}.kv24e-filter label{display:block;font-weight:900;margin-bottom:8px;color:#0b1f3a}.kv24e-filter select{width:100%;border:1px solid #d7e0ea;border-radius:16px;padding:14px 16px;font-weight:800;background:#fff;color:#0b1f3a}.kv24e-carousel{position:relative;max-width:980px;margin:0 auto 34px}.kv24e-carousel__viewport{overflow:hidden;scroll-behavior:smooth}.kv24e-apartments{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:0}.kv24e-apartment{display:grid;grid-template-columns:46% 54%;min-height:430px;background:#fff;border:1px solid #e4ebf4;border-radius:30px;overflow:hidden;box-shadow:0 20px 45px rgba(11,31,58,.12)}.kv24e-apartment__img{position:relative;min-height:430px;background-size:cover;background-position:center}.kv24e-apartment__img:after{content:"Фото квартиры";position:absolute;left:22px;bottom:22px;background:rgba(11,31,58,.9);color:#fff;border-radius:999px;padding:10px 16px;font-weight:900}.kv24e-apartment__img span{position:absolute;left:22px;top:22px;background:#fff;border-radius:999px;padding:9px 14px;color:#0b1f3a;font-weight:900}.kv24e-apartment__body{padding:34px;display:flex;flex-direction:column;justify-content:center}.kv24e-apartment__top{display:flex;justify-content:space-between;gap:20px}.kv24e-apartment h3{font-size:34px;line-height:1.05;margin:0 0 10px}.kv24e-apartment small{color:#8a96a8;font-weight:800}.kv24e-price{background:#f6f8fb;border-radius:18px;padding:12px 16px;min-width:130px;text-align:right}.kv24e-price s{display:block;color:#98a2b3;font-weight:800}.kv24e-price b{font-size:26px;color:#0b1f3a}.kv24e-pills{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.kv24e-pills span{background:#f5f7fb;border-radius:999px;padding:10px 13px;font-weight:900;color:#0b1f3a}.kv24e-card-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kv24e-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:0;background:#0b1f3a;color:#fff;font-size:34px;cursor:pointer}.kv24e-arrow--prev{left:-22px}.kv24e-arrow--next{right:-22px}.kv24e-slider{position:relative}.kv24e-slider-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:0}.kv24e-slide img{width:100%;height:360px;object-fit:cover;border-radius:28px;display:block}.kv24e-map{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;margin-top:30px}.kv24e-map>div,.kv24e-map iframe{background:#fff;border-radius:28px;border:1px solid #e4ebf4;min-height:320px;box-shadow:0 14px 36px rgba(11,31,58,.08)}.kv24e-map>div{padding:28px}.kv24e-map iframe{width:100%;height:320px}.kv24e-cta{margin-top:30px;border-radius:28px;background:var(--kv24e-dark);color:#fff;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.kv24e-audience-grid,.kv24e-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kv24e-audience-grid article,.kv24e-reviews article{background:#fff;border:1px solid #e4ebf4;border-radius:26px;padding:24px;box-shadow:0 12px 30px rgba(11,31,58,.06)}.kv24e-audience-grid i{font-style:normal;font-size:34px}.kv24e-review-head{display:flex;gap:14px;align-items:center}.kv24e-review-head img{width:70px;height:70px;border-radius:50%;object-fit:cover}.kv24e-review-head b{display:block;font-size:19px}.kv24e-review-head span{color:#667085}.kv24e-faq{display:grid;gap:12px;max-width:900px;margin:0 auto}.kv24e-faq details{background:#fff;border:1px solid #e4ebf4;border-radius:18px;padding:18px}.kv24e-faq summary{font-weight:900;cursor:pointer}.kv24e-section--lead{background:#f6f8fb}.kv24e-form{display:grid;gap:12px}.kv24e-form input,.kv24e-form textarea{width:100%;border:1px solid #d7e0ea;border-radius:16px;padding:15px 16px;font-size:16px}.kv24e-form textarea{min-height:110px}.kv24e-footer{background:linear-gradient(135deg,#071a32,#102b50);color:#fff;padding:54px 0}.kv24e-footer__grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:28px}.kv24e-footer p,.kv24e-footer a{color:rgba(255,255,255,.86)}.kv24e-socials{display:flex;flex-wrap:wrap;gap:10px}.kv24e-pill{background:rgba(255,255,255,.12);border-radius:999px;padding:10px 14px;text-decoration:none;font-weight:900}.kv24e-floating{position:fixed;right:16px;bottom:16px;z-index:60;display:grid;gap:10px}.kv24e-floating a{background:#0b1f3a;color:#fff;text-decoration:none;border-radius:999px;padding:14px 18px;font-weight:900}.kv24e-floating a:first-child{background:var(--kv24e-accent);color:#0b1f3a}.kv24e-pagehead{padding:84px 0;background:#f6f8fb}.kv24e-pagehead--dark{background:linear-gradient(135deg,var(--kv24e-dark),#123b69);color:#fff}.kv24e-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.kv24e-detail-grid div{background:#fff;border:1px solid #e4ebf4;border-radius:18px;padding:16px}.kv24e-detail-grid b{display:block}.kv24e-detail-grid span{color:#667085}@media(max-width:980px){.kv24e-hero__grid,.kv24e-two,.kv24e-map,.kv24e-footer__grid{grid-template-columns:1fr}.kv24e-filter-grid{grid-template-columns:repeat(2,1fr)}.kv24e-apartment{grid-template-columns:1fr}.kv24e-apartment__img{min-height:260px}.kv24e-card-actions{grid-template-columns:1fr}.kv24e-audience-grid,.kv24e-reviews{grid-template-columns:1fr 1fr}.kv24e nav{display:none}}@media(max-width:640px){.kv24e h1{font-size:38px}.kv24e h2{font-size:30px}.kv24e-filter-grid,.kv24e-audience-grid,.kv24e-reviews,.kv24e-detail-grid{grid-template-columns:1fr}.kv24e-apartment h3{font-size:27px}.kv24e-apartment__top{flex-direction:column}.kv24e-arrow--prev{left:8px}.kv24e-arrow--next{right:8px}}


/* v2.0.1 — отдельный каталог и понятный выбор */
.kv24e-catalog-help{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e3ebf5;border-radius:24px;padding:22px 24px;margin:0 0 22px;box-shadow:0 12px 28px rgba(11,31,58,.05)}
.kv24e-catalog-help h3{margin:0 0 8px;font-size:26px;color:#0b1f3a}
.kv24e-catalog-help p{margin:0;color:#667085}
.kv24e-apartment-links{margin:26px auto 8px;max-width:980px;background:#fff;border:1px solid #e4ebf4;border-radius:26px;padding:22px;box-shadow:0 12px 30px rgba(11,31,58,.06)}
.kv24e-apartment-links h3{margin:0 0 14px;color:#0b1f3a}
.kv24e-apartment-links>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kv24e-apartment-links a{display:flex;justify-content:space-between;gap:12px;align-items:center;text-decoration:none;color:#0b1f3a;background:#f6f8fb;border-radius:16px;padding:14px 16px;font-weight:900}
.kv24e-apartment-links a span{font-size:13px;color:#667085;font-weight:800}
.kv24e-no-results{display:none;text-align:center;background:#fff3cd;border:1px solid #f2cf65;color:#5f4700;border-radius:18px;padding:18px;margin:16px auto;max-width:980px}
@media(max-width:760px){.kv24e-apartment-links>div{grid-template-columns:1fr}}


/* v2.0.2 — убираем шапку/меню темы WordPress и делаем сайт на всю ширину */
body.kv24e-page{
  margin:0!important;
  background:#fff!important;
  overflow-x:hidden;
}

/* Скрываем стандартную шапку темы WordPress, где выводятся все страницы списком */
body.kv24e-page .wp-site-blocks > header,
body.kv24e-page header.wp-block-template-part,
body.kv24e-page .wp-site-blocks > .wp-block-template-part:first-child,
body.kv24e-page .site-header,
body.kv24e-page #masthead,
body.kv24e-page header[role="banner"],
body.kv24e-page header:not(.kv24e-header){
  display:none!important;
}

/* Скрываем стандартный подвал темы, чтобы не было дублей */
body.kv24e-page .wp-site-blocks > footer,
body.kv24e-page footer.wp-block-template-part,
body.kv24e-page .site-footer,
body.kv24e-page #colophon,
body.kv24e-page footer:not(.kv24e-footer){
  display:none!important;
}

/* Убираем заголовок страницы WordPress: "Квартиры 24 Business" */
body.kv24e-page .entry-title,
body.kv24e-page .page-title,
body.kv24e-page .wp-block-post-title,
body.kv24e-page h1.wp-block-post-title{
  display:none!important;
}

/* Убираем ограничения ширины темы */
body.kv24e-page .wp-site-blocks,
body.kv24e-page .wp-site-blocks > main,
body.kv24e-page .site,
body.kv24e-page .site-main,
body.kv24e-page #page,
body.kv24e-page #primary,
body.kv24e-page .content-area,
body.kv24e-page .entry-content,
body.kv24e-page .wp-block-post-content,
body.kv24e-page main{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

/* Сам сайт всегда выходит на всю ширину экрана даже внутри узкого шаблона */
body.kv24e-page .kv24e{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow-x:hidden;
}

/* Защита от лишних отступов Gutenberg */
body.kv24e-page .wp-block-group,
body.kv24e-page .wp-block-template-part,
body.kv24e-page .wp-block-post-content > *{
  max-width:none!important;
}


/* v2.0.3 — возвращаем заголовок страницы «Квартиры 24 Business» */
body.kv24e-page .entry-title,
body.kv24e-page .page-title,
body.kv24e-page .wp-block-post-title,
body.kv24e-page h1.wp-block-post-title{
  display:block!important;
  max-width:1240px!important;
  margin:34px auto 22px!important;
  padding:0 24px!important;
  color:#0b1f3a!important;
  font-size:clamp(38px, 5vw, 72px)!important;
  line-height:1.05!important;
  font-weight:500!important;
  text-align:center!important;
}

/* Если тема выводит заголовок внутри контента, оставляем его красивым, но без лишних отступов */
body.kv24e-page .wp-block-post-content > .wp-block-post-title:first-child,
body.kv24e-page .entry-content > .entry-title:first-child{
  margin-top:28px!important;
}


/* v2.0.4 — исправление каталога: скрываем меню темы WordPress и делаем сайт широким */
body.kv24e-page{
  margin:0!important;
  background:#fff!important;
  overflow-x:hidden!important;
}

/* Скрыть стандартную шапку темы, где сверху выводятся WordPress и все страницы списком */
body.kv24e-page .wp-site-blocks > header,
body.kv24e-page .wp-site-blocks > .wp-block-template-part:first-child,
body.kv24e-page header.wp-block-template-part,
body.kv24e-page .site-header,
body.kv24e-page #masthead,
body.kv24e-page header[role="banner"],
body.kv24e-page header:not(.kv24e-header){
  display:none!important;
}

/* Скрыть стандартный подвал темы, чтобы не было дублей */
body.kv24e-page .wp-site-blocks > footer,
body.kv24e-page footer.wp-block-template-part,
body.kv24e-page .site-footer,
body.kv24e-page #colophon,
body.kv24e-page footer:not(.kv24e-footer){
  display:none!important;
}

/* Убрать ограничения ширины темы WordPress */
body.kv24e-page .wp-site-blocks,
body.kv24e-page .wp-site-blocks > main,
body.kv24e-page main.wp-block-group,
body.kv24e-page .site,
body.kv24e-page .site-main,
body.kv24e-page #page,
body.kv24e-page #primary,
body.kv24e-page .content-area,
body.kv24e-page article,
body.kv24e-page .entry-content,
body.kv24e-page .wp-block-post-content{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

/* Сам сайт на всю ширину экрана */
body.kv24e-page .kv24e{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow-x:hidden!important;
}

/* Заголовок страницы оставляем, но делаем аккуратным и не огромным */
body.kv24e-page .entry-title,
body.kv24e-page .page-title,
body.kv24e-page .wp-block-post-title,
body.kv24e-page h1.wp-block-post-title{
  display:block!important;
  max-width:1240px!important;
  margin:28px auto 20px!important;
  padding:0 24px!important;
  color:#0b1f3a!important;
  font-size:clamp(34px, 4vw, 58px)!important;
  line-height:1.08!important;
  font-weight:600!important;
  text-align:center!important;
}

/* Наша шапка должна быть широкой и читабельной */
body.kv24e-page .kv24e-header{
  width:100%!important;
}
body.kv24e-page .kv24e-header__inner{
  max-width:1240px!important;
  margin:0 auto!important;
  overflow:hidden!important;
}
body.kv24e-page .kv24e-header nav{
  flex-wrap:wrap!important;
  row-gap:8px!important;
}
body.kv24e-page .kv24e-header nav a{
  white-space:nowrap!important;
}

/* Одна плавающая кнопка-сообщение вместо двух больших кнопок */
.kv24e-floating--messengers{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  z-index:9999!important;
  display:flex!important;
  flex-direction:column-reverse!important;
  align-items:flex-end!important;
  gap:12px!important;
}
.kv24e-float-main{
  width:66px!important;
  height:66px!important;
  border:0!important;
  border-radius:50%!important;
  background:var(--kv24e-accent)!important;
  color:#0b1f3a!important;
  font-size:30px!important;
  cursor:pointer!important;
  box-shadow:0 18px 42px rgba(11,31,58,.25)!important;
}
.kv24e-float-menu{
  display:none!important;
  min-width:220px!important;
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:22px!important;
  padding:12px!important;
  box-shadow:0 22px 60px rgba(11,31,58,.22)!important;
}
.kv24e-floating--messengers.is-open .kv24e-float-menu{
  display:grid!important;
  gap:8px!important;
}
.kv24e-float-status{
  background:#0b1f3a!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:12px 14px!important;
  font-weight:900!important;
  text-align:center!important;
}
.kv24e-float-link{
  display:block!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:#f6f8fb!important;
  color:#0b1f3a!important;
  text-decoration:none!important;
  font-weight:900!important;
}
.kv24e-float-link:hover{
  background:var(--kv24e-accent)!important;
}

/* Убираем старые стили двух плавающих кнопок */
.kv24e-floating--messengers a{
  color:#0b1f3a!important;
}

@media(max-width:900px){
  body.kv24e-page .kv24e-header__inner{
    min-height:auto!important;
    padding-top:14px!important;
    padding-bottom:14px!important;
    flex-wrap:wrap!important;
  }
  body.kv24e-page .kv24e-header nav{
    order:3!important;
    width:100%!important;
    display:flex!important;
    gap:14px!important;
  }
}
@media(max-width:640px){
  .kv24e-floating--messengers{
    right:14px!important;
    bottom:14px!important;
  }
  .kv24e-float-main{
    width:58px!important;
    height:58px!important;
    font-size:26px!important;
  }
}


/* v2.0.5 — полностью убираем все заголовки страниц над сайтом */
body.kv24e-page .entry-title,
body.kv24e-page .page-title,
body.kv24e-page .wp-block-post-title,
body.kv24e-page h1.wp-block-post-title,
body.kv24e-page .post-title,
body.kv24e-page .entry-header,
body.kv24e-page .page-header,
body.kv24e-page header.entry-header,
body.kv24e-page .wp-block-query-title{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

/* Убираем лишний верхний отступ, который тема могла оставлять под заголовок */
body.kv24e-page .wp-site-blocks > main,
body.kv24e-page main,
body.kv24e-page article,
body.kv24e-page .entry-content,
body.kv24e-page .wp-block-post-content{
  margin-top:0!important;
  padding-top:0!important;
}


/* v2.0.6 — центрируем блок выбора квартиры и выпадающие списки */
.kv24e-catalog-help{
  max-width:1180px!important;
  margin:0 auto 34px!important;
  text-align:center!important;
  padding:28px 34px!important;
}

.kv24e-catalog-help h3{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.kv24e-catalog-help p{
  text-align:center!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.kv24e-filter-grid{
  max-width:1180px!important;
  margin:0 auto 36px!important;
  display:grid!important;
  grid-template-columns:repeat(3, minmax(260px, 360px))!important;
  justify-content:center!important;
  align-items:end!important;
  gap:24px!important;
}

.kv24e-filter{
  width:100%!important;
  max-width:360px!important;
  margin:0 auto!important;
}

.kv24e-filter label{
  display:block!important;
  text-align:left!important;
  margin-bottom:10px!important;
}

.kv24e-filter select{
  width:100%!important;
  height:64px!important;
  text-align:left!important;
  border-radius:18px!important;
  font-size:18px!important;
  padding-left:22px!important;
  padding-right:48px!important;
  background-position:right 20px center!important;
}

@media(max-width:980px){
  .kv24e-filter-grid{
    grid-template-columns:repeat(2, minmax(260px, 360px))!important;
    gap:20px!important;
  }
}

@media(max-width:640px){
  .kv24e-filter-grid{
    grid-template-columns:1fr!important;
    max-width:360px!important;
  }

  .kv24e-catalog-help{
    text-align:left!important;
    padding:22px!important;
  }

  .kv24e-catalog-help h3,
  .kv24e-catalog-help p{
    text-align:left!important;
  }
}


/* v2.0.7 — карта только на странице конкретной квартиры */
.kv24e-map-iframe,
.kv24e-map-placeholder{
  background:#fff;
  border-radius:28px;
  border:1px solid #e4ebf4;
  min-height:320px;
  overflow:hidden;
  box-shadow:0 14px 36px rgba(11,31,58,.08);
}

.kv24e-map-iframe iframe{
  width:100%!important;
  height:360px!important;
  min-height:360px!important;
  border:0!important;
  display:block!important;
  border-radius:28px!important;
}

.kv24e-map-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px;
  color:#667085;
}

.kv24e-map-placeholder p{
  margin:0 0 12px;
}


/* v2.0.8 — исправление критической ошибки и голого вида сайта */

/* Если тема пытается вывести меню WordPress и список всех страниц — скрываем */
body.kv24e-page .wp-site-blocks > header,
body.kv24e-page .wp-site-blocks > .wp-block-template-part:first-child,
body.kv24e-page header.wp-block-template-part,
body.kv24e-page .site-header,
body.kv24e-page #masthead,
body.kv24e-page header[role="banner"],
body.kv24e-page header:not(.kv24e-header){
  display:none!important;
}

/* Убираем заголовки страниц WordPress над сайтом */
body.kv24e-page .entry-title,
body.kv24e-page .page-title,
body.kv24e-page .wp-block-post-title,
body.kv24e-page h1.wp-block-post-title,
body.kv24e-page .post-title,
body.kv24e-page .entry-header,
body.kv24e-page .page-header,
body.kv24e-page header.entry-header,
body.kv24e-page .wp-block-query-title{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

/* Сайт на всю ширину */
body.kv24e-page,
body.kv24e-page .wp-site-blocks,
body.kv24e-page .wp-site-blocks > main,
body.kv24e-page main,
body.kv24e-page article,
body.kv24e-page .entry-content,
body.kv24e-page .wp-block-post-content{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
}

body.kv24e-page .kv24e{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow-x:hidden!important;
}

/* Наша шапка */
.kv24e-header{
  background:#0b1f3a!important;
  color:#fff!important;
}
.kv24e-header a{
  color:#fff!important;
  text-decoration:none!important;
}
.kv24e-header__inner{
  max-width:1240px!important;
  margin:0 auto!important;
}

/* Плавающая кнопка-сообщение */
.kv24e-floating--messengers{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  z-index:9999!important;
  display:flex!important;
  flex-direction:column-reverse!important;
  align-items:flex-end!important;
  gap:12px!important;
}
.kv24e-float-main{
  width:66px!important;
  height:66px!important;
  border:0!important;
  border-radius:50%!important;
  background:var(--kv24e-accent,#e5bf3d)!important;
  color:#0b1f3a!important;
  font-size:30px!important;
  cursor:pointer!important;
  box-shadow:0 18px 42px rgba(11,31,58,.25)!important;
}
.kv24e-float-menu{
  display:none!important;
  min-width:220px!important;
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:22px!important;
  padding:12px!important;
  box-shadow:0 22px 60px rgba(11,31,58,.22)!important;
}
.kv24e-floating--messengers.is-open .kv24e-float-menu{
  display:grid!important;
  gap:8px!important;
}
.kv24e-float-status{
  background:#0b1f3a!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:12px 14px!important;
  font-weight:900!important;
  text-align:center!important;
}
.kv24e-float-link{
  display:block!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:#f6f8fb!important;
  color:#0b1f3a!important;
  text-decoration:none!important;
  font-weight:900!important;
}

/* чтобы старые две кнопки не появлялись */
.kv24e-floating:not(.kv24e-floating--messengers) {
  display:none!important;
}


/* v2.0.9 — устойчивый блок фото для организаций */
.kv24e-company-photo img{
  display:block;
  width:100%;
  height:420px;
  object-fit:cover;
  border-radius:30px;
  box-shadow:0 18px 45px rgba(0,0,0,.24);
}

body.kv24e-page .kv24e{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}

body.kv24e-page .wp-site-blocks>header,
body.kv24e-page header.wp-block-template-part,
body.kv24e-page .site-header,
body.kv24e-page #masthead,
body.kv24e-page header:not(.kv24e-header){
  display:none!important;
}


/* v2.1.0 — визуальная правка блоков, карточек и страниц квартир */

/* Чередование блоков: 1 тёмный hero, 2 светлый, 3 тёмный, 4 светлый */
.kv24e-section--light{
  background:#f7f9fc!important;
  color:#0b1f3a!important;
}
.kv24e-section--light p{
  color:#667085!important;
}

/* Каждый блок компактнее, чтобы помещался на экран */
.kv24e-section{
  padding:64px 0!important;
}
.kv24e-hero{
  padding:72px 0!important;
}
.kv24e-section-head{
  margin-bottom:28px!important;
}
.kv24e h1{
  font-size:clamp(38px,4.6vw,64px)!important;
}
.kv24e h2{
  font-size:clamp(30px,3.2vw,44px)!important;
}

/* Второй блок — светлый и аккуратный */
.kv24e-companies .kv24e-two{
  align-items:center!important;
}
.kv24e-company-photo img{
  display:block!important;
  width:100%!important;
  max-height:440px!important;
  object-fit:cover!important;
  border-radius:30px!important;
  box-shadow:0 18px 45px rgba(11,31,58,.16)!important;
}
.kv24e-cards-mini--light div{
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:22px!important;
  color:#0b1f3a!important;
  text-align:center!important;
  box-shadow:0 10px 26px rgba(11,31,58,.06)!important;
}
.kv24e-cards-mini--light b,
.kv24e-cards-mini--light span{
  color:#0b1f3a!important;
  text-align:center!important;
}

/* Все тексты внутри окошек и карточек — по центру */
.kv24e-hero-card,
.kv24e-panel,
.kv24e-cards-mini div,
.kv24e-docs article,
.kv24e-audience-grid article,
.kv24e-reviews article,
.kv24e-apartment__body,
.kv24e-price,
.kv24e-map>div,
.kv24e-map-placeholder,
.kv24e-catalog-help,
.kv24e-apartment-links{
  text-align:center!important;
}

.kv24e-hero-card p,
.kv24e-panel p,
.kv24e-cards-mini span,
.kv24e-docs p,
.kv24e-audience-grid p,
.kv24e-reviews p,
.kv24e-apartment__body p,
.kv24e-map p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Кнопки внутри окон по центру */
.kv24e-hero-card .kv24e-actions,
.kv24e-panel .kv24e-actions,
.kv24e-doc-text .kv24e-actions,
.kv24e-apartment__body .kv24e-actions,
.kv24e-companies .kv24e-actions{
  justify-content:center!important;
}

/* Карточка выбора квартиры — меньше и аккуратнее */
.kv24e-carousel{
  max-width:860px!important;
  margin-bottom:26px!important;
}
.kv24e-apartment{
  min-height:360px!important;
  grid-template-columns:42% 58%!important;
  border-radius:26px!important;
}
.kv24e-apartment__img{
  min-height:360px!important;
}
.kv24e-apartment__body{
  padding:24px 28px!important;
  justify-content:center!important;
  align-items:center!important;
}
.kv24e-apartment__top{
  width:100%!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:16px!important;
}
.kv24e-apartment h3{
  font-size:clamp(25px,2.2vw,34px)!important;
  line-height:1.08!important;
  text-align:center!important;
}
.kv24e-apartment p{
  text-align:center!important;
}
.kv24e-price{
  min-width:118px!important;
  padding:10px 14px!important;
}
.kv24e-price b{
  font-size:24px!important;
}
.kv24e-pills{
  justify-content:center!important;
  gap:9px!important;
  margin:16px 0!important;
}
.kv24e-pills span{
  padding:9px 12px!important;
  font-size:15px!important;
}
.kv24e-card-actions{
  display:flex!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
}
.kv24e-card-actions .kv24e-btn{
  min-width:145px!important;
  padding:13px 16px!important;
}

/* "Как выбрать квартиру" — карточками со значками */
.kv24e-catalog-steps{
  max-width:1120px!important;
  padding:28px!important;
}
.kv24e-step-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin-top:20px!important;
}
.kv24e-step-grid div{
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:22px!important;
  padding:20px 16px!important;
  text-align:center!important;
  box-shadow:0 10px 24px rgba(11,31,58,.06)!important;
}
.kv24e-step-grid i{
  display:flex!important;
  width:48px!important;
  height:48px!important;
  margin:0 auto 12px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#0b1f3a!important;
  color:#fff!important;
  font-style:normal!important;
  font-weight:900!important;
}
.kv24e-step-grid b{
  display:block!important;
  color:#0b1f3a!important;
  font-size:18px!important;
  margin-bottom:6px!important;
}
.kv24e-step-grid span{
  display:block!important;
  color:#667085!important;
  font-size:14px!important;
  line-height:1.35!important;
}

/* Документы — исправляем смещение текста */
.kv24e-doc-section .kv24e-two{
  align-items:center!important;
}
.kv24e-doc-text{
  text-align:center!important;
}
.kv24e-doc-text h2,
.kv24e-doc-text p{
  text-align:center!important;
}
.kv24e-docs{
  gap:18px!important;
}
.kv24e-docs article{
  min-height:170px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
  overflow:hidden!important;
}
.kv24e-docs article i{
  display:block!important;
  font-size:34px!important;
  line-height:1!important;
  margin-bottom:12px!important;
}
.kv24e-docs article b{
  display:block!important;
  font-size:24px!important;
  line-height:1.15!important;
  margin-bottom:10px!important;
  color:#fff!important;
  text-align:center!important;
}
.kv24e-docs article p{
  margin:0!important;
  color:rgba(255,255,255,.84)!important;
  text-align:center!important;
}

/* Переход на квартиру: standalone body */
body.kv24e-standalone{
  margin:0!important;
  background:#fff!important;
}
body.kv24e-standalone .kv24e{
  width:100%!important;
  margin:0!important;
}

/* На мобильном всё в один столбик */
@media(max-width:980px){
  .kv24e-apartment{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .kv24e-apartment__img{
    min-height:260px!important;
  }
  .kv24e-apartment__top{
    flex-direction:column!important;
    align-items:center!important;
  }
  .kv24e-step-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  .kv24e-section{
    padding:50px 0!important;
  }
  .kv24e-step-grid{
    grid-template-columns:1fr!important;
  }
  .kv24e-card-actions .kv24e-btn{
    width:100%!important;
  }
}


/* v2.1.1 — исправление каталога и страницы квартиры */

/* На странице каталога оставляем один главный заголовок внутри блока каталога */
body.kv24e-page .kv24e > .kv24e-pagehead + #kv24-catalog{
  padding-top:40px!important;
}
#kv24-catalog .kv24e-section-head h2{
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Страница квартиры больше не должна быть пустой */
.kv24e-apartment-hero{
  padding:66px 0!important;
}
.kv24e-apartment-hero .kv24e-two{
  align-items:center!important;
}
.kv24e-slider--detail{
  position:relative!important;
  border-radius:30px!important;
  overflow:hidden!important;
  background:#f6f8fb!important;
  min-height:360px!important;
}
.kv24e-slider--detail .kv24e-carousel__viewport{
  overflow:hidden!important;
}
.kv24e-slider--detail .kv24e-slider-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:100%!important;
}
.kv24e-slider--detail .kv24e-slide img{
  width:100%!important;
  height:420px!important;
  object-fit:cover!important;
  display:block!important;
  border-radius:30px!important;
}
.kv24e-apartment-info h2,
.kv24e-apartment-info p,
.kv24e-apartment-info .kv24e-panel{
  text-align:center!important;
}
.kv24e-detail-grid{
  margin-top:20px!important;
}
.kv24e-detail-grid div{
  text-align:center!important;
}
.kv24e-detail-grid b,
.kv24e-detail-grid span{
  display:block!important;
  text-align:center!important;
}

/* Убираем лишнюю высоту сверху на странице каталога */
.kv24e > .kv24e-header + #kv24-catalog,
.kv24e > .kv24e-header + .kv24e-section{
  margin-top:0!important;
}

/* Чуть компактнее первый экран каталога */
#kv24-catalog{
  padding-top:58px!important;
}
#kv24-catalog .kv24e-section-head{
  margin-bottom:24px!important;
}
#kv24-catalog .kv24e-section-head h2{
  font-size:clamp(36px,4vw,58px)!important;
  line-height:1.08!important;
}

@media(max-width:900px){
  .kv24e-slider--detail .kv24e-slide img{
    height:300px!important;
  }
}


/* v2.1.2 — отзывы, футер и аккуратные карточки */

/* Отзывы: ровные карточки, фото сверху, текст читаемый */
.kv24e-reviews{
  align-items:stretch!important;
}
.kv24e-reviews article{
  min-height:250px!important;
  padding:24px 24px 26px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
}
.kv24e-review-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  width:100%!important;
  margin-bottom:14px!important;
}
.kv24e-review-head img{
  width:74px!important;
  height:74px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  display:block!important;
  margin:0 auto!important;
}
.kv24e-review-head b{
  display:block!important;
  font-size:22px!important;
  line-height:1.15!important;
  color:#0b1f3a!important;
  text-align:center!important;
}
.kv24e-review-head span{
  display:block!important;
  max-width:360px!important;
  margin:0 auto!important;
  color:#667085!important;
  font-size:17px!important;
  line-height:1.35!important;
  text-align:center!important;
}
.kv24e-reviews article p{
  margin:10px auto 0!important;
  max-width:430px!important;
  color:#667085!important;
  font-size:17px!important;
  line-height:1.55!important;
  text-align:center!important;
}

/* Футер: сделать текст заметнее и аккуратнее */
.kv24e-footer p,
.kv24e-footer b,
.kv24e-footer span,
.kv24e-footer a{
  opacity:1!important;
  color:rgba(255,255,255,.88)!important;
}
.kv24e-footer h3{
  color:#fff!important;
  margin-bottom:20px!important;
}
.kv24e-footer .kv24e-pill{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  padding:13px 18px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
}
.kv24e-footer .kv24e-pill:hover{
  background:var(--kv24e-accent,#e5bf3d)!important;
  color:#0b1f3a!important;
}

/* Каталог с большим количеством квартир: карточка остаётся компактной */
.kv24e-apartment-links>div{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.kv24e-apartment-links a{
  min-height:70px!important;
  text-align:left!important;
}
@media(max-width:980px){
  .kv24e-apartment-links>div{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  .kv24e-apartment-links>div{
    grid-template-columns:1fr!important;
  }
}


/* v2.1.3 — слайдер фотографий в карточке каталога */
.kv24e-apartment__img{
  position:relative!important;
  overflow:hidden!important;
  background:#edf2f7!important;
}

.kv24e-apartment__img:after{
  display:none!important;
}

.kv24e-card-gallery{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}

.kv24e-card-gallery__viewport{
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  scroll-behavior:smooth!important;
}

.kv24e-card-gallery__track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:100%!important;
  height:100%!important;
}

.kv24e-card-gallery__slide{
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.kv24e-card-gallery__slide img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.kv24e-card-gallery__btn{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:0!important;
  background:rgba(11,31,58,.92)!important;
  color:#fff!important;
  font-size:28px!important;
  line-height:1!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 12px 24px rgba(11,31,58,.22)!important;
}

.kv24e-card-gallery__btn--prev{
  left:14px!important;
}

.kv24e-card-gallery__btn--next{
  right:14px!important;
}

.kv24e-card-gallery__label{
  position:absolute!important;
  left:22px!important;
  bottom:22px!important;
  z-index:4!important;
  background:rgba(11,31,58,.92)!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:10px 16px!important;
  font-weight:900!important;
}

.kv24e-apartment__img > span{
  z-index:6!important;
}

/* В админке превью галереи аккуратнее */
.kv24-gallery-preview img{
  width:100px!important;
  height:100px!important;
  object-fit:cover!important;
  border-radius:8px!important;
}


/* v2.1.4 — убрать тёмное окно на фото и заменить список квартир на одну строку типов */

/* Полностью убираем любые старые тёмные подложки/псевдоэлементы поверх фото */
.kv24e-apartment__img::before,
.kv24e-apartment__img::after,
.kv24e-card-gallery::before,
.kv24e-card-gallery::after,
.kv24e-card-gallery__viewport::before,
.kv24e-card-gallery__viewport::after,
.kv24e-card-gallery__track::before,
.kv24e-card-gallery__track::after{
  content:none!important;
  display:none!important;
  background:transparent!important;
  opacity:0!important;
}

/* На фото оставляем только маленькую белую плашку района и маленькую плашку "Фото" */
.kv24e-apartment__img > span{
  position:absolute!important;
  left:18px!important;
  top:18px!important;
  z-index:7!important;
  background:#fff!important;
  color:#0b1f3a!important;
  border-radius:999px!important;
  padding:9px 14px!important;
  font-weight:900!important;
  box-shadow:0 10px 24px rgba(11,31,58,.14)!important;
  max-width:calc(100% - 36px)!important;
  white-space:normal!important;
  text-align:center!important;
}

.kv24e-card-gallery__label{
  left:18px!important;
  bottom:18px!important;
  z-index:7!important;
  background:rgba(11,31,58,.88)!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:9px 14px!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
}

/* Стрелки листания фотографий делаем маленькими, чтобы они не выглядели как тёмное окно */
.kv24e-card-gallery__btn{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border-radius:50%!important;
  background:rgba(11,31,58,.78)!important;
  color:#fff!important;
  font-size:22px!important;
  line-height:1!important;
  padding:0!important;
  opacity:.88!important;
  box-shadow:0 8px 18px rgba(11,31,58,.2)!important;
}

.kv24e-card-gallery__btn--prev{
  left:12px!important;
}

.kv24e-card-gallery__btn--next{
  right:12px!important;
}

.kv24e-card-gallery__btn:hover{
  opacity:1!important;
  background:#0b1f3a!important;
}

/* Чтобы не было двух больших стрелок рядом, внешние стрелки перелистывают квартиры и стоят за пределами карточки */
.kv24e-carousel > .kv24e-arrow{
  z-index:8!important;
  width:46px!important;
  height:46px!important;
}

.kv24e-carousel > .kv24e-arrow--prev{
  left:-56px!important;
}

.kv24e-carousel > .kv24e-arrow--next{
  right:-56px!important;
}

/* Новый блок вместо "Все квартиры списком" */
.kv24e-apartment-types{
  max-width:1120px!important;
  margin:30px auto 10px!important;
  padding:22px 24px!important;
  border:1px solid #e4ebf4!important;
  border-radius:26px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(11,31,58,.06)!important;
  text-align:center!important;
}

.kv24e-apartment-types h3{
  margin:0 0 16px!important;
  color:#0b1f3a!important;
  font-size:clamp(26px,2.4vw,38px)!important;
  line-height:1.1!important;
  text-align:center!important;
}

.kv24e-type-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}

.kv24e-type-row button{
  border:1px solid #dbe5ef!important;
  background:#f6f8fb!important;
  color:#0b1f3a!important;
  border-radius:999px!important;
  padding:12px 16px!important;
  font-weight:900!important;
  cursor:pointer!important;
  font-size:15px!important;
  transition:.2s ease!important;
}

.kv24e-type-row button:hover,
.kv24e-type-row button.is-active{
  background:#0b1f3a!important;
  color:#fff!important;
  border-color:#0b1f3a!important;
}

/* Старый список квартир скрываем, если он остался в кэше/старой верстке */
.kv24e-apartment-links{
  display:none!important;
}

/* На маленьких экранах внешние стрелки возвращаем внутрь, чтобы не уходили за экран */
@media(max-width:1100px){
  .kv24e-carousel > .kv24e-arrow--prev{
    left:8px!important;
  }
  .kv24e-carousel > .kv24e-arrow--next{
    right:8px!important;
  }
}


/* v2.1.5 — дополнительное описание и блок "Что находится рядом" */
.kv24e-apartment-description-card{
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:28px!important;
  padding:30px!important;
  box-shadow:0 14px 34px rgba(11,31,58,.06)!important;
  text-align:center!important;
}

.kv24e-owner-note{
  margin:22px auto!important;
  padding:22px!important;
  border-radius:22px!important;
  background:#f6f8fb!important;
  border:1px solid #e4ebf4!important;
  text-align:center!important;
}

.kv24e-owner-note h3{
  margin:0 0 10px!important;
  color:#0b1f3a!important;
  font-size:24px!important;
  line-height:1.2!important;
  text-align:center!important;
}

.kv24e-owner-note p{
  margin:0 0 10px!important;
  color:#667085!important;
  text-align:center!important;
}

.kv24e-nearby-section{
  padding-top:58px!important;
  padding-bottom:58px!important;
}

.kv24e-nearby-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:1120px!important;
  margin:0 auto!important;
}

.kv24e-nearby-grid article{
  min-height:120px!important;
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:24px!important;
  padding:20px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  box-shadow:0 12px 30px rgba(11,31,58,.06)!important;
}

.kv24e-nearby-grid i{
  font-style:normal!important;
  font-size:30px!important;
  line-height:1!important;
  margin-bottom:10px!important;
}

.kv24e-nearby-grid span{
  display:block!important;
  color:#0b1f3a!important;
  font-weight:900!important;
  font-size:17px!important;
  line-height:1.3!important;
  text-align:center!important;
}

@media(max-width:980px){
  .kv24e-nearby-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  .kv24e-nearby-grid{
    grid-template-columns:1fr!important;
  }
}


/* v2.1.6 — убираем тёмное пятно на фото полностью */
.kv24e-card-gallery__label{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}

.kv24e-apartment__img::before,
.kv24e-apartment__img::after,
.kv24e-apartment__img *::before,
.kv24e-apartment__img *::after,
.kv24e-card-gallery::before,
.kv24e-card-gallery::after,
.kv24e-card-gallery__viewport::before,
.kv24e-card-gallery__viewport::after,
.kv24e-card-gallery__track::before,
.kv24e-card-gallery__track::after,
.kv24e-card-gallery__slide::before,
.kv24e-card-gallery__slide::after{
  content:none!important;
  display:none!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0!important;
}

/* Фото должно быть чистым, без затемняющей подложки */
.kv24e-card-gallery__slide,
.kv24e-card-gallery__slide img{
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

.kv24e-apartment__img{
  background:transparent!important;
}

/* Только маленькая плашка района */
.kv24e-apartment__img > span{
  max-width:82%!important;
  background:#fff!important;
  color:#0b1f3a!important;
  box-shadow:0 10px 24px rgba(11,31,58,.14)!important;
}

/* Тип жилья ровно в два ряда */
.kv24e-type-row{
  display:grid!important;
  grid-template-columns:repeat(10,minmax(0,1fr))!important;
  gap:14px!important;
  max-width:1180px!important;
  margin:0 auto!important;
  align-items:center!important;
}

.kv24e-type-row button{
  grid-column:span 2!important;
  width:100%!important;
  min-height:62px!important;
  padding:12px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

.kv24e-type-row button:nth-child(6){
  grid-column:2 / span 2!important;
}
.kv24e-type-row button:nth-child(7){
  grid-column:4 / span 2!important;
}
.kv24e-type-row button:nth-child(8){
  grid-column:6 / span 2!important;
}
.kv24e-type-row button:nth-child(9){
  grid-column:8 / span 2!important;
}

/* Преимущества отдельным блоком с маленькими картинками/иконками */
.kv24e-advantages-section{
  padding-top:64px!important;
  padding-bottom:64px!important;
}

.kv24e-advantage-cards{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:1120px!important;
  margin:0 auto!important;
}

.kv24e-advantage-cards article{
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:24px!important;
  padding:22px 18px!important;
  min-height:145px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  box-shadow:0 12px 30px rgba(11,31,58,.06)!important;
}

.kv24e-advantage-cards i{
  width:54px!important;
  height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:18px!important;
  background:#f3f6fb!important;
  font-style:normal!important;
  font-size:28px!important;
  margin:0 auto 12px!important;
}

.kv24e-advantage-cards span{
  display:block!important;
  color:#0b1f3a!important;
  font-weight:900!important;
  font-size:17px!important;
  line-height:1.3!important;
  text-align:center!important;
}

/* Блок "Что рядом" с фото и редактируемым текстом */
.kv24e-nearby-section{
  background:#fff!important;
}

.kv24e-nearby-photos{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:1120px!important;
  margin:0 auto 26px!important;
}

.kv24e-nearby-photos img{
  width:100%!important;
  height:220px!important;
  object-fit:cover!important;
  border-radius:24px!important;
  display:block!important;
  box-shadow:0 14px 34px rgba(11,31,58,.10)!important;
}

@media(max-width:980px){
  .kv24e-type-row{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .kv24e-type-row button,
  .kv24e-type-row button:nth-child(6),
  .kv24e-type-row button:nth-child(7),
  .kv24e-type-row button:nth-child(8),
  .kv24e-type-row button:nth-child(9){
    grid-column:auto!important;
  }
  .kv24e-advantage-cards,
  .kv24e-nearby-photos{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:640px){
  .kv24e-type-row,
  .kv24e-advantage-cards,
  .kv24e-nearby-photos{
    grid-template-columns:1fr!important;
  }
  .kv24e-nearby-photos img{
    height:190px!important;
  }
}


/* v2.1.7 — аккуратный блок "Кому подходит размещение" */
.kv24e-audience-grid{
  display:grid!important;
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
  max-width:1180px!important;
  margin:0 auto!important;
}

.kv24e-audience-grid article{
  min-height:300px!important;
  height:100%!important;
  padding:34px 28px 30px!important;
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:28px!important;
  display:grid!important;
  grid-template-rows:64px auto 1fr!important;
  align-items:center!important;
  justify-items:center!important;
  text-align:center!important;
  box-shadow:0 14px 34px rgba(11,31,58,.06)!important;
  overflow:hidden!important;
}

.kv24e-audience-grid article i{
  width:58px!important;
  height:58px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:18px!important;
  background:#f3f6fb!important;
  font-style:normal!important;
  font-size:30px!important;
  line-height:1!important;
  transform:none!important;
}

.kv24e-audience-grid article h3{
  margin:16px auto 12px!important;
  max-width:360px!important;
  min-height:82px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#0b1f3a!important;
  font-size:clamp(28px, 2.35vw, 40px)!important;
  line-height:1.12!important;
  font-weight:500!important;
  text-align:center!important;
  letter-spacing:-0.02em!important;
}

.kv24e-audience-grid article p{
  margin:0 auto!important;
  max-width:390px!important;
  min-height:64px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#667085!important;
  font-size:18px!important;
  line-height:1.45!important;
  font-weight:600!important;
  text-align:center!important;
}

.kv24e-audience-grid article:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 18px 42px rgba(11,31,58,.10)!important;
}

/* Чтобы длинные заголовки не разъезжались и карточки выглядели одинаково */
.kv24e-audience-grid article:nth-child(1) h3,
.kv24e-audience-grid article:nth-child(4) h3,
.kv24e-audience-grid article:nth-child(6) h3{
  max-width:330px!important;
}

/* Планшет */
@media(max-width:980px){
  .kv24e-audience-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:18px!important;
  }

  .kv24e-audience-grid article{
    min-height:270px!important;
    padding:30px 24px!important;
  }

  .kv24e-audience-grid article h3{
    font-size:clamp(26px, 4vw, 34px)!important;
    min-height:70px!important;
  }
}

/* Телефон */
@media(max-width:640px){
  .kv24e-audience-grid{
    grid-template-columns:1fr!important;
    max-width:420px!important;
  }

  .kv24e-audience-grid article{
    min-height:230px!important;
    padding:28px 22px!important;
  }

  .kv24e-audience-grid article h3{
    min-height:auto!important;
    font-size:30px!important;
  }

  .kv24e-audience-grid article p{
    min-height:auto!important;
    font-size:17px!important;
  }
}


/* v2.1.9 — рабочий ИИ-ассистент */
.kv24e-float-status{
  border:0!important;
  cursor:pointer!important;
  width:100%!important;
}

.kv24e-ai-chat{
  position:fixed!important;
  right:22px!important;
  bottom:104px!important;
  z-index:10000!important;
  width:min(420px, calc(100vw - 28px))!important;
  display:none!important;
}

.kv24e-ai-chat.is-open{
  display:block!important;
}

.kv24e-ai-chat__box{
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:28px!important;
  overflow:hidden!important;
  box-shadow:0 26px 70px rgba(11,31,58,.28)!important;
  font-family:Arial, sans-serif!important;
}

.kv24e-ai-chat__head{
  background:#0b1f3a!important;
  color:#fff!important;
  padding:18px 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}

.kv24e-ai-chat__head b{
  display:block!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1.1!important;
}

.kv24e-ai-chat__head span{
  display:block!important;
  color:rgba(255,255,255,.75)!important;
  font-size:13px!important;
  margin-top:4px!important;
}

.kv24e-ai-chat__close{
  width:36px!important;
  height:36px!important;
  border-radius:50%!important;
  border:0!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  font-size:24px!important;
  cursor:pointer!important;
}

.kv24e-ai-chat__messages{
  height:330px!important;
  overflow-y:auto!important;
  padding:18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  background:#f6f8fb!important;
}

.kv24e-ai-msg{
  max-width:88%!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  font-size:15px!important;
  line-height:1.45!important;
  white-space:pre-wrap!important;
}

.kv24e-ai-msg--bot{
  align-self:flex-start!important;
  background:#fff!important;
  color:#0b1f3a!important;
  border:1px solid #e4ebf4!important;
}

.kv24e-ai-msg--user{
  align-self:flex-end!important;
  background:#0b1f3a!important;
  color:#fff!important;
}

.kv24e-ai-chat__quick{
  display:flex!important;
  gap:8px!important;
  padding:12px 14px!important;
  background:#fff!important;
  border-top:1px solid #edf2f7!important;
  flex-wrap:wrap!important;
}

.kv24e-ai-chat__quick button{
  border:1px solid #dbe5ef!important;
  background:#f6f8fb!important;
  color:#0b1f3a!important;
  border-radius:999px!important;
  padding:9px 12px!important;
  font-weight:800!important;
  cursor:pointer!important;
  font-size:13px!important;
}

.kv24e-ai-chat__form{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:8px!important;
  padding:14px!important;
  background:#fff!important;
  border-top:1px solid #edf2f7!important;
}

.kv24e-ai-chat__form input{
  min-height:48px!important;
  border:1px solid #dbe5ef!important;
  border-radius:16px!important;
  padding:0 14px!important;
  font-size:15px!important;
  color:#0b1f3a!important;
}

.kv24e-ai-chat__form button{
  min-height:48px!important;
  border:0!important;
  border-radius:16px!important;
  background:var(--kv24e-accent,#e5bf3d)!important;
  color:#0b1f3a!important;
  font-weight:900!important;
  padding:0 16px!important;
  cursor:pointer!important;
}

.kv24e-ai-typing{
  opacity:.72!important;
}

@media(max-width:640px){
  .kv24e-ai-chat{
    right:14px!important;
    bottom:86px!important;
    width:calc(100vw - 28px)!important;
  }
  .kv24e-ai-chat__messages{
    height:300px!important;
  }
}


/* v2.2.0 — аккуратные переносы текста в блоке "Кому подходит" */
.kv24e-audience-grid article{
  padding-left:34px!important;
  padding-right:34px!important;
  overflow:hidden!important;
}

.kv24e-audience-grid article h3{
  width:100%!important;
  max-width:300px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:auto!important;
  line-height:1.14!important;
}

.kv24e-audience-grid article p{
  width:100%!important;
  max-width:330px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:auto!important;
  line-height:1.45!important;
  padding-left:8px!important;
  padding-right:8px!important;
}

/* Для длинных строк делаем внутренний текст уже, чтобы он не доходил до краёв */
.kv24e-audience-grid article:nth-child(2) p,
.kv24e-audience-grid article:nth-child(3) p,
.kv24e-audience-grid article:nth-child(6) p{
  max-width:285px!important;
}

.kv24e-audience-grid article:nth-child(4) p,
.kv24e-audience-grid article:nth-child(5) p{
  max-width:300px!important;
}

/* Заголовки с переносом выглядят ровнее */
.kv24e-audience-grid article:nth-child(1) h3,
.kv24e-audience-grid article:nth-child(4) h3,
.kv24e-audience-grid article:nth-child(6) h3{
  max-width:260px!important;
}

/* На широком экране карточки не растягивают текст по краям */
@media(min-width:981px){
  .kv24e-audience-grid article{
    min-height:295px!important;
  }
  .kv24e-audience-grid article p{
    font-size:17px!important;
  }
}

/* На телефоне оставляем комфортную ширину */
@media(max-width:640px){
  .kv24e-audience-grid article h3,
  .kv24e-audience-grid article p,
  .kv24e-audience-grid article:nth-child(1) h3,
  .kv24e-audience-grid article:nth-child(4) h3,
  .kv24e-audience-grid article:nth-child(6) h3,
  .kv24e-audience-grid article:nth-child(2) p,
  .kv24e-audience-grid article:nth-child(3) p,
  .kv24e-audience-grid article:nth-child(6) p{
    max-width:320px!important;
  }
}


/* v2.2.1 — сообщение, если по типу жилья нет карточек */
.kv24e-room-empty{
  display:none;
  max-width:920px;
  margin:22px auto 0;
  padding:22px 28px;
  border:1px solid #e4ebf4;
  border-radius:22px;
  background:#fff8e6;
  color:#0b1f3a;
  text-align:center;
  font-weight:800;
  line-height:1.45;
}


/* v2.2.2 — отдельные страницы типов жилья */
.kv24e-type-row a{
  border:1px solid #dbe5ef!important;
  background:#f6f8fb!important;
  color:#0b1f3a!important;
  border-radius:999px!important;
  padding:12px 16px!important;
  font-weight:900!important;
  cursor:pointer!important;
  font-size:15px!important;
  transition:.2s ease!important;
  text-decoration:none!important;
  width:100%!important;
  min-height:62px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  grid-column:span 2!important;
}

.kv24e-type-row a:hover,
.kv24e-type-row a.is-active{
  background:#0b1f3a!important;
  color:#fff!important;
  border-color:#0b1f3a!important;
}

.kv24e-type-row a:nth-child(6){
  grid-column:2 / span 2!important;
}
.kv24e-type-row a:nth-child(7){
  grid-column:4 / span 2!important;
}
.kv24e-type-row a:nth-child(8){
  grid-column:6 / span 2!important;
}
.kv24e-type-row a:nth-child(9){
  grid-column:8 / span 2!important;
}

.kv24e-pagehead--type{
  background:linear-gradient(135deg,#0b1f3a,#123b69)!important;
  color:#fff!important;
  padding:72px 0!important;
  text-align:center!important;
}

.kv24e-pagehead--type h1{
  max-width:1000px!important;
  margin:18px auto!important;
  color:#fff!important;
  text-align:center!important;
}

.kv24e-pagehead--type p{
  max-width:860px!important;
  margin:0 auto!important;
  color:rgba(255,255,255,.82)!important;
  text-align:center!important;
}

.kv24e-type-nav-section{
  background:#fff!important;
  padding:34px 0 8px!important;
}

.kv24e-apartment-types--nav{
  margin-top:0!important;
  margin-bottom:0!important;
}

.kv24e-type-list-head{
  text-align:center!important;
  max-width:840px!important;
  margin:0 auto 28px!important;
}

.kv24e-type-list-head h2{
  margin:0 0 12px!important;
  text-align:center!important;
}

.kv24e-type-list-head p{
  text-align:center!important;
}

.kv24e-type-card-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
  max-width:1180px!important;
  margin:0 auto!important;
}

.kv24e-type-card{
  position:relative!important;
  display:grid!important;
  grid-template-rows:230px auto!important;
  background:#fff!important;
  border:1px solid #e4ebf4!important;
  border-radius:28px!important;
  overflow:hidden!important;
  text-decoration:none!important;
  color:#0b1f3a!important;
  box-shadow:0 14px 34px rgba(11,31,58,.08)!important;
  transition:.2s ease!important;
}

.kv24e-type-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 20px 46px rgba(11,31,58,.12)!important;
}

.kv24e-type-card img{
  width:100%!important;
  height:230px!important;
  object-fit:cover!important;
  display:block!important;
}

.kv24e-type-card__tag{
  position:absolute!important;
  left:16px!important;
  top:16px!important;
  background:#fff!important;
  color:#0b1f3a!important;
  border-radius:999px!important;
  padding:9px 13px!important;
  font-weight:900!important;
  box-shadow:0 10px 24px rgba(11,31,58,.14)!important;
}

.kv24e-type-card>div{
  padding:22px!important;
  text-align:center!important;
}

.kv24e-type-card h3{
  margin:0 0 10px!important;
  color:#0b1f3a!important;
  font-size:24px!important;
  line-height:1.16!important;
  text-align:center!important;
}

.kv24e-type-card p{
  color:#667085!important;
  margin:0 0 14px!important;
  text-align:center!important;
  font-weight:700!important;
}

.kv24e-type-card ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  justify-content:center!important;
}

.kv24e-type-card li{
  background:#f6f8fb!important;
  border-radius:999px!important;
  padding:8px 11px!important;
  font-weight:900!important;
  color:#0b1f3a!important;
  font-size:14px!important;
}

@media(max-width:980px){
  .kv24e-type-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .kv24e-type-row a,
  .kv24e-type-row a:nth-child(6),
  .kv24e-type-row a:nth-child(7),
  .kv24e-type-row a:nth-child(8),
  .kv24e-type-row a:nth-child(9){
    grid-column:auto!important;
  }
}

@media(max-width:640px){
  .kv24e-type-card-grid{
    grid-template-columns:1fr!important;
  }
}


/* v2.2.3 — точное количество комнат */
.kv24e-type-card li:first-child,
.kv24e-pills span:first-child{
  white-space:nowrap!important;
}


/* v2.2.4 — блок "Как выбрать квартиру?" на тёмном фоне */
.kv24e-how,
.kv24e-how-box,
.kv24e-how-card,
.kv24e-steps,
.kv24e-choose-box,
.kv24e-catalog-help,
.kv24e-catalog-steps{
  background:linear-gradient(135deg,#071a31,#123b69)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#fff!important;
  box-shadow:0 24px 70px rgba(11,31,58,.22)!important;
}

/* Заголовок внутри блока */
.kv24e-how h2,
.kv24e-how-box h2,
.kv24e-how-card h2,
.kv24e-steps h2,
.kv24e-choose-box h2,
.kv24e-catalog-help h2,
.kv24e-catalog-steps h2{
  color:#fff!important;
  text-align:center!important;
}

/* Текст внутри блока */
.kv24e-how p,
.kv24e-how-box p,
.kv24e-how-card p,
.kv24e-steps p,
.kv24e-choose-box p,
.kv24e-catalog-help p,
.kv24e-catalog-steps p{
  color:rgba(255,255,255,.82)!important;
  text-align:center!important;
}

/* Четыре внутренние карточки */
.kv24e-how article,
.kv24e-how-box article,
.kv24e-how-card article,
.kv24e-steps article,
.kv24e-choose-box article,
.kv24e-catalog-help article,
.kv24e-catalog-steps article{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* Номера 1–4 */
.kv24e-how article i,
.kv24e-how-box article i,
.kv24e-how-card article i,
.kv24e-steps article i,
.kv24e-choose-box article i,
.kv24e-catalog-help article i,
.kv24e-catalog-steps article i,
.kv24e-how .kv24e-step-number,
.kv24e-how-box .kv24e-step-number,
.kv24e-catalog-steps .kv24e-step-number{
  background:#e5bf3d!important;
  color:#0b1f3a!important;
  border-color:#e5bf3d!important;
  box-shadow:0 14px 28px rgba(229,191,61,.22)!important;
}

/* Заголовки внутри 4 карточек */
.kv24e-how article h3,
.kv24e-how-box article h3,
.kv24e-how-card article h3,
.kv24e-steps article h3,
.kv24e-choose-box article h3,
.kv24e-catalog-help article h3,
.kv24e-catalog-steps article h3{
  color:#fff!important;
  text-align:center!important;
}

/* Описания внутри 4 карточек */
.kv24e-how article p,
.kv24e-how-box article p,
.kv24e-how-card article p,
.kv24e-steps article p,
.kv24e-choose-box article p,
.kv24e-catalog-help article p,
.kv24e-catalog-steps article p{
  color:rgba(255,255,255,.76)!important;
  max-width:280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Если этот блок сделан как обычная панель внутри каталога */
#kv24-catalog .kv24e-panel:has(h2),
#kv24-catalog .kv24e-card:has(h2){
  border-color:#e4ebf4;
}

/* Надёжное правило: если внутри есть h2 "Как выбрать квартиру?", внешний контейнер затемняем в современных браузерах */
#kv24-catalog section:has(h2) .kv24e-container > div:has(h2),
#kv24-catalog .kv24e-container > div:has(h2){
  /* не применяем фон ко всем заголовкам, ниже уточняют классы */
}

/* Фолбэк по текущей верстке: крупная карточка перед фильтрами */
.kv24e-catalog-intro{
  background:linear-gradient(135deg,#071a31,#123b69)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.12)!important;
}

.kv24e-catalog-intro h2,
.kv24e-catalog-intro h3{
  color:#fff!important;
}

.kv24e-catalog-intro p{
  color:rgba(255,255,255,.82)!important;
}


/* v2.2.4.1 — страница квартиры: описание во всю ширину, быстрый запрос снизу */
.single-kv24_apartment .kv24e-apartment-info .kv24e-two,
body.single-kv24_apartment .kv24e-apartment-info .kv24e-two,
.kv24e-apartment-info .kv24e-two{
  grid-template-columns:1fr!important;
  max-width:1160px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.single-kv24_apartment .kv24e-apartment-description-card,
body.single-kv24_apartment .kv24e-apartment-description-card,
.kv24e-apartment-description-card{
  width:100%!important;
  max-width:1160px!important;
  margin:0 auto!important;
  padding:42px 46px!important;
  align-self:start!important;
}

.single-kv24_apartment .kv24e-apartment-description-card h2,
body.single-kv24_apartment .kv24e-apartment-description-card h2,
.kv24e-apartment-description-card h2{
  margin-top:0!important;
  text-align:center!important;
}

.single-kv24_apartment .kv24e-apartment-description-card > p,
body.single-kv24_apartment .kv24e-apartment-description-card > p,
.kv24e-apartment-description-card > p{
  max-width:850px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

.single-kv24_apartment .kv24e-detail-grid,
body.single-kv24_apartment .kv24e-detail-grid,
.kv24e-detail-grid{
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.single-kv24_apartment .kv24e-apartment-request-section,
body.single-kv24_apartment .kv24e-apartment-request-section,
.kv24e-apartment-request-section{
  padding-top:0!important;
  padding-bottom:70px!important;
  background:#f6f8fb!important;
}

.single-kv24_apartment .kv24e-book-panel--wide,
body.single-kv24_apartment .kv24e-book-panel--wide,
.kv24e-book-panel--wide{
  width:100%!important;
  max-width:1160px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:26px!important;
  align-items:center!important;
  background:linear-gradient(135deg,#071a31,#123b69)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:30px!important;
  padding:34px 38px!important;
  box-shadow:0 24px 70px rgba(11,31,58,.18)!important;
}

.single-kv24_apartment .kv24e-book-panel--wide h3,
body.single-kv24_apartment .kv24e-book-panel--wide h3,
.kv24e-book-panel--wide h3{
  color:#fff!important;
  margin:10px 0 10px!important;
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.1!important;
  text-align:left!important;
}

.single-kv24_apartment .kv24e-book-panel--wide p,
body.single-kv24_apartment .kv24e-book-panel--wide p,
.kv24e-book-panel--wide p{
  color:rgba(255,255,255,.82)!important;
  max-width:760px!important;
  margin:0!important;
  text-align:left!important;
}

.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__badge,
body.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__badge,
.kv24e-book-panel--wide .kv24e-book-panel__badge{
  display:inline-flex!important;
  background:rgba(229,191,61,.16)!important;
  border:1px solid rgba(229,191,61,.55)!important;
  color:#e5bf3d!important;
  border-radius:999px!important;
  padding:9px 15px!important;
  font-weight:900!important;
  width:max-content!important;
}

.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__action,
body.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__action,
.kv24e-book-panel--wide .kv24e-book-panel__action{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  min-width:230px!important;
}

.single-kv24_apartment .kv24e-book-panel--wide .kv24e-btn,
body.single-kv24_apartment .kv24e-book-panel--wide .kv24e-btn,
.kv24e-book-panel--wide .kv24e-btn{
  width:100%!important;
  justify-content:center!important;
  min-height:56px!important;
  border-radius:999px!important;
}

@media(max-width:900px){
  .single-kv24_apartment .kv24e-apartment-description-card,
  body.single-kv24_apartment .kv24e-apartment-description-card,
  .kv24e-apartment-description-card{
    padding:30px 22px!important;
  }

  .single-kv24_apartment .kv24e-book-panel--wide,
  body.single-kv24_apartment .kv24e-book-panel--wide,
  .kv24e-book-panel--wide{
    grid-template-columns:1fr!important;
    text-align:center!important;
    padding:30px 22px!important;
  }

  .single-kv24_apartment .kv24e-book-panel--wide h3,
  .single-kv24_apartment .kv24e-book-panel--wide p,
  body.single-kv24_apartment .kv24e-book-panel--wide h3,
  body.single-kv24_apartment .kv24e-book-panel--wide p,
  .kv24e-book-panel--wide h3,
  .kv24e-book-panel--wide p{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__badge,
  body.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__badge,
  .kv24e-book-panel--wide .kv24e-book-panel__badge{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__action,
  body.single-kv24_apartment .kv24e-book-panel--wide .kv24e-book-panel__action,
  .kv24e-book-panel--wide .kv24e-book-panel__action{
    min-width:0!important;
    width:100%!important;
  }
}


/* v2.2.4.2 — исправление листания каталога: показываем только одну карточку без обрезания */
.kv24e-carousel{max-width:1240px;overflow:visible}
.kv24e-carousel__viewport{
  width:100%;
  overflow-x:hidden;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.kv24e-carousel__viewport::-webkit-scrollbar{display:none}
.kv24e-apartments{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:100%;
  align-items:stretch;
}
.kv24e-apartment{
  flex:0 0 100%!important;
  min-width:100%!important;
  max-width:100%!important;
  width:100%!important;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.kv24e-apartment__img,
.kv24e-apartment__body,
.kv24e-apartment__top,
.kv24e-pills,
.kv24e-card-actions{min-width:0}
.kv24e-apartment__body{overflow:hidden}
.kv24e-apartment__top > div:first-child{min-width:0;flex:1 1 auto}
.kv24e-apartment h3,
.kv24e-apartment p,
.kv24e-apartment small{word-break:break-word}
@media (max-width:980px){
  .kv24e-carousel{max-width:100%}
  .kv24e-apartment{flex-basis:100%!important;min-width:100%!important}
}


/* v2.2.4.3 — компактная главная страница: меньше пустых пробелов */
.kv24e .kv24e-hero{
  padding-top:38px!important;
  padding-bottom:48px!important;
  min-height:auto!important;
}

.kv24e .kv24e-header + .kv24e-hero,
.kv24e .kv24e-hero:first-of-type{
  margin-top:0!important;
}

.kv24e .kv24e-hero__grid{
  align-items:center!important;
  gap:34px!important;
}

.kv24e .kv24e-hero h1{
  margin-top:12px!important;
  margin-bottom:18px!important;
  line-height:1.04!important;
}

.kv24e .kv24e-hero p{
  margin-top:0!important;
  margin-bottom:22px!important;
  line-height:1.45!important;
}

.kv24e .kv24e-hero .kv24e-actions{
  margin-top:18px!important;
  gap:12px!important;
}

.kv24e .kv24e-hero-card,
.kv24e .kv24e-quiz,
.kv24e .kv24e-lead-card{
  padding-top:28px!important;
  padding-bottom:28px!important;
}

.kv24e .kv24e-hero-card h2,
.kv24e .kv24e-quiz h2,
.kv24e .kv24e-lead-card h2{
  margin-top:0!important;
  margin-bottom:14px!important;
}

.kv24e .kv24e-hero-card p,
.kv24e .kv24e-quiz p,
.kv24e .kv24e-lead-card p{
  margin-bottom:18px!important;
}

/* Общие секции на главной стали компактнее */
.kv24e .kv24e-section{
  padding-top:58px!important;
  padding-bottom:58px!important;
}

.kv24e .kv24e-section-head{
  margin-bottom:28px!important;
}

.kv24e .kv24e-section-head h2{
  margin-bottom:12px!important;
}

.kv24e .kv24e-section-head p{
  margin-top:0!important;
  margin-bottom:0!important;
}

/* Форма заявки: меньше пустоты, компактная высота */
.kv24e #kv24-lead,
.kv24e .kv24e-lead-section,
.kv24e section:has(#kv24-lead){
  padding-top:48px!important;
  padding-bottom:48px!important;
}

.kv24e .kv24e-lead,
.kv24e .kv24e-lead-box,
.kv24e .kv24e-lead-card,
.kv24e .kv24e-form-card{
  padding:28px!important;
  gap:16px!important;
}

.kv24e form.kv24e-form,
.kv24e .kv24e-form{
  gap:12px!important;
}

.kv24e .kv24e-form input,
.kv24e .kv24e-form textarea,
.kv24e .kv24e-form select{
  min-height:52px!important;
  padding-top:12px!important;
  padding-bottom:12px!important;
}

.kv24e .kv24e-form textarea{
  min-height:96px!important;
}

.kv24e .kv24e-form button,
.kv24e .kv24e-form .kv24e-btn{
  min-height:54px!important;
}

.kv24e .kv24e-lead h2,
.kv24e .kv24e-lead-card h2,
.kv24e .kv24e-form-card h2{
  margin-top:0!important;
  margin-bottom:12px!important;
}

.kv24e .kv24e-lead p,
.kv24e .kv24e-lead-card p,
.kv24e .kv24e-form-card p{
  margin-top:0!important;
  margin-bottom:16px!important;
}

/* Чтобы первый экран помещался лучше на ноутбуках */
@media (min-width:981px){
  .kv24e .kv24e-hero{
    padding-top:30px!important;
    padding-bottom:42px!important;
  }

  .kv24e .kv24e-hero h1{
    font-size:clamp(46px,5.2vw,74px)!important;
  }

  .kv24e .kv24e-hero p{
    font-size:22px!important;
    max-width:760px!important;
  }
}

/* Мобильная версия: меньше вертикальных пустот */
@media (max-width:980px){
  .kv24e .kv24e-hero{
    padding-top:24px!important;
    padding-bottom:34px!important;
  }

  .kv24e .kv24e-section{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }

  .kv24e .kv24e-hero__grid{
    gap:24px!important;
  }

  .kv24e .kv24e-hero-card,
  .kv24e .kv24e-quiz,
  .kv24e .kv24e-lead-card,
  .kv24e .kv24e-form-card{
    padding:22px!important;
  }

  .kv24e #kv24-lead,
  .kv24e .kv24e-lead-section,
  .kv24e section:has(#kv24-lead){
    padding-top:34px!important;
    padding-bottom:34px!important;
  }
}


/* v2.2.4.4 — описание квартиры: 3 плашки в ряд */
.single-kv24_apartment .kv24e-detail-grid,
body.single-kv24_apartment .kv24e-detail-grid,
.kv24e-detail-grid{
  max-width:1200px!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}

.single-kv24_apartment .kv24e-detail-grid div,
body.single-kv24_apartment .kv24e-detail-grid div,
.kv24e-detail-grid div{
  min-height:138px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:24px 18px!important;
}

.single-kv24_apartment .kv24e-detail-grid b,
body.single-kv24_apartment .kv24e-detail-grid b,
.kv24e-detail-grid b{
  font-size:22px!important;
  margin-bottom:10px!important;
}

.single-kv24_apartment .kv24e-detail-grid span,
body.single-kv24_apartment .kv24e-detail-grid span,
.kv24e-detail-grid span{
  font-size:18px!important;
  line-height:1.35!important;
}

@media(max-width:980px){
  .single-kv24_apartment .kv24e-detail-grid,
  body.single-kv24_apartment .kv24e-detail-grid,
  .kv24e-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:640px){
  .single-kv24_apartment .kv24e-detail-grid,
  body.single-kv24_apartment .kv24e-detail-grid,
  .kv24e-detail-grid{
    grid-template-columns:1fr!important;
  }

  .single-kv24_apartment .kv24e-detail-grid div,
  body.single-kv24_apartment .kv24e-detail-grid div,
  .kv24e-detail-grid div{
    min-height:auto!important;
    padding:20px 16px!important;
  }
}


/* v2.2.4.7 — скрываем стандартную шапку WordPress и автоматическое меню страниц */
body .wp-site-blocks > header,
body header.wp-block-template-part,
body .wp-block-template-part:has(.wp-block-navigation),
body .wp-block-site-title,
body .wp-block-navigation,
body nav.wp-block-navigation{
  display:none!important;
}
body .wp-site-blocks{
  padding-top:0!important;
  margin-top:0!important;
}
body .wp-site-blocks > main{
  margin-block-start:0!important;
  margin-top:0!important;
}
body:has(.kv24e) .wp-block-post-title,
body:has(.kv24e) .entry-title,
body:has(.kv24e) h1.wp-block-post-title{
  display:none!important;
}
