:root {
  --vs-bg: #f6f5f8;
  --vs-surface: #ffffff;
  --vs-surface-soft: #f0edf8;
  --vs-border: #e6e1f1;
  --vs-text: #171717;
  --vs-muted: #666372;
  --vs-primary: #5f54fd;
  --vs-secondary: #7d0df0;
  --vs-green: #7fcb11;
  --vs-blue: #3a71eb;
  --bs-primary: #5f54fd;
  --bs-success: #25D366;
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', sans-serif;
  background: var(--vs-bg);
  color: var(--vs-text);
}

.topbar {
  background: linear-gradient(90deg, rgba(95,84,253,.12), rgba(125,13,240,.08), rgba(127,203,17,.08));
  border-bottom: 1px solid var(--vs-border);
  color: var(--vs-muted);
}

.navbar {
  background: rgba(246,245,248,.86);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(230,225,241,.9);
}

.navbar-toggler { border-color: rgba(0,0,0,.08); }
.navbar-toggler:focus { box-shadow: none; }
.brand-logo { height: 34px; width: auto; }
.footer-logo { height: 48px; }
.navbar .nav-link { color: #373543; font-weight: 500; }
.navbar .nav-link:hover,
.navbar .nav-link.active { color: var(--vs-primary); }

.section-space { padding: 96px 0; }
.bg-soft { background: linear-gradient(180deg, #f2eef9 0%, #f8f7fb 100%); }

.btn-rounded {
  border-radius: 999px;
  padding-top: .95rem;
  padding-bottom: .95rem;
}

.btn-primary {
  background: linear-gradient(135deg, var(--vs-primary), var(--vs-secondary));
  border: none;
}
.btn-primary:hover { filter: brightness(.96); }
.btn-dark {
  background: #111111;
  border-color: #111111;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  padding: .65rem 1rem;
  border-radius: 999px;
  background: rgba(95,84,253,.08);
  border: 1px solid rgba(95,84,253,.14);
  color: #574ae2;
  font-size: .86rem;
  font-weight: 600;
}
.eyebrow-light {
  background: rgba(255,255,255,.75);
  border-color: rgba(95,84,253,.12);
}

.hero-card,
.solution-card,
.pain-card,
.result-card,
.story-card,
.pricing-card,
.value-card,
.company-panel,
.image-panel,
.form-panel,
.cta-panel,
.mini-stat-card,
.note-box {
  background: var(--vs-surface);
  border: 1px solid var(--vs-border);
  border-radius: 28px;
  box-shadow: 0 18px 50px rgba(42, 37, 69, 0.06);
}

.hero-section { padding-top: 2rem; }
.hero-card {
  position: relative;
  min-height: 560px;
  overflow: hidden;
}
.hero-img {
  min-height: 560px;
  object-fit: cover;
}
.floating-metric {
  position: absolute;
  left: 24px;
  right: 24px;
  max-width: 250px;
  padding: 1rem 1.1rem;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 22px;
  box-shadow: 0 18px 50px rgba(42, 37, 69, 0.14);
}
.floating-metric-top { top: 24px; }
.floating-metric-bottom { bottom: 24px; left: auto; }
.metric-label {
  display: block;
  font-size: .75rem;
  color: var(--vs-muted);
  margin-bottom: .25rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.section-title {
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.05;
  font-weight: 800;
}
.section-copy {
  max-width: 760px;
  color: var(--vs-muted);
  font-size: 1.05rem;
}

.mini-stat-card {
  height: 100%;
  padding: 1.25rem 1rem;
}
.mini-stat-card strong {
  display: block;
  font-size: 1.8rem;
  line-height: 1;
  margin-bottom: .45rem;
}
.mini-stat-card span {
  display: block;
  color: var(--vs-muted);
  font-size: .95rem;
}

.image-panel {
  min-height: 100%;
  padding: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fbfaf6 url("../images/dashboard-de-rendimiento-hotelero.jpg") top center / cover no-repeat;
}
.dashboard-img {
  max-height: 470px;
  width: auto;
  filter: drop-shadow(0 26px 40px rgba(60, 51, 114, 0.1));
}

.solution-card,
.pain-card,
.result-card,
.value-card,
.pricing-card { padding: 1.65rem; }
.icon-badge {
  width: 62px;
  height: 62px;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  background: linear-gradient(135deg, rgba(95,84,253,.13), rgba(125,13,240,.1));
  color: var(--vs-primary);
  font-size: 1.4rem;
}
.solution-card h3,
.pain-card h3,
.result-card h3,
.story-card h3,
.value-card h3,
.pricing-card h3 { font-size: 1.4rem; font-weight: 700; margin-bottom: .75rem; }
.solution-card p,
.pain-card p,
.result-card p,
.story-card p,
.value-card p,
.plan-copy,
.company-panel p,
.site-footer,
.hero-points,
.text-secondary { color: var(--vs-muted) !important; }

.result-top {
  display: flex;
  flex-direction: column;
  gap: .7rem;
  margin-bottom: 1rem;
}
.city-tag,
.story-tag,
.plan-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: .45rem .75rem;
  border-radius: 999px;
  background: #f1edff;
  color: #6860f2;
  font-size: .82rem;
  font-weight: 600;
}
.result-top strong { font-size: 1.55rem; }

.story-card { overflow: hidden; padding: 0; }
.story-image {
  width: 100%;
  height: 250px;
  object-fit: cover;
}
.story-body { padding: 1.5rem; }
.story-card ul,
.plan-features,
.company-list { padding-left: 1.15rem; margin-bottom: 0; }
.story-card li,
.plan-features li,
.company-list li { color: var(--vs-muted); margin-bottom: .6rem; }

.note-box,
.form-panel,
.cta-panel,
.company-panel { padding: 2rem; }
.note-box {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  background: linear-gradient(180deg, rgba(127,203,17,.09), rgba(127,203,17,.04));
}
.note-box i {
  color: var(--vs-green);
  font-size: 1.5rem;
}

.form-control {
  min-height: 52px;
  border-radius: 16px;
  border: 1px solid var(--vs-border);
  background: #faf9fd;
}
.form-control:focus {
  border-color: rgba(95,84,253,.5);
  box-shadow: 0 0 0 .25rem rgba(95,84,253,.12);
  background: #fff;
}
.estimate-box {
  background: linear-gradient(135deg, rgba(95,84,253,.08), rgba(58,113,235,.08));
  border: 1px solid rgba(95,84,253,.12);
  border-radius: 22px;
  padding: 1.5rem;
}
.estimate-label {
  display: block;
  color: var(--vs-muted);
  font-size: .84rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: .45rem;
}
.estimate-value {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
}

.billing-switch .toggle-label {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  color: var(--vs-muted);
  font-weight: 600;
}
.billing-switch .toggle-label.active { color: var(--vs-text); }
.billing-switch small {
  color: #5e49db;
  background: #f1edff;
  padding: .18rem .45rem;
  border-radius: 999px;
}
.billing-switch .form-check-input {
  width: 3.2rem;
  height: 1.8rem;
  background-color: #ddd7ec;
  border-color: #ddd7ec;
  cursor: pointer;
}
.billing-switch .form-check-input:checked {
  background-color: var(--vs-primary);
  border-color: var(--vs-primary);
}

.plan-price {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  margin: 1rem 0 .5rem;
}
.plan-price span {
  font-size: 1rem;
  font-weight: 500;
  color: var(--vs-text);
}
.plan-minimum { color: var(--vs-text); }
.pricing-card.featured {
  background: linear-gradient(180deg, #f8f5ff 0%, #ffffff 100%);
  border-color: rgba(95,84,253,.18);
  box-shadow: 0 24px 60px rgba(95,84,253,.08);
}

.social-links a {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #111;
  color: #fff;
  text-decoration: none;
}
.social-links a:hover { background: var(--vs-primary); }

.cta-panel {
  background: linear-gradient(180deg, #ffffff 0%, #f5f2fb 100%);
}
.site-footer {
  border-top: 1px solid var(--vs-border);
}

.whatsapp-float {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #25D366;
  color: #fff;
  font-size: 1.8rem;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(37,211,102,.35);
  z-index: 1050;
}

@media (max-width: 991.98px) {
  .section-space { padding: 72px 0; }
  .hero-card,
  .hero-img { min-height: 420px; }
}

@media (max-width: 767.98px) {
  .hero-card,
  .hero-img { min-height: 360px; }
  .floating-metric { max-width: 210px; padding: .8rem .95rem; }
  .plan-price { font-size: 2.6rem; }
}

.graph-panel {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-radius: 32px;
  padding: 24px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,.05);
}

.graph-image {
  width: 100%;
  display: block;
  border-radius: 24px;
}

.mini-stat-card {
  background: #fff;
  border-radius: 24px;
  padding: 28px 22px;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
  transition: all .25s ease;
  text-align: center;
}

.mini-stat-card:hover {
  transform: translateY(-4px);
}

.stat-number {
  display: block;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1;
  font-weight: 800;
  color: #111827;
  letter-spacing: -1px;
}

.stat-label {
  display: block;
  margin-top: 12px;
  font-size: .95rem;
  line-height: 1.5;
  color: #6b7280;
}

.highlight-card {
  background: #111827;
}

.highlight-card .stat-number,
.highlight-card .stat-label {
  color: #fff;
}

.horizontal-card {
  text-align: left;
  padding: 32px;
}

.card-kicker {
  display: inline-block;
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #b91c1c;
  margin-bottom: 8px;
}

.solution-kicker {
  color: #6448fa;
  margin-top: 4px;
}

.solution-divider {
  width: 100%;
  height: 1px;
  background: rgba(0,0,0,.08);
  margin: 18px 0;
}

.testimonial-card {
  position: relative;
  background: #fff;
  border-radius: 32px;
  padding: 34px;
  box-shadow: 0 18px 60px rgba(0,0,0,.05);
  border: 1px solid rgba(0,0,0,.04);
  overflow: hidden;
  transition: all .3s ease;
}

.testimonial-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 25px 70px rgba(0,0,0,.08);
}

.testimonial-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}

.city-tag {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(16,185,129,.08);
  color: #6448fa;
  font-size: .78rem;
  font-weight: 700;
  margin-bottom: 14px;
}

.testimonial-top h3 {
  font-size: 1.3rem;
  font-weight: 700;
  margin: 0;
}

.metric-badge {
  white-space: nowrap;
  padding: 14px 18px;
  border-radius: 18px;
  background: linear-gradient(135deg,#0f172a,#1e293b);
  color: #fff;
  font-size: 1.1rem;
  font-weight: 800;
}

.quote-icon {
  width: 62px;
  height: 62px;
  border-radius: 20px;
  background: linear-gradient(135deg,#ecfeff,#f0fdf4);
  color:#5f54fd;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  margin-bottom: 24px;
}

.testimonial-quote {
  font-size: 1.08rem;
  line-height: 1.9;
  color: #334155;
  margin-bottom: 34px;
}

.testimonial-results {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.result-item {
  flex: 1;
  min-width: 120px;
  background: #f8fafc;
  border-radius: 20px;
  padding: 18px;
}

.result-item strong {
  display: block;
  font-size: 1.4rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 8px;
}

.result-item span {
  display: block;
  font-size: .85rem;
  color: #64748b;
  line-height: 1.5;
}

.advanced-story {
  background: #fff;
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 18px 60px rgba(0,0,0,.05);
  transition: all .35s ease;
}

.advanced-story:hover {
  transform: translateY(-8px);
  box-shadow: 0 28px 70px rgba(0,0,0,.08);
}

.story-image-wrap {
  position: relative;
  overflow: hidden;
  height: 280px;
}

.story-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.advanced-story:hover .story-image {
  transform: scale(1.05);
}

.story-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(15,23,42,.05) 0%,
    rgba(15,23,42,.65) 100%
  );
}

.story-location {
  position: absolute;
  left: 24px;
  bottom: 24px;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  backdrop-filter: blur(10px);
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
}

.story-body {
  padding: 32px;
}

.story-tag {
  display: inline-flex;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(16,185,129,.08);
  color: #6860f2;
  font-size: .78rem;
  font-weight: 700;
  margin-bottom: 18px;
}

.story-body h3 {
  font-size: 1.5rem;
  line-height: 1.3;
  margin-bottom: 18px;
}

.story-body p {
  color: #64748b;
  line-height: 1.8;
}

.story-quote {
  margin: 26px 0;
  padding: 22px;
  border-radius: 22px;
  background: linear-gradient(
    180deg,
    #f8fafc 0%,
    #f1f5f9 100%
  );
  font-style: italic;
  color: #334155;
  line-height: 1.8;
  border-left: 4px solid #6448fa;
}

.story-results {
  list-style: none;
  padding: 0;
  margin: 0;
}

.story-results li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
  color: #475569;
}

.story-results li:last-child {
  border-bottom: none;
}

.story-results strong {
  color: #0f172a;
}

#company-story .company-card {
  background: #ffffff;
  border: 1px solid #e9eaf2;
  border-radius: 28px;
  padding: 40px;
  box-shadow: 0 18px 45px rgba(18, 24, 40, 0.06);
}

#company-story .company-photo {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  border-radius: 28px;
  display: block;
}

