﻿/* Shared FAQ presentation for migrated and redesigned public pages. */
.public-faq {
    background: #f4f7fa;
    color: #18354a;
    font-family: Montserrat, Arial, sans-serif;
    padding: clamp(54px, 7vw, 92px) 24px;
}

.public-faq__container {
    display: grid;
    gap: clamp(30px, 5vw, 72px);
    grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
    margin: 0 auto;
    max-width: 1180px;
}

.public-faq__header h2 {
    color: #18354a;
    font-size: clamp(30px, 4vw, 52px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.08;
    margin: 10px 0 0;
}

.public-faq__eyebrow {
    color: #1475a6;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .12em;
    margin: 0;
    text-transform: uppercase;
}

.public-faq__introduction {
    color: #506878;
    font-size: 16px;
    line-height: 1.7;
    margin: 22px 0 0;
}

.public-faq__item {
    border-bottom: 1px solid #cbd7df;
    margin: 0;
}

.public-faq__item:first-child {
    border-top: 1px solid #cbd7df;
}

.public-faq__item summary {
    align-items: center;
    color: #18354a;
    cursor: pointer;
    display: flex;
    font-size: clamp(17px, 1.6vw, 20px);
    font-weight: 700;
    justify-content: space-between;
    line-height: 1.4;
    list-style: none;
    padding: 22px 46px 22px 0;
    position: relative;
}

.public-faq__item summary::-webkit-details-marker { display: none; }

.public-faq__item summary::after {
    color: #1475a6;
    content: "+";
    font-size: 30px;
    font-weight: 400;
    position: absolute;
    right: 8px;
    top: 14px;
}

.public-faq__item[open] summary::after { content: "−"; }

.public-faq__item summary:focus-visible {
    outline: 3px solid #f0b323;
    outline-offset: 4px;
}

.public-faq__answer {
    color: #506878;
    font-size: 16px;
    line-height: 1.75;
    max-width: 760px;
    padding: 0 46px 24px 0;
}

@media (max-width: 760px) {
    .public-faq { padding-left: 20px; padding-right: 20px; }
    .public-faq__container { grid-template-columns: 1fr; }
}
