/* Homepage radius system. Loaded only by index.html; shared pages stay unchanged. */
:root {
  --radius-control: 12px;
  --radius-small: 16px;
  --radius-card: 24px;
  --radius-feature: 32px;
}

.occasion-explorer { border-radius: var(--radius-feature); }
.inquiry-form,
.marquee-tile { border-radius: var(--radius-card); }
.conditional-fields,
.form-status { border-radius: var(--radius-small); }
.privacy-note { border-radius: 0 var(--radius-small) var(--radius-small) 0; }
.field input,
.field select,
.field textarea { border-radius: var(--radius-control); }

/* The outer FAQ alone owns the visible shape; the question supplies its height. */
.faq-item { border-radius: var(--faq-closed-radius, var(--pill)); }
.faq-item.is-open { border-radius: var(--radius-card); }
.faq-item h4,
.faq-question { border-radius: inherit; }

.occasion-tab { border-radius: var(--pill); }
.occasion-tab.is-active { border-radius: var(--radius-card); }
.occasion-mobile-card-bg { border-radius: 28px; /* Half of the 56px side cap. */ }
.occasion-mobile-card[data-mobile-slot="current"] .occasion-mobile-card-bg {
  border-radius: var(--radius-card);
}

@media (max-width: 980px) {
  :root { --radius-feature: 24px; }
  .service-grid,
  .occasion-explorer { border-radius: var(--radius-card); }
}

@media (prefers-reduced-motion: reduce) {
  .faq-item,
  .faq-item.reveal { transition: none; }
}