#company-story .company-media-wrap {
  position: relative;
}

#company-story .company-highlight-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

#company-story .company-highlight-item {
  background: #f7f8fc;
  border: 1px solid #eceef5;
  border-radius: 20px;
  padding: 20px;
}

#company-story .company-highlight-item h3 {
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 8px;
  font-weight: 800;
  color: #5f54fd;
}

#company-story .company-highlight-item p {
  margin: 0;
  font-size: 0.95rem;
  color: #5d6475;
}

#company-story .company-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

#company-story .company-list li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 14px;
  color: #222733;
}

#company-story .company-list li::before {
  content: "\F26E";
  font-family: "bootstrap-icons";
  position: absolute;
  left: 0;
  top: 1px;
  color: #7fcb11;
  font-size: 1rem;
}

#company-story .company-quote {
  background: linear-gradient(135deg, rgba(95, 84, 253, 0.08), rgba(58, 113, 235, 0.08));
  border: 1px solid rgba(95, 84, 253, 0.12);
  border-radius: 20px;
  padding: 20px 22px;
}

#company-story .company-quote p {
  color: #2a3040;
  font-size: 1rem;
  line-height: 1.7;
}

#company-story .company-floating-card {
  position: absolute;
  bottom: 24px;
  left: 24px;
  max-width: 360px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #eceef5;
  border-radius: 22px;
  padding: 22px;
  backdrop-filter: blur(10px);
}

