/* rs-polish.css v2 — 2026-09-29, трек design (гигиена типографики, контраста и мобилы).
   Только оформление: контент, формы, рейтинг, цены и сроки не трогаются. Откат — убрать строку подключения в чанке head. */
:root{--rs-brand:#005c48;--rs-brand-deep:#003d2c;--rs-ink:#1d2421;--rs-link:#0052cc;--rs-focus:#0052cc;--rs-rule:#d5dbd7}

/* 1. Пустые 53px под фиксированной шапкой (шапка 104-105px при >=1200; EN 1001-1199 переносится в 2 строки, 162px) */
@media (min-width:1200px){body{padding-top:105px}}
@media (min-width:1001px) and (max-width:1199px){html[lang="en"] body{padding-top:164px}}

/* 2. Контраст ссылок и кнопок (WCAG AA) */
a{color:var(--rs-link)}
.dl-menuwrapper button{color:#fff}
#content .rs-btn.rs-btn-alt{background:#fff;color:var(--rs-brand)!important;box-shadow:inset 0 0 0 2px var(--rs-brand)}
.btn-big.green,.btn-medium.green{background:var(--rs-brand)}
.btn-big.empty.green,.btn-medium.empty.green{border-color:var(--rs-brand);color:var(--rs-brand)!important;background:0 0}

/* 3. Видимый фокус с клавиатуры (в main.css стоит :focus{outline:none}) */
html body :focus-visible{outline:3px solid var(--rs-focus);outline-offset:2px}

/* 4. Текст статей и услуг: 13px/22px -> 16px/1.65 */
#content p,#content li,#content td,#content th,#content dd,.page-content p:not([class]):not(.numbers-counter *){font-size:16px;line-height:1.65}
#content p,#content li,#content td{color:var(--rs-ink)}
#content p a,#content li a,#content td a,.page-content p:not([class]):not(.numbers-counter *) a{font-size:inherit;line-height:inherit}
#content p{margin-bottom:.9em}
#content li{margin-bottom:.35em}
#content h2,#content h3,#content h4{line-height:1.25;margin:1.4em 0 .55em}
#content h2:first-child,#content h3:first-child{margin-top:0}
#content,#content p,#content li,#content h2,#content h3,#content td{overflow-wrap:break-word}
#content img,#content iframe,#content video{max-width:100%}
#content img{height:auto}
.buy_with a{line-height:1.5}

/* 5. Плашка cookie: компактнее, кнопка 44px. Логика согласия не меняется */
#cookie-banner{padding:10px 16px!important;box-sizing:border-box}
#cookie-banner.show{bottom:0}
#cookie-banner p,#cookie-banner p a{font-size:13px!important;line-height:1.45!important}
#cookie-banner p{max-width:860px;margin:0 auto!important}
#cookie-banner button{min-height:44px;padding:0 26px;margin-top:8px!important;border:0;border-radius:4px;background:#fff;color:var(--rs-brand-deep);font-weight:600;font-size:15px!important}
@media (min-width:768px){
 #cookie-banner p{display:inline-block;vertical-align:middle;text-align:left;max-width:760px}
 #cookie-banner button{display:inline-block!important;vertical-align:middle;margin:0 0 0 20px!important}
}

/* 6. Мобила (<=980px: в main.css стоит a,body,p{font:15px ...!important}) */
@media (max-width:980px){
 #content p,#content li,#content td,.page-content p:not([class]):not(.numbers-counter *){font-size:16px!important;line-height:1.6!important}
 #content p a,#content li a,#content td a,.page-content p:not([class]):not(.numbers-counter *) a{font-size:inherit!important;line-height:inherit!important}
 #content h2{font-size:23px;line-height:1.25}
 #content h3{font-size:19px;line-height:1.3}
}
@media (max-width:767px){
 /* кнопки первого экрана: текст по центру */
 .links a.call_link,a.call_link.fancy:not(.rs-btn){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;line-height:1.2!important;box-sizing:border-box}
 .links a.call_link svg{top:0!important}
 #content .rs-btn{display:flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box}
 /* таблицы не распирают страницу */
 #content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 /* поля и кнопки форм: 44px, 16px (без автозума iOS) */
 input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search]:not(#m_search),select{min-height:44px;font-size:16px!important;box-sizing:border-box}
 textarea{font-size:16px!important}
 input[type=submit],button[type=submit],.btn-medium,.wpcf7-submit{min-height:44px;padding-left:20px;padding-right:20px}
 .wpcf7-text,.wpcf7-textarea{width:100%!important;max-width:100%}
 footer input.email,footer .email{width:100%!important;max-width:100%}
 /* списки ссылок: зона нажатия 44px */
 .widget li:has(> a){padding-top:0;padding-bottom:0;background-position:0 20px}
 .widget li > a{display:block;padding:13.5px 0}
 .footer-breadcrumbs a,.copyright-links a,#footer a.underlined{display:inline-block;padding:13.5px 0}
 .buy_with li a{display:inline-block;padding:6px 0}
 #search .search-submit{min-width:44px;min-height:44px}
 .article-waypoint a{display:flex;align-items:center;min-height:44px}
 p.mistakes{max-width:100%;box-sizing:border-box}
 /* главная: плитки направлений в 2 колонки вместо 6 экранов по 250px */
 .row:has(> .grid_4 > a > .service-box-2){display:flex;flex-wrap:wrap}
 .row > .grid_4:has(> a > .service-box-2){width:50%;float:none;margin:0;padding:0 4px;box-sizing:border-box}
 .service-box-2{height:auto;min-height:170px;padding:14px 6px}
 .service-box-2 .icon{width:84px!important;height:84px!important;margin:0 auto 10px}
 .service-box-2 .h5{font-size:14px!important;line-height:1.35!important}
}
