/* ============================================================
   MRD Heritage theme — школы (пилот: buckswood.maryadi.com)
   Оверлей поверх Divi: контент и разметка не меняются.
   Семантические классы (mrd-hero/stats/cta/form/photo/a/b)
   вешает /mrd-theme/theme.js
   ============================================================ */

:root {
  --mrd-ink: #142019;
  --mrd-green: #1e4d3b;
  --mrd-green-dark: #143528;
  --mrd-gold: #c19a4b;
  --mrd-gold-soft: #e8d9b8;
  --mrd-cream: #f7f3ea;
  --mrd-paper: #ffffff;
  --mrd-text: #2e3a33;
  --mrd-muted: #66716a;
  --mrd-radius: 18px;
  --mrd-shadow: 0 18px 44px rgba(16, 38, 28, 0.14);
  --mrd-shadow-soft: 0 8px 26px rgba(16, 38, 28, 0.08);
  --mrd-btn-radius: 999px;
  --mrd-card-border: rgba(193, 154, 75, 0.28);
  --mrd-veil: linear-gradient(180deg, rgba(10, 14, 12, 0.56) 0%, rgba(10, 14, 12, 0.40) 45%, rgba(10, 14, 12, 0.66) 100%);
  --mrd-green-soft: #27584a; /* светлый край градиента плоского hero */
  --mrd-line: #7d7e80; /* полоски-подчёркивания: нейтральный серый (как логотип) */
}

html { scroll-behavior: smooth; }
::selection { background: var(--mrd-gold-soft); color: var(--mrd-ink); }

/* ---------- база: типографика ---------- */
#page-container body,
#et-main-area,
.et_pb_text {
  -webkit-font-smoothing: antialiased;
}
#main-content .et_pb_text,
#main-content .et_pb_text p,
#main-content .et_pb_text li {
  font-size: 17px !important;
  line-height: 1.75 !important;
}
#main-content h1, #main-content h2, #main-content h3, #main-content h4 {
  font-family: 'Merriweather', Georgia, serif !important;
  letter-spacing: -0.01em;
}
#main-content h2 {
  font-size: clamp(28px, 3.4vw, 42px) !important;
  line-height: 1.22 !important;
  font-weight: 700 !important;
}
#main-content h3 { font-size: clamp(22px, 2.4vw, 28px) !important; }

/* золотая черта под h2 разделов */
#main-content .mrd-a h2:first-of-type::after,
#main-content .mrd-b h2:first-of-type::after,
#main-content .mrd-stats h2:first-of-type::after {
  content: '';
  display: block;
  width: 58px;
  height: 3px;
  border-radius: 2px;
  background: var(--mrd-line);
  margin-top: 16px;
}
/* положение черты = фактическое выравнивание заголовка (класс ставит theme.js) */
#main-content h2.mrd-hc::after {
  margin-left: auto !important;
  margin-right: auto !important;
}
#main-content h2:not(.mrd-hc)::after {
  margin-left: 0;
  margin-right: auto;
}

/* элементы, скрытые темой (дубль-заголовок «Отправить сообщение») */
#page-container .mrd-hide { display: none !important; }

/* ---------- шапка ---------- */
/* логотип поменьше (кастом Divi жёстко ставит 38px через #logo) */
#main-header #logo {
  max-height: 30px !important;
  height: auto !important;
  width: auto !important;
}
@media (max-width: 980px) {
  #main-header #logo { max-height: 26px !important; }
}
#main-header {
  background: rgba(255, 255, 255, 0.88) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 1px 0 rgba(20, 32, 25, 0.08), 0 8px 24px rgba(20, 32, 25, 0.05) !important;
}
#top-menu > li > a {
  color: var(--mrd-ink) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.01em;
  padding-bottom: 26px !important;
  position: relative;
  transition: color .18s ease;
}
#top-menu > li > a::after {
  content: '';
  position: absolute;
  left: 0; right: 100%;
  bottom: 18px;
  height: 2px;
  background: var(--mrd-line);
  transition: right .22s ease;
}
#top-menu > li > a:hover { color: var(--mrd-green) !important; opacity: 1 !important; }
#top-menu > li > a:hover::after,
#top-menu > li.current-menu-item > a::after { right: 0; }
#top-menu > li.current-menu-item > a { color: var(--mrd-green) !important; }
#main-header .nav li ul {
  border-radius: 14px;
  border: 1px solid rgba(20, 32, 25, 0.08);
  box-shadow: var(--mrd-shadow) !important;
  border-top: 3px solid var(--mrd-line) !important;
  overflow: hidden;
  background: #fff !important;
}
#main-header .nav li ul a { color: var(--mrd-text) !important; }
#main-header .nav li ul a:hover { color: var(--mrd-green) !important; background: var(--mrd-cream); opacity: 1 !important; }

