/* Planos com vidro fosco sobre a paleta oficial. */
.pricing-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 28%, rgba(174, 148, 250, .56), transparent 27%),
    radial-gradient(circle at 88% 72%, rgba(94, 23, 235, .25), transparent 29%),
    linear-gradient(145deg, #f8f6f3 16%, #eee8f7 54%, #f8f6f3 100%);
}

.pricing-section::before,
.pricing-section::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 360px;
  height: 360px;
  border-radius: 44% 56% 58% 42%;
  filter: blur(4px);
  opacity: .38;
}

.pricing-section::before {
  top: 190px;
  left: -170px;
  background: #8c52ff;
  transform: rotate(23deg);
}

.pricing-section::after {
  right: -190px;
  bottom: 30px;
  background: #ae94fa;
  transform: rotate(-18deg);
}

.pricing-grid {
  position: relative;
  z-index: 1;
}

.pricing-grid .price-card {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .58);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .7),
    inset 0 -1px 0 rgba(94, 23, 235, .13),
    0 24px 60px rgba(67, 39, 109, .18);
  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);
}

.pricing-grid .price-card::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.34), transparent 35%, transparent 67%, rgba(255,255,255,.09));
}

.pricing-grid .price-card:not(.featured) {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .24), transparent 42%, rgba(94, 23, 235, .13)),
    rgba(174, 148, 250, .96);
  color: #262626;
  border-color: rgba(255, 255, 255, .72);
}

.pricing-grid .price-card:not(.featured) .plan-label,
.pricing-grid .price-card:not(.featured) .check-list li::before {
  color: #5e17eb;
}

.pricing-grid .price-card:not(.featured) p,
.pricing-grid .price-card:not(.featured) .check-list {
  color: #3d3449;
}

.pricing-grid .price-card:not(.featured) .check-list {
  border-top-color: rgba(38, 38, 38, .16);
}

.pricing-grid .price-card:not(.featured) .button {
  background: rgba(248, 246, 243, .45);
  border-color: rgba(38, 38, 38, .52);
  color: #262626;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
  backdrop-filter: blur(10px);
}

.pricing-grid .price-card:not(.featured) .button:hover {
  background: #5e17eb;
  border-color: #5e17eb;
  color: #fff;
}

.pricing-grid .price-card.featured {
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), transparent 43%),
    rgba(38, 38, 38, .88);
  border-color: rgba(140, 82, 255, .9);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 24px 65px rgba(38, 20, 70, .3),
    0 0 0 1px rgba(140, 82, 255, .18);
}

.pricing-grid .price-card > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 760px) {
  .pricing-section::before { left: -250px; }
  .pricing-section::after { right: -250px; }
  .pricing-grid .price-card { backdrop-filter: blur(16px) saturate(125%); }
}

@media (prefers-reduced-transparency: reduce) {
  .pricing-grid .price-card:not(.featured) { background: #ae94fa; }
  .pricing-grid .price-card.featured { background: #262626; }
}
