#pricing .pricing-container {
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
}

#pricing .pricing-header {
  margin-bottom: 56px;
}
#pricing .pricing-header h1 {
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.08;
  margin-bottom: 20px;
  color: #fff;
  letter-spacing: -0.03em;
}
#pricing .pricing-header .auto-pilot {
  background: linear-gradient(90deg, #55c7ff, #6366f1 55%, #ec4899);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

#pricing .pricing-plan-card {
  width: 100%;
  max-width: 460px;
  border: 1px solid rgba(99, 102, 241, 0.34);
  border-radius: 24px;
  background: linear-gradient(155deg, #151d46, #111a3f 62%, #171b4b);
  color: #e2e8f0;
  box-shadow:
    0 24px 58px rgba(2, 6, 28, 0.38),
    0 0 26px rgba(56, 189, 248, 0.08);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;

  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    background-color 0.35s ease,
    box-shadow 0.35s ease;
}

#pricing .pricing-container > .flex.flex-col {
  display: grid;
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  grid-template-columns: minmax(0, 1fr);
  justify-content: center;
  align-items: stretch;
  gap: 2rem;
}

@media (min-width: 900px) {
  #pricing .pricing-container > .flex.flex-col {
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  #pricing .pricing-container > .flex.flex-col {
    grid-template-columns: repeat(2, minmax(0, 460px));
  }
}

#pricing .pricing-plan-card {
  width: 100%;
  max-width: none;
  min-width: 0;
}

#pricing .pricing-plan-card:hover {
  transform: translateY(-6px);

  border-color: #55c7ff;

  background: linear-gradient(155deg, #18234f, #151c49 66%, #1d1b55);

  box-shadow:
    0 28px 85px rgba(0, 0, 0, 0.3),
    0 0 42px rgba(34, 211, 238, 0.07);
}

#pricing .pricing-plan-card.agency-card {
  border-color: rgba(139, 92, 246, 0.68);

  background: linear-gradient(155deg, #1b2056, #171a4b 66%, #211b57);

  box-shadow:
    0 28px 90px rgba(0, 0, 0, 0.3),
    0 0 45px rgba(14, 165, 233, 0.1);
}

#pricing .pricing-plan-card.agency-card:hover {
  border-color: #a78bfa;

  background: linear-gradient(155deg, #202660, #191c52 66%, #281d60);

  box-shadow:
    0 30px 95px rgba(0, 0, 0, 0.32),
    0 0 55px rgba(34, 211, 238, 0.14);
}

/*
|--------------------------------------------------------------------------
| Typography
|--------------------------------------------------------------------------
*/

#pricing .plan-title {
  color: #ffffff;
}

#pricing .plan-subtitle {
  color: #e2e8f0;
}

#pricing .plan-price {
  color: #ffffff;
}

#pricing .original-price {
  color: #cbd5e1;
}

#pricing .period {
  color: #cbd5e1;
}

#pricing .cancel-text {
  color: #e2e8f0;
}

#pricing .cancel-text strong {
  color: #e2e8f0;
}

#pricing .features-title {
  color: #ffffff;
}

#pricing .feature-text {
  color: #e2e8f0;
}

#pricing .feature-text strong {
  color: #f8fafc;
}

/*
|--------------------------------------------------------------------------
| CTA
|--------------------------------------------------------------------------
*/

#pricing .pricing-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 56px;

  padding: 16px 32px;

  border: 1px solid rgba(125, 211, 252, 0.22);
  border-radius: 14px;

  background: linear-gradient(135deg, #2563eb 0%, #7c3aed 100%);

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 700;

  box-shadow:
    0 12px 32px rgba(14, 165, 233, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    filter 0.25s ease;
}

#pricing .pricing-cta:hover {
  transform: translateY(-2px);

  filter: brightness(1.05);

  box-shadow:
    0 16px 38px rgba(14, 165, 233, 0.28),
    0 0 32px rgba(34, 211, 238, 0.12);
}