/* меню: логотип стал меньше — убираем старый резерв 218px под него,
   чтобы пункты не переносились на вторую строку */
@media (min-width: 981px) {
  #main-header #et-top-navigation { padding-left: 165px !important; }
  #top-menu > li { padding-right: 18px; }
}

/* ---------- секции: чистая альтернация ---------- */
#page-container .et_pb_section { transition: none; }
#page-container .et_pb_section.mrd-a,
#page-container .et_pb_section.mrd-form {
  background-color: var(--mrd-paper) !important;
}
#page-container .et_pb_section.mrd-b,
#page-container .et_pb_section.mrd-stats {
  background-color: var(--mrd-cream) !important;
}
#page-container .et_pb_section.mrd-a:not(.mrd-hasphoto),
#page-container .et_pb_section.mrd-b:not(.mrd-hasphoto),
#page-container .et_pb_section.mrd-stats,
#page-container .et_pb_section.mrd-form {
  background-image: none !important;
}
/* секции с фоновым фото: фото остаётся, текст — в светлой карточке */
#page-container .et_pb_section.mrd-hasphoto {
  background-size: cover !important;
  background-position: center !important;
}
#page-container .mrd-hasphoto .et_pb_column:has(.et_pb_text) {
  background: rgba(255, 255, 255, 0.93) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 24px;
  box-shadow: var(--mrd-shadow);
}
#page-container .et_pb_section.mrd-a,
#page-container .et_pb_section.mrd-b,
#page-container .et_pb_section.mrd-stats,
#page-container .et_pb_section.mrd-form {
  padding-top: clamp(48px, 7vw, 88px) !important;
  padding-bottom: clamp(48px, 7vw, 88px) !important;
}

/* фоны рядов/колонок/модулей из старой тёмной вёрстки — прозрачные
   (background-image с фото сохраняем) */
#page-container .mrd-a:not(.mrd-hasphoto) .et_pb_row, #page-container .mrd-a:not(.mrd-hasphoto) .et_pb_column, #page-container .mrd-a .et_pb_text,
#page-container .mrd-b:not(.mrd-hasphoto) .et_pb_row, #page-container .mrd-b:not(.mrd-hasphoto) .et_pb_column, #page-container .mrd-b .et_pb_text,
#page-container .mrd-form .et_pb_row, #page-container .mrd-form .et_pb_column,
#page-container .mrd-stats .et_pb_row, #page-container .mrd-stats .et_pb_column {
  background-color: transparent !important;
}
/* тени и сдвиги колонок старого макета — источник «призрачных» панелей */
#page-container .mrd-a .et_pb_column, #page-container .mrd-b .et_pb_column,
#page-container .mrd-form .et_pb_column, #page-container .mrd-stats .et_pb_column {
  box-shadow: none !important;
}
#page-container .mrd-stats .et_pb_column {
  transform: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/* полный вынос цвета за край делался box-shadow на ряду — убрать */
#page-container .mrd-a .et_pb_row, #page-container .mrd-b .et_pb_row,
#page-container .mrd-form .et_pb_row, #page-container .mrd-stats .et_pb_row,
#page-container .mrd-hero .et_pb_row {
  box-shadow: none !important;
}
/* стеклянной карточке — воздух внутри */
#page-container .mrd-hasphoto .et_pb_column:has(.et_pb_text) {
  padding: clamp(26px, 4vw, 52px) !important;
}

/* пустые ряды и секции-спейсеры старого макета — прочь (дыры) */
#page-container .mrd-a .et_pb_row:not(:has(.et_pb_module)),
#page-container .mrd-b .et_pb_row:not(:has(.et_pb_module)) { display: none !important; }
#page-container .et_pb_section.mrd-a:not(:has(.et_pb_module)):not(.mrd-hero-overflow),
#page-container .et_pb_section.mrd-b:not(:has(.et_pb_module)):not(.mrd-hero-overflow) { display: none !important; }

