  /* 0) Гарантия: основной шрифт сайта */
  body, .t-body { font-family: "Open Sans", Arial, sans-serif !important; }

  /* =========================================================
     LAVKA MON — GLOBAL UI for custom sections (T123 blocks)
     Applies to any section that starts with class "lm-"
     (lm-news, lm-reviews, lm-videos, и все будущие)
     ========================================================= */

  :root{
    --lm-container: 980px !important;
    --lm-pad-desktop: 44px !important;
    --lm-pad-mobile: 28px !important;

    --lm-text: #111 !important;
    --lm-muted: rgba(17,17,17,.72) !important;
    --lm-muted2: rgba(17,17,17,.62) !important;

    --lm-card-bg: rgba(255,255,255,.88) !important;
    --lm-card-border: rgba(17,17,17,.08) !important;
    --lm-radius: 16px !important;
    --lm-shadow: 0 12px 40px rgba(0,0,0,.08) !important;

    --lm-gap: 16px !important;
  }

  /* 1) Чтобы наши блоки всегда наследовали шрифты и не ехали */
  [class^="lm-"], [class^="lm-"] *{
    font-family: inherit !important;
    box-sizing: border-box !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
  }

  /* 2) Общие отступы/контейнер */
  [class^="lm-"]{
    padding: var(--lm-pad-desktop) 0 !important;
  }
  @media (max-width: 640px){
    [class^="lm-"]{
      padding: var(--lm-pad-mobile) 0 !important;
    }
  }

  [class^="lm-"] [class$="__wrap"]{
    max-width: var(--lm-container) !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
  }

  [class^="lm-"] [class$="__head"]{
    text-align: center !important;
    margin-bottom: 18px !important;
  }

  /* 3) Самое важное: заголовки/описания — НЕ “гиганты” */
  [class^="lm-"] .t-title_xl{
    font-size: clamp(26px, 2.6vw, 38px) !important;
    line-height: 1.08 !important;
    font-weight: 700 !important;   /* Open Sans выглядит лучше так */
    letter-spacing: -0.02em !important;
    color: var(--lm-text) !important;
    margin: 0 0 10px !important;
  }

  [class^="lm-"] .t-descr_sm{
    font-size: 16px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    color: var(--lm-muted) !important;
    margin: 0 !important;
  }

  [class^="lm-"] .t-title_sm{
    font-size: clamp(18px, 2vw, 24px) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: var(--lm-text) !important;
    margin: 0 0 10px !important;
  }

  [class^="lm-"] .t-descr_xs{
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    color: var(--lm-muted2) !important;
    margin: 0 !important;
  }

  /* 4) Текст/списки — аккуратнее */
  [class^="lm-"] .t-text{
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: rgba(17,17,17,.82) !important;
  }

  [class^="lm-"] ul{
    margin: 0 !important;
    padding-left: 18px !important;
  }
  [class^="lm-"] li{ margin: 6px 0 !important; }

  /* 5) Карточки (виджеты/видео/контент) */
  [class^="lm-"] [class$="__card"],
  [class^="lm-"] .lm-video{
    background: var(--lm-card-bg) !important;
    border: 1px solid var(--lm-card-border) !important;
    border-radius: var(--lm-radius) !important;
    box-shadow: var(--lm-shadow) !important;
    overflow: hidden !important;
    backdrop-filter: blur(8px) !important;
  }

  [class^="lm-"] [class$="__card"]{ padding: 12px !important; }
  [class^="lm-"] .lm-video{ padding: 14px !important; margin-top: var(--lm-gap) !important; }

  @media (max-width: 640px){
    [class^="lm-"] [class$="__card"]{ padding: 10px !important; border-radius: 14px !important; }
    [class^="lm-"] .lm-video{ padding: 12px !important; border-radius: 14px !important; }
  }

  /* 6) Адаптивные видео */
  [class^="lm-"] .lm-video__frame{
    position: relative !important;
    width: 100% !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid var(--lm-card-border) !important;
    background: #000 !important;
    padding-top: 56.25% !important; /* 16:9 */
  }
  [class^="lm-"] .lm-video__frame iframe{
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  /* 7) VK iframe: растянуть */
  [class^="lm-"] iframe{
    max-width: 100% !important;
  }
  .lm-news__vk iframe, .lm-reviews__vk iframe{
    width: 100% !important;
  }

  /* 8) CTA */
  [class^="lm-"] [class$="__cta"]{
    margin-top: 16px !important;
    display: grid !important;
    gap: 10px !important;
    justify-items: center !important;
    text-align: center !important;
  }

  .lm-btn{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 16px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(17,17,17,.14) !important;
    background: #111 !important;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease !important;
    box-shadow: 0 10px 26px rgba(0,0,0,.16) !important;
  }
  .lm-btn:hover{
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.20) !important;
    background: #000 !important;
  }
  html { overflow-y: auto !important; overflow-x: hidden !important; }
  body { overflow: visible !important; height: auto !important; }
