/* PRATINIUM v483 — checkout premium polish / footerless authority */

/* The checkout deliberately has no institutional footer. */
html body#order #footer,
html body#checkout #footer,
html body.page-order #footer,
html body.page-checkout #footer,
html body.pmp-checkout-ref-v471 #footer,
html body.pmp-checkout-ref-v471 footer#footer,
html body.pmp-checkout-ref-v471 .pf-footer-links--global {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html body.pmp-checkout-ref-v471 {
  --pmp-checkout-navy: #071a3c;
  --pmp-checkout-blue: #078fe8;
  --pmp-checkout-sky: #eaf7ff;
  --pmp-checkout-border: rgba(15, 42, 74, .10);
  --pmp-checkout-shadow: 0 18px 52px rgba(17, 46, 81, .09);
  background: #f5faff !important;
}

/* More breathing room above the checkout introduction after the header was removed. */
html body.pmp-checkout-ref-v471 #wrapper {
  padding-top: 48px !important;
  padding-bottom: 54px !important;
  background:
    radial-gradient(circle at 8% 7%, rgba(60, 174, 244, .10), transparent 24%),
    radial-gradient(circle at 92% 16%, rgba(255, 183, 57, .07), transparent 22%),
    linear-gradient(180deg, #f7fbff 0%, #f3f8fd 100%) !important;
}

html body.pmp-checkout-ref-v471 #wrapper > .container {
  max-width: 1640px !important;
}

html body.pmp-checkout-ref-v471 .pmp-checkout-intro-v470 {
  margin: 0 0 26px !important;
  padding: 0 12px !important;
}

html body.pmp-checkout-ref-v471 .pmp-checkout-intro-v470 p {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #435776 !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: -.01em !important;
}

/* Main checkout column becomes a refined, coherent card. */
html body.pmp-checkout-ref-v471 .checkout-process {
  border: 1px solid var(--pmp-checkout-border) !important;
  border-radius: 30px !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: var(--pmp-checkout-shadow) !important;
  overflow: hidden !important;
}

html body.pmp-checkout-ref-v471 .checkout-step,
html body.pmp-checkout-ref-v471 .checkout-step:first-child,
html body.pmp-checkout-ref-v471 .checkout-step:last-child {
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
}

html body.pmp-checkout-ref-v471 .checkout-step:first-child {
  border-top: 0 !important;
}

html body.pmp-checkout-ref-v471 .checkout-step:last-child {
  border-bottom: 0 !important;
}

html body.pmp-checkout-ref-v471 .checkout-step .step-title {
  min-height: 98px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

html body.pmp-checkout-ref-v471 .checkout-step.pmp-step-current-v468 {
  background: linear-gradient(180deg, rgba(247, 252, 255, .72), #fff 34%) !important;
}

html body.pmp-checkout-ref-v471 .checkout-step .content {
  padding-bottom: 28px !important;
}

/* Payment warning: clearer, premium and less visually harsh. */
html body.pmp-checkout-ref-v471 #checkout-payment-step .alert,
html body.pmp-checkout-ref-v471 #checkout-payment-step .alert-danger {
  margin: 6px 0 24px !important;
  padding: 18px 22px !important;
  border: 1px solid rgba(239, 68, 68, .20) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #fff7f7 0%, #fff1f1 100%) !important;
  color: #c83c3c !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  box-shadow: inset 4px 0 0 rgba(229, 70, 70, .55) !important;
}

/* T&Cs area gets a distinct, comfortable interaction zone. */
html body.pmp-checkout-ref-v471 #conditions-to-approve,
html body.pmp-checkout-ref-v471 .condition-label,
html body.pmp-checkout-ref-v471 .js-terms {
  border-radius: 16px !important;
}

html body.pmp-checkout-ref-v471 #conditions-to-approve {
  margin-top: 8px !important;
  padding: 18px 18px 14px !important;
  border: 1px solid rgba(17, 108, 174, .10) !important;
  background: #fbfdff !important;
}

html body.pmp-checkout-ref-v471 #conditions-to-approve label,
html body.pmp-checkout-ref-v471 #conditions-to-approve .condition-label {
  color: #263a57 !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

html body.pmp-checkout-ref-v471 #conditions-to-approve a {
  color: #0298dc !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

