/* ============================================================
   Scandi redesign — MOBILE (≤ 768px)
   Geometry matched to production scandiecodom.ru @ iPhone 393×852.
   Keeps gold/cream redesign palette (gold #c19a5b, cream #f7f1e6).
   Each rule annotated with PROD measurement source.
   ============================================================ */

/* ============================================================
   0. RESET — kill parent `.container` 24px side padding everywhere
   so every block / card sits edge-to-edge (same alignment as scandi-works).
   Each section then adds its own 10px gutter via inner wrapper.
   ============================================================ */
/* CRITICAL: parent CSS sets body { display: flex; height: 100dvh } which traps
   content (13000+ px) inside a 852px viewport, breaking scroll on iPhone.
   Reset to normal block flow so the page scrolls naturally. */
html, html body {
  display: block !important;
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  position: static !important;
}
html body img, html body video, html body iframe { max-width: 100% !important; height: auto; }

html body section > .container,
html body section > div > .container,
html body #catalog .container,
html body .our-works .container,
html body .about-company .container,
html body .build-stages .container,
html body .mortgage-calling .container,
html body .realty-tour .container,
html body .object-map .container,
html body .scandi-finalform .container,
html body section .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
}

/* Inner wrappers that add EXTRA side padding — flatten them on mobile */
html body .build-stages .step-cards,
html body .build-stages .step-cards__row,
html body .about-company .scandi-about,
html body .about-company .scandi-about__inner,
html body .about-company > * > .container,
html body .object-map__inner,
html body .object-map__content,
html body section.mortgage-calling .mortgage-calling__inner,
html body .scandi-finalform__inner,
html body .scandi-finalform__wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* Build-stages .container has padding 0 10px — pull cards to full width */
html body section.build-stages .container {
  padding: 0 !important;
}
html body section.build-stages .step-cards,
html body section.build-stages .step-cards__row {
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  gap: 12px !important;
}
/* Map wrap deepest container */
html body section.object-map .object-map__inner,
html body section.object-map .object-map__content {
  padding: 0 !important;
}
/* Map wrap — desktop selector is `section.object-map .scandi-map-wrap`,
   so we match its specificity. */
html body section.object-map .scandi-map-wrap {
  padding: 0 !important;
  width: calc(100% - 20px) !important;
  max-width: 373px !important;
  margin: 0 auto !important;
}
html body section.object-map .object-map__inner,
html body section.object-map .object-map__content {
  padding: 0 10px !important;
}
html body section.object-map .container {
  padding: 0 !important;
}
/* Final form: kill section side padding so panel reaches 10px from edge */
html body section.final-form,
html body .scandi-finalform {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body section.final-form .scandi-finalform__panel,
html body .scandi-finalform .scandi-finalform__panel {
  margin: 0 auto !important;
  max-width: 373px !important;
  width: calc(100% - 20px) !important;
}

/* ============================================================
   0a. UNIVERSAL CARD GEOMETRY — every card same edge-to-edge alignment.
   - viewport-flush with 10px side gutter
   - max-width 373px (matches prod card width)
   - centered horizontally
   - border-radius 12px (same)
   - box-sizing border-box
   This applies to: catalog cards, build-stages cards, about stats,
   mortgage container-card, scandi-works slide, finalform panel,
   map wrap, realty tour media.
   ============================================================ */
html body #catalog .catalog-item,
html body #catalog a.catalog-item,
html body section.build-stages .step-cards__item.step-card,
html body .scandi-about__stat,
html body section.mortgage-calling .container-card,
html body .scandi-works__slide.is-active,
html body .scandi-finalform__panel,
html body .scandi-map-wrap,
html body section.realty-tour .scandi-tour__media {
  width: 100% !important;
  max-width: 373px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
}

/* ============================================================
   1. HEADER  — fixed/sticky position, parent dark-glass bg preserved.
   ============================================================ */
html body header#header,
html body #header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 999 !important;
  padding: 0 !important;
  min-height: 60px !important;
  height: auto !important;
}
html body .scandi-burger { width: 36px !important; height: 36px !important; }
html body #header .right-top-item:not(.icon-circle):not(:first-of-type) { display: none !important; }

/* ============================================================
   2. HERO  (prod: 393×483 | caption 373×383 padding 16 12 14 | title 19px/25px 700)
   ============================================================ */
html body div.top-block,
html body .top-block {
  height: auto !important;
  min-height: 483px !important;
  padding: 0 !important;
  position: relative !important;
}
html body div.top-block .container,
html body div.top-block .in,
html body div.top-block .top-block__inner {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body div.top-block .caption {
  width: 373px !important;
  max-width: calc(100% - 20px) !important;
  margin: 60px 10px 14px !important;     /* 60px clear of fixed header */
  padding: 16px 12px 14px !important;
  background: rgba(20, 16, 13, 0.62) !important;
  -webkit-backdrop-filter: blur(8px) saturate(1.1) !important;
  backdrop-filter: blur(8px) saturate(1.1) !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  overflow: visible !important;
}
html body div.top-block h1.title,
html body div.top-block .title.b-title {
  font-size: 19px !important;
  line-height: 25px !important;
  font-weight: 700 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  column-gap: 0.3em !important;
  row-gap: 8px !important;
  width: 100% !important;
  white-space: normal !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  color: #f5e9d4 !important;
  -webkit-text-fill-color: #f5e9d4 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
}
html body div.top-block h1.title i,
html body div.top-block .title.b-title i {
  color: #d4ad6e !important;
  -webkit-text-fill-color: #d4ad6e !important;
  font-style: normal !important;
  font-weight: 700 !important;
  background: none !important;
}
html body div.top-block .price,
html body div.top-block .from {
  font-size: 16px !important;
  color: #f5e9d4 !important;
  -webkit-text-fill-color: #f5e9d4 !important;
  margin-top: 14px !important;
}
html body div.top-block .price b,
html body div.top-block .from b {
  color: #d4ad6e !important;
  -webkit-text-fill-color: #d4ad6e !important;
}

/* ============================================================
   3. CATALOG  (prod: section 393×... padding 25 0 0 | items 373 wide stack)
   ============================================================ */
html body #catalog {
  padding: 25px 0 0 !important;
  background: #f7f1e6 !important;
}
html body #catalog .container,
html body #catalog .catalog .container {
  padding: 0 !important;
  max-width: 100% !important;
}
/* Section heading: «Каталог ТОП проектов каркасных домов 2026 г.» */
html body #catalog .title-new,
html body #catalog h2,
html body #catalog .b-title.bt32,
html body #catalog .b-title.bt28 {
  font-size: 24px !important;
  line-height: 1.18 !important;
  font-weight: 600 !important;
  text-align: center !important;
  margin: 0 16px 16px !important;
  padding: 0 !important;
  color: #1f1612 !important;
  -webkit-text-fill-color: #1f1612 !important;
}

