/* Newpark Dentistry — payments.css
   Loaded by functions.php. See style.css for the full section index. */

/* =============================================================
   31. SECURE PAYMENTS
   ============================================================= */

body:has(.payment-page) {
  background: var(--np-page) !important;
}

@media (min-width: 1025px) {
  body:has(.payment-page) #masthead,
  body:has(.payment-page) .site-header {
    position: relative !important;
  }

  body:has(.payment-page) .site-main-header-wrap,
  body:has(.payment-page) .site-header-row-container-inner,
  body:has(.payment-page) .kadence-sticky-header.item-at-start,
  body.transparent-header:has(.payment-page)
  .kadence-sticky-header.item-at-start .site-main-header-wrap,
  body.transparent-header:has(.payment-page)
  .kadence-sticky-header.item-at-start .site-header-row-container-inner {
    background: var(--np-page) !important;
  }

  body:has(.payment-page) .site-branding img,
  body.transparent-header:has(.payment-page)
  .kadence-sticky-header.item-at-start .site-branding img {
    filter: none !important;
  }

  body:has(.payment-page)
  .main-navigation .primary-menu-container > ul > li > a,
  body.transparent-header:has(.payment-page)
  .kadence-sticky-header.item-at-start
  .main-navigation .primary-menu-container > ul > li > a {
    color: #5d6e67 !important;
    text-shadow: none !important;
  }
}

.payment-page {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: clamp(24px, 2.5vw, 40px) !important;
  padding-bottom: clamp(72px, 6vw, 92px) !important;
}

.payment-page > .kt-row-column-wrap {
  width: min(850px, 92vw) !important;
  margin-inline: auto !important;
  text-align: left !important;
  padding: clamp(32px, 4vw, 48px) !important;
  background: var(--np-white) !important;
  border: 1px solid var(--np-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--np-shadow-soft) !important;
}

.payment-title {
  font-size: var(--np-h2) !important;
  line-height: 1.14 !important;
  margin-bottom: 14px !important;
}

.payment-intro {
  max-width: none !important;
  font-size: var(--np-body-size) !important;
  line-height: 1.62 !important;
}

.payment-button {
  margin: 22px 0 !important;
}

.payment-button a {
  display: inline-flex !important;
  width: auto !important;
  min-width: 220px !important;
  justify-content: center !important;
  padding: 14px 36px !important;
  font-size: 1.0625rem !important;
}

.payment-info {
  max-width: none !important;
  margin: 28px 0 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

.payment-secure-note {
  font-size: 0.875rem !important;
  color: var(--np-body) !important;
  opacity: 0.75;
}

.payment-info a {
  color: var(--np-heading) !important;
  text-decoration: none !important;
}

.payment-info a:hover {
  text-decoration: underline !important;
}