/* страховка: h1 в светлых секциях не может остаться белым */
#page-container .mrd-a h1, #page-container .mrd-b h1 { color: var(--mrd-ink) !important; }

/* секции без контента (спейсеры с пустыми модулями — класс ставит theme.js) */
#page-container .et_pb_section.mrd-empty { display: none !important; }

/* мобильный ритм: без тройных зазоров между кусками списков */
@media (max-width: 980px) {
  #page-container .mrd-a .et_pb_row, #page-container .mrd-b .et_pb_row {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  #page-container .mrd-a .et_pb_column:not(:last-child),
  #page-container .mrd-b .et_pb_column:not(:last-child) { margin-bottom: 16px !important; }
  /* негативные подтяжки модулей из десктоп-макета на мобильном опасны */
  #page-container .mrd-a .et_pb_text, #page-container .mrd-b .et_pb_text { margin-top: 0 !important; }
  #page-container .mrd-a .et_pb_text, #page-container .mrd-b .et_pb_text {
    margin-left: 0 !important; margin-right: 0 !important;
    padding-left: 0 !important; padding-right: 0 !important;
  }
  #page-container .et_pb_section.mrd-form { padding-top: 28px !important; }
}

/* Divi-анимации въезда отключены: контент виден сразу */
#page-container .et-waypoint { opacity: 1 !important; }
#page-container .et_animated { animation-duration: 0.01s !important; opacity: 1 !important; }

/* убрать косые SVG-разделители и лишние маргины-склейки */
#page-container .et_pb_top_inside_divider,
#page-container .et_pb_bottom_inside_divider { display: none !important; }

/* текст в светлых секциях — тёмный, что бы ни было в инлайнах */
#page-container .mrd-a, #page-container .mrd-a h2, #page-container .mrd-a h3, #page-container .mrd-a h4,
#page-container .mrd-b, #page-container .mrd-b h2, #page-container .mrd-b h3, #page-container .mrd-b h4,
#page-container .mrd-stats h2, #page-container .mrd-stats h3,
#page-container .mrd-form h2, #page-container .mrd-form h3 {
  color: var(--mrd-ink) !important;
}
#page-container .mrd-a .et_pb_text, #page-container .mrd-a .et_pb_text p, #page-container .mrd-a .et_pb_text li,
#page-container .mrd-b .et_pb_text, #page-container .mrd-b .et_pb_text p, #page-container .mrd-b .et_pb_text li,
#page-container .mrd-form .et_pb_text p {
  color: var(--mrd-text) !important;
}
#page-container .mrd-a .et_pb_text strong,
#page-container .mrd-b .et_pb_text strong { color: var(--mrd-green) !important; }
/* инлайновые цветные span внутри strong — к единому акцентному цвету
   (иначе «Блок 1» зелёный, «Блок 2» серый — зависит от порядка вложенности) */
#page-container .mrd-a .et_pb_text strong span,
#page-container .mrd-b .et_pb_text strong span { color: var(--mrd-green) !important; }
#page-container .mrd-a .et_pb_text a:not(.et_pb_button),
#page-container .mrd-b .et_pb_text a:not(.et_pb_button) {
  color: var(--mrd-green) !important;
  text-decoration: underline;
  text-decoration-color: var(--mrd-gold);
  text-underline-offset: 3px;
}

/* ---------- hero ---------- */
/* декоративная штриховка на модуле хедера поверх параллакс-фото — убрать */
#page-container .mrd-hero.et_pb_section_parallax .et_pb_fullwidth_header {
  background-image: none !important;
}
#page-container .mrd-hero .et_pb_fullwidth_header {
  min-height: 68vh;
  display: flex;
  align-items: center;
}
#page-container .mrd-hero .et_pb_fullwidth_header_overlay {
  background: var(--mrd-veil) !important;
  background-image: var(--mrd-veil) !important;
}
#page-container .mrd-hero h1 {
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: clamp(38px, 5.6vw, 72px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  color: #fff !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.55), 0 4px 30px rgba(0, 0, 0, 0.45);
}
#page-container .mrd-hero h2,
#page-container .mrd-hero .et_pb_fullwidth_header_subhead {
  font-family: inherit !important;
  font-size: clamp(17px, 1.6vw, 21px) !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55), 0 2px 18px rgba(0, 0, 0, 0.45);
}
#page-container .mrd-hero h2::after { display: none !important; }

