/* =========================================================
   WHIMSY READ — FAQ
   Designed to pair with Fraunces + Literata and the existing
   Whimsy Read palette.
   ========================================================= */
.wr-faq-card {
    --wr-faq-paper:#fff;
    --wr-faq-lavender:#faf7ff;
    --wr-faq-border:#e5dcf4;
    --wr-faq-purple:#6842b8;
    --wr-faq-purple-dark:#55349d;
    --wr-faq-ink:#20233d;
    --wr-faq-muted:#666277;
    margin: 48px 0 52px;
    background: linear-gradient(135deg, #fbf9ff 0%, #f7f2ff 100%);
    border: 1px solid var(--wr-faq-border);
    border-radius: 16px;
    box-shadow: 0 12px 35px rgba(91,63,170,.055);
    overflow: hidden;
}
.wr-faq-inner { padding: 30px 32px 34px; }
.wr-faq-kicker {
    display:flex;
    align-items:center;
    gap:9px;
    font-family:'IBM Plex Mono', monospace;
    font-size:10.5px;
    font-weight:600;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:var(--wr-faq-purple);
}
.wr-faq-kicker-line { width:30px; height:2px; background:var(--wr-faq-purple); opacity:.75; }
.wr-faq-spark { margin-left:auto; font-size:15px; opacity:.7; }
.wr-faq-title {
    margin:8px 0 22px !important;
    font-family:'Fraunces', Georgia, serif !important;
    font-size:clamp(24px, 2.2vw, 31px) !important;
    line-height:1.18 !important;
    font-weight:500 !important;
    letter-spacing:-.015em !important;
    color:var(--wr-faq-ink) !important;
}
.wr-faq-list { background:rgba(255,255,255,.72); border:1px solid var(--wr-faq-border); border-radius:12px; overflow:hidden; }
.wr-faq-item + .wr-faq-item { border-top:1px solid var(--wr-faq-border); }
.wr-faq-question {
    width:100%;
    display:grid;
    grid-template-columns:30px 1fr 20px;
    align-items:center;
    gap:10px;
    border:0;
    background:transparent;
    color:var(--wr-faq-purple-dark);
    text-align:left;
    cursor:pointer;
    padding:17px 18px;
    font-family:'Fraunces', Georgia, serif;
    font-size:16px;
    line-height:1.35;
    font-weight:560;
}
.wr-faq-question:hover { background:#fcfaff; }
.wr-faq-question:focus-visible { outline:2px solid #8a65d0; outline-offset:-2px; }
.wr-faq-icon {
    width:24px; height:24px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    border:1px solid #d6c7ef;
    color:var(--wr-faq-purple);
    font-family:Arial,sans-serif;
    font-size:17px;
    font-weight:400;
}
.wr-faq-chevron { font-family:Arial,sans-serif; font-size:16px; color:#877c9a; transform:translateY(-2px); transition:transform .2s ease; }
.wr-faq-item.is-open .wr-faq-chevron { transform:rotate(180deg) translateY(2px); }
.wr-faq-answer { padding:0 50px 20px 58px; }
.wr-faq-answer-inner {
    font-family:'Literata', Georgia, serif;
    font-size:14.5px;
    line-height:1.75;
    color:var(--wr-faq-muted);
    max-width:760px;
}
.wr-faq-answer-inner p { margin:0 0 10px; }
.wr-faq-answer-inner p:last-child { margin-bottom:0; }
.wr-faq-answer-inner a { color:var(--wr-faq-purple-dark); }
@media (max-width:767px) {
    .wr-faq-card { margin:38px 0 42px; border-radius:12px; }
    .wr-faq-inner { padding:23px 16px 25px; }
    .wr-faq-title { font-size:24px !important; margin-bottom:17px !important; }
    .wr-faq-question { grid-template-columns:27px 1fr 17px; padding:15px 12px; font-size:15px; gap:8px; }
    .wr-faq-answer { padding:0 15px 17px 47px; }
    .wr-faq-answer-inner { font-size:13.8px; line-height:1.7; }
}
