/* Shared commercial card system for Voice, WhatsApp and Deskia Duo.
   Corporate palette: white / charcoal with restrained blue, fuchsia and green accents. */
:root {
  --plan-ink: #111318;
  --plan-charcoal: #141820;
  --plan-charcoal-2: #1a2030;
  --plan-paper: #ffffff;
  --plan-muted: #7c8799;
  --plan-line: rgba(255,255,255,.11);
  --plan-fuchsia: #ff3b73;
  --plan-blue: #3b82f6;
  --plan-green: #18a56b;
}

/* Voice + WhatsApp: same card geometry */
.vl-route-grid,
.wal-routes__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

.vl-route,
.wal-route {
  position: relative !important;
  min-height: 610px !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 30px 30px 26px !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  border: 1px solid var(--plan-line) !important;
  background: linear-gradient(180deg, var(--plan-charcoal-2) 0%, var(--plan-charcoal) 100%) !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
}

.vl-route--basic,
.wal-route--whatsapp {
  border-color: #e6e9ef !important;
  background: #fff !important;
  color: var(--plan-ink) !important;
  box-shadow: 0 24px 70px rgba(10, 14, 22, .08) !important;
}

.vl-route--basic::before,
.wal-route--whatsapp::before,
.vl-route--calendly::before,
.wal-route--calendly::before,
.vl-route--duo::before,
.wal-route--duo::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 3px;
  background: var(--plan-fuchsia);
}

.vl-route--calendly::before,
.wal-route--calendly::before { background: var(--plan-blue); }
.vl-route--duo::before,
.wal-route--duo::before { background: linear-gradient(90deg, var(--plan-blue), var(--plan-fuchsia)); }

.vl-route__head,
.wal-route__head {
  align-items: flex-start !important;
  gap: 18px !important;
}