/* «плоский» hero (нет фото, только паттерн/цвет — класс ставит theme.js):
   фирменный зелёный вместо исходного тёмно-серого со штриховкой */
#page-container .et_pb_section.mrd-hero-flat {
  background: linear-gradient(140deg, var(--mrd-green-dark) 0%, var(--mrd-green) 58%, var(--mrd-green-soft) 100%) !important;
  background-image: linear-gradient(140deg, var(--mrd-green-dark) 0%, var(--mrd-green) 58%, var(--mrd-green-soft) 100%) !important;
  padding-top: clamp(56px, 7vw, 96px) !important;
  padding-bottom: clamp(56px, 7vw, 96px) !important;
}
#page-container .mrd-hero-flat .et_parallax_bg_wrap,
#page-container .mrd-hero-flat .et_parallax_bg { display: none !important; }
#page-container .mrd-hero-flat .et_pb_row,
#page-container .mrd-hero-flat .et_pb_column,
#page-container .mrd-hero-flat .et_pb_text {
  background-color: transparent !important;
  background-image: none !important;
}
#page-container .mrd-hero-flat h1 {
  margin-bottom: 0 !important;
  color: #fff !important;
}

/* ---------- кнопки ---------- */
body #page-container .et_pb_button.et_pb_button,
body #page-container .et_pb_button_module_wrapper .et_pb_button.et_pb_button {
  border-radius: var(--mrd-btn-radius, 999px) !important;
  border: none !important;
  background: var(--mrd-green) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase;
  padding: 15px 36px !important;
  box-shadow: 0 10px 24px rgba(20, 53, 40, 0.28);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}
body #page-container .et_pb_button.et_pb_button:hover {
  background: var(--mrd-gold) !important;
  color: var(--mrd-ink) !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(20, 53, 40, 0.3);
  padding: 15px 36px !important;
}
body #page-container .et_pb_button.et_pb_button::after { display: none !important; }
body #page-container .mrd-hero .et_pb_button.et_pb_button {
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.75) !important;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
body #page-container .mrd-hero .et_pb_button.et_pb_button:hover {
  background: #fff !important;
  color: var(--mrd-green) !important;
}

/* ---------- счётчики: ровная сетка ---------- */
/* компактность: гасим родные паддинги рядов Divi, отступы задаём сами */
#page-container .et_pb_section.mrd-stats {
  padding-top: clamp(40px, 5vw, 60px) !important;
  padding-bottom: clamp(40px, 5vw, 60px) !important;
}
#page-container .mrd-stats .et_pb_row {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
}
#page-container .mrd-stats .et_pb_text { padding-bottom: 0 !important; }
#page-container .mrd-stats .et_pb_text h2 { margin-bottom: 6px !important; }
#page-container .mrd-stats .et_pb_row:has(.et_pb_number_counter) { margin-top: 26px; }
#page-container .mrd-stats .et_pb_row:has(.et_pb_image) { margin-top: 30px; }
#page-container .mrd-stats .et_pb_image { margin-bottom: 0 !important; }
/* мобильный Divi даёт колонкам padding 50px сверху/снизу — гасим */
#page-container .mrd-stats .et_pb_column {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
/* логотип-водяной знак под карточками: скромный размер, по центру */
#page-container .mrd-stats .et_pb_image { text-align: center !important; }
#page-container .mrd-stats .et_pb_image img {
  max-width: 190px !important;
  width: auto !important;
  height: auto !important;
}
@media (max-width: 980px) {
  #page-container .mrd-stats .et_pb_row:has(.et_pb_number_counter) { margin-top: 16px; }
  #page-container .mrd-stats .et_pb_number_counter { margin-bottom: 14px !important; }
  #page-container .mrd-stats .et_pb_column:last-child .et_pb_number_counter { margin-bottom: 0 !important; }
  #page-container .mrd-stats .et_pb_row:has(.et_pb_image) { margin-top: 22px; }
}

