/* Loaded only by faq-page.php. All rules are scoped to .mpfaq. */
.mpfaq {
    --mpfaq-blue: #23376e;
    --mpfaq-gold: #fcbc6b;
    --mpfaq-ink: #263248;
    --mpfaq-muted: #526078;
    color: var(--mpfaq-ink);
    background: #fff;
    font-size: 17px;
    line-height: 1.65;
    overflow-wrap: anywhere;
}
.mpfaq *, .mpfaq *::before, .mpfaq *::after { box-sizing: border-box; }
.mpfaq .mpfaq-container { width: min(920px, calc(100% - 40px)); margin-inline: auto; }
.mpfaq .mpfaq-main { width: 100%; max-width: none; padding: 0; margin: 0; }
.mpfaq h1, .mpfaq h2 { color: var(--mpfaq-blue); font-weight: 700; line-height: 1.2; letter-spacing: normal; text-align: left; text-transform: none; }
.mpfaq h1 { margin: 0 0 20px; font-size: clamp(30px, 3.7vw, 48px); }
.mpfaq h2 { margin: 0; font-size: clamp(20px, 2.2vw, 25px); }
.mpfaq p { margin: 0 0 16px; }
.mpfaq .mpfaq-hero { padding-block: 56px 52px; border-bottom: 3px solid var(--mpfaq-gold); background: #eef2f8; }
.mpfaq .mpfaq-section { padding-block: 52px 56px; }
.mpfaq .mpfaq-rich > :first-child { margin-top: 0; }
.mpfaq .mpfaq-rich > :last-child { margin-bottom: 0; }
.mpfaq .mpfaq-rich ul, .mpfaq .mpfaq-rich ol { margin: 12px 0; padding-left: 24px; }
.mpfaq .mpfaq-rich li { margin-bottom: 8px; }
.mpfaq .mpfaq-intro { max-width: 780px; font-size: 19px; }
.mpfaq .mpfaq-item { margin-bottom: 12px; border: 1px solid #dce2ed; border-radius: 10px; background: #fff; color: var(--mpfaq-ink); }
.mpfaq .mpfaq-item summary { display: block; padding: 20px 56px 20px 24px; position: relative; cursor: pointer; list-style: none; }
.mpfaq .mpfaq-item summary::-webkit-details-marker { display: none; }
.mpfaq .mpfaq-item summary::after { content: '+'; position: absolute; top: 50%; right: 24px; color: var(--mpfaq-blue); font-size: 30px; font-weight: 400; line-height: 1; transform: translateY(-50%); }
.mpfaq .mpfaq-item[open] summary { border-bottom: 1px solid #dce2ed; }
.mpfaq .mpfaq-item[open] summary::after { content: '−'; }
.mpfaq .mpfaq-answer { padding: 20px 24px; }
.mpfaq .mpfaq-contact { padding-block: 56px; background: var(--mpfaq-blue); color: #fff; }
.mpfaq .mpfaq-contact h2, .mpfaq .mpfaq-contact .mpfaq-rich { color: #fff; }
.mpfaq .mpfaq-contact h2 { margin-bottom: 20px; font-size: clamp(25px, 2.7vw, 34px); }
.mpfaq :focus-visible { outline: 3px solid #ad6314; outline-offset: 4px; }
@media (max-width: 640px) {
    .mpfaq { font-size: 16px; }
    .mpfaq .mpfaq-container { width: calc(100% - 32px); }
    .mpfaq .mpfaq-hero, .mpfaq .mpfaq-section, .mpfaq .mpfaq-contact { padding-block: 36px; }
    .mpfaq .mpfaq-item summary { padding: 18px 48px 18px 18px; }
    .mpfaq .mpfaq-item summary::after { right: 18px; }
    .mpfaq .mpfaq-answer { padding: 18px; }
}
/* 07.10.2026: заголовки вопросов FAQ — 20px (рекомендация TRINET) */
.mpfaq h2.mpfaq-question { font-size: 20px; }
