/* ==========================================================================
   ГЛОБАЛЬНЫЕ СТИЛИ «БИЗНЕСДЕТИ»
   Подключены в «Настройки сайта» → «Ещё» → «HTML-код для вставки внутрь HEAD»,
   внутри …. Шрифты Jost и Noto Serif подключены там же
   отдельными  (Google Fonts), в блоки их не добавлять.

   Попапы с формами оформлены внутри своего блока bd-forms (AI-блок на
   странице-шапке), здесь стилей для них нет.
   ========================================================================== */

/* Корневой размер: мобильные 16px, планшет/десктоп плавно, большие экраны плавно */
html,
html body { font-size: 16px; }

@media (min-width: 768px) {
  html,
  html body { font-size: max(14px, 1.1vw); }
}

@media (min-width: 1400px) {
  html,
  html body { font-size: calc(0.6vw + 7px); }
}

:root {
  /* Бренд-палитра */
  --bd-brown: #683c11;
  --bd-dark-red: #93281f;
  --bd-accent-red: #db0d23;
  --bd-accent-orange: #e69732;
  --bd-accent-yellow: #f8d047;

  /* Фоны и нейтральные */
  --bd-bg-light: #ffffff;
  --bd-bg-soft: #faf7f2;
  --bd-text-main: #222222;
  --bd-text-muted: #555555;
  --bd-border-light: rgba(230, 151, 50, 0.2);

  /* Градиенты */
  --bd-gradient-primary: linear-gradient(135deg, #db0d23 0%, #e69732 100%);
  --bd-gradient-hover: linear-gradient(135deg, #e6142a 0%, #f09f38 100%);
  --bd-gradient-dark: linear-gradient(135deg, #683c11 0%, #93281f 100%);

  /* Шрифты */
  --bd-font-title: 'Georgia', 'Noto Serif', serif;
  --bd-font-main: 'Century Gothic', 'Jost', Arial, sans-serif;

  /* Отступы */
  --bd-pad-x-desktop: 2.5rem;
  --bd-pad-x-tablet: 2rem;
  --bd-pad-x-mobile: 1.25rem;
  --bd-pad-y-desktop: 5rem;
  --bd-pad-y-mobile: 3rem;
  --bd-custom-max-width: 100%;

  /* Радиусы и тени */
  --bd-radius-btn: 0.75rem;
  --bd-radius-card: 1.25rem;
  --bd-shadow-btn: 0 0.625rem 1.5625rem rgba(219, 13, 35, 0.28);
  --bd-shadow-card: 0 0.75rem 2rem rgba(104, 60, 17, 0.08);
  --bd-shadow-card-hover: 0 1.25rem 2.5rem rgba(104, 60, 17, 0.14);
}

/* ---------- Блок и контейнер ---------- */
html body .bd-block {
  width: 100%;
  box-sizing: border-box;
  background-color: var(--bd-bg-light);
  color: var(--bd-text-main);
  font-family: var(--bd-font-main);
  padding: var(--bd-pad-y-desktop) var(--bd-pad-x-desktop);
}

html body .bd-block--soft { background-color: var(--bd-bg-soft); }

html body .bd-block--dark {
  background: var(--bd-gradient-dark);
  color: #ffffff;
}

html body .bd-container {
  width: 100%;
  max-width: var(--bd-custom-max-width);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* ---------- Типографика ---------- */
html body .bd-title {
  font-family: var(--bd-font-title);
  font-size: 2.75rem;
  line-height: 1.15;
  font-weight: 700;
  color: var(--bd-brown);
  margin: 0 0 1rem;
}

html body .bd-lead {
  font-family: var(--bd-font-main);
  font-size: 1.125rem;
  line-height: 1.6;
  color: var(--bd-text-muted);
  margin: 0;
}

html body .bd-block--dark .bd-title { color: #ffffff; }
html body .bd-block--dark .bd-lead { color: rgba(255, 255, 255, 0.78); }

/* Тонкая градиентная линия-акцент под заголовком */
html body .bd-line {
  display: block;
  width: 4rem;
  height: 0.25rem;
  margin: 1.25rem 0;
  border-radius: 6.25rem;
  background: var(--bd-gradient-primary);
}

/* ---------- Карточка ---------- */
html body .bd-card {
  background: var(--bd-bg-light);
  border: 1px solid var(--bd-border-light);
  border-radius: var(--bd-radius-card);
  box-shadow: var(--bd-shadow-card);
  padding: 1.75rem;
  box-sizing: border-box;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

html body .bd-card:hover {
  transform: translateY(-0.25rem);
  box-shadow: var(--bd-shadow-card-hover);
}

/* ---------- Бейдж ---------- */
html body .bd-badge {
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.875rem;
  background-color: rgba(230, 151, 50, 0.12);
  color: var(--bd-brown);
  font-family: var(--bd-font-main);
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.0625rem;
  border-radius: 6.25rem;
  border: 1px solid var(--bd-border-light);
}

html body .bd-badge .bd-badge-dot {
  width: 0.5rem;
  height: 0.5rem;
  background: var(--bd-gradient-primary);
  border-radius: 50%;
  display: inline-block;
}

html body .bd-block--dark .bd-badge {
  background-color: rgba(248, 208, 71, 0.14);
  color: var(--bd-accent-yellow);
  border-color: rgba(248, 208, 71, 0.3);
}

/* ==========================================================================
   КНОПКИ
   Базовый .bd-button = вариант «Градиент» (по умолчанию).
   Модификаторы: --dark, --gold, --outline, --light
   ========================================================================== */
html body a.bd-button,
html body button.bd-button,
html body .bd-button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  padding: 1rem 2rem;
  background: var(--bd-gradient-primary);
  color: #ffffff !important;
  font-family: var(--bd-font-main);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.03125rem;
  border-radius: var(--bd-radius-btn);
  border: 0.125rem solid transparent;
  cursor: pointer;
  text-decoration: none !important;
  box-shadow: var(--bd-shadow-btn);
  transition: transform 0.25s ease, box-shadow 0.25s ease, color 0.25s ease, border-color 0.25s ease;
  outline: none !important;
  -webkit-tap-highlight-color: transparent;
}

/* Слой ховера (плавная смена градиента) */
html body .bd-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--bd-gradient-hover);
  opacity: 0;
  transition: opacity 0.25s ease;
}

html body .bd-button:hover::before { opacity: 1; }

html body a.bd-button:hover,
html body button.bd-button:hover,
html body .bd-button:hover {
  color: #ffffff !important;
  transform: translateY(-0.125rem);
  box-shadow: 0 0.875rem 1.75rem rgba(219, 13, 35, 0.34);
}

html body .bd-button:active {
  transform: translateY(0.0625rem);
  box-shadow: 0 0.25rem 0.5rem rgba(219, 13, 35, 0.25);
}

html body .bd-button:focus-visible {
  outline: 0.1875rem solid var(--bd-accent-yellow) !important;
  outline-offset: 0.1875rem;
}

html body .bd-button svg { transition: transform 0.25s ease; flex-shrink: 0; }
html body .bd-button:hover svg { transform: translateX(0.25rem); }

/* Вариант: тёмный (коричневый, золотой текст) */
html body .bd-button.bd-button--dark {
  background: var(--bd-brown);
  color: var(--bd-accent-yellow) !important;
  box-shadow: 0 0.625rem 1.5rem rgba(104, 60, 17, 0.3);
}
html body .bd-button.bd-button--dark::before { background: var(--bd-dark-red); }
html body .bd-button.bd-button--dark:hover {
  color: #ffffff !important;
  box-shadow: 0 0.875rem 1.75rem rgba(147, 40, 31, 0.35);
}

/* Вариант: золотой (для тёмных секций, тёмный текст = хороший контраст) */
html body .bd-button.bd-button--gold {
  background: linear-gradient(135deg, #f8d047 0%, #e69732 100%);
  color: var(--bd-brown) !important;
  box-shadow: 0 0.625rem 1.5rem rgba(230, 151, 50, 0.35);
}
html body .bd-button.bd-button--gold::before {
  background: linear-gradient(135deg, #fbd95e 0%, #f0a43c 100%);
}
html body .bd-button.bd-button--gold:hover {
  color: var(--bd-brown) !important;
  box-shadow: 0 0.875rem 1.75rem rgba(230, 151, 50, 0.45);
}

/* Вариант: контурный (вторичная кнопка на светлом фоне) */
html body .bd-button.bd-button--outline {
  background: transparent;
  color: var(--bd-dark-red) !important;
  border-color: var(--bd-dark-red);
  box-shadow: none;
}
html body .bd-button.bd-button--outline::before { background: var(--bd-gradient-primary); }
html body .bd-button.bd-button--outline:hover {
  color: #ffffff !important;
  border-color: transparent;
  box-shadow: var(--bd-shadow-btn);
}

/* Вариант: светлый контур (вторичная кнопка на тёмном фоне) */
html body .bd-button.bd-button--light {
  background: transparent;
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.55);
  box-shadow: none;
}
html body .bd-button.bd-button--light::before { background: rgba(255, 255, 255, 0.14); }
html body .bd-button.bd-button--light:hover {
  border-color: #ffffff;
  box-shadow: none;
}

html body .t-form-success-popup { display: none !important; }

/* Кнопка на всю ширину (удобно в карточках и на мобильных) */
html body .bd-button.bd-button--block { display: flex !important; width: 100%; }

/* ---------- Адаптив: 1400 / 1024 / 768 / 480 ---------- */
@media (max-width: 1399px) {
  html body .bd-title { font-size: 2.5rem; }
}

@media (max-width: 1024px) {
  html body .bd-block {
    padding-left: var(--bd-pad-x-tablet);
    padding-right: var(--bd-pad-x-tablet);
  }
  html body .bd-title { font-size: 2.25rem; }
}

@media (max-width: 767px) {
  html body .bd-block {
    padding: var(--bd-pad-y-mobile) var(--bd-pad-x-mobile);
  }
  html body .bd-title { font-size: 1.875rem; }
  html body .bd-lead { font-size: 1rem; }
  html body .bd-card { padding: 1.25rem; }
}

@media (max-width: 480px) {
  html body .bd-title { font-size: 1.625rem; }
  html body .bd-button { padding: 0.9rem 1.5rem; }
}

/* ---------- Уменьшение анимаций по желанию пользователя ---------- */
@media (prefers-reduced-motion: reduce) {
  html body .bd-button,
  html body .bd-button::before,
  html body .bd-button svg,
  html body .bd-card {
    transition: none !important;
  }
}