@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 200 900;
  font-display: swap; src: url(/fonts/serif-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 200 900;
  font-display: swap; src: url(/fonts/serif-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 200 900;
  font-display: swap; src: url(/fonts/serif-i-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 200 900;
  font-display: swap; src: url(/fonts/serif-i-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }

.glavnaya {
    --bumaga:   #FFFFFF;
    --chernila: #27221D;
    --tusklo:   #746F6B;
    --cherta:   #E2DFDB;
    --ssylka:   #2A4765;
    --plashka:  #1A1A1A;
    --zoloto:   #B0946F;
    --tekst: 'Source Serif 4', Georgia, 'Times New Roman', serif;
    --nadpis: Tahoma, Verdana, 'Segoe UI', sans-serif;

    margin: 0;
    background: var(--bumaga);
    color: var(--chernila);
    font: 400 17px/1.65 var(--tekst);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}
.glavnaya *, .glavnaya *::before, .glavnaya *::after { box-sizing: border-box; }
.glavnaya img { border: 0; }

.glavnaya a {
    color: var(--ssylka);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
    text-decoration-color: rgba(42, 71, 101, .45);
    transition: color .15s ease, text-decoration-color .15s ease;
}
.glavnaya a:hover { color: var(--chernila); text-decoration-color: var(--chernila); }
.glavnaya a:focus-visible, .glavnaya button:focus-visible { outline: 2px solid var(--zoloto); outline-offset: 2px; }

.shapka {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: start;
    gap: 16px;
    padding: 12px 12px 0;
}
.shapka__levo  { justify-self: start; }
.shapka__pravo { justify-self: end; }
.shapka__logo  { display: block; max-width: 100%; height: auto; }

.plashka, .glavnaya a.plashka {
    display: block;
    margin: 0;
    padding: 9px 14px;
    background: var(--plashka);
    color: #FFFFFF;
    font: 400 11px/1.5 var(--nadpis);
    letter-spacing: .18em;
    text-transform: uppercase;
    text-decoration: none;
}
.glavnaya a.plashka:hover { color: #FFFFFF; box-shadow: inset 0 -2px 0 var(--zoloto); }

.vojti { margin: 26px 0 0; text-align: center; line-height: 0; }
.glavnaya .vojti a { display: inline-block; text-decoration: none; }

.glavnoe {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: 1140px;
    margin: 56px auto 0;
    padding: 0 32px;
}
.o-sajte { padding-right: 44px; }
.novosti { padding-left: 44px; border-left: 1px solid var(--cherta); }

.glavnoe h2 {
    margin: 0 0 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--cherta);
    font: 400 30px/1.2 var(--tekst);
    letter-spacing: -.005em;
}
.glavnoe p, .novosti__tekst { margin: 0 0 14px; }

.znachki { display: flex; align-items: center; gap: 18px; margin-top: 22px; }
.znachki a, .pechat { display: inline-flex; line-height: 0; text-decoration: none; }
.pechat { margin: 0; padding: 0; border: 0; background: none; cursor: pointer; }
.znachki img { opacity: .8; transition: opacity .15s ease; }
.znachki a:hover img, .pechat:hover img { opacity: 1; }

.novosti__mesto {
    text-align: right;
    font-style: italic;
    font-size: 15px;
    color: var(--tusklo);
}

.prezhnie {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid var(--cherta);
}
.prezhnie dl {
    flex: 1 1 auto;
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 8px 18px;
    align-items: baseline;
    margin: 0;
}
.prezhnie dt {
    font: 400 11px/1.6 var(--nadpis);
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--tusklo);
}
.prezhnie dd { margin: 0; font-size: 16px; line-height: 1.45; }
.prezhnie__rss { flex: none; margin-left: auto; line-height: 0; padding-top: 3px; }
.glavnaya .prezhnie__rss { text-decoration: none; }

.razdely {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 28px 28px;
    max-width: 1140px;
    margin: 64px auto 0;
    padding: 34px 32px 0;
    position: relative;
}
.razdely::before {
    content: '';
    position: absolute;
    top: -1px; left: 32px; right: 32px;
    border-top: 1px solid var(--cherta);
}
.razdel__imya {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: calc(3em + 8px);
    margin: 0 0 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--cherta);
    font: 700 11px/1.5 var(--nadpis);
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--chernila);
}
.glavnaya .razdel__imya a { color: var(--chernila); text-decoration: none; }
.glavnaya .razdel__imya a:hover { color: var(--ssylka); }
.razdel ul { margin: 0; padding: 0; list-style: none; }
.razdel li { margin: 0 0 6px; font-size: 16px; line-height: 1.4; }
.glavnaya .razdel li a { text-decoration-color: transparent; }
.glavnaya .razdel li a:hover { text-decoration-color: var(--chernila); }
.razdel__pometa {
    display: block;
    margin-top: 3px;
    font: italic 400 14px/1.4 var(--tekst);
    color: var(--tusklo);
}

.podval {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 24px;
    margin-top: 64px;
    padding: 16px 12px 22px;
    border-top: 1px dashed #9A9A9A;
    font: 400 14px/1.5 var(--nadpis);
}
.podval p { margin: 0; }
.podval__levo { display: flex; align-items: center; gap: 8px; }
.podval__levo img { flex: none; }
.podval b a { color: var(--chernila); }

@media (max-width: 1100px) {
    .razdely { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 780px) {
    .glavnoe { grid-template-columns: 1fr; margin-top: 40px; padding: 0 20px; }
    .o-sajte { padding-right: 0; }
    .novosti { padding-left: 0; border-left: 0; margin-top: 40px; }
    .razdely { margin-top: 48px; padding: 28px 20px 0; }
    .razdely::before { left: 20px; right: 20px; }
}
@media (max-width: 640px) {
    .glavnaya { font-size: 16.5px; }
    .shapka {
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "levo pravo" "znak znak";
        gap: 8px;
        padding: 8px 8px 0;
    }
    .shapka__levo  { grid-area: levo;  justify-self: stretch; align-self: stretch; display: flex; }
    .shapka__pravo { grid-area: pravo; justify-self: stretch; align-self: stretch; display: flex; }
    .glavnaya .shapka .plashka {
        flex: 1;
        display: flex;
        align-items: center;
        font-size: 10px;
        letter-spacing: .12em;
        padding: 8px 10px;
    }
    .glavnaya .shapka__pravo .plashka { justify-content: flex-end; text-align: right; }
    .shapka__logo { grid-area: znak; justify-self: center; margin-top: 8px; }
    .vojti { margin-top: 18px; }
    .glavnoe h2 { font-size: 26px; }
    .razdely { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
    .podval { padding: 14px 20px 22px; }
}

@media print {
    .vojti, .znachki, .shapka__pravo, .prezhnie__rss { display: none; }
    .glavnaya a { color: inherit; text-decoration: none; }
    .plashka { background: none; color: var(--chernila); padding: 0; }
}
