/* Loaded after CMS page styles so static content gets consistent spacing. */
.prose .faq-item:has(> h3) {
  padding: 1rem 1.5rem;
  margin-block: .75rem;
  border-radius: 8px;
}
.prose .faq-item > h3 { margin: 0 0 .65rem; line-height: 1.5; }
.prose .faq-item > p:last-child { margin-bottom: 0; }
.prose .faq-item { overflow-wrap: anywhere; }
.prose th, .prose td { padding: .8rem 1rem; }
.prose .card { padding: 1.4rem; }
.whatsapp-float {
  right: max(20px, env(safe-area-inset-right));
  bottom: calc(20px + env(safe-area-inset-bottom));
  width: 56px;
  height: 56px;
  min-height: 56px;
  padding: 0;
  border-radius: 50%;
  background: #128c4a;
  box-shadow: 0 4px 16px #0003;
}
.whatsapp-float svg { width: 32px; height: 32px; }
.whatsapp-float:hover { color: #fff; background: #08783d; }
.whatsapp-float:focus-visible, .back-to-top:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.back-to-top {
  right: max(25px, env(safe-area-inset-right));
  bottom: calc(88px + env(safe-area-inset-bottom));
  border-radius: 50%;
}
.consent-banner {
  width: min(340px, calc(100vw - 108px));
  left: max(12px, env(safe-area-inset-left));
  bottom: calc(12px + env(safe-area-inset-bottom));
  padding: .8rem;
  border-radius: 10px;
}
.consent-banner p { font-size: .82rem; line-height: 1.6; margin-bottom: .6rem; }
.consent-banner .btn { min-height: 44px; padding: .45rem .8rem; font-size: .85rem; }
.consent-banner > div { flex-wrap: wrap; gap: .5rem; }
@media (max-width: 600px) {
  .prose .faq-item:has(> h3) { padding: 1rem; }
  .prose .card { padding: 1rem; }
  .prose th, .prose td { padding: .65rem .8rem; }
}
