/* Адаптив. Инлайновые стили страниц перебиваются !important. Десктоп ≥1024px не затронут. */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative}
.table-scroll table{min-width:560px}
#nav-burger{display:none}
#nav-overlay{display:none;position:fixed;inset:0;z-index:120;background:#f2f2f3;overflow-y:auto;padding:18px 16px 32px;font-family:'Barlow',sans-serif}
#nav-overlay a{display:block;padding:14px 8px;min-height:48px;font-size:16px;color:#1d1f20;text-decoration:none;border-bottom:1px solid color-mix(in srgb,#1d1f20 12%,transparent)}
#nav-overlay .nav-ov-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
#nav-overlay .nav-ov-cta{margin-top:18px;display:block;text-align:center;background:#5980a6;color:#f2f2f3;border-bottom:0}

@media (max-width:1023px){
  [style*="repeat(4,1fr)"],[style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  [style*="1.6fr 1fr 1fr 1fr"]{grid-template-columns:1fr 1fr !important}
  [style*="max-width:1240px"]{padding-left:20px !important;padding-right:20px !important}
}

@media (max-width:599px){
  html,body{overflow-x:hidden}
  #nav-burger{display:flex !important;align-items:center;justify-content:center;flex:0 0 44px !important;width:44px !important;height:44px !important;box-sizing:border-box !important;padding:0 !important;margin-left:auto;background:none;border:1px solid color-mix(in srgb,#1d1f20 22%,transparent);cursor:pointer;font-size:22px;line-height:1 !important;font-family:'Barlow',sans-serif;color:#1d1f20;-webkit-appearance:none;appearance:none;border-radius:0}
  header nav{display:none !important}
  header{padding:10px 16px !important;gap:10px !important}
  [data-topbar-address]{display:none !important}

  /* сетки в одну колонку */
  [style*="grid-template-columns"]{grid-template-columns:1fr !important}
  [data-stat-grid]{grid-template-columns:1fr 1fr !important}

  /* контейнеры и отступы */
  [style*="max-width:1240px"]{padding-left:16px !important;padding-right:16px !important}
  [style*="padding:56px 24px"],[style*="padding:48px 24px"],[style*="padding:44px 24px"]{padding:28px 16px !important}
  [style*="gap:48px"],[style*="gap:40px"],[style*="gap:36px"]{gap:24px !important}
  main [style*="padding-inline:10px"]{padding-inline:0 !important}

  /* типографика */
  h1{font-size:31px !important;line-height:1.1 !important;letter-spacing:0 !important;hyphens:auto;word-break:normal;max-width:none !important}
  h2{font-size:23px !important;line-height:1.15 !important;letter-spacing:0 !important}
  h3{font-size:18px !important;line-height:1.2 !important}
  h4,h5,h6{letter-spacing:0.04em !important}
  p,li,td,th,span,div,a{max-width:none !important}
  main p,main li{font-size:16px !important;line-height:1.6 !important}
  [style*="font-size:19px"],[style*="font-size:18px"]{font-size:17px !important}
  [style*="font-size:10px"],[style*="font-size:11px"],[style*="font-size:12px"]{font-size:13px !important}
  [style*="font-size:13px"]{font-size:13px !important}
  main table{font-size:14px !important}
  .table-scroll table{font-size:14px !important}
  .table-scroll th,.table-scroll td{padding:8px 10px !important}

  /* svg-фигуры вписываем */
  figure svg,main svg{max-width:100% !important;height:auto !important}
  figure{margin-inline:0 !important}

  /* зоны нажатия */
  footer a{line-height:2 !important;display:inline-block;min-height:32px}
  .btn{min-height:44px !important;display:inline-flex !important;align-items:center;justify-content:center}

}

/* ==========================================================
   Мобильный адаптив: правки после проверки на iPhone
   ========================================================== */

/* Планшет: grid-элемент по умолчанию имеет min-width:auto и растягивается
   под min-width таблицы, из-за чего колонка выходит за экран. */
@media (max-width:1023px){
  main div[style*="grid-template-columns"]>*{min-width:0}
  .table-scroll{max-width:100%}
}

@media (max-width:599px){
  /* Топбар с датой данных прячем: дата дублируется бейджем над заголовком */
  [data-topbar]{display:none !important}

  /* Заголовки: длинные русские слова не должны резаться по краю */
  h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;word-break:normal}

  /* --- ТАБЛИЦЫ КАРТОЧКАМИ ---
     Горизонтальный скролл на телефоне не читается: третья колонка просто
     обрезается. Разворачиваем каждую строку в карточку «подпись → значение».
     Подписи берутся из data-label, проставленных из шапки таблицы. */
  .table-scroll{overflow-x:visible !important;margin-inline:0 !important;padding-inline:0 !important}
  .table-scroll table{min-width:0 !important;width:100% !important;display:block !important;border-collapse:collapse}
  .table-scroll thead{display:none !important}
  .table-scroll tbody{display:block !important}
  .table-scroll tr{display:block !important;background:#fff;border:1px solid #d9dbdd;margin:0 0 10px !important;padding:4px 0}
  .table-scroll td{display:flex !important;gap:12px;align-items:baseline;
    width:auto !important;border:0 !important;padding:7px 12px !important;font-size:15px !important;line-height:1.45 !important}
  .table-scroll td[data-label]::before{content:attr(data-label);flex:0 0 40%;min-width:0;
    font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;
    font-size:12px;line-height:1.35;color:#416180}
  .table-scroll td+td{border-top:1px solid #eef2f6 !important}
  .table-scroll caption{padding-bottom:10px !important}

  /* --- COOKIE-БАННЕР ---
     Инлайновый flex:1 1 420px шире экрана и выталкивал кнопки за край. */
  #cookie-consent{left:0 !important;right:0 !important;bottom:0 !important;top:auto !important;
    display:flex !important;flex-direction:column !important;align-items:stretch !important;
    gap:10px !important;padding:12px 14px calc(12px + env(safe-area-inset-bottom)) !important;
    max-height:60vh !important;overflow-y:auto;
    box-shadow:0 -6px 24px color-mix(in srgb,#2b2b2d 22%,transparent) !important}
  #cookie-consent>span{flex:0 1 auto !important;min-width:0 !important;
    font-size:13px !important;line-height:1.45 !important}
  #cookie-consent>span:last-of-type{display:grid !important;grid-template-columns:1fr 1fr;gap:8px}
  #cookie-consent button{width:100% !important;min-width:0 !important;min-height:44px !important;
    font-size:13px !important;padding:0 6px !important}
  /* уголки .blueprint торчат на 5px за край, когда баннер во всю ширину */
  #cookie-consent>.corner,#cookie-consent .corner{display:none !important}
}