/*
|--------------------------------------------------------------------------
| Agency CTA
|--------------------------------------------------------------------------
*/

#pricing .pricing-cta.agency-cta {
  background: linear-gradient(135deg, #258cf4, #6366f1 62%, #8b5cf6);
}

/*
|--------------------------------------------------------------------------
| Checks
|--------------------------------------------------------------------------
*/

#pricing .checkmark {
  width: 24px;
  height: 24px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  margin-top: 2px;

  border-radius: 999px;

  border: 1px solid rgba(85, 199, 255, 0.55);

  background: rgba(56, 189, 248, 0.14);

  box-shadow: 0 0 18px rgba(34, 211, 238, 0.08);
}

#pricing .checkmark::after {
  content: "✓";

  color: #55c7ff;

  font-size: 14px;
  font-weight: 800;
}

#pricing .checkmark.accent {
  border-color: rgba(103, 232, 249, 0.35);

  background: linear-gradient(
    135deg,
    rgba(14, 165, 233, 0.3),
    rgba(34, 211, 238, 0.22)
  );
}

/*
|--------------------------------------------------------------------------
| Agency badge
|--------------------------------------------------------------------------
*/

#pricing .discount-badge {
  position: absolute;

  right: 24px;
  top: 24px;

  padding: 7px 12px;

  border: 1px solid #fbbf24;
  border-radius: 999px;

  background: #fff4c2;

  color: #854d0e;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#pricing .saving-text {
  color: #cbd5e1;
}

/*
|--------------------------------------------------------------------------
| Divider
|--------------------------------------------------------------------------
*/

#pricing .pricing-divider {
  border-color: rgba(191, 219, 254, 0.2);
}

/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 768px) {
  #pricing {
    padding-left: 20px;
    padding-right: 20px;
  }

  #pricing .pricing-header h1 {
    font-size: 2.6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  #pricing *,
  #pricing *::before,
  #pricing *::after {
    transition-duration: 0.01ms !important;
  }
}

