/* Shared foundation for dedicated service pages (V4). */

.service-detail-page .phase4-page.service-page {
  padding-bottom: clamp(3rem, 6vw, 5rem);
}

.service-detail-page[class*="service-page--"] .phase4-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgb(var(--color-bg-rgb, 248 250 252) / 0.52) 0%,
    rgb(var(--color-bg-rgb, 248 250 252) / 0.38) 40%,
    rgb(var(--color-bg-rgb, 248 250 252) / 0.48) 100%
  );
}

[data-theme="dark"] .service-detail-page[class*="service-page--"] .phase4-page::before {
  background: linear-gradient(
    180deg,
    rgb(15 23 42 / 0.75) 0%,
    rgb(15 23 42 / 0.55) 45%,
    rgb(15 23 42 / 0.72) 100%
  );
}

.service-article {
  position: relative;
  z-index: 0;
}

/* FAQ accordion (shared with global site.js) */
.service-detail-page[class*="service-page--"] .faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: var(--space-3);
  padding: 0;
  border: none;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: start;
  cursor: pointer;
}

.service-detail-page[class*="service-page--"] .faq-answer:not(.wfa-faq__panel) {
  padding-block: 0 var(--space-3);
}

.service-detail-page[class*="service-page--"] .faq-answer p {
  margin: 0;
  line-height: 1.75;
}
