:root {
  --lt-violet: #5a00ff;
  --lt-navy: #13093f;
  --lt-gold: #ffc93d;
  --lt-pink: #fbd0f1;
  --lt-hot: #e92ac7;
  --lt-lav: #e9e1ff;
  --lt-cream: #f8f6fc;
}

.pricing-section {
  position: relative;
  isolation: isolate;
  overflow-x: clip;
  background: var(--lt-cream);
}

.pricing-header { position: relative; }
.pricing-header::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -400px;
  bottom: -150px;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    radial-gradient(90% 70% at 100% 0%, rgba(150, 105, 255, 0.5), transparent 55%),
    radial-gradient(80% 65% at 0% 100%, rgba(58, 0, 160, 0.55), transparent 60%),
    linear-gradient(160deg, #6a17ff 0%, #5a00ff 55%, #4b00d9 100%);
}
.pricing-header .badge { display: none; }
.pricing-header h1 { color: #fff; }
.pricing-header h1 .pr-v { color: var(--lt-gold); }
.pricing-header p { color: rgba(255, 255, 255, 0.82); }
.billing-label { color: rgba(255, 255, 255, 0.75); }
.billing-label.active { color: var(--lt-gold); }
.slider { background: rgba(255, 255, 255, 0.28); }
input:checked + .slider { background: var(--lt-gold); }

.pr-doodle {
  position: absolute;
  z-index: -1;
  fill: none;
  stroke: var(--lt-hot);
  stroke-width: 6;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.8;
  pointer-events: none;
}
.pr-doodle--one { top: -40px; left: 2%; width: clamp(90px, 9vw, 130px); transform: rotate(-12deg); }
.pr-doodle--two { top: 20px; right: 3%; width: clamp(120px, 13vw, 180px); transform: rotate(8deg); }

.pricing-card {
  border: 0;
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 30px 60px -40px rgba(19, 9, 63, 0.6);
}

.pricing-card--free .card-header-top { background: var(--lt-gold); color: var(--lt-navy); border-radius: 32px 32px 0 0; }
.pricing-card--free .card-header-top::after { border-color: rgba(19, 9, 63, 0.12); box-shadow: 60px 40px 0 -20px rgba(19, 9, 63, 0.06); }
.pricing-card--free .card-header-top h3,
.pricing-card--free .card-header-top .card-desc,
.pricing-card--free .card-header-top .price .amount,
.pricing-card--free .card-header-top .price .amount.dz-price-hero,
.pricing-card--free .card-header-top .price .currency { color: var(--lt-navy); }
.pricing-card--free .card-header-top .fee-highlight {
  border: 0;
  background: rgba(255, 255, 255, 0.6);
  box-shadow: none;
}
.pricing-card--free .card-header-top .zero-fee,
.pricing-card--free .card-header-top .fee-commission,
.pricing-card--free .card-header-top .zero-fee.fee-commission { color: var(--lt-navy) !important; }
.pricing-card--free .card-header-top .fee-highlight span:not(.zero-fee) { color: rgba(19, 9, 63, 0.75); }

.pricing-card.popular {
  background: var(--lt-navy);
  box-shadow: 0 44px 80px -40px rgba(19, 9, 63, 0.85);
}
.pricing-card.popular:hover { box-shadow: 0 50px 90px -40px rgba(19, 9, 63, 0.9); }
.popular-badge { background: var(--lt-gold); color: var(--lt-navy); box-shadow: none; }
.pricing-card.popular .fee-highlight { border: 0; background: rgba(255, 255, 255, 0.1); }
.pricing-card.popular .btn-primary {
  border-color: var(--lt-gold);
  background: var(--lt-gold);
  color: var(--lt-navy);
}

.pricing-card .card-header-cta { border-radius: 999px; font-weight: 800; }
.btn-outline { border: 2px solid var(--lt-navy); color: var(--lt-navy); }
.btn-outline:hover { border-color: var(--lt-violet); background: var(--lt-lav); color: var(--lt-violet); }
.pricing-soon-badge { background: var(--lt-navy); }
.pricing-card:not(.popular) .card-features li.pricing-feature--delivery::before { background: var(--lt-hot); }

.pr-pillnote { background: var(--lt-navy); box-shadow: none; }
.pr-minichip { background: var(--lt-gold); color: var(--lt-navy); }

.pricing-fees-note {
  border: 0;
  border-radius: 30px;
  background: var(--lt-pink);
}
.pricing-fees-note h3 { color: var(--lt-navy); }

.pricing-faq h3,
.compare-title { color: var(--lt-navy); font-size: clamp(1.8rem, 3.4vw, 2.6rem); letter-spacing: -0.045em; }
.faq-item {
  border: 0;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 20px 40px -36px rgba(19, 9, 63, 0.5);
}
.faq-item h4 { color: var(--lt-navy); }

.compare-table-wrapper {
  border: 0;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 30px 60px -44px rgba(19, 9, 63, 0.55);
}
.highlight-col { background-color: var(--lt-lav) !important; }
.compare-table th.highlight-col { border-top-color: var(--lt-violet); }
.category-row td { background: var(--lt-cream); color: #5d5380; }
.check-yes { color: var(--lt-violet); }

@media (max-width: 768px) {
  .pricing-header::before { bottom: -110px; }
  .pr-doodle--one { top: -58px; left: auto; right: -6px; width: 64px; }
  .pr-doodle--two { display: none; }
}
@media (max-width: 640px) {
  .pricing-card--free .card-header-top { border-radius: 32px 32px 0 0; }
  .pricing-fees-note { border-radius: 24px; }
}

.pricing-card--plus.popular {
  background: var(--lt-violet);
  box-shadow: 0 44px 80px -36px rgba(90, 0, 255, 0.75);
}
.pricing-card--plus.popular:hover { box-shadow: 0 52px 90px -36px rgba(90, 0, 255, 0.85); }

.pr-plus-deco {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
}
.pricing-card--plus > :not(.pr-plus-deco):not(.popular-badge) { position: relative; z-index: 1; }
.pricing-card--plus .popular-badge { z-index: 2; }

.pr-plus-deco-circle { position: absolute; top: -46px; right: -46px; width: 150px; height: 150px; border-radius: 50%; background: var(--lt-hot); }
.pr-plus-deco-square { position: absolute; top: 118px; right: 26px; width: 34px; height: 34px; border-radius: 10px; background: var(--lt-gold); transform: rotate(16deg); }
.pr-plus-deco-pill { position: absolute; bottom: -12px; right: -34px; width: 120px; height: 42px; border-radius: 999px; background: #d2e823; transform: rotate(-18deg); opacity: 0.95; }
.pr-plus-bolt {
  position: absolute;
  top: 26px;
  right: 26px;
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #d2e823;
  color: var(--lt-violet);
  font-size: 1.15rem;
  box-shadow: 0 10px 22px -10px rgba(19, 9, 63, 0.6);
}

.pricing-card--plus .card-header { border-bottom-color: rgba(255, 255, 255, 0.22); }
.pricing-card--plus .card-header-top h3,
.pricing-card--plus .card-header-top .price .amount,
.pricing-card--plus .card-header-top .price .currency { color: #fff; }
.pricing-card--plus .card-header-top .card-desc { color: rgba(255, 255, 255, 0.85); }
.pricing-card--plus .fee-highlight { background: rgba(255, 255, 255, 0.16); }
.pricing-card--plus .fee-highlight .zero-fee { color: #d2e823 !important; }
.pricing-card--plus .fee-highlight span:not(.zero-fee) { color: rgba(255, 255, 255, 0.85); }
.pricing-card.popular.pricing-card--plus .btn-primary {
  border-color: #d2e823;
  background: #d2e823;
  color: var(--lt-navy);
}
.pricing-card.popular.pricing-card--plus .btn-primary:hover { background: #e2f33a; border-color: #e2f33a; color: var(--lt-navy); }

.pricing-card--plus .features-title { color: #fff; }
.pricing-card--plus .card-features li { color: rgba(255, 255, 255, 0.95); }
.pricing-card--plus .card-features li:not(.pricing-feature--delivery)::before { background: #d2e823; }
.pricing-card.popular.pricing-card--plus .card-features li.pricing-feature--delivery,
.pricing-card.popular.pricing-card--plus .card-features li.pricing-feature--delivery span { color: #d2e823; }
.pricing-card.popular.pricing-card--plus .card-features li.pricing-feature--delivery::before { background: #d2e823; }

.pr-plus-themes {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 18px;
}
.pr-plus-theme {
  position: relative;
  display: grid;
  place-items: end center;
  width: 30px;
  height: 40px;
  padding-bottom: 6px;
  border-radius: 9px;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.9);
  box-sizing: border-box;
  overflow: hidden;
}
.pr-plus-theme i { display: block; width: 18px; height: 6px; border-radius: 99px; }
.pr-plus-theme--blocks { background: #6d28d9; }
.pr-plus-theme--blocks i { background: #f9c6ff; box-shadow: 1px 1px 0 #111; }
.pr-plus-theme--zorza { background: radial-gradient(70% 50% at 20% 15%, #7c3aed, transparent 75%), radial-gradient(70% 50% at 90% 70%, #ec4899, transparent 75%), #160a33; }
.pr-plus-theme--zorza i { background: rgba(255, 255, 255, 0.55); }
.pr-plus-theme--grid { background: linear-gradient(rgba(17, 17, 17, 0.14) 1px, transparent 1px) 0 0 / 7px 7px, linear-gradient(90deg, rgba(17, 17, 17, 0.14) 1px, transparent 1px) 0 0 / 7px 7px, #eef6c8; }
.pr-plus-theme--grid i { background: #111; }
.pr-plus-theme--zachod { background: linear-gradient(180deg, #ff7a59, #b8329f); }
.pr-plus-theme--zachod i { background: rgba(255, 255, 255, 0.6); }
.pr-plus-theme--neon { background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0 1px, transparent 1px 6px), #0b0b10; }
.pr-plus-theme--neon i { background: transparent; box-shadow: inset 0 0 0 1.5px #d2e823; }
.pr-plus-themes-label { margin-left: 6px; font-size: 0.8rem; font-weight: 700; color: rgba(255, 255, 255, 0.9); }

@media (max-width: 600px) {
  .pr-plus-bolt { width: 40px; height: 40px; top: 22px; right: 22px; font-size: 1rem; }
  .pr-plus-deco-square { display: none; }
}

.pricing-card--plus .card-header-top .card-desc { max-width: 76%; }

.pricing-header p,
.pricing-card .card-desc,
.faq-item p {
  font-family: 'Hanken Grotesk', 'Poppins', system-ui, sans-serif;
  font-weight: 500;
  letter-spacing: -0.005em;
}
.pricing-header p { font-size: 1.2rem; line-height: 1.5; }
.pricing-card .card-desc { font-size: 1rem; line-height: 1.45; }
.faq-item p { font-size: 1rem; line-height: 1.6; }
