/* Blogger Sans — locally hosted font. Keep Regular and Medium files in
   assets/fonts/. All typography values are controlled by tokens below. */
@font-face {
  font-family: 'Blogger Sans';
  src: url('../fonts/bloggersans.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: 'Blogger Sans';
  src: url('../fonts/bloggersans-medium.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
:root {
  color-scheme: light;
  /* ===== Typography: two real Blogger Sans weights ===== */
  --bm-font: 'Blogger Sans', Arial, sans-serif;
  --bm-font-weight-regular: 400;
  --bm-font-weight-medium: 500;
  --bm-font-size-body: 16px;
  --bm-font-size-body-lg: 17px;
  --bm-font-size-compact: 15px;
  /* Размер ссылок навигации в шапке сайта V2. */
  --bm-font-size-header-nav: 15px;
  --bm-font-size-small: 14px;
  --bm-font-size-meta: 13px;
  --bm-font-size-caption: 12px;
  --bm-font-size-micro: 11px;
  --bm-font-size-lead: 18px;
  --bm-font-size-lead-lg: 19px;
  --bm-font-size-h1: clamp(42px, 5vw, 76px);
  --bm-font-size-h2: clamp(29px, 3.4vw, 49px);
  --bm-font-size-h3: clamp(20px, 1.7vw, 26px);
  --bm-font-size-h4: 20px;
  /* All card headings: articles, news, promotions, portfolios and services. */
  --bm-font-size-card-title: clamp(18px, 1.5vw, 22px);
  --bm-font-size-xl: 20px;
  --bm-font-line-body: 1.55;
  --bm-font-line-heading: 1.12;
  /* Larger/special heading variants keep existing page proportions. */
  --bm-font-size-hero-h1: clamp(36px, 4.4vw, 67px);
  --bm-font-size-home-h1: clamp(55px, 5.6vw, 86px);
  --bm-font-size-sc-h1: clamp(38px, 4.2vw, 64px);
  --bm-font-size-sc-intro: clamp(29px, 2.8vw, 38px);
  /* All standalone section headings follow the introductory H1 at every breakpoint. */
  --bm-font-size-sc-section: var(--bm-font-size-sc-intro);
  --bm-font-size-sc-hero-line: clamp(18px,1.7vw,25px);
  --bm-font-size-prose-h2: clamp(24px, 2.8vw, 36px);
  --bm-font-size-prose-h3: clamp(21px, 2.2vw, 28px);
  --bm-bg: #f8f8f8;
  --bm-surface: #fff;
  --bm-surface-warm: #efede7;
  --bm-surface-deep: #e5e2d9;
  /* Единый цвет обычного текста и заголовков на всём сайте. */
  --bm-text: #232323;
  --bm-ink: var(--bm-text);
  --bm-ink-soft: var(--bm-text);
  --bm-muted: var(--bm-text);
  /* Существующие цвета кнопок сохраняем независимо от текста сайта. */
  --bm-button-ink: #232723;
  --bm-border: #deddd6;
  --bm-accent: #d5a844;
  --bm-accent-light: #f5e2af;
  --bm-accent-ink: #342711;
  --bm-moss: #657a60;
  --bm-success: #387657;
  --bm-header-bg: var(--bm-bg);
  /* Цвет нижнего мобильного меню и подложки под системную область браузера. */
  --bm-mobile-bottom-bg: #282828;
  /* ===== Shared component surfaces, shadows and colors ===== */
  --bm-card-bg: var(--bm-surface);
  --bm-card-border: rgba(30,40,35,.055);
  --bm-card-radius: 16px;
  --bm-card-badge-height: 28px;
  --bm-card-radius-mobile: 14px;
  --bm-card-shadow: 0 4px 26px rgba(35,35,35,.085);
  --bm-card-shadow-hover: 0 11px 35px rgba(35,35,35,.14);
  --bm-divider-yellow: #ffd400;
  --bm-radius-badge: 5px;
  --bm-shadow-header: 0 6px 20px rgba(22,28,20,.08);
  --bm-link-hover: #b08332;
  --bm-button-hover-bg: #e4b84d;
  --bm-button-dark-hover-bg: #3b403b;
  --bm-footer-bg: #242b25;
  --bm-color-on-dark: #fff;
  --bm-hit-bg: #2299db;
  --bm-sale-bg: #26c85f;
  --bm-price-current-text: #27663c;
  --bm-price-current-bg: #d9f4df;
  --bm-price-old-text: #b47735;
  --bm-price-old-bg: #ffe1b7;
  /* Brand-colored contact buttons are separate from --bm-text. */
  --bm-contact-phone-start: #F9CD00;
  --bm-contact-phone-end: #FEFC80;
  --bm-contact-whatsapp-start: #14a73e;
  --bm-contact-whatsapp-end: #66f771;
  --bm-contact-telegram-start: #2589C9;
  --bm-contact-telegram-end: #7AC6E4;
  --bm-contact-max-start: #6A25E2;
  --bm-contact-max-end: #B58CFF;
  --bm-contact-text-light: #fff;
  --bm-contact-text-phone: #1d2327;
  --bm-contact-font-weight: var(--bm-font-weight-regular);
  --bm-container: 1400px;
  --bm-intro-width-ratio: .75;
  --bm-gutter: 15px;
  --bm-header-height: 82px;
  --bm-radius-xs: 8px;
  --bm-radius-sm: 12px;
  --bm-radius-md: 20px;
  --bm-radius-lg: 28px;
  --bm-radius-xl: 36px;
  --bm-pill: 999px;
  --bm-shadow: 0 14px 40px rgba(35,39,35,.06);
  --bm-shadow-hover: 0 24px 48px rgba(35,39,35,.12);
  --bm-ease: cubic-bezier(.22,1,.36,1);
  --bm-transition: 220ms var(--bm-ease);
  --bm-space-1: 5px;
  --bm-space-2: 10px;
  --bm-space-3: 15px;
  --bm-space-4: 20px;
  --bm-space-5: 28px;
  --bm-space-6: 40px;
  --bm-space-7: 60px;
  --bm-space-8: 90px;
  /* Единое внешнее расстояние между секциями (когда страница применяет ритм). */
  --bm-section-gap: 200px;
}
@media (max-width:1200px) {
  :root {
    --bm-header-height: 74px;
    --bm-space-8: 72px;
    --bm-radius-xl: 30px;
    --bm-font-size-home-h1: 62px;
    --bm-font-size-sc-h1: clamp(36px,4vw,54px);
  }
}
@media (max-width:1024px) {
  :root {
    --bm-header-height: 68px;
    --bm-space-8: 58px;
    --bm-radius-lg: 22px;
    --bm-font-size-home-h1: clamp(42px,5vw,60px);
    --bm-font-size-sc-h1: clamp(32px,4vw,46px);
    --bm-font-size-sc-hero-line: clamp(17px,1.9vw,21px);
    --bm-font-size-sc-intro: clamp(27px,3.4vw,34px);
    --bm-font-size-card-title: 20px;
  }
}
@media (max-width:767px) {
  :root {
    --bm-header-height: 62px;
    --bm-space-8: 44px;
    --bm-section-gap: 150px;
    --bm-radius-xl: 24px;
    --bm-radius-md: 16px;
    --bm-font-size-hero-h1: 38px;
    --bm-font-size-home-h1: clamp(43px,8vw,61px);
    --bm-font-size-sc-h1: clamp(32px,6.3vw,44px);
    --bm-font-size-sc-intro: clamp(27px,5.4vw,34px);
  }
}
@media (max-width:500px) {
  :root {
    --bm-header-height: 58px;
    --bm-space-8: 36px;
    --bm-radius-lg: 18px;
    --bm-font-size-home-h1: 42px;
    --bm-font-size-sc-h1: clamp(30px,8vw,38px);
    --bm-font-size-sc-hero-line: 18px;
    --bm-font-size-sc-intro: 28px;
    --bm-font-size-card-title: clamp(16px,4.8vw,19px);
    --bm-font-size-hero-h1: 34px;
  }
}