#company-story .company-floating-label {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5f54fd;
  margin-bottom: 10px;
}

#company-story .company-floating-card h4 {
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 10px;
  color: #141925;
}

#company-story .company-floating-card p {
  font-size: 0.95rem;
  color: #5d6475;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  #company-story .company-card {
    padding: 28px;
  }

  #company-story .company-photo {
    min-height: 420px;
  }

  #company-story .company-floating-card {
    position: static;
    margin-top: 20px;
    max-width: 100%;
  }
}

@media (max-width: 575.98px) {
  #company-story .company-highlight-grid {
    grid-template-columns: 1fr;
  }
}

.testimonial-carousel {
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  padding-bottom: 60px;
}

.testimonial-slide {
  background: #fff;
  border-radius: 36px;
  padding: 60px 72px;
  min-height: 420px;
  box-shadow: 0 24px 70px rgba(0,0,0,.06);
  border: 1px solid rgba(0,0,0,.04);
  text-align: center;
}

.testimonial-slide .quote-icon {
  width: 72px;
  height: 72px;
  margin: 0 auto 32px;
  border-radius: 24px;
  background: linear-gradient(135deg,#ecfeff,#f0fdf4);
  color:#5f54fd;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
}

.testimonial-slide .testimonial-quote {
  font-size: clamp(1.3rem, 2vw, 2rem);
  line-height: 1.6;
  color: #0f172a;
  font-weight: 600;
  max-width: 780px;
  margin: 0 auto 36px;
}

.testimonial-author strong {
  display: block;
  font-size: 1.1rem;
  color: #0f172a;
  margin-bottom: 6px;
}

.testimonial-author span {
  color: #64748b;
  font-size: .95rem;
}

.testimonial-carousel .carousel-control-prev,
.testimonial-carousel .carousel-control-next {
  width: 52px;
  height: 52px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #0f172a;
  opacity: 1;
}

.testimonial-carousel .carousel-control-prev {
  left: -26px;
}

.testimonial-carousel .carousel-control-next {
  right: -26px;
}

.testimonial-carousel .carousel-control-prev-icon,
.testimonial-carousel .carousel-control-next-icon {
  width: 1.2rem;
  height: 1.2rem;
}

.testimonial-indicators {
  bottom: 0;
  margin-bottom: 0;
}

.testimonial-indicators button {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50%;
  background-color:#5f54fd !important;
  opacity: .25;
}

.testimonial-indicators button.active {
  opacity: 1;
}

@media (max-width: 991px) {
  .testimonial-slide {
    padding: 44px 28px;
    min-height: auto;
  }

  .testimonial-carousel .carousel-control-prev,
  .testimonial-carousel .carousel-control-next {
    display: none;
  }
}


.plan-summary {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: 20px;
  background: #f8fafc;
  color: #0f172a;
  font-weight: 700;
  line-height: 1.5;
}

.pricing-card.featured .plan-summary {
  background: rgba(255,255,255,.12);
  color: #0f172a;
}

.plan-features li {
  line-height: 1.65;
}

.company-founder-link {
  color: #0f172a;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.company-founder-link:hover {
  color: #10b981;
}

.company-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

.company-highlight-item {
  background: #fff;
  border-radius: 28px;
  padding: 34px 26px;
  text-align: center;
  box-shadow: 0 14px 45px rgba(0,0,0,.05);
  border: 1px solid rgba(0,0,0,.04);
}

.company-highlight-item h3 {
  font-size: clamp(2.2rem, 4vw, 3.4rem);
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 10px;
}

.company-highlight-item p {
  color: #64748b;
  margin: 0;
  line-height: 1.5;
}

@media (max-width: 991px) {
  .company-highlight-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 575px) {
  .company-highlight-grid {
    grid-template-columns: 1fr;
  }
}

  .legal-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 34px;
    }

    .legal-footer {
      background: #010e28;
      color: rgba(255,255,255,.75);
      padding: 80px 0 40px;
    }

    .footer-grid {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr;
      gap: 40px;
    }

    .footer-logo {
      height: 82px;
      width: auto;
      margin-bottom: 24px;
      filter: brightness(0) invert(1);
    }

    .footer-copy {
      color: rgba(255,255,255,.65);
      line-height: 1.8;
      max-width: 320px;
      margin: 0;
    }

    .legal-footer h4 {
      color: #fff;
      font-size: 1rem;
      margin-bottom: 20px;
      font-weight: 700;
    }

    .footer-links {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .footer-links li {
      margin-bottom: 14px;
    }

    .footer-links a {
      color: rgba(255,255,255,.65);
      text-decoration: none;
    }

    .footer-links a:hover {
      color: #fff;
    }

    .footer-bottom {
      margin-top: 60px;
      padding-top: 24px;
      border-top: 1px solid rgba(255,255,255,.08);
      color: rgba(255,255,255,.45);
      font-size: .92rem;
    }

    @media (max-width: 767px) {
      .legal-header-wrap {
        min-height: 72px;
      }

      .legal-logo {
        height: 36px;
      }

      .legal-hero {
        padding: 80px 0 50px;
      }

      .legal-card {
        padding: 34px 24px;
        border-radius: 28px;
      }

      .legal-grid,
      .footer-grid {
        grid-template-columns: 1fr;
      }
    }

.footer-socials{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:28px;
}

.footer-socials a{
  width:44px;
  height:44px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:1rem;
  transition:all .25s ease;
}

.footer-socials a:hover{
  background:#5f54fd;
  color:#fff;
  transform:translateY(-3px);
}

.pricing-card{
background:#fff;
border:1px solid #eceef5;
border-radius:28px;
padding:40px;
box-shadow:0 10px 35px rgba(17,24,39,.05);
position:relative;
transition:.3s;
}

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

.featured-plan{
border:2px solid #5f54fd;
box-shadow:0 20px 50px rgba(95,84,253,.15);
}

.popular-badge{
position:absolute;
top:20px;
right:20px;
background:#5f54fd;
color:#fff;
padding:8px 14px;
border-radius:999px;
font-size:.8rem;
font-weight:700;
}

.pricing-badge{
display:inline-block;
font-weight:700;
font-size:.85rem;
letter-spacing:.05em;
margin-bottom:20px;
}

.smart{
color:#20c6b7;
}

.scale{
color:#5f54fd;
}

.pro{
color:#d84cc6;
}

.pricing-price{
font-size:3rem;
font-weight:800;
margin-bottom:5px;
}

.pricing-subtitle{
color:#667085;
margin-bottom:5px;
}

.pricing-minimum{
font-size:.95rem;
font-weight:600;
color:#111827;
}

.pricing-teaser{
margin:30px 0;
padding:20px;
background:#f8f9fd;
border-radius:18px;
font-style:italic;
font-weight:600;
color:#2d3748;
}

.pricing-features{
list-style:none;
padding:0;
margin:0 0 30px;
}

.pricing-features li{
padding:10px 0;
border-bottom:1px solid #edf0f6;
}

.pricing-features i{
color:#7fcb11;
margin-right:10px;
}

.footer-mission-link{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  color:#ffffff;
  text-decoration:none;
  font-weight:600;
  margin-top:1rem;
  transition:.3s;
}

.footer-mission-link:hover{
  color:#7fcb11;
}

.footer-mission-link i{
  font-size:.85rem;
}

.mission-hero{
  padding: 100px 0 70px;
  background:
    radial-gradient(circle at top left, rgba(95,84,253,.12), transparent 35%),
    radial-gradient(circle at bottom right, rgba(127,203,17,.10), transparent 30%),
    #f7f8fc;
}

.mission-title{
  font-size: clamp(3rem, 6vw, 5.8rem);
  line-height: .95;
  letter-spacing: -.06em;
  font-weight: 900;
  color: #111827;
}

.mission-lead{
  font-size: 1.25rem;
  line-height: 1.8;
  color: #5d6475;
  max-width: 620px;
}

.mission-founder-card{
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(17,24,39,.14);
  background: #111827;
}

.mission-founder-photo{
  width: 100%;
  height: 620px;
  object-fit: cover;
  display: block;
}

.mission-founder-caption{
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(12px);
  border-radius: 22px;
  padding: 22px;
}

.mission-founder-caption span{
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  color: #5f54fd;
}

.mission-founder-caption h3{
  margin: 6px 0 4px;
  font-size: 1.45rem;
  font-weight: 800;
  color: #111827;
}

.mission-founder-caption p{
  margin: 0;
  color: #667085;
}

.mission-content{
  max-width: 920px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #eceef5;
  border-radius: 32px;
  padding: clamp(32px, 6vw, 72px);
  box-shadow: 0 20px 60px rgba(17,24,39,.06);
}

.mission-content p{
  font-size: clamp(1.08rem, 1.5vw, 1.28rem);
  line-height: 1.9;
  color: #3f4656;
  margin-bottom: 1.6rem;
}

.mission-content blockquote{
  font-size: clamp(1.7rem, 3vw, 2.6rem);
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -.04em;
  color: #111827;
  border-left: 6px solid #5f54fd;
  padding-left: 24px;
  margin: 42px 0;
}

.mission-content h2{
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1.05;
  letter-spacing: -.05em;
  font-weight: 900;
  color: #111827;
  margin-top: 48px;
}

.mission-signature{
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid #eceef5;
}

.mission-signature strong{
  display: block;
  font-size: 1.25rem;
  color: #111827;
}

.mission-signature span{
  display: block;
  color: #667085;
  margin-top: 4px;
}

.mission-value-card{
  background: #fff;
  border: 1px solid #eceef5;
  border-radius: 26px;
  padding: 34px;
  box-shadow: 0 12px 35px rgba(17,24,39,.05);
}

.mission-value-card i{
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(95,84,253,.10);
  color: #5f54fd;
  font-size: 1.6rem;
  margin-bottom: 22px;
}

.mission-value-card h3{
  font-size: 1.35rem;
  font-weight: 800;
  color: #111827;
  margin-bottom: 12px;
}

.mission-value-card p{
  color: #667085;
  line-height: 1.75;
  margin: 0;
}

.footer-mission-link{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: #ffffff;
  text-decoration: none;
  font-weight: 600;
  margin-top: 1rem;
  transition: .3s;
}

.footer-mission-link:hover{
  color: #5f54fd;
}

@media(max-width: 991px){
  .mission-founder-photo{
    height: 520px;
  }
}

@media(max-width: 575px){
  .mission-hero{
    padding: 70px 0 50px;
  }

  .mission-founder-photo{
    height: 420px;
  }

  .mission-founder-caption{
    position: static;
    border-radius: 0;
  }
}


.comparison-table-wrapper{
background:#fff;
border-radius:28px;
overflow:hidden;
box-shadow:0 20px 60px rgba(15,23,42,.08);
border:1px solid #eceef5;
}

.comparison-table{
margin:0;
}

.comparison-table thead th{
padding:28px;
font-size:1rem;
font-weight:800;
border:none;
background:#fafbff;
vertical-align:middle;
}

.comparison-table thead th span{
display:block;
margin-top:6px;
font-size:.85rem;
font-weight:500;
color:#667085;
}

.vivere-column{
background:linear-gradient(
135deg,
rgba(95,84,253,.12),
rgba(58,113,235,.08)
);
color:#111827;
}

.comparison-table td{
padding:24px;
vertical-align:middle;
border-color:#edf0f6;
}

.comparison-table tbody tr:hover{
background:#fafcff;
}

.highlight-cell{
font-weight:400;
color:#111827;
background:rgba(95,84,253,.03);
}

.comparison-cta{
background:#fff;
border-radius:24px;
padding:40px;
border:1px solid #eceef5;
}

.comparison-cta h3{
font-weight:800;
margin-bottom:15px;
}

.comparison-cta p{
color:#667085;
margin-bottom:25px;
}

/* ==========================
   TRUSTED BRANDS
========================== */

.brands-strip-section{
  padding:70px 0;
  background:#fff;
  border-top:1px solid #edf0f6;
  border-bottom:1px solid #edf0f6;
}

.brands-strip-header{
  margin-bottom:50px;
}

.brands-title{
  font-size:clamp(1.8rem,3vw,2.5rem);
  font-weight:800;
  color:#111827;
  margin-top:15px;
}

.brands-strip{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:60px;
}

.brand-item{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:80px;
}

.brand-item img{
  max-height:55px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  opacity:.75;
  filter:grayscale(100%);
  transition:.35s ease;
}

.brand-item:hover img{
  opacity:1;
  filter:none;
  transform:scale(1.05);
}

@media(max-width:991px){

  .brands-strip{
    gap:40px;
  }

  .brand-item img{
    max-height:45px;
  }

}

@media(max-width:576px){

  .brands-strip{
    gap:25px;
  }

  .brand-item{
    width:45%;
  }

  .brand-item img{
    max-width:160px;
    max-height:40px;
  }

}

.stories-carousel{
  position: relative;
  padding-bottom: 70px;
}

.stories-control{
  width: 46px;
  height: 46px;
  top: auto;
  bottom: 0;
  opacity: 1;
  border-radius: 50%;
  background: #111827;
}

.stories-control.carousel-control-prev{
  left: calc(50% - 60px);
}

.stories-control.carousel-control-next{
  right: calc(50% - 60px);
}

.stories-control .carousel-control-prev-icon,
.stories-control .carousel-control-next-icon{
  width: 1rem;
  height: 1rem;
}

.stories-indicators{
  bottom: 10px;
  margin-bottom: 0;
}

.stories-indicators [data-bs-target]{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #5f54fd;
}

.stories-control{
  width:46px;
  height:46px;
  top:auto;
  bottom:0;
}

.stories-carousel{
  position:relative;
  padding:0 80px;
}

.stories-control{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:60px;
  height:60px;
  border-radius:50%;
  background:#111827;
  opacity:1;
  z-index:20;
  transition:.3s;
}

.stories-control:hover{
  background:#5f54fd;
}

.stories-control.carousel-control-prev{
  left:-30px;
}

.stories-control.carousel-control-next{
  right:-30px;
}

.stories-control .carousel-control-prev-icon,
.stories-control .carousel-control-next-icon{
  width:1.2rem;
  height:1.2rem;
}

.stories-indicators{
  margin-top:40px;
  position:relative;
  bottom:auto;
}

@media(max-width:991px){

  .stories-carousel{
    padding:0 20px;
  }

  .stories-control{
    width:46px;
    height:46px;
  }

  .stories-control.carousel-control-prev{
    left:-10px;
  }

  .stories-control.carousel-control-next{
    right:-10px;
  }

}

.mini-stats-inline{
  background:#f7f8fc;
  border-top:1px solid #edf0f6;
  border-bottom:1px solid #edf0f6;
}

.stats-line{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:30px;
  align-items:center;
  text-align:center;
}

.stats-line-item strong{
  display:block;
  font-size:45px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.05em;
  color:#111827;
  margin-bottom:12px;
}

.stats-line-item span{
  display:block;
  font-size:clamp(1rem, 1.3vw, 1.35rem);
  line-height:1.45;
  color:#667085;
  font-weight:500;
}

@media(max-width:991px){
  .stats-line{
    grid-template-columns:repeat(2, 1fr);
    gap:40px 24px;
  }
}

@media(max-width:575px){
  .stats-line{
    grid-template-columns:1fr;
  }

  .stats-line-item strong{
    font-size:3.2rem;
  }
}

.pricing-trust-bar{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:24px;
  padding:0 0 34px;
  flex-wrap:wrap;
}

.pricing-trust-item{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.9rem;
  font-weight:600;
  color:#111827;
}

.pricing-trust-icon{
  width:22px;
  height:22px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.8rem;
}

.pricing-trust-icon.green{
  background:#eaf3de;
  color:#3b6d11;
}

.pricing-trust-icon.purple{
  background:#eeedfe;
  color:#534ab7;
}

.pricing-trust-sep{
  width:1px;
  height:18px;
  background:#e5e7eb;
}

.smart-kicker{
  background:#eaf3de;
  color:#3b6d11;
}

.scale-kicker{
  background:#eeedfe;
  color:#534ab7;
}

.pro-kicker{
  background:#faece7;
  color:#993c1d;
}

.plan-old-price{
  font-size:1rem;
  color:#98a2b3;
  text-decoration:line-through;
  margin-left:.5rem;
}

.plan-price-unit{
  font-size:1rem;
  color:#667085;
}

.plan-saving{
  display:inline-block;
  font-size:.85rem;
  font-weight:700;
  background:#eaf3de;
  color:#3b6d11;
  padding:5px 12px;
  border-radius:999px;
  margin:8px 0 16px;
}

.purple-saving{
  background:#eeedfe;
  color:#3c3489;
}

.pro-saving{
  background:#faece7;
  color:#993c1d;
}

.plan-users{
  display:flex;
  align-items:center;
  gap:8px;
  color:#667085;
  font-size:.95rem;
  margin:10px 0 14px;
}

.fee-toggle{
  display:flex;
  border:1px solid #e5e7eb;
  border-radius:14px;
  overflow:hidden;
  margin-bottom:18px;
}

.fee-btn{
  flex:1;
  padding:8px 12px;
  border:0;
  background:transparent;
  color:#667085;
  font-weight:600;
}

.fee-btn.active{
  background:#f4f4f5;
  color:#111827;
}

.plan-divider{
  border:0;
  border-top:1px solid #eceef5;
  margin:22px 0;
}

.plan-section-title{
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#98a2b3;
  margin-bottom:16px;
}

.pricing-feature-list{
  list-style:none;
  padding:0;
}

.pricing-feature-list{
  list-style:none;
  padding:0;
  margin:0;
}

.pricing-feature-list li{
  position:relative;
  padding-left:18px;
  margin-bottom:14px;
  text-align:left;
  color:#667085;
  line-height:1.6;
}

.pricing-feature-list li strong{
  color:#111827;
  font-weight:700;
}

.feature-dot{
  position:absolute;
  left:0;
  top:10px;
  width:7px;
  height:7px;
  border-radius:50%;
}
.pricing-feature-list strong{
  color:#111827;
}

.feature-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  flex-shrink:0;
  margin-top:8px;
}

