:root { --rli-red: #ff3333; --rli-ink: #191919; --rli-paper: #fff; }

.rli-site-header { position: sticky; top: 0; z-index: 10001; background: rgba(255,255,255,.97); box-shadow: 0 1px 0 rgba(0,0,0,.12); font-family: Roboto, Arial, sans-serif; }
.rli-site-header__inner { max-width: 1200px; min-height: 66px; padding: 0 22px; margin: 0 auto; display: flex; align-items: center; gap: 26px; }
.rli-site-brand { color: var(--rli-ink); font-size: 17px; letter-spacing: .075em; font-weight: 800; text-decoration: none; white-space: nowrap; }
.rli-site-brand span { color: var(--rli-red); font-size: 10px; vertical-align: top; margin-left: 1px; }
.rli-site-nav { display: flex; align-items: center; gap: 18px; min-width: 0; }
.rli-site-nav a, .rli-site-header__contact { color: var(--rli-ink); font-size: 13px; line-height: 1; text-decoration: none; white-space: nowrap; }
.rli-site-nav a:hover, .rli-site-nav a:focus-visible { color: var(--rli-red); }
.rli-site-header__contact { margin-left: auto; padding: 10px 15px; border: 1px solid var(--rli-red); color: var(--rli-red); font-weight: 700; }
.rli-site-header__contact:hover, .rli-site-header__contact:focus-visible { color: #fff; background: var(--rli-red); }
.rli-site-menu-button { display: none; width: 42px; height: 42px; padding: 10px; border: 0; background: transparent; cursor: pointer; }
.rli-site-menu-button span { display: block; height: 2px; margin: 5px 0; background: var(--rli-ink); }
.rli-site-menu { position: absolute; top: 100%; left: 0; right: 0; padding: 15px 22px 22px; background: #fff; border-top: 1px solid #eee; box-shadow: 0 12px 20px rgba(0,0,0,.12); }
.rli-site-menu nav { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
.rli-site-menu a { padding: 12px 0; color: var(--rli-ink); font: 600 17px/1.15 Roboto,Arial,sans-serif; text-decoration: none; }
.rli-site-menu a:hover, .rli-site-menu a:focus-visible { color: var(--rli-red); }

.rli-site-footer { margin-top: 70px; color: #fff; background: #1e1e1e; font-family: Roboto,Arial,sans-serif; }
.rli-site-footer__inner { max-width: 1200px; margin: 0 auto; padding: 52px 22px 38px; display: grid; grid-template-columns: 2fr repeat(3,1fr); gap: 30px; }
.rli-site-footer .rli-site-brand { color: #fff; }
.rli-site-footer p { max-width: 310px; margin: 14px 0 0; color: #c8c8c8; font-size: 13px; line-height: 1.55; }
.rli-site-footer h2 { margin: 0 0 15px; color: #fff; font-size: 13px; text-transform: uppercase; letter-spacing: .07em; }
.rli-site-footer div > a:not(.rli-site-brand) { display: block; margin: 0 0 10px; color: #d4d4d4; font-size: 13px; text-decoration: none; }
.rli-site-footer a:hover, .rli-site-footer a:focus-visible { color: var(--rli-red); }
.rli-site-footer__bottom { max-width: 1200px; margin: 0 auto; padding: 18px 22px; display: flex; justify-content: space-between; color: #a5a5a5; border-top: 1px solid #3a3a3a; font: 12px/1.3 Roboto,Arial,sans-serif; }
.rli-site-footer__bottom a { color: #fff; text-decoration: none; }

@media (max-width: 980px) { .rli-site-nav { display: none; } .rli-site-header__contact { margin-left: auto; } .rli-site-menu-button { display: block; } }
@media (max-width: 620px) { .rli-site-header__inner { min-height: 58px; padding: 0 15px; gap: 9px; } .rli-site-brand { font-size: 15px; } .rli-site-header__contact { padding: 8px 10px; font-size: 12px; } .rli-site-menu-button { width: 38px; height: 38px; } .rli-site-footer { margin-top: 45px; } .rli-site-footer__inner { grid-template-columns: 1fr 1fr; gap: 28px 20px; padding: 38px 20px 30px; } .rli-site-footer__about { grid-column: 1 / -1; } .rli-site-footer__bottom { padding: 15px 20px; } }
