/* ════════════════════════════════════════════════════════════════
   Schafer Method — Kajabi Checkout Branding Override
   Pine DS / Sage classes extracted from live checkout HTML
   ════════════════════════════════════════════════════════════════ */

@import url("https://api.fontshare.com/v2/css?f[]=satoshi@900,700,500,400&display=swap");

/* ── Design tokens ──────────────────────────────────────────── */
:root {
  --sm-navy:      rgb(19, 29, 42);
  --sm-navy-deep: rgb(15, 23, 34);
  --sm-ball:      rgb(223, 255, 41);
  --sm-white-16:  rgba(255, 255, 255, .16);
  --sm-white-40:  rgba(255, 255, 255, .4);
  --sm-font:      "Satoshi", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* ── Page & body ────────────────────────────────────────────── */
html { background: var(--sm-navy) !important; }
body,
body#encore-theme {
  background: var(--sm-navy) !important;
  font-family: var(--sm-font) !important;
  color: #fff !important;
}
main { background: var(--sm-navy) !important; }

/* kill default white section backgrounds */
.section,
.section.background-white,
.background-white { background: var(--sm-navy) !important; }
.section__overlay { background: transparent !important; }

/* ── Header ─────────────────────────────────────────────────── */
.header {
  background: rgba(15, 23, 34, .85) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid var(--sm-white-16) !important;
}
.header a,
.header .dropdown__trigger,
.header a.link-list__link {
  color: #fff !important;
  font-family: var(--sm-font) !important;
}

/* ── Checkout outer wrapper ──────────────────────────────────── */
.kjb-embedded-checkout { background: transparent !important; }

div.embedded-checkout.sage-scoped {
  background: var(--sm-navy) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow:
    inset 0 0 0 1px var(--sm-white-16),
    0 24px 80px rgba(0, 0, 0, .45) !important;
  /* override Kajabi box-shadow from settings */
}

/* ── Pine DS color tokens (scoped to checkout) ──────────────── */
.embedded-checkout.sage-scoped,
.kjb-embedded-checkout {
  --pine-color-background-container: var(--sm-navy) !important;
  --pine-color-background-muted:     var(--sm-navy-deep) !important;
  --pine-color-text:                 #fff !important;
  --pine-color-text-subtle:          rgba(255, 255, 255, .55) !important;
  --pine-color-border:               var(--sm-white-16) !important;
  --pine-color-border-default:       var(--sm-white-16) !important;
  --embedded-checkout-primary-color: var(--sm-ball) !important;
}

/* ── Offer block (top: image + title + price) ────────────────── */
.embedded-checkout-price-display {
  background: var(--sm-navy-deep) !important;
  padding: 24px 24px 20px !important;
}
h4#offer-title,
.t-sage-heading-4 {
  color: #fff !important;
  font-family: var(--sm-font) !important;
  font-weight: 700 !important;
}
span#offer-price,
.embedded-checkout-price-display__offer-price {
  color: var(--sm-ball) !important;
  font-family: var(--sm-font) !important;
  font-style: italic !important;
  font-weight: 900 !important;
}
.embedded-checkout-price-display__image-container img {
  border-radius: 10px !important;
  opacity: .9 !important;
}

/* EUR badge */
.sage-badge,
.sage-badge.sage-badge--draft {
  background: rgba(255, 255, 255, .1) !important;
  color: rgba(255, 255, 255, .6) !important;
  border: none !important;
  border-radius: 4px !important;
}
.sage-badge__value-text { color: rgba(255, 255, 255, .6) !important; }

/* ── Section headers: Contact / Payment / Summary ─────────────── */
.embedded-checkout__fieldset {
  border: none !important;
  border-top: 1px solid var(--sm-white-16) !important;
  margin: 0 !important;
  padding: 20px 24px !important;
}
legend.embedded-checkout__legend,
h6.embedded-checkout__legend {
  color: rgba(255, 255, 255, .45) !important;
  font-family: var(--sm-font) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  padding-bottom: 12px !important;
}