.smart-dot{
  background:#639922;
}

.scale-dot{
  background:#7f77dd;
}

.pro-dot{
  background:#d85a30;
}

.flex-note{
  font-size:.95rem;
  color:#667085;
  font-style:italic;
  margin-bottom:8px;
}

.pricing-footer-note{
  font-size:.9rem;
  color:#667085;
  text-align:center;
  margin-top:30px;
  line-height:1.7;
}

@media(max-width:575px){
  .pricing-trust-sep{
    display:none;
  }
}

.brands-strip{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    gap:50px;
}

.brand-item a{
    display:flex;
    align-items:center;
    justify-content:center;
}

.brand-item img{
    max-height:60px;
    width:auto;
    opacity:.75;
    transition:all .3s ease;
    filter:grayscale(100%);
}

.brand-item img:hover{
    opacity:1;
    filter:none;
    transform:translateY(-3px);
}

.logo-marquee{
    overflow:hidden;
    position:relative;
    width:100%;
}

.logo-track{
    display:flex;
    align-items:center;
    gap:90px;
    width:max-content;
    animation:logoScroll 35s linear infinite;
}

.logo-track:hover{
    animation-play-state:paused;
}

.logo-track a{
    display:flex;
    align-items:center;
    justify-content:center;
}

.logo-track img{
    max-height:60px;
    width:auto;
    opacity:.75;
    filter:grayscale(100%);
    transition:.3s;
}