html body.pmp-checkout-ref-v471 #conditions-to-approve a:hover {
  text-decoration: underline !important;
}

html body.pmp-checkout-ref-v471 #conditions-to-approve input[type="checkbox"] {
  width: 25px !important;
  height: 25px !important;
  margin-right: 12px !important;
  accent-color: #078fe8 !important;
}

/* Order CTA */
html body.pmp-checkout-ref-v471 #payment-confirmation .btn,
html body.pmp-checkout-ref-v471 #payment-confirmation button,
html body.pmp-checkout-ref-v471 .ps-shown-by-js .btn-primary {
  min-width: 220px !important;
  min-height: 56px !important;
  border: 0 !important;
  border-radius: 15px !important;
  padding: 0 30px !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
  box-shadow: 0 12px 28px rgba(7, 143, 232, .20) !important;
}

html body.pmp-checkout-ref-v471 #payment-confirmation .btn:not(:disabled),
html body.pmp-checkout-ref-v471 #payment-confirmation button:not(:disabled) {
  background: linear-gradient(135deg, #079ce9, #0877d7) !important;
  color: #fff !important;
}

html body.pmp-checkout-ref-v471 #payment-confirmation .btn:disabled,
html body.pmp-checkout-ref-v471 #payment-confirmation button:disabled {
  background: #edf1f5 !important;
  color: #aab3bf !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* Premium summary rail */
html body.pmp-checkout-ref-v471 #js-checkout-summary,
html body.pmp-checkout-ref-v471 .cart-summary {
  border: 1px solid rgba(18, 55, 91, .08) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 22px 58px rgba(19, 50, 84, .10) !important;
  overflow: hidden !important;
}

html body.pmp-checkout-ref-v471 .pmp-summary-title-v470 {
  margin: 16px 16px 10px !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(10, 142, 226, .08) !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #e9f7ff 0%, #f4fbff 100%) !important;
  color: var(--pmp-checkout-navy) !important;
}

html body.pmp-checkout-ref-v471 .cart-summary-totals,
html body.pmp-checkout-ref-v471 .cart-summary-subtotals-container,
html body.pmp-checkout-ref-v471 .cart-summary-products {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.pmp-checkout-ref-v471 .cart-total {
  margin: 18px !important;
  padding: 20px 22px !important;
  border-radius: 17px !important;
  background: linear-gradient(135deg, #edf8ff 0%, #f7fbff 100%) !important;
}

/* Reassurance sits as a clean secondary panel rather than loose text. */
html body.pmp-checkout-ref-v471 .pmp-checkout-reassurance-v468,
html body.pmp-checkout-ref-v471 #block-reassurance,
html body.pmp-checkout-ref-v471 .block-reassurance {
  margin-top: 20px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(15, 42, 74, .07) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .68) !important;
  box-shadow: 0 12px 34px rgba(15, 42, 74, .04) !important;
}

@media (min-width: 992px) {
  html body.pmp-checkout-ref-v471 #js-checkout-summary,
  html body.pmp-checkout-ref-v471 .cart-summary {
    position: sticky !important;
    top: 24px !important;
  }
}

@media (max-width: 991.98px) {
  html body.pmp-checkout-ref-v471 #wrapper {
    padding-top: 30px !important;
    padding-bottom: 34px !important;
  }
  html body.pmp-checkout-ref-v471 #wrapper > .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  html body.pmp-checkout-ref-v471 .pmp-checkout-intro-v470 {
    margin-bottom: 18px !important;
    padding: 0 4px !important;
  }
  html body.pmp-checkout-ref-v471 .pmp-checkout-intro-v470 p {
    font-size: 17px !important;
  }
  html body.pmp-checkout-ref-v471 .checkout-process {
    border-radius: 22px !important;
  }
}

@media (max-width: 575.98px) {
  html body.pmp-checkout-ref-v471 #wrapper {
    padding-top: 22px !important;
  }
  html body.pmp-checkout-ref-v471 .checkout-step {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  html body.pmp-checkout-ref-v471 .checkout-step .step-title {
    gap: 12px !important;
    min-height: 88px !important;
  }
  html body.pmp-checkout-ref-v471 .pmp-step-label-v468 {
    font-size: 18px !important;
  }
  html body.pmp-checkout-ref-v471 .pmp-step-subtitle-v468 {
    font-size: 13px !important;
  }
}
