/* Product page specific additions layered on top of the shared dc-theme */

body.tactical-page .content {
  text-align: center;
}

body.tactical-page .content p,
body.tactical-page .content ul,
body.tactical-page .content ol {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

body.tactical-page .content > * {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

/* Product-focused overrides layered on top of the shared dc-theme */

body.dc-theme.centered-page main {
  width: min(960px, 100% - 2.5rem);
}

body.dc-theme .content {
  text-align: center;
}

body.dc-theme .content p {
  margin-left: auto;
  margin-right: auto;
}

body.dc-theme .content p,
body.dc-theme .content ul,
body.dc-theme .content ol {
  text-align: center;
}

body.dc-theme .product-title {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0.2rem auto 0.8rem;
}

body.dc-theme .products-stack a[href^="/products/"],
body.dc-theme .product-entry a[href^="/products/"] {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(182, 210, 255, 0.25);
  color: #e5edff;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.65rem;
  border-radius: 10px;
}

body.dc-theme .products-stack a[href^="/products/"]:hover,
body.dc-theme .product-entry a[href^="/products/"]:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(214, 230, 255, 0.35);
  color: #ffffff;
  text-decoration: none;
}

body.dc-theme .products-stack {
  width: min(880px, 100%);
}

body.dc-theme .product-entry {
  border-color: rgba(153, 208, 255, 0.2);
  background: rgba(8, 12, 20, 0.85);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.4);
}

body.dc-theme .product-entry p {
  color: rgba(229, 233, 246, 0.92);
  text-align: center;
}

body.dc-theme .product-entry p:first-child {
  color: #e5edff;
}

body.dc-theme .product-entry a[href^="/products/"] {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(153, 208, 255, 0.3);
  color: #e6edff;
}

body.dc-theme .product-entry a[href^="/products/"]:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(214, 230, 255, 0.42);
  color: #ffffff;
}

/* Payment widget tweaks */

body.dc-theme .sumup-checkout {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

body.dc-theme .sumup-checkout__summary {
  text-align: center;
  border: none;
  background: transparent;
  padding: 0.1rem 0 0.25rem;
}

body.dc-theme .sumup-checkout__summary-list {
  list-style: none;
  padding: 0;
}

body.dc-theme .sumup-checkout__details {
  text-align: center;
}

body.dc-theme .sumup-checkout__summary-list li::before {
  display: none;
}

body.dc-theme .sumup-checkout__terms--inline {
  display: block;
  margin: 0.15rem auto 0;
  text-align: center;
}

body.dc-theme .sumup-checkout__terms-short {
  white-space: nowrap;
}

body.dc-theme .sumup-checkout__terms {
  width: 100%;
}

body.dc-theme .sumup-checkout__summary-refunds {
  text-align: center;
  margin: 0;
}

body.dc-theme .sumup-checkout__investment {
  text-align: center;
}

body.dc-theme .sumup-checkout__terms a,
body.dc-theme .sumup-checkout__summary-refunds a {
  display: inline;
  padding: 0;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 640px) {
  body.dc-theme .content {
    margin-left: auto;
    margin-right: auto;
  }
}