.logo-track img:hover{
    opacity:1;
    filter:none;
    transform:scale(1.05);
}

@keyframes logoScroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

.logo-marquee:before,
.logo-marquee:after{
    content:"";
    position:absolute;
    top:0;
    width:120px;
    height:100%;
    z-index:2;
    pointer-events:none;
}

.logo-marquee:before{
    left:0;
    background:linear-gradient(
        to right,
        #fff,
        transparent
    );
}

.logo-marquee:after{
    right:0;
    background:linear-gradient(
        to left,
        #fff,
        transparent
    );
}


/* ==========================
   COMPARISON TABLE
========================== */

#comparison {
  background:
    radial-gradient(circle at top left, rgba(95, 84, 253, .08), transparent 32%),
    #f7f8fc;
}

.comparison-table-wrapper {
  background: #ffffff;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
  border: 1px solid #e8eaf3;
}

.comparison-table {
  margin: 0;
  min-width: 980px;
}

.comparison-table thead th {
  padding: 30px 26px;
  border: 0;
  font-size: 1.05rem;
  font-weight: 900;
  color: #111827;
  background: #f9fafb;
}

.comparison-table thead th span {
  display: block;
  margin-top: 7px;
  font-size: .85rem;
  font-weight: 600;
  color: #667085;
}