@media (min-width: 981px) {
  #page-container .mrd-stats .et_pb_row:has(.et_pb_number_counter) {
    display: flex;
    align-items: stretch;
    gap: 26px;
  }
  #page-container .mrd-stats .et_pb_row:has(.et_pb_number_counter) > .et_pb_column {
    flex: 1 1 0;
    width: auto !important;
    margin: 0 !important;
    display: flex;
  }
  #page-container .mrd-stats .et_pb_number_counter {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

#page-container .mrd-stats .et_pb_number_counter {
  background: #fff !important;
  border: 1px solid var(--mrd-card-border);
  border-radius: var(--mrd-radius);
  padding: 30px 18px 26px !important;
  box-shadow: var(--mrd-shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease;
}
#page-container .mrd-stats .et_pb_number_counter:hover {
  transform: translateY(-4px);
  box-shadow: var(--mrd-shadow);
}
#page-container .mrd-stats .et_pb_number_counter .percent p {
  font-family: 'Merriweather', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: clamp(40px, 4vw, 56px) !important;
  color: var(--mrd-green) !important;
}
#page-container .mrd-stats .et_pb_number_counter h4.title {
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mrd-muted) !important;
  margin-top: 6px;
}

/* «заголовок | текст»: заголовок-колонка уже, липкая; текст шире */
@media (min-width: 981px) {
  #page-container .mrd-a .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)):not(:has(> .et_pb_column:only-child)),
  #page-container .mrd-b .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)):not(:has(> .et_pb_column:only-child)) {
    display: flex;
    align-items: flex-start;
    gap: clamp(40px, 5vw, 80px);
  }
  #page-container .mrd-a .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)) > .et_pb_column,
  #page-container .mrd-b .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)) > .et_pb_column {
    width: auto !important;
    margin: 0 !important;
    flex: 1 1 0;
  }
  #page-container .mrd-a .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)) > .et_pb_column:first-child,
  #page-container .mrd-b .et_pb_row:has(> .et_pb_column:first-child h2):not(:has(> .et_pb_column:first-child p)) > .et_pb_column:first-child {
    flex: 0 0 300px;
  }
  #page-container .mrd-a .et_pb_text p, #page-container .mrd-b .et_pb_text p { max-width: 66ch; }
}

/* ---------- изображения ---------- */
#page-container .mrd-a .et_pb_image img,
#page-container .mrd-b .et_pb_image img {
  border-radius: var(--mrd-radius) !important;
  box-shadow: var(--mrd-shadow);
  max-height: 640px;
  width: 100%;
  object-fit: cover;
}
/* контентные фото — всегда на всю ширину колонки
   (wrap у Divi inline-block и сжимается до натуральной ширины файла) */
#page-container .mrd-a .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])),
#page-container .mrd-b .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])) {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#page-container .mrd-a .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])) .et_pb_image_wrap,
#page-container .mrd-b .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])) .et_pb_image_wrap {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}
#page-container .mrd-a .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])) img,
#page-container .mrd-b .et_pb_image:not(:has(img[src*="logo"], img[src*="Logo"])) img {
  width: 100% !important;
  max-width: 100% !important;
}
/* фото-модуль сразу после текста — не липнет к строке */
#page-container .mrd-a .et_pb_text + .et_pb_image,
#page-container .mrd-b .et_pb_text + .et_pb_image { margin-top: 14px !important; }
/* логотипы-водяные знаки: скромный размер, по центру, без рамок */
#page-container .et_pb_image img[src*="logo"],
#page-container .et_pb_image img[src*="Logo"] {
  border-radius: 0 !important;
  box-shadow: none !important;
  max-width: 190px !important;
  width: auto !important;
  height: auto !important;
}
#page-container .et_pb_image:has(img[src*="logo"], img[src*="Logo"]) {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* секция, где кроме логотипа ничего нет — не раздувается */
#page-container .et_pb_section.mrd-a:has(.et_pb_image img[src*="logo"], .et_pb_image img[src*="Logo"]):not(:has(.et_pb_text, .et_pb_number_counter, h2, h3)),
#page-container .et_pb_section.mrd-b:has(.et_pb_image img[src*="logo"], .et_pb_image img[src*="Logo"]):not(:has(.et_pb_text, .et_pb_number_counter, h2, h3)) {
  padding-top: 10px !important;
  padding-bottom: 34px !important;
}