/* Catalog form: hide the book photo per user request */
html body #cbform-get-catalog {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 20px !important;
  padding: 16px 10px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Hide only left-side decorative image-bg (parent's bg deco), NOT the
   .image element inside .right (which is the book illustration we WANT). */
html body #cbform-get-catalog .image-bg {
  display: none !important;
}
html body #cbform-get-catalog .right {
  width: 100% !important;
  max-width: 100% !important;
}

/* Entry tile (catalog photo card) — HIDE on mobile (user said it's redundant) */
/* .scandi-catalog-entry card kept visible — это "Перейти в каталог" */

/* Card list: 1 per row, 373 wide, edge-to-edge */
html body #catalog .items,
html body #catalog .catalog-items {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  background: transparent !important;
}
/* Each card: 373×401, white bg, rounded 12, no extra padding here (parent paints inside) */
html body #catalog .catalog-item,
html body #catalog a.catalog-item {
  width: 100% !important;
  max-width: 373px !important;
  margin: 0 auto !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(193, 154, 91, 0.22) !important;
  box-shadow: 0 4px 12px rgba(31, 22, 18, 0.05) !important;
}
html body #catalog .catalog-item .image {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  height: auto !important;
}
/* Limit removed — show ALL projects on mobile (user request) */

/* Card overlay (Открыть/Получить КП) — compact, fits 373px */
html body #catalog .catalog-item .scandi-card-overlay { height: 40px !important; }
html body #catalog .catalog-item .scandi-card-overlay__btn {
  font-size: 11px !important; letter-spacing: 0.08em !important; padding: 0 12px !important;
}
html body #catalog .catalog-item .scandi-card-overlay__sep { height: 16px !important; }

/* ₽/м² aside: top-right inside .desc, beside the price (not below) */
html body #catalog .catalog-item .desc { position: relative !important; }
html body #catalog .catalog-item .scandi-card-aside {
  position: absolute !important;
  right: 14px !important;
  bottom: 60px !important;
  top: auto !important; left: auto !important;
  transform: none !important;
  opacity: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  width: auto !important;
  max-width: 45% !important;
  background: transparent !important;
  pointer-events: none !important;
}
html body #catalog .catalog-item .scandi-card-aside__eyebrow { font-size: 9px !important; letter-spacing: 0.16em !important; }
html body #catalog .catalog-item .scandi-card-aside__value {
  font-size: 14px !important; font-family: 'Cormorant Garamond', serif !important;
  font-style: italic !important; color: #c19a5b !important; -webkit-text-fill-color: #c19a5b !important;
  white-space: nowrap !important;
}
html body #catalog .catalog-item .scandi-card-aside__caption { font-size: 10px !important; font-style: italic !important; }

/* ============================================================
   4. BUILD STAGES  (prod: 393×2775 padding 50 0 30 | card 373×302 padding 20 25 39 22 | photo 97×97 round)
   ============================================================ */