/* Capability column */
.comparison-table thead th:first-child,
.comparison-table tbody td:first-child {
  background: #767bfb30;
  color: #111827;
  font-weight: 900;
  border-right: 1px solid #dbe2ff;
}

.comparison-table tbody td:first-child {
  font-size: 1.02rem;
  letter-spacing: -.01em;
}

/* Vivere column */
.comparison-table thead th.vivere-column {
    background: linear-gradient(135deg, #5f54fdc9 0%, #3a71ebde 100%);
    color: #ffffff;
}

.comparison-table thead th.vivere-column span {
  color: rgba(255, 255, 255, .82);
}

.comparison-table tbody td.highlight-cell {
  background: linear-gradient(135deg, rgba(95, 84, 253, .10), rgba(58, 113, 235, .07));
  color: #111827;
  font-weight: 500;
  border-left: 1px solid rgba(95, 84, 253, .16);
  border-right: 1px solid rgba(95, 84, 253, .16);
}

/* SME column */
.comparison-table thead th:nth-child(3) {
  background: #ecfdf5;
}

.comparison-table tbody td:nth-child(3) {
  background: #f7fefb;
}

/* Enterprise column */
.comparison-table thead th:nth-child(4) {
  background: #fff7ed;
}

.comparison-table tbody td:nth-child(4) {
  background: #fffbf7;
}

.comparison-table tbody td {
  padding: 24px 26px;
  color: #4b5563;
  border-color: #edf0f6;
  line-height: 1.6;
  vertical-align: middle;
}

.comparison-table tbody tr:hover td {
  background-color: #f8faff;
}

.comparison-table tbody tr:hover td:first-child {
  background: #e5eaff;
}

.comparison-table tbody tr:hover td.highlight-cell {
  background: linear-gradient(135deg, rgba(95, 84, 253, .16), rgba(58, 113, 235, .12));
}

/* CTA box */
.comparison-cta {
  background: #ffffff;
  border-radius: 26px;
  padding: 42px;
  border: 1px solid #e8eaf3;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.comparison-cta h3 {
  font-weight: 900;
  color: #111827;
  margin-bottom: 14px;
}

.comparison-cta p {
  color: #667085;
  line-height: 1.7;
  margin-bottom: 24px;
}

.pricing-card h3 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: .75rem;
}