/* ---------- CTA-полосы ---------- */
#page-container .et_pb_section.mrd-cta {
  background: linear-gradient(135deg, var(--mrd-green) 0%, var(--mrd-green-dark) 100%) !important;
  background-image: linear-gradient(135deg, var(--mrd-green) 0%, var(--mrd-green-dark) 100%) !important;
  padding-top: clamp(48px, 6vw, 84px) !important;
  padding-bottom: clamp(48px, 6vw, 84px) !important;
}
#page-container .mrd-cta h2, #page-container .mrd-cta h3 { color: #fff !important; }
#page-container .mrd-cta .et_pb_text,
#page-container .mrd-cta .et_pb_text p { color: rgba(255, 255, 255, 0.85) !important; }
body #page-container .mrd-cta .et_pb_button.et_pb_button {
  background: var(--mrd-gold) !important;
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}
body #page-container .mrd-cta .et_pb_button.et_pb_button:hover {
  background: #fff !important;
  color: var(--mrd-green) !important;
}

/* на мобильном декоративная иконка CTA (колонка без текста/кнопки)
   растягивается во весь экран — прячем */
@media (max-width: 980px) {
  #page-container .mrd-cta .et_pb_image { display: none !important; }
  #page-container .mrd-cta .et_pb_column:not(:has(.et_pb_text, .et_pb_button, .et_pb_blurb)) {
    display: none !important;
  }
}

/* контактная секция с фото-параллаксом: глубокая зелёная вуаль */
#page-container .mrd-photo .et_parallax_bg {
  filter: brightness(0.42) saturate(0.75);
}
#page-container .et_pb_section.mrd-photo {
  background: var(--mrd-green-dark) !important;
}

/* ---------- форма ---------- */
#page-container .et_pb_section.mrd-form {
  padding-top: clamp(40px, 5vw, 64px) !important;
  padding-bottom: clamp(40px, 5vw, 64px) !important;
}
#page-container .mrd-form .et_pb_row {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;    /* у части флота ряды формы тянутся вверх
                                  отрицательными маргинами (-95px) — гасим */
  margin-bottom: 0 !important;
  min-height: 0 !important;
}
#page-container .mrd-form .et_pb_row:not(:has(.et_pb_module)) { display: none !important; }
#page-container .mrd-form .et_pb_row { margin-left: auto !important; margin-right: auto !important; }
/* колонки секции формы: у части сайтов флота паддинги до 100px
   (боковые сдвигают карточку вправо) — гасим все; карточка по центру */
#page-container .mrd-form .et_pb_column {
  padding: 0 !important;
}
#page-container .mrd-form #amo-form-container {
  max-width: 520px;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* единое выравнивание заголовков виджета формы (на части сайтов слева) */
#page-container .mrd-form #amo-form-container h1,
#page-container .mrd-form #amo-form-container h2,
#page-container .mrd-form #amo-form-container h3,
#page-container .mrd-form #amo-form-container p { text-align: center !important; }
/* кнопка виджета — в бренд-цвет темы вместо дефолтного сине-фиолетового */
#page-container .mrd-form #amo-form-container button,
#page-container .mrd-form #amo-form-container input[type="submit"] {
  background: var(--mrd-green) !important;
  border-color: var(--mrd-green) !important;
  color: #fff !important;
  transition: background .18s ease;
}
#page-container .mrd-form #amo-form-container button:hover,
#page-container .mrd-form #amo-form-container input[type="submit"]:hover {
  background: var(--mrd-green-dark) !important;
}
/* логотип-водяной знак под формой: скромный размер, без наложений */
#page-container .mrd-form .et_pb_image {
  text-align: center !important;
  margin: 26px auto 0 !important;
}
#page-container .mrd-form .et_pb_image img {
  max-width: 190px !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#page-container .mrd-form #amo-form-container {
  background: #fff;
  border: 1px solid rgba(20, 32, 25, 0.08);
  border-radius: 22px;
  box-shadow: var(--mrd-shadow);
  padding: clamp(18px, 3vw, 38px);
}

/* ---------- «Другие проекты Maryadi» (центральный виджет poloska.js,
   вставляется после #main-content; стилизуем только при активной теме) ---------- */
