/* Norm CRM managed FAQ styles: start */
.ncrm-faq { min-width: 0; overflow-wrap: anywhere; color: var(--template-ink); }
.ncrm-faq__list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 0; }
/* Use the shared card surface and shadow for the whole question/answer pair. */
.ncrm-faq__item { min-width: 0; overflow: hidden; border-radius: 8px; background: var(--template-surface); box-shadow: var(--template-card-shadow, var(--template-shadow-sm)); }
/* Tint the open card beneath its opaque question: full-width answer surface,
 * while the shared prose keeps its readable line width. */
.ncrm-faq__item[open] { background: color-mix(in srgb, var(--template-surface) 40%, var(--template-surface-soft)); }
/* Reset older FAQ-specific typography as well when this CSS overlays a saved theme. */
.ncrm-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; cursor: pointer; list-style: none; font: inherit; }
.ncrm-faq__question { min-width: 0; }
.ncrm-faq__item summary::-webkit-details-marker { display: none; }
.ncrm-faq__item summary::marker { content: ""; }
/* Override the persistent open-state tint in previously saved FAQ styles. */
.ncrm-faq__item[open] summary { background: var(--template-surface); }
.ncrm-faq__item summary:hover, .ncrm-faq__item summary:focus-visible { background: color-mix(in srgb, var(--template-ink) 5%, var(--template-surface)); }
.ncrm-faq__item summary:focus-visible { outline: 2px solid var(--template-primary); outline-offset: -3px; }
.ncrm-faq__chevron { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; background: var(--template-surface); color: var(--template-primary); transition: transform .18s ease, background-color .18s ease; }
.ncrm-faq__chevron svg { width: 18px; height: 18px; flex: 0 0 auto; }
.ncrm-faq__chevron::after { content: none; }
.ncrm-faq__item[open] .ncrm-faq__chevron { transform: rotate(180deg); }
.ncrm-faq__answer { padding: 16px 20px 18px; font: inherit; }
.ncrm-faq__answer > :first-child { margin-top: 0; }
.ncrm-faq__answer > :last-child { margin-bottom: 0; }
.ncrm-faq__answer img { max-width: 100%; height: auto; }
.ncrm-faq__answer figure { margin: 0; }
.ncrm-faq__answer table { max-width: 100%; }
/* Keep dark FAQ surfaces flat, including when overlaying saved theme styles. */
[data-theme="dark"] .ncrm-faq__item,
[data-theme="dark"] .ncrm-faq__item summary,
[data-theme="dark"] .ncrm-faq__answer { box-shadow: none; }
/* NormDisclosure owns height motion across browsers. Reset the older CSS-only
 * transition too when this stylesheet overlays a site's saved theme in preview. */
.marketing-faq-item::details-content,
.ncrm-faq__item::details-content { height: auto; overflow: visible; transition: none; }

/* Native [open] remains set until the closing slide completes. The icon already
 * reflects the requested state, without delaying its return by another 160ms. */
.marketing-faq-item[data-ncrm-details-expanded="false"] .marketing-faq-item__icon,
.ncrm-faq__item[data-ncrm-details-expanded="false"] .ncrm-faq__chevron { transform: rotate(0deg); }

@media (prefers-reduced-motion: reduce) {
  .marketing-faq-item__icon,
  .ncrm-faq__chevron { transition: none; }

  .marketing-faq-item::details-content,
  .ncrm-faq__item::details-content { transition: none; }
}
/* Norm CRM managed FAQ styles: end */