.vl-route__head p,
.wal-route__head p {
  margin: 4px 0 10px !important;
  color: rgba(255,255,255,.56) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.vl-route--basic .vl-route__head p,
.wal-route--whatsapp .wal-route__head p { color: #7d8798 !important; }

.vl-route h3,
.wal-route h3 {
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(31px, 2.8vw, 42px) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
  font-weight: 900 !important;
}

.vl-route--basic h3,
.wal-route--whatsapp h3 { color: var(--plan-ink) !important; }

.vl-price,
.wal-price {
  flex: 0 0 auto !important;
  text-align: right !important;
}

.vl-price strong,
.wal-price strong {
  display: block !important;
  color: #fff !important;
  font-size: 34px !important;
  line-height: .95 !important;
  letter-spacing: -.05em !important;
}

.vl-route--basic .vl-price strong,
.wal-route--whatsapp .wal-price strong { color: var(--plan-ink) !important; }

.vl-price span,
.wal-price span {
  display: block !important;
  margin-top: 6px !important;
  color: rgba(255,255,255,.52) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}

.vl-route--basic .vl-price span,
.wal-route--whatsapp .wal-price span { color: #8a94a5 !important; }

.vl-route__intro,
.wal-route__intro {
  min-height: 78px !important;
  margin: 28px 0 22px !important;
  color: rgba(255,255,255,.67) !important;
  font-size: 14px !important;
  line-height: 1.72 !important;
}

.vl-route--basic .vl-route__intro,
.wal-route--whatsapp .wal-route__intro { color: #677489 !important; }

.vl-route ul,
.wal-route ul {
  display: grid !important;
  gap: 14px !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  list-style: none !important;
}

.vl-route li,
.wal-route li {
  position: relative !important;
  padding-left: 25px !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 760 !important;
}

.vl-route--basic li,
.wal-route--whatsapp li { color: #273244 !important; }

.vl-route li::before,
.wal-route li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .42em !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: var(--plan-blue) !important;
  box-shadow: 0 0 0 5px rgba(59,130,246,.10) !important;
}

.vl-route--basic li::before,
.wal-route--whatsapp li::before {
  background: var(--plan-fuchsia) !important;
  box-shadow: 0 0 0 5px rgba(255,59,115,.10) !important;
}

.vl-route__upgrade,
.wal-route__upgrade {
  margin: 0 0 22px !important;
  padding: 13px 14px !important;
  border: 1px solid rgba(24,165,107,.32) !important;
  border-radius: 14px !important;
  background: rgba(24,165,107,.09) !important;
}

.vl-route__upgrade strong,
.wal-route__upgrade strong { color: #67dfac !important; font-size: 11px !important; }
.vl-route__upgrade span,
.wal-route__upgrade span { color: rgba(255,255,255,.62) !important; font-size: 9px !important; }

.vl-route__badge,
.wal-route__badge {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: #fff !important;
  color: var(--plan-ink) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.vl-route > .vl-button,
.wal-route > .wal-button {
  width: 100% !important;
  min-height: 54px !important;
  margin-top: auto !important;
  border-radius: 999px !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 10px !important;
  letter-spacing: .065em !important;
}

.vl-route--basic > .vl-button,
.wal-route--whatsapp > .wal-button {
  background: var(--plan-fuchsia) !important;
  color: #fff !important;
}

.vl-route--calendly > .vl-button,
.vl-route--duo > .vl-button,
.wal-route--calendly > .wal-button,
.wal-route--duo > .wal-button {
  background: #fff !important;
  color: var(--plan-ink) !important;
}

.vl-route > small,
.wal-route > small {
  display: block !important;
  margin-top: 14px !important;
  color: rgba(255,255,255,.43) !important;
  text-align: center !important;
  font-size: 9px !important;
}

.vl-route--basic > small,
.wal-route--whatsapp > small { color: #9aa3b0 !important; }

/* Real product capture in Voice hero */
.vl-product--real {
  padding: 12px !important;
  background: rgba(19,23,30,.82) !important;
}
.vl-product--real img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: 0 30px 80px rgba(0,0,0,.30);
}

/* Deskia Duo: same visual language, one focused offer rather than three competing plans. */
.deskia-duo-offer__panel {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg, #1a2030 0%, #11151d 100%) !important;
  color: #fff !important;
  box-shadow: 0 30px 80px rgba(14,18,28,.14) !important;
}
.deskia-duo-offer__panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--plan-blue), var(--plan-fuchsia));
}
.deskia-duo-offer__tag {
  border: 1px solid rgba(255,255,255,.12) !important;
  background: #fff !important;
  color: var(--plan-ink) !important;
}
.deskia-duo-offer__main h3,
.deskia-duo-offer__features li,
.deskia-duo-offer__price strong { color: #fff !important; }
.deskia-duo-offer__lead,
.deskia-duo-offer__price > span,
.deskia-duo-offer__price p,
.deskia-duo-offer__price > small { color: rgba(255,255,255,.66) !important; }
.deskia-duo-offer__features li::before { color: var(--plan-blue) !important; }
.deskia-duo-offer__bonus {
  border-color: rgba(24,165,107,.30) !important;
  background: rgba(24,165,107,.09) !important;
}
.deskia-duo-offer__bonus strong { color: #6be0af !important; }
.deskia-duo-offer__bonus p { color: rgba(255,255,255,.65) !important; }
.deskia-duo-offer__price {
  border-left-color: rgba(255,255,255,.10) !important;
  background: rgba(255,255,255,.025) !important;
}
.deskia-duo-offer__price .deskia-button--primary {
  border: 0 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--plan-ink) !important;
  box-shadow: none !important;
}

@media (max-width: 980px) {
  .vl-route-grid,
  .wal-routes__grid { grid-template-columns: 1fr !important; }
  .vl-route,
  .wal-route { min-height: 0 !important; }
  .vl-route__intro,
  .wal-route__intro { min-height: 0 !important; }
}

@media (max-width: 640px) {
  .vl-route,
  .wal-route { padding: 24px 22px 22px !important; border-radius: 24px !important; }
  .vl-route h3,
  .wal-route h3 { font-size: 30px !important; }
  .vl-price strong,
  .wal-price strong { font-size: 28px !important; }
}