html.mrd-themed .pmain {
  background: var(--mrd-cream);
  border-top: 1px solid rgba(20, 32, 25, 0.06);
  margin: 0 !important;
  padding: clamp(44px, 6vw, 72px) 20px;
}
html.mrd-themed .pmain h3 {
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: clamp(22px, 2.6vw, 30px) !important;
  font-weight: 700 !important;
  color: var(--mrd-ink) !important;
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
}
html.mrd-themed .pmain h3::after {
  content: '';
  display: block;
  width: 58px;
  height: 3px;
  border-radius: 2px;
  background: var(--mrd-line);
  margin: 16px auto 0;
}
html.mrd-themed .pflex-projects {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  max-width: 1140px;
  margin: 30px auto 0 !important;
  padding: 0 !important;
}
html.mrd-themed .pflex-projects a {
  flex: 1 1 200px;
  max-width: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--mrd-paper);
  border: 1px solid var(--mrd-card-border);
  border-radius: var(--mrd-radius);
  box-shadow: var(--mrd-shadow-soft);
  padding: 20px 22px;
  min-height: 74px;
  color: var(--mrd-green) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
html.mrd-themed .pflex-projects a:hover {
  transform: translateY(-3px);
  box-shadow: var(--mrd-shadow);
  border-color: var(--mrd-gold);
  color: var(--mrd-green-dark) !important;
}
html.mrd-themed .pflex-projects a:empty { display: none; }
@media (max-width: 980px) {
  html.mrd-themed .pflex-projects a { flex: 1 1 44%; }
}
@media (max-width: 560px) {
  html.mrd-themed .pflex-projects a { flex: 1 1 100%; min-height: 0; }
}

/* ---------- футер ---------- */
#main-footer, #main-footer .footer-widget, #footer-bottom {
  background-color: var(--mrd-ink) !important;
}
#main-footer .footer-widget, #main-footer .footer-widget li a, #footer-info {
  color: rgba(247, 243, 234, 0.72) !important;
}
#main-footer .footer-widget li a:hover { color: var(--mrd-gold) !important; }
#footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.08); }

/* ---------- мелочи ---------- */
#page-container .et_pb_row { max-width: 1140px; }
@media (max-width: 980px) {
  #page-container .mrd-hero .et_pb_fullwidth_header { min-height: 54vh; }
}

/* v31: донорские артефакты (найдены на ardingly) — текст, зашитый в hero-h1,
   тема выносит в блок .mrd-hero-overflow; ряды с единственной содержательной
   колонкой (пустышка на месте картинки) растягиваются на всю ширину */
.mrd-hero-overflow { padding: 54px 24px 6px; }
.mrd-hero-overflow p {
  max-width: 760px; margin: 0 auto;
  color: var(--mrd-text); font-size: 17px; line-height: 1.75;
}
.mrd-hero-overflow p span {
  font-size: inherit !important; font-family: inherit !important;
  color: inherit !important; line-height: inherit !important;
}
html.mrd-themed .et_pb_row.mrd-row-solo > .et_pb_column.mrd-col-empty { display: none !important; }
html.mrd-themed .et_pb_row.mrd-row-solo > .et_pb_column:not(.mrd-col-empty) {
  width: 100% !important; margin-left: 0 !important; margin-right: 0 !important;
}

/* v32: донорские inline-цвета в заголовках (белые/чёрные спаны под старые
   фото-фоны) — цвет всегда от темы */
#page-container #main-content h1 span,
#page-container #main-content h2 span,
#page-container #main-content h3 span { color: inherit !important; }

/* v32: видео скругляются как картинки */
#main-content .et_pb_video, #main-content .et_pb_video_box,
#main-content .fluid-width-video-wrapper,
#main-content .et_pb_video iframe, #main-content .et_pb_video_box iframe,
#main-content .et_pb_code iframe {
  border-radius: var(--mrd-radius);
  overflow: hidden;
}

/* ===== v37 ===== */
/* Divi «true parallax» через ~1с растягивает подложку фона (612->882px)
   и cover-картинка «прыгает» в другой масштаб — замораживаем подложку
   как обычный cover (важность бьёт инлайновые стили Divi JS) */
#page-container .et_parallax_bg {
  height: 100% !important;
  transform: none !important;
}
/* одиночная текстовая колонка (пустую соседку схлопнул mrd-row-solo):
   текст колонкой чтения по центру, а не прижат влево с «дырой» справа */