/* ==========================
   HERO REVENUE CALCULATOR
========================== */

.hero-calculator-card{
    position:relative;
    margin-top:32px;
    max-width:520px;
    padding:24px 28px;
    border-radius:24px;

    background:rgba(255,255,255,.85);
    backdrop-filter:blur(18px);

    border:1px solid rgba(95,84,253,.12);

    box-shadow:
      0 10px 40px rgba(15,23,42,.08),
      0 2px 12px rgba(95,84,253,.08);

    transition:.35s ease;
}

.hero-calculator-card:hover{
    transform:translateY(-4px);

    box-shadow:
      0 20px 50px rgba(15,23,42,.12),
      0 8px 25px rgba(95,84,253,.12);
}

.hero-calculator-card span{
    display:inline-flex;
    align-items:center;
    gap:8px;

    padding:8px 14px;
    border-radius:999px;

    background:rgba(95,84,253,.08);

    color:#5f54fd;
    font-size:.82rem;
    font-weight:700;
    letter-spacing:.03em;
    text-transform:uppercase;
}

.hero-calculator-card span:before{
    content:"📈";
    font-size:14px;
}

.hero-calculator-card strong{
    display:block;
    margin-top:18px;

    font-size:1.35rem;
    line-height:1.4;
    font-weight:800;

    color:#111827;
}

.hero-calculator-card p{
    margin-top:14px;
    margin-bottom:18px;

    font-size:1rem;
    line-height:1.7;

    color:#667085;
}

.hero-calculator-card a{
    display:inline-flex;
    align-items:center;
    gap:8px;

    text-decoration:none;

    color:#5f54fd;
    font-weight:700;

    transition:.3s;
}

.hero-calculator-card a:hover{
    color:#3a71eb;
}

.hero-calculator-card a:after{
    content:"→";
    transition:.3s;
}

.hero-calculator-card a:hover:after{
    transform:translateX(4px);
}

/* Glow effect */

.hero-calculator-card:before{
    content:"";

    position:absolute;
    top:-40px;
    right:-40px;

    width:120px;
    height:120px;

    border-radius:50%;

    background:rgba(95,84,253,.08);

    filter:blur(40px);

    pointer-events:none;
}

/* Mobile */

@media(max-width:991px){

    .hero-calculator-card{
        max-width:100%;
        margin:30px auto 0;
    }

}

.apply-card h2{
	font-size: 45px;
}

#pricing{
  --pricing-text:#111827;
  --pricing-muted:#667085;
  --pricing-soft:#98a2b3;
  --pricing-border:#edf0f6;
  --pricing-border-2:#e5e7eb;
}

.pricing-trust-bar{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:24px;
  padding:12px 0 24px;
  flex-wrap:wrap;
}

.pricing-trust-item{
  display:flex;
  align-items:center;
  gap:7px;
  font-size:13px;
  font-weight:600;
  color:var(--pricing-text);
}

.pricing-trust-icon{
  width:18px;
  height:18px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.75rem;
}

.pricing-trust-icon.green{
  background:#eaf3de;
  color:#3b6d11;
}

.pricing-trust-icon.purple{
  background:#eeedfe;
  color:#534ab7;
}

.pricing-trust-sep{
  width:1px;
  height:14px;
  background:var(--pricing-border-2);
}

.pricing-billing-wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin-bottom:26px;
}

.pricing-billing-toggle{
  display:flex;
  background:#f7f8fc;
  border:1px solid var(--pricing-border-2);
  border-radius:999px;
  padding:3px;
  gap:2px;
}

.pricing-billing-btn{
  font-size:12.5px;
  font-weight:600;
  padding:6px 18px;
  border:0;
  background:transparent;
  color:var(--pricing-muted);
  cursor:pointer;
  border-radius:999px;
}

.pricing-billing-btn.active{
  background:#fff;
  color:var(--pricing-text);
  box-shadow:0 1px 4px rgba(15,23,42,.12);
}

.annual-badge{
  font-size:11px;
  font-weight:700;
  background:#eaf3de;
  color:#3b6d11;
  padding:4px 10px;
  border-radius:999px;
}

