/* FAQ & policies page */
.faq-page { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, .7fr); gap: clamp(24px, 4vw, 48px); align-items: start; }
.faq-help {
  position: sticky;
  top: calc(var(--nav-h) + 24px);
  display: grid;
  gap: 14px;
  justify-items: start;
  padding: 28px;
  border-radius: var(--radius-lg);
  background: var(--cream);
}
.faq-help p { margin: 0; }
.policy-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px; }
.policy-card { padding: 26px; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid #f1e8de; }
.policy-card h3 { font-size: 1.3rem; }
.policy-card p { margin: 10px 0 0; }

/* Bridal & events page */
.package-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 22px; }
.package-card { display: grid; grid-template-rows: auto 1fr; overflow: hidden; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid #f1e8de; transition: transform .35s ease, box-shadow .35s ease; }
.package-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.package-card img { width: 100%; aspect-ratio: 4 / 3; }
.package-body { display: grid; gap: 10px; align-content: start; padding: 20px 22px 22px; }
.package-body p { margin: 0; font-size: .94rem; }
.package-foot { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: auto; padding-top: 12px; border-top: 1px solid #f1e8de; }
.package-foot strong { color: var(--bronze); font-size: .92rem; }

.steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; counter-reset: none; }
.steps li { position: relative; padding: 30px 26px 26px; border-radius: var(--radius-lg); background: var(--surface); border: 1px solid #f1e8de; }
.steps li span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: var(--cream);
  color: var(--bronze);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.3rem;
  font-weight: 600;
}
.steps li p { margin: 10px 0 0; }

.enquiry-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(28px, 5vw, 64px); align-items: start; }
.enquiry-copy { display: grid; gap: 18px; justify-items: start; position: sticky; top: calc(var(--nav-h) + 24px); }
.enquiry-copy p { margin: 0; }
.enquiry-card { padding: clamp(22px, 3vw, 34px); border-radius: var(--radius-xl); background: var(--surface); border: 1px solid #f1e8de; box-shadow: var(--soft-shadow); }
.enquiry-card .optional { color: var(--muted); font-weight: 500; }
.enquiry-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }

@media (max-width: 900px) {
  .faq-page, .enquiry-layout { grid-template-columns: 1fr; }
  .faq-help, .enquiry-copy { position: static; }
  .steps { grid-template-columns: 1fr; }
}