/* Dark cards sit above the darker pricing surface with explicit light text. */
#pricing {
  background:
    radial-gradient(
      ellipse at 14% 16%,
      rgba(56, 189, 248, 0.3),
      transparent 38%
    ),
    radial-gradient(
      ellipse at 86% 72%,
      rgba(139, 92, 246, 0.28),
      transparent 40%
    ),
    radial-gradient(
      ellipse at 76% 94%,
      rgba(236, 72, 153, 0.14),
      transparent 32%
    ),
    linear-gradient(135deg, #0b1235, #17164a 68%, #21194e) !important;
}
#pricing .pricing-header h1 {
  color: #fff;
}
#pricing .pricing-header p {
  color: #e2e8f0;
}
#pricing .pricing-header > div:first-child {
  border-color: rgba(125, 211, 252, 0.32);
  background: rgba(56, 189, 248, 0.12);
  color: #bae6fd;
}
#pricing .pricing-header > div:first-child > span {
  background: #fbbf24;
}
#pricing .pricing-plan-card,
#pricing .pricing-plan-card.agency-card {
  border: 1px solid rgba(99, 102, 241, 0.34);
  background: linear-gradient(155deg, #151d46, #111a3f 62%, #171b4b);
  color: #e2e8f0;
  box-shadow:
    0 24px 58px rgba(2, 6, 28, 0.38),
    0 0 26px rgba(56, 189, 248, 0.08);
  backdrop-filter: none;
}
#pricing .pricing-plan-card.agency-card {
  border-color: rgba(139, 92, 246, 0.68);
  background: linear-gradient(155deg, #1b2056, #171a4b 66%, #211b57);
  box-shadow:
    0 26px 64px rgba(2, 6, 28, 0.42),
    0 0 0 2px rgba(56, 189, 248, 0.18),
    0 0 34px rgba(139, 92, 246, 0.22);
}
#pricing .pricing-plan-card:hover,
#pricing .pricing-plan-card.agency-card:hover {
  border-color: #55c7ff;
  background: linear-gradient(155deg, #18234f, #151c49 66%, #1d1b55);
  box-shadow:
    0 28px 68px rgba(2, 6, 28, 0.46),
    0 0 32px rgba(56, 189, 248, 0.16);
}
#pricing .pricing-plan-card.agency-card:hover {
  border-color: #a78bfa;
  background: linear-gradient(155deg, #202660, #191c52 66%, #281d60);
  box-shadow:
    0 30px 72px rgba(2, 6, 28, 0.48),
    0 0 0 2px rgba(56, 189, 248, 0.2),
    0 0 40px rgba(139, 92, 246, 0.28);
}
#pricing .pricing-plan-card :is(.plan-title, .plan-price, .features-title),
#pricing .pricing-plan-card :is(.plan-title, .plan-price, .features-title) * {
  color: #fff;
}
#pricing
  .pricing-plan-card
  :is(
    .plan-subtitle,
    .feature-text,
    .feature-text *,
    .cancel-text,
    .cancel-text strong
  ) {
  color: #e2e8f0;
}
#pricing .pricing-plan-card :is(.period, .original-price, .saving-text) {
  color: #cbd5e1;
}
#pricing .pricing-plan-card a:not(.pricing-cta) {
  color: #bae6fd;
}
#pricing .pricing-plan-card svg {
  color: #55c7ff;
}
#pricing .pricing-plan-card .pricing-divider {
  border-color: rgba(191, 219, 254, 0.2);
}
#pricing .pricing-plan-card .checkmark,
#pricing .pricing-plan-card .checkmark.accent {
  border-color: rgba(85, 199, 255, 0.55);
  background: rgba(56, 189, 248, 0.14);
  box-shadow: 0 0 16px rgba(56, 189, 248, 0.12);
}
#pricing .pricing-plan-card .checkmark::after {
  color: #55c7ff;
}
#pricing .pricing-plan-card .discount-badge {
  border-color: #fbbf24;
  background: #fff4c2;
  color: #854d0e;
}
#pricing .pricing-cta {
  border-color: transparent;
  background: linear-gradient(135deg, #167fc1, #258cf4 48%, #6366f1);
  color: #fff;
  box-shadow:
    0 12px 30px rgba(20, 88, 205, 0.32),
    inset 0 1px rgba(255, 255, 255, 0.18);
}
#pricing .pricing-cta:hover {
  filter: brightness(1.12);
  box-shadow:
    0 16px 38px rgba(20, 88, 205, 0.4),
    0 0 24px rgba(99, 102, 241, 0.22);
}
#pricing .pricing-cta:focus-visible {
  outline: 3px solid #7dd3fc;
  outline-offset: 4px;
}

@media (max-width: 767px) {
  #pricing {
    padding-top: 72px;
    padding-bottom: 72px;
  }
}

/* Responsive repair */
#pricing, #pricing .pricing-container, #pricing .pricing-container > .flex.flex-col, #pricing .pricing-plan-card { min-width: 0; }
#pricing .pricing-cta { max-width: 100%; white-space: normal; text-align: center; }
@media (max-width: 899px) {
  #pricing { padding-left: 16px; padding-right: 16px; }
  #pricing .pricing-container > .flex.flex-col { width: 100%; max-width: 560px; gap: 24px; }
}
@media (max-width: 600px) {
  #pricing { padding-top: 58px; padding-bottom: 58px; }
  #pricing .pricing-header { margin-bottom: 32px; }
  #pricing .pricing-header h1 { font-size: clamp(2rem, 10vw, 2.55rem); overflow-wrap: anywhere; }
  #pricing .pricing-plan-card { border-radius: 18px; }
  #pricing .pricing-plan-card > div { padding-left: 20px !important; padding-right: 20px !important; }
  #pricing .discount-badge { position: static; display: inline-flex; margin-bottom: 12px; }
  #pricing .pricing-cta { width: 100%; padding-left: 16px; padding-right: 16px; }
}