.pricing-plan-card{
  background:#fff;
  border:1px solid var(--pricing-border);
  border-radius:26px;
  padding:24px;
  display:flex;
  flex-direction:column;
  box-shadow:0 18px 45px rgba(15,23,42,.05);
}

.pricing-plan-card.featured{
  border:2px solid #534ab7;
  box-shadow:0 24px 70px rgba(83,74,183,.14);
}

.plan-badge{
  display:inline-block;
  width:max-content;
  font-size:11px;
  font-weight:700;
  padding:5px 12px;
  border-radius:12px;
  margin-bottom:12px;
}

.b-smart{
  background:#eaf3de;
  color:#3b6d11;
}

.b-pop{
  background:#eeedfe;
  color:#3c3489;
}

.b-pro{
  background:#faece7;
  color:#993c1d;
}

.plan-name{
  font-size:24px;
  font-weight:700;
  color:var(--pricing-text);
  margin-bottom:8px;
}

.plan-quote{
  font-size:13px;
  font-style:italic;
  color:var(--pricing-muted);
  line-height:1.55;
  min-height:62px;
  margin-bottom:8px;
}

.plan-desc{
  font-size:13px;
  color:var(--pricing-soft);
  line-height:1.55;
  min-height:42px;
  margin-bottom:16px;
}

.fee-toggle-spacer{
  height:37px;
  margin-bottom:14px;
}

.pricing-fee-toggle{
  display:flex;
  border:1px solid var(--pricing-border-2);
  border-radius:14px;
  overflow:hidden;
  margin-bottom:16px;
}

.pricing-fee-btn{
  flex:1;
  padding:7px 0;
  border:0;
  background:transparent;
  color:var(--pricing-muted);
  font-size:12px;
  font-weight:700;
}

.pricing-fee-btn:first-child{
  border-right:1px solid var(--pricing-border-2);
}

.pricing-fee-btn.active{
  background:#f7f8fc;
  color:var(--pricing-text);
}

.price-block{
  margin-bottom:8px;
}

.price-from{
  font-size:11px;
  font-weight:800;
  color:var(--pricing-soft);
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:3px;
}

.price-row{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}

.price-now{
  font-size:30px;
  font-weight:800;
  color:var(--pricing-text);
  letter-spacing:-.04em;
}

.price-mo{
  font-size:13px;
  color:var(--pricing-muted);
}

.price-was{
  font-size:13px;
  color:var(--pricing-soft);
  text-decoration:line-through;
}

.saving-row{
  margin-top:6px;
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}

.saving-pill{
  display:inline-block;
  font-size:11px;
  font-weight:700;
  background:#eaf3de;
  color:#3b6d11;
  padding:4px 9px;
  border-radius:999px;
}

.purple-saving{
  background:#eeedfe;
  color:#3c3489;
}

.pro-saving{
  background:#faece7;
  color:#993c1d;
}

.annual-note{
  font-size:11px;
  color:var(--pricing-soft);
}

.price-info-icon{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:16px;
  height:16px;
  border-radius:50%;
  border:1px solid var(--pricing-border-2);
  font-size:9px;
  font-weight:900;
  color:var(--pricing-soft);
  cursor:default;
}

.price-tooltip{
  display:none;
  position:absolute;
  bottom:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  width:220px;
  background:#fff;
  border:1px solid var(--pricing-border-2);
  border-radius:10px;
  padding:10px 12px;
  font-size:11px;
  font-weight:500;
  color:var(--pricing-muted);
  line-height:1.5;
  box-shadow:0 10px 30px rgba(15,23,42,.12);
  z-index:20;
}

.price-info-icon:hover .price-tooltip{
  display:block;
}

.flex-note{
  font-size:13px;
  color:var(--pricing-muted);
  font-style:italic;
  margin-bottom:8px;
}

.plan-users{
  display:flex;
  align-items:center;
  gap:7px;
  margin:12px 0 16px;
  font-size:13px;
  color:var(--pricing-muted);
}

.pricing-cta-btn{
  display:block;
  text-align:center;
  padding:11px 14px;
  border-radius:14px;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  border:1px solid var(--pricing-border-2);
  background:#fff;
  color:var(--pricing-text);
  margin-bottom:18px;
}

.pricing-cta-btn:hover{
  color:var(--pricing-text);
  transform:translateY(-1px);
}

.pricing-cta-btn.featured-btn{
  background:#534ab7;
  color:#eeedfe;
  border-color:#534ab7;
}

.pricing-cta-btn.pro-btn{
  background:#993c1d;
  color:#faece7;
  border-color:#993c1d;
}

.plan-divider{
  border:0;
  border-top:1px solid var(--pricing-border);
  margin:0 0 16px;
}

.plan-section-title{
  font-size:11px;
  font-weight:800;
  color:var(--pricing-soft);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:12px;
}

.pricing-feature-list{
  list-style:none;
  padding:0;
  margin:0;
}

.pricing-feature-list li{
  position:relative;
  padding-left:16px;
  margin-bottom:11px;
  font-size:13px;
  color:var(--pricing-muted);
  line-height:1.55;
}

.pricing-feature-list strong{
  color:var(--pricing-text);
  font-weight:700;
}

.feature-dot{
  position:absolute;
  left:0;
  top:.7em;
  width:6px;
  height:6px;
  border-radius:50%;
}

.smart-dot{
  background:#639922;
}

.scale-dot{
  background:#7f77dd;
}

.pro-dot{
  background:#d85a30;
}

.pricing-footer-note{
  font-size:12px;
  color:var(--pricing-soft);
  text-align:center;
  margin-top:24px;
  line-height:1.7;
}

@media(max-width:991px){
  .plan-quote,
  .plan-desc{
    min-height:auto;
  }

  .fee-toggle-spacer{
    display:none;
  }
}

@media(max-width:575px){
  .pricing-trust-sep{
    display:none;
  }

  .pricing-billing-wrap{
    flex-direction:column;
  }

  .pricing-plan-card{
    padding:22px;
  }
}