html body section.build-stages {
  padding: 50px 0 30px !important;
  background: #fdf9f0 !important;
}
html body section.build-stages .container { padding: 0 10px !important; max-width: 100% !important; }
html body section.build-stages h2,
html body section.build-stages .section-title {
  font-size: 24px !important; font-weight: 600 !important; text-align: center !important;
  margin: 0 0 24px !important; line-height: 1.2 !important;
}
/* Hide decorative dotted curves on mobile */
html body section.build-stages svg.arrow,
html body section.build-stages [class*="arrow"]:not([class*="scroll"]),
html body section.build-stages [class*="connector"],
html body section.build-stages [class*="divider"] { display: none !important; }
/* Reset parent span-2 on last card */
html body section.build-stages .step-cards__item:last-child { grid-column: auto !important; width: auto !important; }
/* Rows: 1-column stack */
html body section.build-stages .step-cards {
  display: flex !important; flex-direction: column !important; gap: 0 !important;
}
html body section.build-stages .step-cards__row {
  display: flex !important; flex-direction: column !important;
  grid-template-columns: unset !important;
  gap: 12px !important; padding: 0 0 10px !important; margin: 0 !important;
}
/* Each card */
html body section.build-stages .step-cards__item.step-card {
  width: 100% !important;
  max-width: 373px !important;
  margin: 0 auto !important;
  min-height: 302px !important;
  background: #ffffff !important;
  border: 1px solid rgba(193, 154, 91, 0.22) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  padding: 20px 25px 30px 22px !important;
  box-shadow: 0 4px 12px rgba(31, 22, 18, 0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  position: relative !important;
}
html body section.build-stages .step-cards__item .step-card__header { display: contents !important; }
/* Round 97×97 photo top-left */
html body section.build-stages .step-cards__item .step-card__preview {
  width: 97px !important; height: 97px !important; max-width: 97px !important;
  flex: 0 0 97px !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important; padding: 0 !important;
  border-radius: 50% !important;
  background: #f5e9d4 !important;
  border: 1px solid rgba(193, 154, 91, 0.25) !important;
  overflow: hidden !important;
  order: 1 !important;
}
html body section.build-stages .step-cards__item .step-card__preview::before { display: none !important; content: none !important; }
html body section.build-stages .step-cards__item .step-card__preview img {
  width: 100% !important; height: 100% !important; object-fit: cover !important;
  border-radius: 50% !important; margin: 0 !important; border: 0 !important;
}
/* Parent step-number badge in top-right */
html body section.build-stages .step-cards__item::before {
  top: 14px !important; right: 14px !important; left: auto !important;
  width: 34px !important; height: 34px !important; font-size: 15px !important;
}
/* Body content */
html body section.build-stages .step-cards__item .step-card__body { padding: 0 !important; order: 2 !important; }
html body section.build-stages .step-cards__item .step-card__title {
  font-size: 18px !important; font-weight: 600 !important; line-height: 1.25 !important;
  margin: 0 0 10px !important;
  color: #1f1612 !important; -webkit-text-fill-color: #1f1612 !important;
}
html body section.build-stages .step-cards__item .step-card__desc {
  font-size: 13px !important; line-height: 1.55 !important;
  color: #574a39 !important; -webkit-text-fill-color: #574a39 !important;
  display: block !important;
}
html body section.build-stages .step-cards__item .scandi-stage__num,
html body section.build-stages .step-cards__item .scandi-stage__sub { display: none !important; }

/* ============================================================
   5. MORTGAGE  (prod: 393×615 padding 30 0 | img 373×214)
   ============================================================ */
html body section.mortgage-calling { padding: 30px 0 !important; }
html body section.mortgage-calling .container { padding: 0 10px !important; max-width: 100% !important; }
html body section.mortgage-calling .container-card {
  background: linear-gradient(180deg, #2a1f17 0%, #14100d 100%) !important;
  border-radius: 12px !important;
  padding: 0 !important;
  overflow: hidden !important;
}
html body section.mortgage-calling .container-card,
html body section.mortgage-calling .mortgage-calling__content {
  flex-direction: column !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}
html body section.mortgage-calling .mortgage-calling__preview {
  position: relative !important;
  width: 100% !important;
  height: 214px !important;
  max-height: 214px !important;
}
html body section.mortgage-calling .mortgage-calling__image,
html body section.mortgage-calling .mortgage-calling__preview img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body section.mortgage-calling .mortgage-calling__content {
  padding: 28px 20px 32px !important;
}
html body section.mortgage-calling .mortgage-calling__content,
html body section.mortgage-calling .mortgage-calling__content * {
  color: #f5e9d4 !important;
  -webkit-text-fill-color: #f5e9d4 !important;
}
html body section.mortgage-calling .mortgage-calling__content b,
html body section.mortgage-calling .mortgage-calling__content strong {
  color: #d4ad6e !important;
  -webkit-text-fill-color: #d4ad6e !important;
}
html body section.mortgage-calling h2,
html body section.mortgage-calling .scandi-mortgage__title {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  margin: 0 0 14px !important;
}
html body section.mortgage-calling p,
html body section.mortgage-calling .scandi-mortgage__lead {
  font-size: 14px !important; line-height: 1.55 !important; margin: 0 0 18px !important;
}
html body section.mortgage-calling .scandi-mortgage__list {
  grid-template-columns: 1fr !important; gap: 6px !important; margin: 0 0 18px !important;
}
html body section.mortgage-calling .scandi-mortgage__cta {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

/* ============================================================
   6. ABOUT COMPANY + stats  (prod: 393×1724 padding 25 0 0)
   ============================================================ */
html body .about-company { padding: 25px 0 30px !important; }
html body .about-company .container,
html body .about-company > * .container { padding: 0 10px !important; max-width: 100% !important; }
html body .about-company h2,
html body .about-company .section-title {
  font-size: 24px !important; font-weight: 600 !important; text-align: center !important;
  line-height: 1.2 !important; margin: 0 0 16px !important;
}
html body .about-company p,
html body .about-company .scandi-about__lead {
  font-size: 14px !important; line-height: 1.55 !important; margin: 0 0 20px !important;
}
/* Stats: 1-col stack, same-size cards */
html body .scandi-about__stats {
  display: flex !important; flex-direction: column !important;
  grid-template-columns: unset !important;
  gap: 10px !important; padding: 0 !important; margin: 0 0 24px !important;
}
html body .scandi-about__stat {
  width: 100% !important; max-width: 373px !important; margin: 0 auto !important;
  padding: 16px 20px !important;
  background: #ffffff !important;
  border-radius: 10px !important;
  border: 1px solid rgba(193, 154, 91, 0.22) !important;
  box-sizing: border-box !important;
}
html body .scandi-about__stat-num { font-size: 32px !important; line-height: 1 !important; margin: 0 0 6px !important; }
html body .scandi-about__stat-label { font-size: 12px !important; line-height: 1.4 !important; }

/* Team: horizontal carousel, 180px cards */
html body .scandi-about__team {
  display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
  overflow-x: auto !important; scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  gap: 10px !important; padding: 0 10px 12px !important;
  margin: 0 -10px !important; width: calc(100% + 20px) !important;
  scrollbar-width: none !important;
}
html body .scandi-about__team::-webkit-scrollbar { display: none !important; }
html body .scandi-team__card {
  flex: 0 0 180px !important; width: 180px !important; min-width: 180px !important; max-width: 180px !important;
  scroll-snap-align: start !important; margin: 0 !important;
}

/* ============================================================
   7. VIDEO  (full-width 16:9)
   ============================================================ */
html body .scandi-video,
html body .scandi-video__frame { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
html body .scandi-video__player {
  width: 100% !important; aspect-ratio: 16 / 9 !important; height: auto !important; max-height: none !important;
}

/* ============================================================
   8. OUR-WORKS / BUILT HOUSES  (custom scandi-works slider, edge-to-edge)
   ============================================================ */
/* Kill negative-margin overlap from desktop and force edge-to-edge */
html body .our-works {
  padding: 32px 0 32px !important;
  margin: 0 !important;
  background: #fdf9f0 !important;
}
html body .our-works h2,
html body .our-works .section-title {
  font-size: 24px !important; font-weight: 600 !important;
  text-align: center !important; margin: 0 10px 20px !important;
  color: #1f1612 !important; -webkit-text-fill-color: #1f1612 !important;
}
/* Hide parent's swiper (broken on mobile) — only our scandi-works renders */
html body .our-works > .swiper { display: none !important; }
/* Our custom scandi-works slider — edge-to-edge full width.
   Parent `.container` adds 24px side padding; we escape with negative margin. */
html body .our-works .container {
  padding: 0 !important;
  max-width: 100% !important;
}
html body .scandi-works {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 10px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
html body .scandi-works__head { padding: 0 !important; margin: 0 0 16px !important; }
html body .scandi-works__viewport,
html body .scandi-works__track {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Active slide: full card width, photo bigger */
html body .scandi-works__slide,
html body .scandi-works__slide.is-active {
  width: 100% !important;
  max-width: 373px !important;
  margin: 0 auto !important;
  background: #ffffff !important;
  border: 1px solid rgba(193, 154, 91, 0.22) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 12px rgba(31, 22, 18, 0.05) !important;
}
html body .scandi-works__slide.is-active .scandi-works__media,
html body .scandi-works__slide.is-active .scandi-works__hero {
  width: 100% !important;
  height: 220px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}
html body .scandi-works__slide.is-active .scandi-works__hero img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
}
html body .scandi-works__slide.is-active .scandi-works__info {
  padding: 18px 18px 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body .scandi-works__nav {
  margin: 16px 0 0 !important;
  padding: 0 !important;
  justify-content: center !important;
}

/* ============================================================
   9. MAP «География работ»  (prod: 393×572 padding 20 0)
   ============================================================ */
html body section.object-map { padding: 20px 0 !important; }
html body .object-map__inner,
html body .object-map__content { background: transparent !important; padding: 0 10px !important; }
html body .object-map h2,
html body .object-map .section-title {
  font-size: 24px !important; font-weight: 600 !important;
  text-align: center !important; margin: 0 0 14px !important;
}
html body .scandi-map-wrap {
  width: 100% !important; max-width: 100% !important;
  height: 380px !important; min-height: 380px !important;
  position: relative !important;
  border-radius: 10px !important; overflow: hidden !important;
}
html body .scandi-map-wrap iframe {
  height: 380px !important;
  pointer-events: none !important;     /* don't trap palm */
}
html body .scandi-map-wrap.is-active iframe { pointer-events: auto !important; }
html body .scandi-map-wrap__tr,
html body .scandi-map-wrap__br { display: none !important; }

/* ============================================================
   10. REALTY TOUR  (prod: 393×862 padding 32 0 40)
   ============================================================ */
html body section.realty-tour { padding: 32px 0 40px !important; }
html body section.realty-tour .container { padding: 0 10px !important; }
html body section.realty-tour .scandi-tour {
  grid-template-columns: 1fr !important; gap: 14px !important;
}
html body section.realty-tour .scandi-tour__media {
  width: 100% !important; height: 220px !important; min-height: 220px !important; border-radius: 10px !important;
}
html body section.realty-tour h2 { font-size: 24px !important; font-weight: 600 !important; margin: 0 0 12px !important; }

/* ============================================================
   11. REVIEWS «Отзывы»
   ============================================================ */
html body .scandi-quotes,
html body .review-lab-widget {
  width: 100% !important; max-width: 100% !important; padding: 0 10px !important;
}

/* ============================================================
   12. FINAL FORM «Остались вопросы?»
   ============================================================ */
html body section.final-form,
html body .scandi-finalform { padding: 30px 0 !important; }
html body .scandi-finalform__manager,
html body .scandi-finalform--with-manager .scandi-finalform__manager { display: none !important; }
html body .scandi-finalform__panel {
  margin: 0 10px !important; padding: 20px 16px !important; border-radius: 12px !important;
}
html body .scandi-finalform__title { font-size: 22px !important; line-height: 1.2 !important; }
html body .scandi-finalform__form { grid-template-columns: 1fr !important; gap: 10px !important; }
html body .scandi-finalform__field { grid-column: 1 / -1 !important; }
html body .scandi-finalform__cta { width: 100% !important; }
html body .scandi-finalform__accents { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }

/* ============================================================
   13. SEO block
   ============================================================ */
html body .scandi-seo,
html body .scandi-seo-block { padding: 24px 10px !important; font-size: 13px !important; line-height: 1.55 !important; }

/* ============================================================
   14. FOOTER  (prod: container fills 393)
   ============================================================ */
html body footer { padding: 0 !important; }
html body footer > .container,
html body footer .container { padding: 24px 10px !important; }
html body footer .left,
html body footer .right,
html body footer .right .top,
html body footer .right .bottom {
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
  gap: 12px !important;
}
html body footer .scandi-fcontact { width: 100% !important; }
html body footer .scandi-subfooter__inner {
  flex-direction: column !important; text-align: center !important; gap: 8px !important;
}

/* ============================================================
   15. DRAWER MENU  (parent hides .mobile-menu-navbar; force-show inside drawer)
   ============================================================ */
html body .scandi-drawer .scandi-drawer__menu-clone {
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  flex: 1 1 auto !important;
  overflow: visible !important;
  display: block !important;
}
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar,
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar > * {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;     /* parent uses absolute top:852 — kill it */
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  overflow: visible !important;
}
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar .menu {
  display: flex !important;
  flex-direction: column !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
}
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar .menu > li {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(193, 154, 91, 0.12) !important;
}
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar .menu > li > a {
  display: block !important;
  padding: 14px 20px !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  color: #f3ecdc !important;
  -webkit-text-fill-color: #f3ecdc !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
}
html body .scandi-drawer .scandi-drawer__menu-clone .mobile-menu-navbar .menu .sub-menu { display: none !important; }

/* ============================================================
   16. Third-party popups — HIDE on mobile.
   Includes: scandi-widget (.sw-root, .sw-notify), callbackhunter,
   "Подберём проект под ваш бюджет" floating widget, etc.
   ============================================================ */
html body [class*="callbackhunter"],
html body [class*="cbk"],
html body [class*="manychat"],
html body [class*="jivo"],
html body [class*="ch-button"],
html body [class*="ch-widget"],
html body [class*="floating-cta"],
html body .write-us,
html body [class*="write-us"],
html body [aria-label*="Написать"],
html body [aria-label*="Email"],
html body iframe[src*="callbackhunter"],
html body iframe[src*="cbk"],
html body #scandi-widget,
html body .sw-root,
html body .sw-notify,
html body .sw-visible,
html body [class*="sw-notify"],
html body [class*="scandi-widget"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* ============================================================
   20. HEADER LOGO — keep parent prod styling (gold "Сканди ЭкоДом")
   ============================================================ */
html body #header .logo,
html body #header .b-logo,
html body #header a.logo {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
}
html body #header .logo .name,
html body #header .b-logo .name,
html body #header .name {
  font-family: var(--font-display, 'Manrope'), sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  color: #c19a5b !important;
  -webkit-text-fill-color: #c19a5b !important;
  text-transform: none !important;
}
html body #header .logo i,
html body #header .logo .accent,
html body #header .name i,
html body #header .name .accent {
  color: #f3ecdc !important;
  -webkit-text-fill-color: #f3ecdc !important;
  font-style: normal !important;
  font-weight: 700 !important;
  background: none !important;
}

/* ============================================================
   21. DRAWER — kill bounce/shake (iOS overscroll). Pin firmly.
   ============================================================ */
html body .scandi-drawer {
  position: fixed !important;
  inset: 0 !important;
  overscroll-behavior: contain !important;
  touch-action: pan-y !important;
}
html body .scandi-drawer__panel {
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}
html body.scandi-drawer-open {
  overflow: hidden !important;
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
}

/* ============================================================
   22. HERO — pull adv-glass up onto banner (user wants no empty gap)
   ============================================================ */
html body .adv-glass,
html body #advantages {
  margin-top: -80px !important;
  position: relative !important;
  z-index: 5 !important;
}

/* ============================================================
   23. CATALOG FORM — align edge-to-edge same as cards (373 × x10)
   ============================================================ */
html body #cbform-get-catalog,
html body div#cbform-get-catalog,
html body section#cbform-get-catalog {
  width: calc(100% - 20px) !important;
  max-width: 373px !important;
  margin: 0 auto 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}
html body #cbform-get-catalog .right,
html body #cbform-get-catalog form,
html body #cbform-get-catalog .form-style {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ============================================================
   24. SWIPE HINT — animated chevrons ON the carousel (not below).
   Floating ↔ chevrons that pulse on the visible card edges. Used by
   build-stages and adv-glass carousels.
   ============================================================ */
@keyframes scandi-chevron-pulse {
  0%, 100% { transform: translateY(-50%) translateX(0); opacity: 0.45; }
  50%      { transform: translateY(-50%) translateX(6px); opacity: 1; }
}
@media (max-width: 540px) {
  /* Build-stages: chevron-right OVER the right peeking card edge */
  html body section.build-stages .step-cards::before {
    content: '›' !important;
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 32px !important;
    font-weight: 300 !important;
    color: #c19a5b !important;
    -webkit-text-fill-color: #c19a5b !important;
    text-shadow: 0 2px 8px rgba(20,16,13,0.4) !important;
    animation: scandi-chevron-pulse 1.4s ease-in-out infinite !important;
    pointer-events: none !important;
    z-index: 10 !important;
    opacity: 0.85 !important;
    background: rgba(245, 233, 212, 0.8) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
  }
  /* Adv-glass (trust badges) same treatment */
  html body .adv-glass::after {
    content: '›' !important;
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 26px !important;
    color: #c19a5b !important;
    -webkit-text-fill-color: #c19a5b !important;
    background: rgba(245, 233, 212, 0.8) !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    animation: scandi-chevron-pulse 1.4s ease-in-out infinite !important;
    pointer-events: none !important;
    z-index: 10 !important;
    line-height: 1 !important;
  }
  /* Team carousel chevron */
  html body .scandi-about__team {
    position: relative !important;
  }
  html body .about-company::after {
    content: none !important;
  }
}

/* ============================================================
   25. FINAL FORM — beat parent at every wrapper level.
   Real chain: #cbform > .container[padding 0 20] > .scandi-finalform[padding 8 0] > .scandi-finalform__panel
   Need: container 0 padding, scandi-finalform 0 padding, panel 373 x10.
   ============================================================ */
html body #cbform,
html body div#cbform.cbform,
html body div#cbform.cbform.block-padding {
  padding: 16px 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body #cbform > .container,
html body #cbform .container,
html body div#cbform .container,
html body div#cbform > div.container {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body #cbform .scandi-finalform,
html body div#cbform .scandi-finalform,
html body div#cbform div.scandi-finalform,
html body div#cbform .scandi-finalform.scandi-finalform--with-manager {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body .cbform.scandi-finalform .scandi-finalform__panel,
html body div.cbform.scandi-finalform .scandi-finalform__panel,
html body section .cbform.scandi-finalform .scandi-finalform__panel,
html body .scandi-finalform .scandi-finalform__panel,
html body .scandi-finalform--with-manager.cbform .scandi-finalform__panel,
html body .cbform .scandi-finalform--with-manager .scandi-finalform__panel {
  width: calc(100% - 20px) !important;
  max-width: 373px !important;
  margin: 0 auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 22px 20px 26px !important;
  box-sizing: border-box !important;
}

/* ============================================================
   17. PATCH PACK (user issues 1-13)
   ============================================================ */

/* (1) Drawer menu: pin drawer + clear-сut order with vertical spacing.
   - Drawer is fixed full-screen, panel is scrollable column
   - Messengers (mail/whatsapp/etc) MUST be inside their own row, not overlay
   - Order: eyebrow → menu → contacts → messengers → cta */
html body .scandi-drawer {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100dvh !important;
  z-index: 9999 !important;
}
html body .scandi-drawer__panel {
  display: flex !important;
  flex-direction: column !important;
  height: 100dvh !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 16px 12px 24px !important;        /* tighter, edge-aligned */
  position: relative !important;
}
/* Disable iOS data-detector auto-preview (the giant envelope icon when user
   taps a tel:/mailto: link in the contacts list). */
html body .scandi-drawer a[href^="tel:"],
html body .scandi-drawer a[href^="mailto:"],
html body .scandi-drawer__contact a,
html body .scandi-drawer__phone {
  -webkit-touch-callout: none !important;
}
/* All children inside drawer panel: full available width — EXCEPT close
   button, which must remain a small absolutely-positioned square. */
html body .scandi-drawer__panel > *:not(.scandi-drawer__close),
html body .scandi-drawer__inner > * {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body .scandi-drawer__inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  height: auto !important;
}
html body .scandi-drawer__eyebrow,
html body .scandi-drawer__inner > *:first-child {
  order: 0 !important;
  margin-bottom: 16px !important;
}
html body .scandi-drawer__menu-clone {
  order: 1 !important;
  margin: 0 0 24px !important;
  width: 100% !important;
}
html body .scandi-drawer__contact {
  order: 2 !important;
  margin: 0 0 16px !important;
  width: 100% !important;
}
/* Messengers: explicit flex row, NOT overlay. */
html body .scandi-drawer__messengers {
  order: 3 !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 8px !important;
  margin: 0 0 16px !important;
  width: 100% !important;
  flex-wrap: wrap !important;
}
html body .scandi-drawer__messenger {
  flex: 1 1 calc(50% - 4px) !important;
  width: auto !important;
  position: static !important;
  z-index: auto !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 1px solid rgba(193, 154, 91, 0.35) !important;
  border-radius: 8px !important;
  background: transparent !important;
}
html body .scandi-drawer__messenger svg {
  width: 18px !important;
  height: 18px !important;
  position: static !important;
}
html body .scandi-drawer__login,
html body .scandi-drawer__cta {
  order: 4 !important;
  margin: 8px 0 0 !important;
  width: 100% !important;
}
html body .scandi-drawer__hours {
  order: 5 !important;
  margin: 16px 0 0 !important;
  width: 100% !important;
}
html body .scandi-drawer__menu-clone .menu > li > a,
html body .scandi-drawer__menu-clone a,
html body .scandi-drawer .mobile-menu-navbar a {
  color: #f3ecdc !important;
  -webkit-text-fill-color: #f3ecdc !important;
  text-decoration: none !important;
  background: transparent !important;
}
html body .scandi-drawer__menu-clone a:hover,
html body .scandi-drawer__menu-clone a:active {
  color: #d4ad6e !important;
  -webkit-text-fill-color: #d4ad6e !important;
}

/* (4) Final form panel — beat parent specificity `.cbform .scandi-finalform--with-manager .scandi-finalform__panel` (0,3,1). */
html body .cbform,
html body div.cbform,
html body .cbform.scandi-finalform,
html body section.final-form .cbform {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body .cbform .scandi-finalform__panel,
html body .cbform .scandi-finalform--with-manager .scandi-finalform__panel,
html body section.final-form .cbform .scandi-finalform__panel,
html body div.cbform .scandi-finalform .scandi-finalform__panel {
  margin: 0 auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: calc(100% - 20px) !important;
  max-width: 373px !important;
  box-sizing: border-box !important;
  padding: 22px 20px 26px !important;
}
html body section.final-form,
html body .scandi-finalform {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

/* (6) Reduce huge gap between team and works */
html body .about-company { padding-bottom: 16px !important; }
html body .our-works { padding-top: 16px !important; }

/* (7) Build-stages cards SHORTER: tighter min-height + tighter padding
       (description still readable, photo stays on top-left) */
html body section.build-stages .step-cards__item.step-card {
  min-height: 0 !important;
  padding: 16px 20px 20px 18px !important;
  gap: 10px !important;
}
html body section.build-stages .step-cards__item .step-card__preview {
  width: 78px !important; height: 78px !important; max-width: 78px !important;
  flex: 0 0 78px !important;
}
html body section.build-stages .step-cards__item .step-card__title {
  font-size: 16px !important; margin: 0 0 6px !important;
}
html body section.build-stages .step-cards__item .step-card__desc {
  font-size: 12.5px !important; line-height: 1.5 !important;
}
html body section.build-stages .step-cards__item::before {
  width: 28px !important; height: 28px !important; font-size: 13px !important;
}

/* (8) Reduce gap catalog → build-stages */
html body #catalog { padding-bottom: 0 !important; }
html body section.build-stages { padding-top: 30px !important; }

/* (9) Project cards taller: bigger photo */
html body #catalog .catalog-item .image {
  aspect-ratio: 4 / 3 !important;  /* taller than 16/10 */
}

/* (10) Smaller gap between "Выберите дом..." subtitle and cards.
       Also add a tiny chevron-down hint so user sees cards exist below. */
html body #catalog .b-title.bt24,
html body #catalog > * .b-title.bt24,
html body #catalog .subtitle {
  margin: 12px 16px 6px !important;
  font-size: 17px !important;
  text-align: center !important;
}
html body #catalog .items::before {
  content: '↓' !important;
  display: block !important;
  text-align: center !important;
  font-size: 22px !important;
  color: #c19a5b !important;
  margin: 6px 0 12px !important;
  opacity: 0.7 !important;
}

/* (11) scandi-entry-copy is the actual content wrapper inside the catalog entry card.
   Show it (was wrongly hidden as "artifact" — it's not). */
html body .scandi-entry-copy { display: block !important; }
html body .scandi-entry-copy__title { display: block !important; }
html body .scandi-entry-copy__cta { display: inline-flex !important; }

/* (11) Catalog form edge-to-edge (already set, reinforce) */
html body #cbform-get-catalog {
  width: 100% !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* (12) Trust badges carousel (.adv-glass__grid) — add scroll indicator hint */
html body .adv-glass__grid {
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  scroll-padding: 0 16px !important;
}
html body .adv-glass {
  position: relative !important;
}
html body .adv-glass::after {
  content: '' !important;
  position: absolute !important;
  bottom: 4px !important;
  left: 50% !important;
  width: 40px !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #c19a5b 50%, transparent 100%) !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}
html body .adv-glass::before {
  content: 'свайп →' !important;
  position: absolute !important;
  top: 8px !important;
  right: 16px !important;
  font-size: 10px !important;
  color: #c19a5b !important;
  -webkit-text-fill-color: #c19a5b !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  z-index: 5 !important;
  pointer-events: none !important;
}

/* (13) Hero: pull trust-badges block tighter to "от 4 950 000 ₽" */
html body div.top-block {
  min-height: 540px !important;
}
html body .adv-glass,
html body #advantages {
  margin-top: -40px !important;
  position: relative !important;
  z-index: 3 !important;
}

/* (7-alt) Build-stages CAROUSEL — SINGLE row, all 7 cards flat in one carousel.
   The parent renders 2 .step-cards__row divs; we flatten them with
   `display: contents` so all 7 items become direct children of `.step-cards`,
   which then becomes the single horizontal scroll container. */
@media (max-width: 540px) {
  /* Flatten both rows */
  html body section.build-stages .step-cards__row {
    display: contents !important;
  }
  /* The single carousel container */
  html body section.build-stages .step-cards {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 12px !important;
    padding: 0 16px 60px !important;     /* 60px bottom for swipe hint */
    margin: 0 !important;
    scrollbar-width: none !important;
    position: relative !important;
  }
  html body section.build-stages .step-cards::-webkit-scrollbar { display: none !important; }
  html body section.build-stages .step-cards__item.step-card {
    flex: 0 0 78% !important;
    min-width: 78% !important;
    max-width: 78% !important;
    scroll-snap-align: center !important;
    margin: 0 !important;
  }
}

/* ELEGANT SWIPE INDICATOR — animated dot-trail + finger hint label.
   Applies to any carousel: build-stages, adv-glass (trust badges),
   scandi-works, our-works.
   This replaces the ugly "свайп →" text with a real animation:
   - 3 gold dots that travel left-to-right with fading opacity (suggests motion)
   - subtle "← →" arrow chips on the sides
   - All elements fade in after 1s delay so they don't distract on load */
@keyframes scandi-swipe-travel {
  0%   { transform: translateX(-12px); opacity: 0; }
  15%  { opacity: 1; }
  85%  { opacity: 1; }
  100% { transform: translateX(12px); opacity: 0; }
}
@keyframes scandi-swipe-fadein {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

/* Swipe hint shown OUTSIDE carousel container (below it, centered).
   Applied to build-stages, adv-glass — wrappers we control. */
@media (max-width: 540px) {
  html body section.build-stages,
  html body .adv-glass,
  html body .our-works {
    position: relative !important;
  }
  html body section.build-stages::after,
  html body .adv-glass::after,
  html body .our-works::after {
    content: '' !important;
    display: block !important;
    width: 60px !important;
    height: 8px !important;
    margin: 12px auto 8px !important;
    background:
      radial-gradient(circle at 20% 50%, #c19a5b 2px, transparent 2.5px),
      radial-gradient(circle at 50% 50%, rgba(193, 154, 91, 0.5) 2px, transparent 2.5px),
      radial-gradient(circle at 80% 50%, rgba(193, 154, 91, 0.25) 2px, transparent 2.5px) !important;
    animation: scandi-dot-pulse 1.6s ease-in-out infinite !important;
    pointer-events: none !important;
    opacity: 0.85 !important;
  }
}
@keyframes scandi-dot-pulse {
  0%, 100% {
    background:
      radial-gradient(circle at 20% 50%, #c19a5b 2px, transparent 2.5px),
      radial-gradient(circle at 50% 50%, rgba(193, 154, 91, 0.5) 2px, transparent 2.5px),
      radial-gradient(circle at 80% 50%, rgba(193, 154, 91, 0.25) 2px, transparent 2.5px);
  }
  33% {
    background:
      radial-gradient(circle at 20% 50%, rgba(193, 154, 91, 0.25) 2px, transparent 2.5px),
      radial-gradient(circle at 50% 50%, #c19a5b 2px, transparent 2.5px),
      radial-gradient(circle at 80% 50%, rgba(193, 154, 91, 0.5) 2px, transparent 2.5px);
  }
  66% {
    background:
      radial-gradient(circle at 20% 50%, rgba(193, 154, 91, 0.5) 2px, transparent 2.5px),
      radial-gradient(circle at 50% 50%, rgba(193, 154, 91, 0.25) 2px, transparent 2.5px),
      radial-gradient(circle at 80% 50%, #c19a5b 2px, transparent 2.5px);
  }
}

/* Same elegant hint for trust-badges (adv-glass) carousel — REPLACES "свайп →" */
html body .adv-glass::before { content: none !important; }
html body .adv-glass::after { content: none !important; }
html body .adv-glass {
  position: relative !important;
}
html body .adv-glass__grid {
  position: relative !important;
}
html body .adv-glass__grid + *::before,
html body .adv-glass > *:last-child::after {
  /* no-op placeholder */
}
/* Add fade + pulse to adv-glass-grid wrapper */
html body .adv-glass .adv-glass__grid {
  scroll-snap-type: x mandatory !important;
}
html body .adv-glass::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 6px !important;
  width: 40px !important;
  height: 3px !important;
  border-radius: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #c19a5b 50%, transparent 100%) !important;
  transform: translateX(-50%) !important;
  animation: scandi-swipe-pulse 1.8s ease-in-out infinite !important;
  pointer-events: none !important;
}

/* ============================================================
   18. SECTION SPACING — kill ALL excessive gaps between sections
   ============================================================ */
/* Parent unification.css uses `html body div#catalog`, `html body .cbform`,
   `html body .cert-container`, `html body footer.scandi-fenh`, etc. — all
   with specificity (0,1,3) or (0,2,2). To beat them we need to match or
   exceed. We use either `html body div#id.class` (0,2,3) or attribute
   selectors for extra specificity. */

/* (a) #catalog — kill 100/140 vertical padding and -40 negative margin
       (parent selector: html body div#catalog, padding 100 0 140 !important) */
html body div#catalog,
html body div#catalog.catalog,
html body div#catalog.block-padding {
  padding: 16px 0 8px !important;
  margin: 0 !important;
}

/* (b) #cbform-get-catalog — transparent wrapper. Inner form is the panel.
       Kill 50/60 vertical padding and -40 margin from parent. */
html body div#cbform-get-catalog,
html body div#cbform-get-catalog.cbform-get-catalog {
  padding: 0 !important;
  margin: 0 10px 8px !important;
  width: calc(100% - 20px) !important;
  max-width: calc(100% - 20px) !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* (c) #cbform — final form wrapper. Kill 100/120 padding
       (parent: html body .cbform, padding 100 0 120 !important) */
html body div#cbform,
html body div#cbform.cbform,
html body div#cbform.block-padding,
html body div#cbform.cbform.block-padding {
  padding: 16px 0 16px !important;
  margin: 0 !important;
}

/* (d) Hide certificates strip — adds 200px of vertical space (heading +
       padding 100/100) but has no useful content on mobile.
       Parent: html body .cert-container, padding 100 0 !important, margin -40 0 0 */
html body div.cert-container,
html body section.cert-container,
html body div.container.cert-container {
  display: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 0 !important;
}

/* (e) География работ (Yandex map) — RESTORED on mobile.
   Collapsed by default, expandable via "Показать карту" button. */
html body section.object-map {
  display: block !important;
  padding: 20px 0 !important;
  margin: 0 !important;
  height: auto !important;
}

/* (f) SEO text block — RESTORED (user wants it back on mobile). Compact paddings. */
html body div.block-text,
html body div.block-text.block-padding,
html body div.scandi-seo,
html body div.scandi-seo-block {
  display: block !important;
  padding: 24px 16px !important;
  margin: 0 !important;
  height: auto !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* (g) Reviews wrapper (`.catalog block-padding no-padding-bottom` — NOT #catalog).
       This is the "Отзывы наших заказчиков" section with the review-lab widget.
       Previously hidden because widget rendered empty — but user explicitly wants
       this block visible. Show it, give compact padding. */
html body div.catalog.block-padding:not(#catalog) {
  display: block !important;
  padding: 24px 0 !important;
  margin: 0 !important;
}
html body div.catalog.block-padding:not(#catalog) > .container {
  padding: 0 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body div.catalog.block-padding:not(#catalog) .title-new {
  font-size: 24px !important;
  font-weight: 600 !important;
  text-align: center !important;
  margin: 0 0 16px !important;
  color: #1a1410 !important;
}

/* (h) Scandi-finalform — kill 50/20 padding from
       `html body .cbform .scandi-finalform--with-manager` (padding 50 0 20) */
html body div.cbform div.scandi-finalform,
html body div.cbform div.scandi-finalform--with-manager,
html body div.cbform div.scandi-finalform.scandi-finalform--with-manager {
  padding: 8px 0 8px !important;
  margin: 0 !important;
}

/* (i) section.build-stages, section.mortgage-calling, .about-company,
       .our-works, section.realty-tour — already 24px from earlier rules,
       but reinforce here */
html body section.build-stages { padding: 24px 0 24px !important; margin: 0 !important; }
html body section.mortgage-calling { padding: 24px 0 !important; margin: 0 !important; }
html body div.about-company,
html body div#about-company,
html body div#about-company.about-company { padding: 24px 0 24px !important; margin: 0 !important; }
html body div.our-works,
html body div#our-works,
html body div#our-works.our-works { padding: 24px 0 24px !important; margin: 0 !important; }
html body section.realty-tour { padding: 24px 0 24px !important; margin: 0 !important; }
html body section.final-form,
html body div.scandi-finalform { padding: 24px 0 !important; margin: 0 !important; }
html body .scandi-quotes,
html body .review-lab-widget { padding-top: 16px !important; padding-bottom: 16px !important; margin: 0 !important; }

/* (j) Footer — kill 80px top padding from `html body footer.scandi-fenh` */
html body footer,
html body footer#footer,
html body footer.scandi-fenh,
html body footer.site-footer {
  padding: 24px 0 24px !important;
  margin: 0 !important;
}

/* Specific oversized inner paddings inside sections */
html body .scandi-tour { padding: 0 !important; margin: 0 !important; }
html body .scandi-finalform .scandi-finalform__panel { margin-bottom: 0 !important; }

/* ============================================================
   19. DRAWER MENU — kill ALL blue colors anywhere inside drawer
   ============================================================ */
/* Parent theme paints `.mobile-menu-navbar` with solid blue background
   (rgb(44, 105, 196)) and all `.menu-item li` get a blue border-top
   (rgb(67, 126, 213)). `.mobile-cb-line-item` has a blue border-left.
   Override EVERY color/background/border inside the drawer. */

/* Text color — cream on all descendants */
html body .scandi-drawer *,
html body .scandi-drawer a,
html body .scandi-drawer a:link,
html body .scandi-drawer a:visited,
html body .scandi-drawer__menu-clone *,
html body .scandi-drawer__menu-clone a,
html body .scandi-drawer .mobile-menu-navbar,
html body .scandi-drawer .mobile-menu-navbar *,
html body .scandi-drawer .mobile-menu-navbar a {
  color: #f3ecdc !important;
  -webkit-text-fill-color: #f3ecdc !important;
}

/* Kill blue backgrounds — make every nested wrapper transparent so the
   drawer's dark panel background shows through. */
html body .scandi-drawer .mobile-menu-navbar,
html body .scandi-drawer .mobile-menu-navbar > *,
html body .scandi-drawer .mobile-menu-navbar .menu,
html body .scandi-drawer .mobile-menu-navbar .menu *,
html body .scandi-drawer .mobile-menu-navbar .menu li,
html body .scandi-drawer .mobile-menu-navbar .menu a,
html body .scandi-drawer .mobile-menu-navbar .sub-menu,
html body .scandi-drawer .mobile-menu-navbar .sub-menu *,
html body .scandi-drawer .mobile-cb-line,
html body .scandi-drawer .mobile-cb-line *,
html body .scandi-drawer .mobile-cb-line-item {
  background-color: transparent !important;
  background-image: none !important;
}

/* Kill blue borders — every menu-item, every cb-line-item.
   Replace with subtle gold divider on top (matching desktop accent). */
html body .scandi-drawer .mobile-menu-navbar .menu > li,
html body .scandi-drawer .mobile-menu-navbar .menu li,
html body .scandi-drawer .mobile-menu-navbar .sub-menu li,
html body .scandi-drawer .mobile-cb-line,
html body .scandi-drawer .mobile-cb-line-item,
html body .scandi-drawer .mobile-menu-navbar [class*="menu-item"] {
  border-color: rgba(193, 154, 91, 0.18) !important;
  border-top-color: rgba(193, 154, 91, 0.18) !important;
  border-right-color: rgba(193, 154, 91, 0.18) !important;
  border-bottom-color: rgba(193, 154, 91, 0.18) !important;
  border-left-color: rgba(193, 154, 91, 0.18) !important;
}

/* The first menu item gets no top border (cleaner look) */
html body .scandi-drawer .mobile-menu-navbar .menu > li:first-child {
  border-top: 0 !important;
}

/* Hover/active — gold text, transparent bg */
html body .scandi-drawer a:hover,
html body .scandi-drawer a:active,
html body .scandi-drawer__menu-clone a:hover,
html body .scandi-drawer__menu-clone a:active,
html body .scandi-drawer .mobile-menu-navbar a:hover,
html body .scandi-drawer .mobile-menu-navbar a:active {
  color: #d4ad6e !important;
  -webkit-text-fill-color: #d4ad6e !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* SVG fill/stroke — gold (e.g. burger icons, chevrons, close ×) */
html body .scandi-drawer svg,
html body .scandi-drawer svg * {
  fill: #c19a5b !important;
  stroke: transparent !important;
  color: #c19a5b !important;
}

/* Eyebrows / labels inside drawer — gold */
html body .scandi-drawer__eyebrow,
html body .scandi-drawer .scandi-drawer__contact-label,
html body .scandi-drawer__contact-eyebrow,
html body .scandi-drawer__hours-label {
  color: #c19a5b !important;
  -webkit-text-fill-color: #c19a5b !important;
}

/* Drawer "Вход для клиентов" button — gold gradient, dark text */
html body .scandi-drawer__login,
html body .scandi-drawer__cta,
html body .scandi-drawer a.scandi-drawer__login,
html body .scandi-drawer .scandi-drawer__login {
  background: linear-gradient(180deg, #d4ad6e 0%, #c19a5b 100%) !important;
  background-color: #c19a5b !important;
  color: #1f1612 !important;
  -webkit-text-fill-color: #1f1612 !important;
  border: 0 !important;
}
html body .scandi-drawer__login *,
html body .scandi-drawer__cta * {
  color: #1f1612 !important;
  -webkit-text-fill-color: #1f1612 !important;
}

/* Drawer panel itself: ensure dark background is the only color shown */
html body .scandi-drawer__panel {
  background-color: #14100d !important;
  background-image: linear-gradient(180deg, #1a1410 0%, #0c0805 100%) !important;
}

/* Drawer search field (if present) — cream text on transparent bg */
html body .scandi-drawer input[type="text"],
html body .scandi-drawer input[type="search"],
html body .scandi-drawer__search input {
  background-color: rgba(193, 154, 91, 0.08) !important;
  color: #f3ecdc !important;
  -webkit-text-fill-color: #f3ecdc !important;
  border: 1px solid rgba(193, 154, 91, 0.25) !important;
  border-color: rgba(193, 154, 91, 0.25) !important;
}

/* Social icons inside drawer — gold */
html body .scandi-drawer .social-icons a,
html body .scandi-drawer .social-links a,
html body .scandi-drawer [class*="social"] a {
  background-color: rgba(193, 154, 91, 0.08) !important;
  border-color: rgba(193, 154, 91, 0.30) !important;
  color: #c19a5b !important;
}