/* ── Email input (pds-input web component) ───────────────────── */
pds-input {
  --pine-color-background-container: var(--sm-navy-deep) !important;
  --pine-color-border-default:       rgba(255, 255, 255, .2) !important;
  --pine-color-text:                 #fff !important;
  --pine-color-text-placeholder:     rgba(255, 255, 255, .35) !important;
}
.pds-input__label,
.pds-input__label span {
  color: rgba(255, 255, 255, .55) !important;
  font-family: var(--sm-font) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
}
.pds-input__field {
  background: var(--sm-navy-deep) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, .2) !important;
  border-radius: 10px !important;
  font-family: var(--sm-font) !important;
  font-size: 15px !important;
}
.pds-input__field:focus,
.pds-input__field:focus-visible {
  border-color: var(--sm-ball) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(223, 255, 41, .18) !important;
}

/* ── Checkboxes ─────────────────────────────────────────────── */
.sage-checkbox__label {
  color: rgba(255, 255, 255, .65) !important;
  font-family: var(--sm-font) !important;
  font-size: 13px !important;
}
.sage-checkbox__input {
  accent-color: var(--sm-ball) !important;
}

/* ── Stripe iframe wrapper ────────────────────────────────────── */
.elements-wrapper,
#payment-elements-wrapper {
  background: transparent !important;
}

/* ── Summary (order items) ────────────────────────────────────── */
.embedded-checkout__summary,
.embedded-checkout__summary--mobile {
  background: transparent !important;
  border-top: 1px solid var(--sm-white-16) !important;
  padding: 20px 24px !important;
}
.embedded-checkout-price-summary { background: transparent !important; }
.embedded-checkout-price-summary__divider {
  background: var(--sm-white-16) !important;
  border: none !important;
  height: 1px !important;
  margin: 12px 0 !important;
}

/* offer item name & price text */
pds-text { color: #fff !important; --pine-color-text: #fff !important; }

/* "Due now" row */
.embedded-checkout-price-detail h4.t-sage-heading-4 {
  color: rgba(255, 255, 255, .7) !important;
  font-family: var(--sm-font) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}
.embedded-checkout-price-detail .sage-frame--align-center-right .t-sage-heading-4,
.embedded-checkout-price-detail span.t-sage-heading-4 {
  color: var(--sm-ball) !important;
  font-style: italic !important;
  font-weight: 900 !important;
  font-family: var(--sm-font) !important;
}

/* offer thumbnail box */
.order-bump__thumbnail {
  --color-background-box: var(--sm-navy-deep) !important;
  border-color: var(--sm-white-16) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

/* ── Pay button ─────────────────────────────────────────────── */
.embedded-checkout__cta { padding: 20px 24px !important; }

button.sage-btn.sage-btn--primary,
.sage-btn.sage-btn--primary,
.sage-btn--primary {
  background: var(--sm-ball) !important;
  background-color: var(--sm-ball) !important;
  color: var(--sm-navy) !important;
  font-family: var(--sm-font) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: .04em !important;
  border-radius: 100px !important;
  border: none !important;
  height: 52px !important;
  transition: filter .15s, opacity .15s !important;
}
button.sage-btn.sage-btn--primary:hover:not([disabled]) {
  background: var(--sm-ball) !important;
  filter: brightness(1.06) !important;
}
button.sage-btn.sage-btn--primary[disabled] {
  opacity: .35 !important;
}

/* ── Secure checkout footer ────────────────────────────────────── */
footer.embedded-checkout__footer {
  background: transparent !important;
  border-top: 1px solid var(--sm-white-16) !important;
  padding: 16px 24px !important;
}
p.secure-checkout,
.secure-checkout {
  color: rgba(255, 255, 255, .35) !important;
  font-family: var(--sm-font) !important;
  font-size: 12px !important;
  letter-spacing: .02em !important;
}
.secure-checkout pds-icon,
.secure-checkout .sage-icon { opacity: .5 !important; }

/* ── Page footer ─────────────────────────────────────────────── */
.footer,
footer.footer {
  background: var(--sm-navy-deep) !important;
  border-top: 1px solid var(--sm-white-16) !important;
}
.footer .copyright {
  color: rgba(255, 255, 255, .4) !important;
  font-family: var(--sm-font) !important;
  font-size: 12px !important;
}
.footer a,
.footer .link-list__link { color: rgba(255, 255, 255, .65) !important; }
.footer a:hover { color: #fff !important; }

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 1023px) {
  div.embedded-checkout.sage-scoped {
    border-radius: 16px !important;
  }
}