#page-container .mrd-row-solo:not(:has(img, .et_pb_video, iframe)) .et_pb_text {
  max-width: 780px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== v38 ===== */
/* донорские фикс-высоты секций (Divi min_height) больше контента ->
   мёртвые «дыры»; в перекрашенных секциях высоту диктует контент.
   Фото-банды (mrd-hasphoto) не трогаем — там высота осмысленна */
#page-container .et_pb_section.mrd-a:not(.mrd-hasphoto),
#page-container .et_pb_section.mrd-b:not(.mrd-hasphoto),
#page-container .et_pb_section.mrd-stats,
#page-container .et_pb_section.mrd-form,
#page-container .et_pb_section.mrd-cta:not(.mrd-photo),
#page-container .et_pb_section.mrd-hero-overflow,
#page-container .et_pb_section.mrd-a:not(.mrd-hasphoto) .et_pb_row,
#page-container .et_pb_section.mrd-b:not(.mrd-hasphoto) .et_pb_row,
#page-container .et_pb_section.mrd-stats .et_pb_row,
#page-container .et_pb_section.mrd-form .et_pb_row,
#page-container .et_pb_section.mrd-cta:not(.mrd-photo) .et_pb_row {
  min-height: 0 !important;
  height: auto !important;
}

/* ===== v42 ===== */
/* hero: описание, свёрстанное донором как h2/h3 (вместо span/p) —
   приводим к виду подзаголовка, а не заголовка (bloxham) */
#page-container .mrd-hero h2,
#page-container .mrd-hero h3 {
  font-family: 'Open Sans', Arial, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  letter-spacing: 0;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
}

/* ===== v44 ===== */
/* донор вешает на модуль fullwidth_header СОБСТВЕННЫЙ фон (паттерн
   venture_* + косой градиент 140deg — «старые» диагональные плашки,
   efacademy-pasadena); фото hero живёт на секции — фон модуля глушим */
#page-container .mrd-hero.et_pb_with_background .et_pb_fullwidth_header {
  background-image: none !important;
}

/* ===== v46 ===== */
/* длинные меню (11+ пунктов, в т.ч. развёрнутые из «Других разделов»):
   ужимаем, чтобы всё помещалось в одну строку */
@media (min-width: 981px) {
  #main-header #et-top-navigation:has(#top-menu > li:nth-child(11)) {
    padding-left: 148px !important;
  }
  #et-top-navigation:has(#top-menu > li:nth-child(11)) #top-menu > li {
    padding-right: 11px;
  }
  #et-top-navigation:has(#top-menu > li:nth-child(11)) #top-menu > li > a {
    font-size: 13px !important;
  }
}


/* ===== v53 ===== */
/* Анти-FOUC hero: theme.js подключён с defer в конце ~300KB HTML, класс
   .mrd-hero появляется только после полного парсинга — до этого мигал
   донорский вид (плашки на модуле, огромный текст, тёмная кнопка).
   Дублируем критичные hero-правила на СТРУКТУРНЫЕ селекторы:
   .et_pb_fullwidth_header на статиках флота живёт только в hero. */
#page-container .et_pb_fullwidth_header {
  background-image: none !important;
  min-height: 68vh;
  display: flex;
  align-items: center;
}
#page-container .et_pb_fullwidth_header_overlay {
  background: var(--mrd-veil) !important;
  background-image: var(--mrd-veil) !important;
}
#page-container .et_pb_fullwidth_header h1 {
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: clamp(38px, 5.6vw, 72px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  color: #fff !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.55), 0 4px 30px rgba(0, 0, 0, 0.45);
}
#page-container .et_pb_fullwidth_header h2,
#page-container .et_pb_fullwidth_header h3,
#page-container .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead {
  font-family: 'Open Sans', Arial, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.92) !important;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55), 0 2px 18px rgba(0, 0, 0, 0.45);
}
#page-container .et_pb_fullwidth_header h2::after { display: none !important; }
body #page-container .et_pb_fullwidth_header .et_pb_button.et_pb_button {
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.75) !important;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
body #page-container .et_pb_fullwidth_header .et_pb_button.et_pb_button:hover {
  background: #fff !important;
  color: var(--mrd-green) !important;
}
@media (max-width: 767px) {
  #page-container .et_pb_fullwidth_header { min-height: 54vh; }
}
