/* Оформление сайта «Документ»: заголовки Literata, текст Golos Text, спокойная палитра,
   карточки с тонкой рамкой, заголовки разделов слева с подсветкой маркером (span.title-mark).
   Подключается в _Layout и _LayoutYad после style.css; шапка и подвал не меняются.
   Только для главной — home.css. */

@font-face {
    font-family: 'Golos Text';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/golos_cyr.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Golos Text';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/golos_lat.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: 'Literata';
    font-style: normal;
    font-weight: 500 600;
    font-display: swap;
    src: url('../fonts/literata_cyr.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Literata';
    font-style: normal;
    font-weight: 500 600;
    font-display: swap;
    src: url('../fonts/literata_lat.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;
}

:root {
    --ip-ink: #1A2233;
    --ip-muted: #5E6779;
    --ip-navy: #22356B;
    --ip-line: #DFE4EC;
    --ip-page: #F7F8FA;
    --ip-soft: #EEF1F6;
    --ip-green: #1F8A5B;
    --ip-green-soft: #E3F4EB;
    --ip-red: #D93A3A;
    --ip-red-soft: #FDECEC;
    --ip-yellow: #F2B600;
    --ip-cyan: #0E7FA0;
    --ip-marker: #CDEBDB;
}

body {
    font-family: 'Golos Text', Roboto, sans-serif;
    color: var(--ip-ink);
    background-color: var(--ip-page);
    -webkit-font-smoothing: antialiased;
}
/* шапка и подвал — без изменений */
header, footer { font-family: Roboto, sans-serif; }

main h1, main h2, main h3 { font-family: 'Literata', Georgia, serif; color: var(--ip-ink); font-weight: 600; letter-spacing: -0.01em; }
main h4, main h5 { color: var(--ip-ink); font-weight: 600; }
/* заголовок страницы, набранный h4 (контакты, отзывы, блог, вход) — как h1 остальных страниц */
main h4.page-title { font-family: 'Literata', Georgia, serif; font-size: clamp(1.8rem, 2.8vw, 2.3rem); }
main .text-uppercase { text-transform: none !important; }
main a:not(.btn) { color: var(--ip-navy); text-underline-offset: .2em; }

/* Заголовки разделов — слева, с подсветкой маркером, как фрагмент в отчёте */
main :is(h2, h3):has(> .title-mark) { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
main h2:has(> .title-mark) { font-size: clamp(1.8rem, 2.8vw, 2.4rem); }
main .accordion-header { font-family: inherit; font-size: inherit; }
.title-mark { background: linear-gradient(transparent 60%, var(--ip-marker) 60%, var(--ip-marker) 92%, transparent 92%); -webkit-box-decoration-break: clone; box-decoration-break: clone; padding: 0 .1em; }

/* Карточки, таблицы, кнопки */
main .card, main .accordion { border: 1px solid var(--ip-line) !important; box-shadow: none !important; border-radius: 12px !important; overflow: hidden; }
main .card-header { background: #fff; }
main .card.border-top { border-top: 4px solid !important; }
main .card.border-success { border-top-color: var(--ip-green) !important; }
main .card.border-warning { border-top-color: var(--ip-yellow) !important; }
main .card.border-info { border-top-color: var(--ip-cyan) !important; }
main .table > tbody > tr:nth-child(even) > td:not(.table-success) { background: var(--ip-page); }
/* таблица цен рерайта: выбранная ячейка (table-success) и наведённая — жирные цифры.
   Жирность — тенью, а не font-weight: ширина текста не меняется, и таблица не прыгает при переключении */
#rewrite-calc td.table-success, #rewrite-calc td[data-cell]:hover { text-shadow: .03em 0 0 currentColor, -.03em 0 0 currentColor; }
main .btn { border-radius: 8px; font-weight: 600; box-shadow: none !important; }
main .btn-success { background: var(--ip-green); border-color: var(--ip-green); }
main .btn-warning { background: var(--ip-yellow); border-color: var(--ip-yellow); color: var(--ip-ink); }
main .btn-info { background: var(--ip-cyan); border-color: var(--ip-cyan); color: #fff; }
/* нейтральные кнопки (Войти, Оплатить, Далее у АП ВУЗ и т.п.) — тёмно-синие, как основная кнопка главной */
main .btn-primary, main .btn-secondary { background: var(--ip-navy); border-color: var(--ip-navy); color: #fff; }
main .btn-primary:hover, main .btn-primary:focus, main .btn-secondary:hover, main .btn-secondary:focus { background: #1A2A57; border-color: #1A2A57; color: #fff; }
main .btn-outline-secondary { color: var(--ip-navy); border-color: var(--ip-navy); background: #fff; }
main .btn-outline-secondary:hover, main .btn-outline-secondary:focus { background: var(--ip-navy); border-color: var(--ip-navy); color: #fff; }
/* Bootstrap 5.1 без переменных кнопок — цвета при наведении задаём явно */
main .btn-success:hover, main .btn-success:focus { background: #18704A; border-color: #18704A; }
main .btn-warning:hover, main .btn-warning:focus { background: #DCA500; border-color: #DCA500; color: var(--ip-ink); }
main .btn-info:hover, main .btn-info:focus { background: #0B6884; border-color: #0B6884; color: #fff; }
main .form-range::-webkit-slider-thumb { background: var(--ip-navy); }
main .form-range::-moz-range-thumb { background: var(--ip-navy); }

/* Отзывы — как заметки на полях */
#reviews .text-center > h2 + p { text-align: left; }
#reviews .bg-light { background: #fff !important; box-shadow: none !important; border-left: 3px solid var(--ip-navy); border-radius: 0 10px 10px 0 !important; padding: 1.25rem 1.4rem !important; }
#reviews .fst-italic { font-family: 'Literata', Georgia, serif; font-size: 1.05rem; line-height: 1.55; }
#reviews .commentor-detail { color: var(--ip-muted); }
main .bgn_5 { background-color: var(--ip-soft); }
main .accordion-button { font-weight: 600; }
main .accordion-button:not(.collapsed) { background: var(--ip-soft); color: var(--ip-ink); box-shadow: none; }

@media (max-width: 575.98px) {
    /* таблицы цен: Golos шире Roboto — уже поля и чуть меньше цифры, чтобы таблица не вылезала из карточки */
    #price .table td, #price .table th { padding-left: .3rem; padding-right: .3rem; }
    #price .table .fs-5 { font-size: 1.05rem !important; }
    #rewrite-calc td { white-space: normal !important; }
}
