/* v28: the physical reverse shares the front's material and visual hierarchy. */
/* The front's drop shadow rotates toward the viewer when the card turns. */
.card-rig[aria-pressed="true"] .card-shadow { opacity: 0; }
.comparison-back,
.linkpay .comparison-back {
  container-type: inline-size;
  padding: 5.6% 6.2%;
  display: flex;
  color: #edf8f8;
  background:
    radial-gradient(ellipse at 0% 100%, hsl(var(--program-accent) / .19), transparent 65%),
    linear-gradient(125deg, #14272e, #09151d 60%, #14212c);
  box-shadow: inset 0 1px 0 #d5f7ff78, inset 0 0 0 1px hsl(var(--program-accent) / .3);
}
.linkpay .comparison-back {
  background:
    radial-gradient(ellipse at 0% 100%, hsl(var(--program-accent) / .22), transparent 65%),
    linear-gradient(125deg, #282335, #111521 60%, #1c2431);
}
.comparison-back::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: url('assets/card-face-blue-v15.png') center / cover;
  opacity: .025;
  mix-blend-mode: screen;
}
.comparison-back::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at -12% 118%, transparent 23%, hsl(var(--program-accent) / .09) 38%, transparent 57%);
  pointer-events: none;
}
.comparison-back > * { position: relative; z-index: 1; }
.comparison-back-top { min-height: 12%; gap: 6%; align-items: center; }
.comparison-back-top img { order: -1; width: 25%; opacity: 1; }
.comparison-tag,
.issue-advantage .comparison-tag {
  max-width: 53%;
  font-size: clamp(7px, 2.25cqw, 13px);
  text-align: right;
  line-height: 1.35;
  letter-spacing: .01em;
  color: #bbc7d0;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
}
.issue-advantage .comparison-tag { color: #b2f5dc; }
.issue-advantage .comparison-tag::before {
  content: '';
  display: inline-block;
  width: .45em;
  height: .45em;
  margin: 0 .65em .12em 0;
  border-radius: 50%;
  background: #aaf6d3;
  box-shadow: 0 0 10px #95ffd777;
}
.comparison-body {
  display: grid;
  grid-template-columns: 39% 1fr;
  column-gap: 7%;
  flex: 1;
  min-height: 0;
  margin-top: 7%;
  padding-bottom: 2%;
}
.comparison-cost { display: flex; flex-direction: column; justify-content: center; min-width: 0; }
.comparison-price { margin: 0; }
.comparison-price > span { display: flex; flex-direction: column; gap: 3cqw; align-items: flex-start; }
.comparison-price small {
  font-size: clamp(8px, 2.65cqw, 15px);
  color: #c0d1d7;
  letter-spacing: .015em;
}
.comparison-price strong {
  display: flex;
  align-items: baseline;
  gap: 1.6cqw;
  font-size: 23cqw;
  line-height: .86;
  letter-spacing: -.065em;
  font-weight: 400;
  color: hsl(var(--program-accent));
  text-shadow: 0 0 35px hsl(var(--program-accent) / .12);
  font-variant-numeric: lining-nums tabular-nums;
}
.comparison-price em { font-size: 3.2cqw; letter-spacing: .02em; color: #b9cdd1; }
.comparison-price-note {
  margin: 4cqw 0 0;
  max-width: 95%;
  font-size: clamp(7px, 2.05cqw, 12px);
  line-height: 1.5;
  color: #a6bbc5;
}
.comparison-facts {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  min-height: 0;
  padding: 0 0 0 10%;
  border-top: 0;
  border-left: 0;
}
.compare-fact {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .5cqw 2cqw;
  padding: 2.1cqw 0;
  border-bottom: 0;
}
.compare-fact:first-child { padding-top: 0; }
.compare-fact:last-child { padding-bottom: 0; border-bottom: 0; }
.compare-fact small {
  font-size: clamp(8px, 2.5cqw, 14px);
  line-height: 1.4;
  color: #b4c6ce;
}
.compare-fact strong {
  text-align: right;
  font-size: clamp(11px, 4.5cqw, 26px);
  line-height: 1.2;
  font-weight: 400;
  color: #f1f7f9;
  letter-spacing: -.035em;
  font-variant-numeric: lining-nums tabular-nums;
}
.compare-fact[data-term="wallets"] strong { max-width: 7em; font-size: clamp(10px, 3.3cqw, 20px); }
.compare-fact > span {
  grid-column: 1 / -1;
  font-size: clamp(7px, 1.95cqw, 11px);
  color: #9cb0bc;
  line-height: 1.35;
}
.comparison-footnote {
  margin-top: 2.2%;
  font-size: clamp(6px, 1.75cqw, 10px);
  line-height: 1.4;
  color: #a0b3bf;
  text-align: right;
}
/* Text values get room to breathe beside the shorter 3D Secure label. */
.compare-fact:has(small:first-child):last-child strong { font-size: clamp(10px, 3.3cqw, 20px); }
@media (max-width: 800px) {
  .comparison-body { margin-top: 5%; column-gap: 5%; grid-template-columns: 37% 1fr; }
  .comparison-facts { padding-left: 8%; }
  .comparison-price strong { font-size: 22cqw; }
  .comparison-price > span { gap: 2.5cqw; }
  .comparison-price-note { margin-top: 3cqw; line-height: 1.35; }
  .compare-fact { padding: 2.3cqw 0; gap: .3cqw 1.5cqw; }
  .comparison-footnote { margin-top: 1%; }
}

/* Provider concepts compare verified capabilities, without inventing prices. */
.provider-concept .concept-label { font-size: clamp(8px, .8vw, 14px); letter-spacing: .12em; text-transform: uppercase; }
.capability-back .comparison-body { grid-template-columns: 38% 1fr; column-gap: 5%; }
.capability-back .comparison-price strong { display: block; font-size: 9.5cqw; line-height: 1.04; letter-spacing: -.055em; }
.capability-back .comparison-price small { font-size: 2.5cqw; line-height: 1.4; }
.capability-back .comparison-facts { padding-left: 5%; }
.capability-back .compare-fact { grid-template-columns: 1fr; gap: .8cqw; padding: 1.6cqw 0; }
.capability-back .compare-fact strong { text-align: left; font-size: 3.4cqw; letter-spacing: -.025em; }
.capability-back .compare-fact small { font-size: 2.3cqw; }
.capability-back .comparison-footnote { text-align: left; }
/* Leave breathing room between the full-size carousel card and its controls. */
@media (min-width: 801px) {
  .provider-focus { bottom: 6%; }
}

/* v37: navigation belongs beside the cards; the card itself opens details. */
@media (prefers-reduced-motion:no-preference) and (min-height:650px) {
 .provider-focus { left:50%; right:auto; bottom:auto; transform:translate(-50%,-50%); z-index:10; pointer-events:none; }
 .provider-focus > div { display:flex; justify-content:space-between; align-items:center; gap:0; margin:0; }
 .provider-focus button[data-card-prev],.provider-focus button[data-card-next] { display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:#060e16b3; font-size:26px; pointer-events:auto; }
 .provider-focus button:hover { background:#13252de6; color:#e0fff6; }
 .provider-focus button:focus-visible { outline:2px solid #b1f3df; outline-offset:3px; }
}
