/* Open Sans со своего сервера (вместо fonts.googleapis.com — без передачи IP посетителей в Google) */
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url('fonts/opensans/open-sans-cyrillic-300-normal.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url('fonts/opensans/open-sans-latin-300-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/opensans/open-sans-cyrillic-400-normal.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/opensans/open-sans-latin-400-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('fonts/opensans/open-sans-cyrillic-600-normal.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('fonts/opensans/open-sans-latin-600-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('fonts/opensans/open-sans-cyrillic-700-normal.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('fonts/opensans/open-sans-latin-700-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 800; font-display: swap; src: url('fonts/opensans/open-sans-cyrillic-800-normal.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 800; font-display: swap; src: url('fonts/opensans/open-sans-latin-800-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* Галочка согласия на обработку персональных данных в формах */
.pd-consent,
#modal-callback .pd-consent,
#offer-transport .pd-consent {
    display: block;
    margin: 10px 0;
    text-align: left;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 1.4;
    color: #555;
    cursor: pointer;
}
.box_8 .pd-consent { color: #ddd; }
.pd-consent input[type="checkbox"],
#modal-callback .pd-consent input[type="checkbox"],
#offer-transport .pd-consent input[type="checkbox"] {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 6px 0 0;
    padding: 0;
    vertical-align: -3px;
    border: none;
    box-shadow: none;
}
.pd-consent span,
#modal-callback .pd-consent span,
#offer-transport .pd-consent span {
    display: inline;
    font-size: 13px;
    color: inherit;
}
.pd-consent a { color: inherit; text-decoration: underline; }
/* окно «Заказать перевозку» было фиксированной высоты — с галочкой кнопка выпадала за край */
#offer-transport.modal-callback { top: 2vh; margin-top: 0; height: auto; max-height: 96vh; overflow-y: auto; }
.pd-consent.pd-consent-error { color: #d9302c; }

/* Уведомление о cookie */
#cookie-notice {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 1500; /* ниже окон форм (2000) */
    max-width: 760px;
    margin: 0 auto;
    padding: 14px 18px;
    background: #323232;
    color: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 1.45;
    border-radius: 6px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .3);
}
#cookie-notice a { color: #fdc900; }
#cookie-notice .cookie-buttons { margin-top: 10px; text-align: right; }
#cookie-notice button {
    margin-left: 8px;
    padding: 6px 16px;
    border: 1px solid #fdc900;
    border-radius: 4px;
    background: #fdc900;
    color: #323232;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}
#cookie-notice button.cookie-decline { background: transparent; color: #fdc900; }

/* Реквизиты в подвале */
.footer-text .footer-legal a { text-decoration: underline; }

/* Страницы «Политика» и «Согласие» */
.legal-doc { padding: 20px 15px 40px; font-family: 'Open Sans', sans-serif; font-size: 15px; line-height: 1.6; color: #323232; text-align: left; }
.legal-doc h2 { margin: 28px 0 10px; font-size: 20px; font-weight: 700; }
.legal-doc p { margin: 0 0 10px; }
.legal-doc ul { margin: 0 0 12px 22px; padding: 0; list-style: disc; }
.legal-doc li { margin-bottom: 4px; }
.legal-doc a { color: #323232; text-decoration: underline; }
.legal-doc .legal-meta { color: #848484; font-size: 13px; }

/* E-mail и мессенджеры в шапке */
.hdr-messengers { display: inline-block; margin-left: 18px; vertical-align: middle; position: relative; top: 4px; white-space: nowrap; }
.hdr-messengers a { display: inline-block; margin-left: 8px; vertical-align: middle; text-decoration: none; color: #000; }
.hdr-messengers .hdr-mail { font-family: 'Open Sans', sans-serif; font-size: 14px; }
.hdr-messengers .hdr-mail i { margin-right: 5px; font-size: 16px; }
.hdr-messengers svg { display: block; }
.hdr-messengers .hdr-max { padding: 2px 6px; border-radius: 6px; background: linear-gradient(135deg, #3d7bff, #8a3ffc); color: #fff; font-family: 'Open Sans', sans-serif; font-size: 11px; font-weight: 800; line-height: 18px; }
@media (max-width: 1200px) { .hdr-messengers .hdr-mail span { display: none; } }
.duplicate_contacts .hdr-messengers { top: 2px; margin-left: 10px; }
