/* Existing public FAQ blocks, in the same style as the memorial overview.
   Only .hw-faq is affected; existing accordion JavaScript remains in use. */
body.heiremans-warm .hw-faq-wrap { padding-inline: 24px; }
body.heiremans-warm .hw-faq {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.35fr);
    max-width: var(--hw-block-width, 1240px);
    margin: var(--hw-block-gap, 32px) auto;
    padding: 32px 0;
    column-gap: 80px;
    row-gap: 24px;
    color: var(--hw-ink, #3e4538);
    text-align: left;
}
body.heiremans-warm .hw-faq__intro,
body.heiremans-warm .hw-faq__items { min-width: 0; }
body.heiremans-warm .hw-faq__intro h2 {
    margin: 0 0 18px;
    color: var(--hw-ink);
    font: 600 clamp(26px, 2.8vw, 34px)/1.25 var(--hw-font);
    letter-spacing: -.025em;
}
body.heiremans-warm .hw-faq__intro .page-content {
    color: var(--hw-muted);
    font-size: 14px;
}
body.heiremans-warm .hw-faq .page-content > :last-child { margin-bottom: 0; }
body.heiremans-warm .hw-faq__items.faq__accordion {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}
body.heiremans-warm .hw-faq .faq__accordion__item {
    margin: 0;
    border: 0;
    border-bottom: 1px solid var(--hw-line);
    background: transparent;
    border-radius: 0;
}
body.heiremans-warm .hw-faq .faq__accordion__item:first-child {
    border-top: 1px solid var(--hw-line);
}
body.heiremans-warm .hw-faq .faq__accordion__item__title {
    position: relative;
    padding: 21px 36px 21px 0;
    color: var(--hw-ink);
    font: 600 14px/1.6 var(--hw-font);
    overflow-wrap: anywhere;
}
body.heiremans-warm .hw-faq .faq__accordion__item__title i {
    right: 6px;
    color: var(--hw-olive);
}
/* Draw the chevron without depending on an icon-font download. */
body.heiremans-warm .hw-faq .faq__accordion__item__title i::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
body.heiremans-warm .hw-faq button.js-accordion-toggle {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
}
body.heiremans-warm .hw-faq button.js-accordion-toggle:focus-visible {
    outline: 3px solid #7b8654;
    outline-offset: -4px;
}
body.heiremans-warm .hw-faq .faq__accordion__item__content {
    padding: 0 30px 22px 0;
    color: var(--hw-muted);
    font: 400 14px/1.8 var(--hw-font);
    overflow-wrap: anywhere;
}
body.heiremans-warm .hw-faq__after {
    grid-column: 1 / -1;
    color: var(--hw-muted);
    font-size: 14px;
}
body.heiremans-warm .hw-faq--no-intro { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 1000px) {
    body.heiremans-warm .hw-faq { column-gap: 36px; }
}
@media (max-width: 767px) {
    body.heiremans-warm .hw-faq-wrap { padding-inline: 18px; }
    body.heiremans-warm .hw-faq { grid-template-columns: minmax(0, 1fr); padding: 20px 0; gap: 24px; }
    body.heiremans-warm .hw-faq .faq__accordion__item__title { font-size: 13px; padding-top: 18px; padding-bottom: 18px; }
    body.heiremans-warm .hw-faq .faq__accordion__item__content { font-size: 13px; }
}
