/* GPH V-M7 Commerce Visual Candidate V1
   Presentation-only modernization for Build & Price, Cart, Checkout, and Shared Cart.
   Scoped to body.gph-vm7-commerce so legacy behavior and unrelated pages remain untouched. */

body.gph-unified-shell.gph-vm7-commerce main {
  --commerce-ink: var(--gph-ink, #1A1728);
  --commerce-ink-soft: var(--gph-ink-soft, #262039);
  --commerce-bone: var(--gph-bone, #F2EDE3);
  --commerce-ivory: var(--gph-ivory, #FAF6EE);
  --commerce-bone-low: var(--gph-bone-low, #E6DED1);
  --commerce-gold: var(--gph-gold, #D9BA62);
  --commerce-gold-hi: var(--gph-gold-hi, #E3C978);
  --commerce-purple: var(--gph-purple, #735DA5);
  --commerce-blue: var(--gph-blue, #4F75C8);
  --commerce-teal: var(--gph-teal, #3EA99F);
  --commerce-line: rgba(26, 23, 40, .12);
  --commerce-line-strong: rgba(26, 23, 40, .20);
  --commerce-copy: rgba(26, 23, 40, .82);
  --commerce-muted: rgba(26, 23, 40, .64);
  --commerce-dark-copy: rgba(250, 246, 238, .78);
  --commerce-card: linear-gradient(150deg, rgba(250, 246, 238, .99), rgba(242, 237, 227, .90));
  --commerce-card-strong: linear-gradient(150deg, rgba(255, 252, 246, 1), rgba(238, 231, 221, .94));
  --commerce-shadow: 0 22px 54px rgba(45, 37, 65, .085), inset 0 1px 0 rgba(255,255,255,.84);
  --commerce-radius: 22px;
  --commerce-control-radius: 13px;
  position: relative;
  overflow-x: clip;
  background: var(--commerce-bone);
  color: var(--commerce-ink);
  font-family: var(--gph-body, "Inter", "Segoe UI", system-ui, sans-serif);
}

body.gph-unified-shell.gph-vm7-commerce main *,
body.gph-unified-shell.gph-vm7-commerce main *::before,
body.gph-unified-shell.gph-vm7-commerce main *::after {
  box-sizing: border-box;
}

body.gph-unified-shell.gph-vm7-commerce main :is(h1,h2,h3) {
  font-family: var(--gph-display, "Sora", "Segoe UI", system-ui, sans-serif);
  text-wrap: balance;
}

body.gph-unified-shell.gph-vm7-commerce main :is(p,li,small,label) {
  text-wrap: pretty;
}

/* Hero */
body.gph-unified-shell.gph-vm7-commerce main > .page-hero {
  position: relative;
  isolation: isolate;
  overflow: clip;
  padding: clamp(82px, 8.5vw, 128px) 0 clamp(72px, 7.5vw, 108px);
  color: var(--commerce-ivory);
  background:
    radial-gradient(circle at 82% 14%, rgba(115, 93, 165, .50), transparent 31%),
    radial-gradient(circle at 12% 88%, rgba(79, 117, 200, .16), transparent 30%),
    linear-gradient(145deg, #171426, var(--commerce-ink) 58%, #211B38);
  border-bottom: 1px solid rgba(217, 186, 98, .18);
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero::after {
  content: "";
  position: absolute;
  width: min(46vw, 620px);
  aspect-ratio: 1;
  right: -13vw;
  top: -38%;
  z-index: -1;
  border: 1px solid rgba(217, 186, 98, .14);
  border-radius: 50%;
  box-shadow:
    0 0 0 72px rgba(217, 186, 98, .025),
    0 0 0 144px rgba(79, 117, 200, .02);
  pointer-events: none;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero .shell {
  position: relative;
  z-index: 1;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero h1 {
  max-width: 980px;
  margin: 0 0 22px;
  color: var(--commerce-ivory);
  background: none;
  -webkit-text-fill-color: currentColor;
  font-size: clamp(2.75rem, 5.7vw, 5.25rem);
  line-height: .99;
  letter-spacing: -.052em;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero p:last-of-type {
  max-width: 780px;
  margin-bottom: 0;
  color: rgba(250, 246, 238, .76);
  font-size: clamp(1rem, 1.45vw, 1.16rem);
  line-height: 1.7;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero .eyebrow {
  color: var(--commerce-gold-hi);
}

/* Main section rhythm */
body.gph-unified-shell.gph-vm7-commerce main > .section {
  padding: clamp(68px, 7vw, 104px) 0;
  background:
    radial-gradient(circle at 94% 8%, rgba(115, 93, 165, .055), transparent 24%),
    var(--commerce-ivory);
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main > .section:nth-of-type(even) {
  background:
    radial-gradient(circle at 5% 92%, rgba(79, 117, 200, .045), transparent 26%),
    var(--commerce-bone);
}

body.gph-unified-shell.gph-vm7-commerce main .muted,
body.gph-unified-shell.gph-vm7-commerce main .step-help {
  color: var(--commerce-muted) !important;
}

/* Buttons */
body.gph-unified-shell.gph-vm7-commerce main .btn {
  min-height: 48px;
  border-radius: 12px;
  font-weight: 800;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

body.gph-unified-shell.gph-vm7-commerce main .btn.primary,
body.gph-unified-shell.gph-vm7-commerce main .btn.light {
  border-color: transparent;
  background: linear-gradient(180deg, var(--commerce-gold-hi), var(--commerce-gold));
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .btn.secondary {
  border-color: rgba(26, 23, 40, .16);
  background: rgba(250, 246, 238, .78);
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(45, 37, 65, .12);
}

body.gph-unified-shell.gph-vm7-commerce main :is(.btn,button,input,textarea):focus-visible {
  outline: 3px solid var(--commerce-gold);
  outline-offset: 3px;
}

/* Build & Price */
body.gph-unified-shell.gph-vm7-commerce main .configurator-layout {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: clamp(24px, 3vw, 38px);
}

body.gph-unified-shell.gph-vm7-commerce main .config-main {
  gap: 22px;
}

body.gph-unified-shell.gph-vm7-commerce main :is(.config-step,.education-card) {
  overflow: visible;
  border: 1px solid var(--commerce-line);
  border-radius: var(--commerce-radius);
  background: var(--commerce-card);
  box-shadow: var(--commerce-shadow);
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .config-step {
  padding: clamp(24px, 3vw, 34px);
}

body.gph-unified-shell.gph-vm7-commerce main .config-step > span,
body.gph-unified-shell.gph-vm7-commerce main .education-card > span {
  color: var(--commerce-purple) !important;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .15em;
}

body.gph-unified-shell.gph-vm7-commerce main .config-step h2 {
  margin: 7px 0 20px;
  color: var(--commerce-ink);
  font-size: clamp(1.65rem, 2.6vw, 2.15rem);
  line-height: 1.08;
  letter-spacing: -.03em;
}

body.gph-unified-shell.gph-vm7-commerce main .choice-grid {
  gap: 14px;
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card,
body.gph-unified-shell.gph-vm7-commerce main .domain-option,
body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card,
body.gph-unified-shell.gph-vm7-commerce main .config-addon {
  border: 1px solid var(--commerce-line);
  background: rgba(255, 252, 246, .82);
  color: var(--commerce-ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card {
  min-height: 142px;
  padding: 20px;
  border-radius: 16px;
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card:hover,
body.gph-unified-shell.gph-vm7-commerce main .domain-option:hover,
body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card:hover,
body.gph-unified-shell.gph-vm7-commerce main .config-addon:hover {
  border-color: rgba(115, 93, 165, .38);
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card:has(input:checked),
body.gph-unified-shell.gph-vm7-commerce main .domain-option:has(input:checked),
body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card:has(input:checked),
body.gph-unified-shell.gph-vm7-commerce main .config-addon:has(input:checked) {
  border-color: rgba(115, 93, 165, .60);
  background:
    linear-gradient(145deg, rgba(115, 93, 165, .10), rgba(255,252,246,.94));
  box-shadow:
    inset 0 3px 0 rgba(115, 93, 165, .72),
    0 16px 32px rgba(45,37,65,.07);
}

body.gph-unified-shell.gph-vm7-commerce main :is(.choice-card,.domain-option,.optional-choice-card,.config-addon) input {
  accent-color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card b,
body.gph-unified-shell.gph-vm7-commerce main .domain-option b,
body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card b,
body.gph-unified-shell.gph-vm7-commerce main .config-addon b {
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card strong,
body.gph-unified-shell.gph-vm7-commerce main .domain-option > strong,
body.gph-unified-shell.gph-vm7-commerce main .config-addon strong {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .choice-card small,
body.gph-unified-shell.gph-vm7-commerce main .domain-option :is(p,small),
body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card small,
body.gph-unified-shell.gph-vm7-commerce main .config-addon p {
  color: var(--commerce-muted) !important;
}

body.gph-unified-shell.gph-vm7-commerce main .hosting-billing-toggle {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--commerce-line);
  border-radius: 14px;
  background: rgba(26,23,40,.055);
}

body.gph-unified-shell.gph-vm7-commerce main .hosting-billing-toggle button {
  min-height: 42px;
  padding: 9px 16px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--commerce-ink);
  font: inherit;
  font-weight: 800;
}

body.gph-unified-shell.gph-vm7-commerce main .hosting-billing-toggle button.active {
  background: var(--commerce-ink);
  color: var(--commerce-ivory);
  box-shadow: 0 8px 20px rgba(26,23,40,.14);
}

body.gph-unified-shell.gph-vm7-commerce main .hosting-savings {
  margin-top: 14px;
  color: #65548A;
}

body.gph-unified-shell.gph-vm7-commerce main .enterprise-link {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .address-options,
body.gph-unified-shell.gph-vm7-commerce main .optional-service-choice {
  display: grid;
  gap: 12px;
}

body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-radius: 16px;
  cursor: pointer;
}

body.gph-unified-shell.gph-vm7-commerce main .optional-choice-card input {
  margin-top: 5px;
}

body.gph-unified-shell.gph-vm7-commerce main .optional-services-panel {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid var(--commerce-line);
}

body.gph-unified-shell.gph-vm7-commerce main .optional-services-intro h3,
body.gph-unified-shell.gph-vm7-commerce main .config-addon-group h3,
body.gph-unified-shell.gph-vm7-commerce main .education-card h3 {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .optional-services-intro p,
body.gph-unified-shell.gph-vm7-commerce main .education-card p {
  color: var(--commerce-copy);
}

body.gph-unified-shell.gph-vm7-commerce main .config-filter input {
  border: 1px solid var(--commerce-line);
  background: rgba(255,252,246,.94);
  color: var(--commerce-ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

body.gph-unified-shell.gph-vm7-commerce main .config-filter input::placeholder {
  color: rgba(26,23,40,.45);
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon {
  padding: 16px;
  border-radius: 14px;
}

body.gph-unified-shell.gph-vm7-commerce main .education-card {
  padding: clamp(24px, 3vw, 34px);
}

/* Summary panels: intentionally dark to create a clear checkout anchor */
body.gph-unified-shell.gph-vm7-commerce main :is(.sticky-summary,.cart-totals) {
  border: 1px solid rgba(250,246,238,.15);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 8%, rgba(115,93,165,.28), transparent 31%),
    linear-gradient(150deg, #171426, #211A35);
  box-shadow: 0 24px 60px rgba(26,23,40,.18);
  color: var(--commerce-ivory);
}

body.gph-unified-shell.gph-vm7-commerce main .sticky-summary {
  padding: 26px;
}

body.gph-unified-shell.gph-vm7-commerce main :is(.sticky-summary,.cart-totals) .eyebrow {
  color: var(--commerce-gold-hi);
}

body.gph-unified-shell.gph-vm7-commerce main .summary-line {
  border-bottom-color: rgba(250,246,238,.12);
}

body.gph-unified-shell.gph-vm7-commerce main .summary-line span,
body.gph-unified-shell.gph-vm7-commerce main .summary-recurring > div,
body.gph-unified-shell.gph-vm7-commerce main .cart-totals > div,
body.gph-unified-shell.gph-vm7-commerce main .sticky-summary small,
body.gph-unified-shell.gph-vm7-commerce main .cart-totals small {
  color: rgba(250,246,238,.66);
}

body.gph-unified-shell.gph-vm7-commerce main .summary-line b,
body.gph-unified-shell.gph-vm7-commerce main .summary-recurring b,
body.gph-unified-shell.gph-vm7-commerce main .cart-totals b {
  color: var(--commerce-ivory);
}

body.gph-unified-shell.gph-vm7-commerce main .summary-total {
  border-top-color: rgba(250,246,238,.14);
}

body.gph-unified-shell.gph-vm7-commerce main .summary-total b,
body.gph-unified-shell.gph-vm7-commerce main #cart-total,
body.gph-unified-shell.gph-vm7-commerce main #checkout-total {
  color: var(--commerce-gold-hi);
}

/* Cart */
body.gph-unified-shell.gph-vm7-commerce main .cart-layout,
body.gph-unified-shell.gph-vm7-commerce main .checkout-layout {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: clamp(24px, 3vw, 38px);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-items {
  gap: 14px;
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row,
body.gph-unified-shell.gph-vm7-commerce main .empty-cart,
body.gph-unified-shell.gph-vm7-commerce main .shared-cart-notice {
  border: 1px solid var(--commerce-line);
  background: var(--commerce-card);
  box-shadow: var(--commerce-shadow);
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row {
  padding: clamp(20px, 2.5vw, 26px);
  border-radius: 18px;
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row span {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row h3 {
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row small {
  color: var(--commerce-muted);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row > div:last-child b {
  color: var(--commerce-purple);
  font-size: 1.2rem;
}

body.gph-unified-shell.gph-vm7-commerce main .cart-row button {
  color: #65548A;
  font-weight: 800;
}

body.gph-unified-shell.gph-vm7-commerce main .empty-cart {
  border-style: dashed;
  border-color: rgba(115,93,165,.32);
}

body.gph-unified-shell.gph-vm7-commerce main .cart-totals {
  padding: 26px;
}

body.gph-unified-shell.gph-vm7-commerce main .cart-totals h2 {
  color: var(--commerce-ivory);
}

/* Shared / private cart */
body.gph-unified-shell.gph-vm7-commerce main .shared-cart-notice {
  display: grid;
  gap: 5px;
  margin-bottom: 16px;
  padding: 18px 20px;
  border-radius: 16px;
}

body.gph-unified-shell.gph-vm7-commerce main .shared-cart-notice b {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .shared-cart-notice span {
  color: var(--commerce-muted);
}

body.gph-unified-shell.gph-vm7-commerce main .shared-discount b {
  color: #BDE9C5 !important;
}

body.gph-unified-shell.gph-vm7-commerce main .shared-effective-total {
  margin-top: 4px;
  border-top: 1px solid rgba(250,246,238,.16) !important;
}

/* Checkout */
body.gph-unified-shell.gph-vm7-commerce main .checkout-form {
  gap: 18px;
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-section {
  gap: 17px;
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid var(--commerce-line);
  border-radius: var(--commerce-radius);
  background: var(--commerce-card);
  box-shadow: var(--commerce-shadow);
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-section > span {
  color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-section h2 {
  color: var(--commerce-ink);
  font-size: clamp(1.55rem, 2.3vw, 1.95rem);
  letter-spacing: -.025em;
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-form label {
  color: var(--commerce-ink);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-form :is(input,textarea) {
  border: 1px solid var(--commerce-line-strong);
  background: rgba(255,252,246,.96);
  color: var(--commerce-ink);
  box-shadow: inset 0 1px 2px rgba(26,23,40,.035);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-form :is(input,textarea)::placeholder {
  color: rgba(26,23,40,.42);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-acknowledgements .consent {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
  padding: 14px 15px;
  border: 1px solid rgba(26,23,40,.09);
  border-radius: 13px;
  background: rgba(255,252,246,.70);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-acknowledgements .consent input {
  width: auto;
  margin-top: 4px;
  accent-color: var(--commerce-purple);
}

body.gph-unified-shell.gph-vm7-commerce main .checkout-acknowledgements a {
  color: #65548A;
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.gph-unified-shell.gph-vm7-commerce main .secure-note {
  border-color: rgba(217,186,98,.20) !important;
  background: rgba(217,186,98,.08) !important;
}

body.gph-unified-shell.gph-vm7-commerce main .secure-note b {
  color: var(--commerce-gold-hi);
}

body.gph-unified-shell.gph-vm7-commerce main .secure-note p {
  color: rgba(250,246,238,.68) !important;
}

/* Mobile / tablet */
@media (max-width: 1050px) {
  body.gph-unified-shell.gph-vm7-commerce main .configurator-layout,
  body.gph-unified-shell.gph-vm7-commerce main .cart-layout,
  body.gph-unified-shell.gph-vm7-commerce main .checkout-layout {
    grid-template-columns: 1fr;
  }

  body.gph-unified-shell.gph-vm7-commerce main :is(.sticky-summary,.cart-totals) {
    position: static;
  }
}

@media (max-width: 720px) {
  body.gph-unified-shell.gph-vm7-commerce main > .page-hero {
    padding: 68px 0 60px;
  }

  body.gph-unified-shell.gph-vm7-commerce main > .page-hero h1 {
    font-size: clamp(2.35rem, 12vw, 3.6rem);
  }

  body.gph-unified-shell.gph-vm7-commerce main .config-step,
  body.gph-unified-shell.gph-vm7-commerce main .education-card,
  body.gph-unified-shell.gph-vm7-commerce main .checkout-section,
  body.gph-unified-shell.gph-vm7-commerce main :is(.sticky-summary,.cart-totals) {
    border-radius: 18px;
  }

  body.gph-unified-shell.gph-vm7-commerce main .choice-grid,
  body.gph-unified-shell.gph-vm7-commerce main .choice-grid.three {
    grid-template-columns: 1fr;
  }

  body.gph-unified-shell.gph-vm7-commerce main .domain-option {
    grid-template-columns: auto 1fr;
  }

  body.gph-unified-shell.gph-vm7-commerce main .domain-option > strong {
    grid-column: 2;
    justify-self: start;
  }

  body.gph-unified-shell.gph-vm7-commerce main .cart-row {
    display: grid;
  }

  body.gph-unified-shell.gph-vm7-commerce main .cart-row > div:last-child {
    justify-items: start;
  }
}

@media (max-width: 420px) {
  body.gph-unified-shell.gph-vm7-commerce main > .section {
    padding: 58px 0;
  }

  body.gph-unified-shell.gph-vm7-commerce main .config-step,
  body.gph-unified-shell.gph-vm7-commerce main .education-card,
  body.gph-unified-shell.gph-vm7-commerce main .checkout-section,
  body.gph-unified-shell.gph-vm7-commerce main :is(.sticky-summary,.cart-totals) {
    padding: 20px;
  }

  body.gph-unified-shell.gph-vm7-commerce main .checkout-acknowledgements .consent {
    padding: 13px;
  }
}

/* GPH V-M7A ADDON CONTRAST HOTFIX
   Darkens collapsed optional-service category text on the light commerce surface.
   Keeps the gold/violet design language while restoring readable contrast. */
body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary {
  color: #7A4B00 !important;
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary span {
  color: #7A4B00 !important;
  opacity: 1;
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary::before {
  color: #7A4B00 !important;
  opacity: 1;
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary small {
  color: #5A5366 !important;
  font-weight: 800;
  opacity: 1;
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary:hover,
body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion > summary:focus-visible {
  background: rgba(217, 186, 98, .12);
}

body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion[open] > summary,
body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion[open] > summary span,
body.gph-unified-shell.gph-vm7-commerce main .config-addon-group.addon-accordion[open] > summary::before {
  color: #654100 !important;
}
/* END GPH V-M7A ADDON CONTRAST HOTFIX */

/* GPH V-M7B CHECKOUT CHECKBOX ALIGNMENT
   Center acknowledgement checkboxes against the complete text block. */
body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  column-gap: 12px !important;
  align-items: center !important;
}

body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent > input[type="checkbox"] {
  appearance: auto !important;
  -webkit-appearance: auto !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  align-self: center !important;
  justify-self: center !important;
  accent-color: #7651B5;
}

body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent > span {
  display: block !important;
  min-width: 0;
  margin: 0 !important;
  line-height: 1.5 !important;
}

@media (max-width: 650px) {
  body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent {
    grid-template-columns: 22px minmax(0, 1fr) !important;
    column-gap: 11px !important;
  }
}
/* END GPH V-M7B CHECKOUT CHECKBOX ALIGNMENT */

/* GPH V-M7C CHECKOUT SPACING + CONTRAST
   More breathing room before the checkbox and darker acknowledgement copy. */
body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent {
  grid-template-columns: 20px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  padding: 16px 20px 16px 26px !important;
}

body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent > input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  align-self: center !important;
  justify-self: center !important;
  accent-color: #5E3E91 !important;
}

body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent > span {
  color: #51485F !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent > span > a {
  color: #835500 !important;
  font-weight: 800 !important;
  text-decoration-color: rgba(131,85,0,.38) !important;
  text-underline-offset: 3px;
}

@media (max-width: 650px) {
  body.gph-unified-shell.gph-vm7-commerce .checkout-acknowledgements .consent {
    padding: 15px 16px 15px 22px !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    column-gap: 9px !important;
  }
}
/* END GPH V-M7C CHECKOUT SPACING + CONTRAST */

/* GPH V-M7D REMOVE CHECKOUT TILE NUMBERS
   Hide the decorative 01 / 02 / 03 labels on checkout cards. */
body.gph-unified-shell.gph-vm7-commerce .checkout-form .checkout-section > span:first-child {
  display: none !important;
}
/* END GPH V-M7D REMOVE CHECKOUT TILE NUMBERS */

/* GPH V-M7F REAL COMMERCE HERO LIGHTING
   Exact target: body.gph-vm7-commerce main > .page-hero
   Replaces hard rings with diffuse emitted-light blooms across commerce heroes. */
body.gph-unified-shell.gph-vm7-commerce main > .page-hero {
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
  background:
    radial-gradient(ellipse 58% 88% at 98% 18%,
      rgba(132, 96, 225, .54) 0%,
      rgba(132, 96, 225, .27) 28%,
      rgba(132, 96, 225, .10) 46%,
      rgba(132, 96, 225, 0) 70%),
    radial-gradient(ellipse 46% 70% at 79% 82%,
      rgba(70, 105, 207, .30) 0%,
      rgba(70, 105, 207, .13) 34%,
      rgba(70, 105, 207, 0) 68%),
    radial-gradient(ellipse 28% 38% at 18% 102%,
      rgba(217, 186, 98, .08) 0%,
      rgba(217, 186, 98, 0) 72%),
    linear-gradient(138deg,
      #141126 0%,
      #18142D 43%,
      #251A46 72%,
      #17132D 100%) !important;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero::before {
  content: "" !important;
  position: absolute;
  z-index: 0;
  width: min(54vw, 760px);
  height: 150%;
  right: -7%;
  top: -25%;
  border: 0 !important;
  border-radius: 48% 52% 58% 42%;
  background:
    linear-gradient(118deg,
      rgba(255,255,255,0) 8%,
      rgba(153, 126, 255, .03) 30%,
      rgba(153, 126, 255, .17) 52%,
      rgba(93, 119, 221, .11) 66%,
      rgba(255,255,255,0) 88%);
  filter: blur(34px);
  transform: rotate(-9deg);
  opacity: .92;
  pointer-events: none;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero::after {
  content: "" !important;
  position: absolute;
  z-index: 0;
  width: min(48vw, 680px) !important;
  height: 118% !important;
  aspect-ratio: auto !important;
  right: -11% !important;
  top: -12% !important;
  border: 0 !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  background:
    radial-gradient(ellipse 72% 64% at 48% 42%,
      rgba(153, 124, 255, .24) 0%,
      rgba(119, 92, 222, .13) 34%,
      rgba(78, 103, 202, .07) 52%,
      rgba(78, 103, 202, 0) 76%);
  filter: blur(30px);
  opacity: .96;
  pointer-events: none;
}

body.gph-unified-shell.gph-vm7-commerce main > .page-hero > .shell {
  position: relative !important;
  z-index: 2 !important;
}
/* END GPH V-M7F REAL COMMERCE HERO LIGHTING */
