{"id":224,"date":"2026-05-31T01:02:15","date_gmt":"2026-05-31T07:02:15","guid":{"rendered":"https:\/\/balasto.ai\/?page_id=224"},"modified":"2026-06-21T17:15:39","modified_gmt":"2026-06-21T23:15:39","slug":"creditos-y-planes","status":"publish","type":"page","link":"https:\/\/balasto.ai\/?page_id=224","title":{"rendered":"Recargar cr\u00e9ditos"},"content":{"rendered":"<style data-wp-block-html=\"css\">\n#bcp-root,\n#bcp-root *,\n#bcp-root *::before,\n#bcp-root *::after {\n  box-sizing: border-box !important;\n}\n\n#bcp-root {\n  font-family: 'DM Sans','Helvetica Neue',Arial,sans-serif !important;\n  font-weight: 300 !important;\n  line-height: 1.6 !important;\n  color: #0d1f3c !important;\n  -webkit-font-smoothing: antialiased !important;\n  margin-left: calc(-50vw + 50%) !important;\n  margin-right: calc(-50vw + 50%) !important;\n  width: 100vw !important;\n  display: block !important;\n  overflow-x: hidden !important;\n  background: #f4f1eb !important;\n}\n\n\/* \u2500\u2500 HERO \u2500\u2500 *\/\n\n#bcp-root .bcp-hero {\n  background: #0d1f3c !important;\n  padding: 78px 5vw 70px !important;\n  text-align: center !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-hero-inner {\n  max-width: 760px !important;\n  margin: 0 auto !important;\n  display: block !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-eyebrow,\n#bcp-root .bcp-eyebrow-dark {\n  display: block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 11px !important;\n  font-weight: 500 !important;\n  letter-spacing: .18em !important;\n  text-transform: uppercase !important;\n  margin: 0 0 20px !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-eyebrow {\n  color: rgba(255,255,255,.38) !important;\n}\n\n#bcp-root .bcp-eyebrow-dark {\n  color: #244b3d !important;\n}\n\n#bcp-root .bcp-hero h1 {\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(38px,5.4vw,66px) !important;\n  font-weight: 300 !important;\n  line-height: 1.03 !important;\n  color: #fff !important;\n  margin: 0 0 20px !important;\n  padding: 0 !important;\n  letter-spacing: -.01em !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-hero p {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 15.5px !important;\n  font-weight: 300 !important;\n  color: rgba(255,255,255,.64) !important;\n  max-width: 620px !important;\n  margin: 0 auto !important;\n  padding: 0 !important;\n  line-height: 1.7 !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-hero-actions {\n  display: flex !important;\n  justify-content: center !important;\n  align-items: center !important;\n  gap: 14px !important;\n  flex-wrap: wrap !important;\n  margin: 34px 0 0 !important;\n  padding: 0 !important;\n}\n\n\/* \u2500\u2500 PAGE \/ SECTIONS \u2500\u2500 *\/\n\n#bcp-root .bcp-band {\n  background: #f4f1eb !important;\n  padding: 58px 5vw !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-intro {\n  padding-top: 64px !important;\n}\n\n#bcp-root .bcp-inner {\n  max-width: 1120px !important;\n  margin: 0 auto !important;\n  display: block !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-section-head {\n  max-width: 740px !important;\n  margin: 0 auto 30px !important;\n  padding: 0 !important;\n  text-align: center !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-section-head h2,\n#bcp-root .bcp-enterprise h2 {\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(30px,3.4vw,42px) !important;\n  font-weight: 400 !important;\n  color: #0d1f3c !important;\n  line-height: 1.08 !important;\n  margin: 0 0 10px !important;\n  padding: 0 !important;\n  letter-spacing: -.01em !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-section-head p,\n#bcp-root .bcp-enterprise p {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 14.5px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.7 !important;\n  margin: 0 auto !important;\n  padding: 0 !important;\n  display: block !important;\n}\n\n\/* \u2500\u2500 CREDIT CARDS \u2500\u2500 *\/\n\n#bcp-root .bcp-grid-3,\n#bcp-root .bcp-options {\n  display: grid !important;\n  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\n  gap: 18px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-card,\n#bcp-root .bcp-option,\n#bcp-root .bcp-account-box,\n#bcp-root .bcp-faq article {\n  background: #fff !important;\n  border: 1px solid rgba(13,31,60,.10) !important;\n  border-radius: 18px !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-card {\n  padding: 30px 30px 28px !important;\n  min-height: 100% !important;\n}\n\n#bcp-root .bcp-card h3,\n#bcp-root .bcp-option h3 {\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(24px,2.4vw,30px) !important;\n  font-weight: 400 !important;\n  color: #0d1f3c !important;\n  line-height: 1.12 !important;\n  margin: 14px 0 10px !important;\n  padding: 0 !important;\n  letter-spacing: 0 !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-card p,\n#bcp-root .bcp-option p {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 13.5px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.65 !important;\n  margin: 0 0 16px !important;\n  padding: 0 !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-card-price {\n  display: block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 12.5px !important;\n  font-weight: 500 !important;\n  color: #0d1f3c !important;\n  margin: 20px 0 0 !important;\n  padding: 14px 0 0 !important;\n  border-top: 1px solid rgba(13,31,60,.08) !important;\n}\n\n#bcp-root .bcp-muted {\n  background: rgba(255,255,255,.66) !important;\n}\n\n\/* \u2500\u2500 PILLS \/ LINKS \u2500\u2500 *\/\n\n#bcp-root .bcp-pill {\n  display: inline-flex !important;\n  align-items: center !important;\n  min-height: 26px !important;\n  padding: 0 11px !important;\n  border-radius: 100px !important;\n  background: rgba(13,31,60,.06) !important;\n  color: #244b3d !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 10.5px !important;\n  font-weight: 500 !important;\n  letter-spacing: .12em !important;\n  text-transform: uppercase !important;\n  margin: 0 !important;\n}\n\n#bcp-root .bcp-link {\n  color: #0d1f3c !important;\n  font-weight: 500 !important;\n  text-decoration: underline !important;\n  text-underline-offset: 3px !important;\n}\n\n#bcp-root .bcp-link:hover {\n  color: #1a3d2e !important;\n}\n\n#bcp-root .bcp-link-light {\n  color: rgba(255,255,255,.72) !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 14px !important;\n  font-weight: 400 !important;\n  text-decoration: underline !important;\n  text-underline-offset: 4px !important;\n}\n\n#bcp-root .bcp-link-light:hover {\n  color: #e8c96b !important;\n}\n\n\/* \u2500\u2500 ACCOUNT IDENTIFIER \u2500\u2500 *\/\n\n#bcp-root .bcp-account-band {\n  background: #eef1f0 !important;\n  border-top: 1px solid rgba(13,31,60,.07) !important;\n  border-bottom: 1px solid rgba(13,31,60,.07) !important;\n}\n\n#bcp-root .bcp-account-box {\n  display: grid !important;\n  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\n  gap: 16px !important;\n  padding: 26px !important;\n  margin: 0 !important;\n}\n\n#bcp-root .bcp-account-box label,\n#bcp-root .bcp-topup-controls label {\n  display: flex !important;\n  flex-direction: column !important;\n  gap: 7px !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 11.5px !important;\n  font-weight: 500 !important;\n  letter-spacing: .06em !important;\n  text-transform: uppercase !important;\n  color: #0d1f3c !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-account-box input,\n#bcp-root .bcp-topup-controls input {\n  display: block !important;\n  width: 100% !important;\n  background: #faf9f6 !important;\n  border: 1px solid rgba(13,31,60,.18) !important;\n  border-radius: 10px !important;\n  padding: 12px 16px !important;\n  margin: 0 !important;\n  font-family: 'DM Sans','Helvetica Neue',Arial,sans-serif !important;\n  font-size: 14px !important;\n  font-weight: 300 !important;\n  color: #0d1f3c !important;\n  outline: none !important;\n  -webkit-appearance: none !important;\n  appearance: none !important;\n  box-shadow: none !important;\n  line-height: 1.4 !important;\n  height: auto !important;\n}\n\n#bcp-root .bcp-account-box input::placeholder,\n#bcp-root .bcp-topup-controls input::placeholder {\n  color: #aab5c0 !important;\n}\n\n#bcp-root .bcp-account-box input:disabled,\n#bcp-root .bcp-topup-controls input:disabled {\n  opacity: .72 !important;\n  cursor: not-allowed !important;\n}\n\n#bcp-root .bcp-account-note {\n  max-width: 720px !important;\n  margin: 14px auto 0 !important;\n  text-align: center !important;\n}\n\n\/* \u2500\u2500 OPTIONS \/ PLANS \u2500\u2500 *\/\n\n#bcp-root .bcp-options {\n  align-items: stretch !important;\n}\n\n#bcp-root .bcp-option {\n  padding: 34px 30px !important;\n  display: flex !important;\n  flex-direction: column !important;\n  justify-content: space-between !important;\n  min-height: 100% !important;\n}\n\n#bcp-root .bcp-featured {\n  border-color: rgba(13,31,60,.26) !important;\n  box-shadow: 0 12px 34px rgba(13,31,60,.08) !important;\n  background: #fff !important;\n}\n\n#bcp-root .bcp-plan-price {\n  display: block !important;\n  margin: 20px 0 18px !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-plan-price strong {\n  display: inline-block !important;\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(36px,3.4vw,46px) !important;\n  font-weight: 300 !important;\n  color: #0d1f3c !important;\n  line-height: 1 !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  letter-spacing: -.01em !important;\n}\n\n#bcp-root .bcp-plan-price span {\n  display: inline-block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 12px !important;\n  font-weight: 300 !important;\n  color: #6b7e8f !important;\n  margin: 0 0 0 4px !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-list {\n  list-style: none !important;\n  display: flex !important;\n  flex-direction: column !important;\n  gap: 8px !important;\n  margin: 18px 0 26px !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-list li {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.45 !important;\n  margin: 0 !important;\n  padding: 0 0 0 19px !important;\n  position: relative !important;\n}\n\n#bcp-root .bcp-list li::before {\n  content: '\u2713' !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  color: #1a3d2e !important;\n  font-size: 12px !important;\n  font-weight: 500 !important;\n}\n\n\/* \u2500\u2500 TOP-UP CONTROLS \u2500\u2500 *\/\n\n#bcp-root .bcp-topup-controls {\n  display: grid !important;\n  grid-template-columns: 1fr !important;\n  gap: 10px !important;\n  margin: 20px 0 16px !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-topup-controls label {\n  background: #faf9f6 !important;\n  border: 1px solid rgba(13,31,60,.12) !important;\n  border-radius: 14px !important;\n  padding: 14px !important;\n  text-transform: none !important;\n  letter-spacing: 0 !important;\n  font-size: 13px !important;\n}\n\n#bcp-root .bcp-topup-controls span {\n  display: block !important;\n  font-size: 12px !important;\n  font-weight: 500 !important;\n  letter-spacing: .08em !important;\n  text-transform: uppercase !important;\n  color: #6b7e8f !important;\n}\n\n#bcp-root .bcp-topup-controls strong {\n  display: block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 500 !important;\n  color: #0d1f3c !important;\n}\n\n#bcp-root .bcp-disabled-line {\n  opacity: .52 !important;\n}\n\n#bcp-root .bcp-note {\n  display: block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 12px !important;\n  font-weight: 300 !important;\n  color: #6b7e8f !important;\n  line-height: 1.55 !important;\n  margin: 10px 0 0 !important;\n  padding: 0 !important;\n}\n\n\/* \u2500\u2500 BUTTONS \u2500\u2500 *\/\n\n#bcp-root .bcp-button {\n  display: inline-flex !important;\n  justify-content: center !important;\n  align-items: center !important;\n  min-height: 46px !important;\n  padding: 0 28px !important;\n  border-radius: 100px !important;\n  background: #0d1f3c !important;\n  color: #fff !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 14px !important;\n  font-weight: 500 !important;\n  letter-spacing: .02em !important;\n  text-decoration: none !important;\n  border: 1.5px solid #0d1f3c !important;\n  margin: auto 0 0 !important;\n  cursor: pointer !important;\n  line-height: 1.4 !important;\n}\n\n#bcp-root .bcp-button:hover {\n  background: #e8c96b !important;\n  color: #0d1f3c !important;\n  border-color: #e8c96b !important;\n}\n\n#bcp-root .bcp-button-light {\n  background: #fff !important;\n  color: #0d1f3c !important;\n  border-color: #fff !important;\n}\n\n#bcp-root .bcp-button-light:hover {\n  background: #e8c96b !important;\n  border-color: #e8c96b !important;\n  color: #0d1f3c !important;\n}\n\n#bcp-root .bcp-button-disabled {\n  opacity: .55 !important;\n  pointer-events: none !important;\n  cursor: not-allowed !important;\n}\n\n\/* \u2500\u2500 ENTERPRISE BAND \u2500\u2500 *\/\n\n#bcp-root .bcp-enterprise-band {\n  background: #0d1f3c !important;\n  border: none !important;\n  color: #fff !important;\n}\n\n#bcp-root .bcp-enterprise {\n  display: flex !important;\n  align-items: center !important;\n  justify-content: space-between !important;\n  gap: 34px !important;\n  margin: 0 auto !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-enterprise div {\n  max-width: 660px !important;\n}\n\n#bcp-root .bcp-enterprise h2 {\n  color: #fff !important;\n}\n\n#bcp-root .bcp-enterprise p {\n  color: rgba(255,255,255,.62) !important;\n}\n\n#bcp-root .bcp-enterprise .bcp-eyebrow-dark {\n  color: rgba(255,255,255,.38) !important;\n}\n\n#bcp-root .bcp-enterprise .bcp-button {\n  background: #fff !important;\n  color: #0d1f3c !important;\n  border-color: #fff !important;\n  flex: 0 0 auto !important;\n}\n\n#bcp-root .bcp-enterprise .bcp-button:hover {\n  background: #e8c96b !important;\n  border-color: #e8c96b !important;\n}\n\n\/* \u2500\u2500 FAQ \u2500\u2500 *\/\n\n#bcp-root .bcp-faq-grid {\n  display: grid !important;\n  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;\n  gap: 16px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-faq article {\n  padding: 24px 26px !important;\n  background: rgba(255,255,255,.72) !important;\n}\n\n#bcp-root .bcp-faq h3 {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 500 !important;\n  color: #0d1f3c !important;\n  margin: 0 0 8px !important;\n  padding: 0 !important;\n  line-height: 1.45 !important;\n}\n\n#bcp-root .bcp-faq p {\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.65 !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n\/* \u2500\u2500 RESPONSIVE \u2500\u2500 *\/\n\n@media (max-width: 960px) {\n  #bcp-root .bcp-grid-3,\n  #bcp-root .bcp-options,\n  #bcp-root .bcp-account-box {\n    grid-template-columns: 1fr !important;\n  }\n\n  #bcp-root .bcp-enterprise {\n    align-items: flex-start !important;\n    flex-direction: column !important;\n  }\n\n  #bcp-root .bcp-enterprise .bcp-button {\n    width: auto !important;\n  }\n}\n\n@media (max-width: 720px) {\n  #bcp-root .bcp-faq-grid {\n    grid-template-columns: 1fr !important;\n  }\n}\n\n@media (max-width: 640px) {\n  #bcp-root .bcp-hero {\n    padding: 56px 24px 48px !important;\n  }\n\n  #bcp-root .bcp-hero h1 {\n    font-size: clamp(34px,10vw,44px) !important;\n  }\n\n  #bcp-root .bcp-hero p {\n    font-size: 14.5px !important;\n  }\n\n  #bcp-root .bcp-hero-actions {\n    flex-direction: column !important;\n    align-items: stretch !important;\n    gap: 12px !important;\n  }\n\n  #bcp-root .bcp-hero-actions .bcp-button,\n  #bcp-root .bcp-hero-actions .bcp-link-light {\n    width: 100% !important;\n    text-align: center !important;\n  }\n\n  #bcp-root .bcp-band {\n    padding: 42px 18px !important;\n  }\n\n  #bcp-root .bcp-card,\n  #bcp-root .bcp-option,\n  #bcp-root .bcp-account-box,\n  #bcp-root .bcp-faq article {\n    padding: 24px 18px !important;\n  }\n\n  #bcp-root .bcp-section-head {\n    text-align: left !important;\n    margin-bottom: 24px !important;\n  }\n\n  #bcp-root .bcp-section-head p {\n    margin: 0 !important;\n  }\n\n  #bcp-root .bcp-account-note {\n    text-align: left !important;\n  }\n\n  #bcp-root .bcp-button {\n    width: 100% !important;\n  }\n}\n```\n<\/style>\n\n<style data-wp-block-html=\"css\">\n\/* ============================================================\n   BALASTO \u2014 Recarga \/ upgrade de cuenta\n   WordPress > Custom HTML \/ Additional CSS\n   ============================================================ *\/\n\n#bcp-root,\n#bcp-root *,\n#bcp-root *::before,\n#bcp-root *::after {\n  box-sizing: border-box !important;\n}\n\n#bcp-root {\n  font-family: 'DM Sans','Helvetica Neue',Arial,sans-serif !important;\n  font-weight: 300 !important;\n  line-height: 1.6 !important;\n  color: #0d1f3c !important;\n  -webkit-font-smoothing: antialiased !important;\n  margin-left: calc(-50vw + 50%) !important;\n  margin-right: calc(-50vw + 50%) !important;\n  width: 100vw !important;\n  display: block !important;\n  overflow-x: hidden !important;\n  background: #f4f1eb !important;\n}\n\n\/* Hero *\/\n\n#bcp-root .bcp-hero {\n  background: #0d1f3c !important;\n  padding: 68px 5vw 58px !important;\n  text-align: center !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-hero-inner {\n  max-width: 720px !important;\n  margin: 0 auto !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-eyebrow {\n  display: block !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 11px !important;\n  font-weight: 500 !important;\n  letter-spacing: .18em !important;\n  text-transform: uppercase !important;\n  color: rgba(255,255,255,.38) !important;\n  margin: 0 0 20px !important;\n}\n\n#bcp-root .bcp-hero h1 {\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(34px,5vw,60px) !important;\n  font-weight: 300 !important;\n  line-height: 1.05 !important;\n  color: #fff !important;\n  margin: 0 0 18px !important;\n  letter-spacing: -.01em !important;\n}\n\n#bcp-root .bcp-hero p {\n  font-size: 15px !important;\n  font-weight: 300 !important;\n  color: rgba(255,255,255,.62) !important;\n  max-width: 560px !important;\n  margin: 0 auto !important;\n  line-height: 1.65 !important;\n}\n\n\/* Page *\/\n\n#bcp-root .bcp-page {\n  background: #f4f1eb !important;\n  padding: 54px 5vw 80px !important;\n}\n\n#bcp-root .bcp-inner {\n  max-width: 760px !important;\n  margin: 0 auto !important;\n}\n\n#bcp-root .bcp-form {\n  display: block !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n\/* Cards *\/\n\n#bcp-root .bcp-card {\n  background: #fff !important;\n  border: 1px solid rgba(13,31,60,.10) !important;\n  border-radius: 18px !important;\n  padding: 36px 40px !important;\n  margin: 0 0 20px !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-card-header {\n  margin: 0 0 28px !important;\n  padding: 0 0 20px !important;\n  border-bottom: 1px solid rgba(13,31,60,.08) !important;\n}\n\n#bcp-root .bcp-card-num {\n  display: block !important;\n  font-size: 11px !important;\n  font-weight: 500 !important;\n  letter-spacing: .12em !important;\n  text-transform: uppercase !important;\n  color: #244b3d !important;\n  margin: 0 0 8px !important;\n}\n\n#bcp-root .bcp-card-title {\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: clamp(24px,2.8vw,32px) !important;\n  font-weight: 400 !important;\n  color: #0d1f3c !important;\n  line-height: 1.1 !important;\n  margin: 0 0 6px !important;\n}\n\n#bcp-root .bcp-card-desc {\n  font-size: 13.5px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.6 !important;\n  margin: 0 !important;\n}\n\n\/* Fields *\/\n\n#bcp-root .bcp-field {\n  display: block !important;\n  margin: 0 0 20px !important;\n}\n\n#bcp-root .bcp-field:last-child {\n  margin-bottom: 0 !important;\n}\n\n#bcp-root .bcp-grid-2 {\n  display: grid !important;\n  grid-template-columns: 1fr 2fr !important;\n  gap: 16px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-label {\n  display: block !important;\n  font-size: 11.5px !important;\n  font-weight: 500 !important;\n  letter-spacing: .06em !important;\n  text-transform: uppercase !important;\n  color: #0d1f3c !important;\n  margin: 0 0 7px !important;\n}\n\n#bcp-root .bcp-label-req::after {\n  content: ' *' !important;\n  color: #1a3d2e !important;\n}\n\n#bcp-root .bcp-helper {\n  display: block !important;\n  font-size: 11.5px !important;\n  font-weight: 300 !important;\n  color: #6b7e8f !important;\n  margin: 5px 0 0 !important;\n}\n\n#bcp-root input[type=\"text\"],\n#bcp-root input[type=\"email\"],\n#bcp-root input[type=\"tel\"],\n#bcp-root select {\n  display: block !important;\n  width: 100% !important;\n  background: #faf9f6 !important;\n  border: 1px solid rgba(13,31,60,.18) !important;\n  border-radius: 10px !important;\n  padding: 12px 16px !important;\n  margin: 0 !important;\n  font-family: 'DM Sans','Helvetica Neue',Arial,sans-serif !important;\n  font-size: 14px !important;\n  font-weight: 300 !important;\n  color: #0d1f3c !important;\n  outline: none !important;\n  -webkit-appearance: none !important;\n  appearance: none !important;\n  box-shadow: none !important;\n  line-height: 1.4 !important;\n  height: auto !important;\n}\n\n#bcp-root input::placeholder {\n  color: #aab5c0 !important;\n}\n\n#bcp-root input:focus,\n#bcp-root select:focus {\n  border-color: #0d1f3c !important;\n  box-shadow: 0 0 0 3px rgba(13,31,60,.06) !important;\n  background: #fff !important;\n}\n\n#bcp-root select {\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230d1f3c' stroke-width='1.5' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\") !important;\n  background-repeat: no-repeat !important;\n  background-position: right 14px center !important;\n  padding-right: 40px !important;\n  cursor: pointer !important;\n}\n\n\/* Form errors *\/\n\n#bcp-root .bcp-form-error {\n  display: none !important;\n  font-family: 'DM Sans', sans-serif !important;\n  font-size: 12px !important;\n  color: #c0392b !important;\n  font-weight: 400 !important;\n  margin: 8px 0 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-form-error.visible {\n  display: block !important;\n}\n\n\/* Purchase choice *\/\n\n#bcp-root .bcp-choice-grid {\n  display: grid !important;\n  grid-template-columns: 1fr 1fr !important;\n  gap: 14px !important;\n  margin: 0 0 22px !important;\n}\n\n#bcp-root .bcp-choice,\n#bcp-root .bcp-topup-option {\n  position: relative !important;\n  display: block !important;\n  background: #faf9f6 !important;\n  border: 1.5px solid rgba(13,31,60,.12) !important;\n  border-radius: 16px !important;\n  padding: 22px 20px !important;\n  cursor: pointer !important;\n  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease !important;\n}\n\n#bcp-root .bcp-choice:hover,\n#bcp-root .bcp-topup-option:hover {\n  border-color: rgba(13,31,60,.26) !important;\n}\n\n#bcp-root .bcp-choice.active,\n#bcp-root .bcp-topup-option.active {\n  background: #fff !important;\n  border-color: #0d1f3c !important;\n  box-shadow: 0 8px 28px rgba(13,31,60,.08) !important;\n}\n\n#bcp-root .bcp-choice input,\n#bcp-root .bcp-topup-option input {\n  position: absolute !important;\n  opacity: 0 !important;\n  pointer-events: none !important;\n}\n\n#bcp-root .bcp-choice-kicker {\n  display: block !important;\n  font-size: 10.5px !important;\n  font-weight: 500 !important;\n  letter-spacing: .12em !important;\n  text-transform: uppercase !important;\n  color: #244b3d !important;\n  margin: 0 0 9px !important;\n}\n\n#bcp-root .bcp-choice strong,\n#bcp-root .bcp-topup-option strong {\n  display: block !important;\n  font-family: 'Cormorant Garamond',Georgia,serif !important;\n  font-size: 25px !important;\n  font-weight: 400 !important;\n  color: #0d1f3c !important;\n  line-height: 1.1 !important;\n  margin: 0 0 7px !important;\n}\n\n#bcp-root .bcp-choice small,\n#bcp-root .bcp-choice em,\n#bcp-root .bcp-topup-option small,\n#bcp-root .bcp-topup-option em {\n  display: block !important;\n  font-size: 12.5px !important;\n  font-style: normal !important;\n  color: #6b7e8f !important;\n  line-height: 1.45 !important;\n}\n\n\/* Plan summary *\/\n\n#bcp-root .bcp-plan-summary,\n#bcp-root .bcp-topup-panel {\n  background: #faf9f6 !important;\n  border: 1px solid rgba(13,31,60,.10) !important;\n  border-radius: 16px !important;\n  padding: 22px !important;\n  margin: 0 !important;\n}\n\n#bcp-root .bcp-plan-line {\n  display: flex !important;\n  justify-content: space-between !important;\n  gap: 18px !important;\n  align-items: baseline !important;\n  padding: 0 0 16px !important;\n  margin: 0 0 16px !important;\n  border-bottom: 1px solid rgba(13,31,60,.08) !important;\n}\n\n#bcp-root .bcp-plan-line span {\n  font-size: 13px !important;\n  font-weight: 500 !important;\n  color: #0d1f3c !important;\n}\n\n#bcp-root .bcp-plan-line strong {\n  font-size: 13px !important;\n  font-weight: 500 !important;\n  color: #0d1f3c !important;\n  text-align: right !important;\n}\n\n#bcp-root .bcp-list {\n  list-style: none !important;\n  display: flex !important;\n  flex-direction: column !important;\n  gap: 8px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#bcp-root .bcp-list li {\n  font-size: 13px !important;\n  font-weight: 300 !important;\n  color: #4a5568 !important;\n  line-height: 1.45 !important;\n  margin: 0 !important;\n  padding: 0 0 0 19px !important;\n  position: relative !important;\n}\n\n#bcp-root .bcp-list li::before {\n  content: '\u2713' !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  color: #1a3d2e !important;\n  font-size: 12px !important;\n  font-weight: 500 !important;\n}\n\n\/* Top-up *\/\n\n#bcp-root .bcp-topup-options {\n  display: grid !important;\n  grid-template-columns: 1fr !important;\n  gap: 12px !important;\n  margin: 0 !important;\n}\n\n#bcp-root .bcp-topup-option {\n  padding: 18px 18px !important;\n}\n\n#bcp-root .bcp-topup-option strong {\n  font-size: 22px !important;\n}\n\n#bcp-root .bcp-disabled-row {\n  opacity: .55 !important;\n  pointer-events: none !important;\n}\n\n#bcp-root .bcp-note {\n  display: block !important;\n  font-size: 12px !important;\n  font-weight: 300 !important;\n  color: #6b7e8f !important;\n  line-height: 1.55 !important;\n  margin: 16px 0 0 !important;\n}\n\n\/* CTA *\/\n\n#bcp-root .bcp-cta-card {\n  background: #0d1f3c !important;\n  border-radius: 18px !important;\n  padding: 38px 40px 42px !important;\n  text-align: center !important;\n  display: block !important;\n}\n\n#bcp-root .bcp-submit-btn {\n  display: inline-block !important;\n  background: #fff !important;\n  color: #0d1f3c !important;\n  font-family: 'DM Sans',sans-serif !important;\n  font-size: 15px !important;\n  font-weight: 500 !important;\n  padding: 16px 48px !important;\n  border-radius: 100px !important;\n  border: none !important;\n  cursor: pointer !important;\n  letter-spacing: .02em !important;\n  margin: 0 0 18px !important;\n  line-height: 1.4 !important;\n}\n\n#bcp-root .bcp-submit-btn:hover {\n  background: #e8c96b !important;\n  color: #0d1f3c !important;\n}\n\n#bcp-root .bcp-submit-btn:disabled {\n  opacity: .65 !important;\n  cursor: not-allowed !important;\n}\n\n#bcp-root .bcp-cta-below {\n  font-size: 13px !important;\n  font-weight: 300 !important;\n  color: rgba(255,255,255,.50) !important;\n  display: block !important;\n  margin: 0 auto 10px !important;\n  max-width: 520px !important;\n  line-height: 1.55 !important;\n}\n\n#bcp-root .bcp-legal {\n  font-size: 11.5px !important;\n  font-weight: 300 !important;\n  color: rgba(255,255,255,.28) !important;\n  display: block !important;\n  margin: 0 !important;\n}\n\n#bcp-root .bcp-cta-below a,\n#bcp-root .bcp-legal a {\n  color: rgba(255,255,255,.62) !important;\n  text-decoration: underline !important;\n  text-underline-offset: 3px !important;\n}\n\n#bcp-root .bcp-cta-below a:hover,\n#bcp-root .bcp-legal a:hover {\n  color: #e8c96b !important;\n}\n\n\/* Responsive *\/\n\n@media (max-width: 720px) {\n  #bcp-root .bcp-grid-2,\n  #bcp-root .bcp-choice-grid {\n    grid-template-columns: 1fr !important;\n  }\n\n  #bcp-root .bcp-plan-line {\n    flex-direction: column !important;\n    gap: 4px !important;\n  }\n\n  #bcp-root .bcp-plan-line strong {\n    text-align: left !important;\n  }\n}\n\n@media (max-width: 640px) {\n  #bcp-root .bcp-hero {\n    padding: 52px 24px 44px !important;\n  }\n\n  #bcp-root .bcp-page {\n    padding: 32px 18px 60px !important;\n  }\n\n  #bcp-root .bcp-card {\n    padding: 24px 18px !important;\n  }\n\n  #bcp-root .bcp-cta-card {\n    padding: 28px 20px 32px !important;\n  }\n\n  #bcp-root .bcp-submit-btn {\n    width: 100% !important;\n    padding-left: 20px !important;\n    padding-right: 20px !important;\n  }\n}\n<\/style>\n\n<div id=\"bcp-root\" class=\"bcp-root\">\n  <section class=\"bcp-hero\">\n    <div class=\"bcp-hero-inner\">\n      <span class=\"bcp-eyebrow\">BALASTO \u00b7 Cr\u00e9ditos y planes<\/span>\n      <h1>Recarga cr\u00e9ditos o activa un plan mensual para tu cuenta.<\/h1>\n      <p>\n        Identifica tu cuenta y elige si quieres contratar un plan mensual o comprar cr\u00e9ditos adicionales.\n      <\/p>\n    <\/div>\n  <\/section>\n\n  <section class=\"bcp-page\">\n    <div class=\"bcp-inner\">\n      <form id=\"bcpPaymentForm\" class=\"bcp-form\" method=\"POST\" action=\"#\" data-checkout-endpoint=\"https:\/\/balasto-backend-production.up.railway.app\/billing\/checkout\" novalidate=\"\">\n        <input type=\"hidden\" name=\"source\" value=\"wordpress_credit_recharge\">\n        <input type=\"hidden\" name=\"selected_purchase_type\" id=\"bcp_selected_purchase_type\" value=\"paid_monthly\">\n        <input type=\"hidden\" name=\"purchase_sku\" id=\"bcp_purchase_sku\" value=\"paid_monthly_subscription\">\n        <input type=\"hidden\" name=\"client_request_id\" id=\"bcp_client_request_id\" value=\"\">\n        <input type=\"hidden\" name=\"billing_phone_lookup\" id=\"bcp_billing_phone_lookup\" value=\"\">\n\n        <div class=\"bcp-card\">\n          <div class=\"bcp-card-header\">\n            <span class=\"bcp-card-num\">01<\/span>\n            <h2 class=\"bcp-card-title\">Identifica tu cuenta<\/h2>\n            <p class=\"bcp-card-desc\">\n              Para aplicar correctamente el plan o la recarga, necesitamos validar estos tres datos de tu cuenta.\n            <\/p>\n          <\/div>\n\n          <div class=\"bcp-field\">\n            <label class=\"bcp-label bcp-label-req\" for=\"bcp_tax_id\">RFC \/ Tax ID<\/label>\n            <input type=\"text\" id=\"bcp_tax_id\" name=\"tax_id\" placeholder=\"Ej. ABC010203XYZ\" required=\"\">\n          <\/div>\n\n          <div class=\"bcp-grid-2\">\n            <div class=\"bcp-field\">\n              <label class=\"bcp-label bcp-label-req\" for=\"bcp_phone_country\">Lada<\/label>\n              <select id=\"bcp_phone_country\" name=\"billing_phone_country_code\" required=\"\">\n                <option value=\"52\" selected=\"\">+52 M\u00e9xico<\/option>\n                <option value=\"1\">+1 EUA \/ Canad\u00e1<\/option>\n              <\/select>\n            <\/div>\n\n            <div class=\"bcp-field\">\n              <label class=\"bcp-label bcp-label-req\" for=\"bcp_billing_phone\">Tel\u00e9fono de facturaci\u00f3n<\/label>\n              <input type=\"tel\" id=\"bcp_billing_phone\" name=\"billing_phone_national\" placeholder=\"10 d\u00edgitos\" required=\"\">\n              <span class=\"bcp-helper\">Escribe solo el n\u00famero nacional. Ej. 5512345678.<\/span>\n            <\/div>\n          <\/div>\n\n          <div class=\"bcp-field\">\n            <label class=\"bcp-label bcp-label-req\" for=\"bcp_billing_email\">Correo de facturaci\u00f3n<\/label>\n            <input type=\"email\" id=\"bcp_billing_email\" name=\"billing_email\" placeholder=\"facturacion@empresa.com\" required=\"\">\n          <\/div>\n\n          <div class=\"bcp-form-error\" id=\"bcpIdentityError\">\n            Completa RFC \/ Tax ID, tel\u00e9fono de facturaci\u00f3n y correo de facturaci\u00f3n v\u00e1lido para continuar.\n          <\/div>\n\n          <p class=\"bcp-note\">\n            Estos datos nos ayudan a ubicar tu cuenta y evitar que una recarga se aplique a la empresa equivocada.\n          <\/p>\n        <\/div>\n\n        <div class=\"bcp-card\">\n          <div class=\"bcp-card-header\">\n            <span class=\"bcp-card-num\">02<\/span>\n            <h2 class=\"bcp-card-title\">Elige qu\u00e9 quieres comprar<\/h2>\n            <p class=\"bcp-card-desc\">\n              Puedes activar el plan mensual o hacer una recarga puntual de cr\u00e9ditos.\n            <\/p>\n          <\/div>\n\n          <div class=\"bcp-choice-grid\">\n            <label class=\"bcp-choice active\" data-purchase-choice=\"paid_monthly\">\n              <input type=\"radio\" name=\"purchase_type\" value=\"paid_monthly\" checked=\"\">\n              <span class=\"bcp-choice-kicker\">Upgrade<\/span>\n              <strong>Plan mensual<\/strong>\n              <small>MX$2,000 \/ mes<\/small>\n              <em>200 b\u00fasquedas \u00b7 50 contactos revelados<\/em>\n            <\/label>\n\n            <label class=\"bcp-choice\" data-purchase-choice=\"topup\">\n              <input type=\"radio\" name=\"purchase_type\" value=\"topup\">\n              <span class=\"bcp-choice-kicker\">Recarga<\/span>\n              <strong>Cr\u00e9ditos adicionales<\/strong>\n              <small>Compra un paquete fijo<\/small>\n              <em>Las recargas no expiran.<\/em>\n            <\/label>\n          <\/div>\n\n          <div class=\"bcp-plan-summary\" id=\"bcpPlanSummary\">\n            <div class=\"bcp-plan-line\">\n              <span>Plan mensual BALASTO<\/span>\n              <strong>MX$2,000 \/ mes<\/strong>\n            <\/div>\n\n            <ul class=\"bcp-list\">\n              <li>200 b\u00fasquedas incluidas al mes<\/li>\n              <li>50 contactos revelados al mes<\/li>\n              <li>Sin sobreconsumo autom\u00e1tico<\/li>\n              <li>Signal: en desarrollo<\/li>\n            <\/ul>\n          <\/div>\n\n          <div class=\"bcp-topup-panel\" id=\"bcpTopupPanel\" hidden=\"\">\n            <div class=\"bcp-topup-options\">\n              <label class=\"bcp-topup-option active\" data-topup-sku=\"topup_search\">\n                <input type=\"radio\" name=\"topup_sku\" value=\"topup_search\" checked=\"\">\n                <span class=\"bcp-choice-kicker\">Recarga<\/span>\n                <strong>100 b\u00fasquedas<\/strong>\n                <small>MX$100 por paquete<\/small>\n                <em>Compra 100 cr\u00e9ditos de b\u00fasqueda.<\/em>\n              <\/label>\n\n              <label class=\"bcp-topup-option\" data-topup-sku=\"topup_reveal\">\n                <input type=\"radio\" name=\"topup_sku\" value=\"topup_reveal\">\n                <span class=\"bcp-choice-kicker\">Recarga<\/span>\n                <strong>5 contactos revelados<\/strong>\n                <small>MX$400 por paquete<\/small>\n                <em>Compra 5 cr\u00e9ditos Reveal.<\/em>\n              <\/label>\n\n              <label class=\"bcp-topup-option\" data-topup-sku=\"topup_bundle\">\n                <input type=\"radio\" name=\"topup_sku\" value=\"topup_bundle\">\n                <span class=\"bcp-choice-kicker\">Recarga<\/span>\n                <strong>100 b\u00fasquedas + 5 contactos revelados<\/strong>\n                <small>MX$500 por paquete<\/small>\n                <em>Compra ambos paquetes en una sola operaci\u00f3n.<\/em>\n              <\/label>\n\n              <label class=\"bcp-topup-option bcp-disabled-row\">\n                <input type=\"radio\" name=\"topup_sku_disabled\" value=\"signal\" disabled=\"\">\n                <span class=\"bcp-choice-kicker\">Pr\u00f3ximamente<\/span>\n                <strong>Signal<\/strong>\n                <small>En desarrollo<\/small>\n                <em>Signal todav\u00eda no est\u00e1 disponible para compra.<\/em>\n              <\/label>\n            <\/div>\n\n            <p class=\"bcp-note\">\n              Las recargas se aplicar\u00e1n a la cuenta de empresa identificada arriba. No se aceptan cantidades personalizadas desde esta p\u00e1gina.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"bcp-cta-card\">\n          <button type=\"submit\" class=\"bcp-submit-btn\" id=\"bcpSubmitBtn\" disabled=\"\">\n            Continuar a pago\n          <\/button>\n\n          <div class=\"bcp-form-error\" id=\"bcpSubmitError\"><\/div>\n\n          <span class=\"bcp-cta-below\">\n            \u00bfBuscas un plan empresarial personalizado? Escr\u00edbenos a\n            <a href=\"mailto:info@balasto.ai?subject=Plan%20empresarial%20BALASTO\">info@balasto.ai<\/a>.\n          <\/span>\n\n          <p class=\"bcp-legal\">\n            Tambi\u00e9n puedes consultar la <a href=\"https:\/\/balasto.ai\/?page_id=10\">p\u00e1gina de preguntas frecuentes<\/a>.\n          <\/p>\n        <\/div>\n      <\/form>\n    <\/div>\n  <\/section>\n<\/div>\n\n<script>\n(function(){\n  var root = document.getElementById('bcp-root');\n  var form = document.getElementById('bcpPaymentForm');\n  var country = document.getElementById('bcp_phone_country');\n  var phone = document.getElementById('bcp_billing_phone');\n  var lookup = document.getElementById('bcp_billing_phone_lookup');\n  var selectedType = document.getElementById('bcp_selected_purchase_type');\n  var selectedSku = document.getElementById('bcp_purchase_sku');\n  var clientRequestId = document.getElementById('bcp_client_request_id');\n  var planSummary = document.getElementById('bcpPlanSummary');\n  var topupPanel = document.getElementById('bcpTopupPanel');\n  var taxId = document.getElementById('bcp_tax_id');\n  var billingEmail = document.getElementById('bcp_billing_email');\n  var identityError = document.getElementById('bcpIdentityError');\n  var submitError = document.getElementById('bcpSubmitError');\n  var submitBtn = document.getElementById('bcpSubmitBtn');\n\n  if (!root || !form) return;\n\n  function onlyDigits(value) {\n    return String(value || '').replace(\/\\D\/g, '');\n  }\n\n  function normalizeBillingPhone(countryCode, rawPhone) {\n    var digits = onlyDigits(rawPhone);\n\n    if (countryCode === '52') {\n      if (digits.length === 13 && digits.indexOf('521') === 0) return digits;\n      if (digits.length === 12 && digits.indexOf('52') === 0) return '521' + digits.slice(2);\n      if (digits.length === 10) return '521' + digits;\n      if (digits.length > 10) return '521' + digits.slice(-10);\n      return digits ? '521' + digits : '';\n    }\n\n    if (countryCode === '1') {\n      if (digits.length === 11 && digits.indexOf('1') === 0) return digits;\n      if (digits.length === 10) return '1' + digits;\n      if (digits.length > 10) return '1' + digits.slice(-10);\n      return digits ? '1' + digits : '';\n    }\n\n    return digits;\n  }\n\n  function updatePhoneLookup() {\n    var cc = country ? onlyDigits(country.value) : '';\n    var rawPhone = phone ? phone.value : '';\n    if (lookup) lookup.value = normalizeBillingPhone(cc, rawPhone);\n  }\n\n  function hasValue(el) {\n    return !!(el && String(el.value || '').trim());\n  }\n\n  function validPhoneForCountry() {\n    updatePhoneLookup();\n\n    var cc = country ? onlyDigits(country.value) : '';\n    var normalized = lookup ? onlyDigits(lookup.value) : '';\n\n    if (cc === '52') return \/^521\\d{10}$\/.test(normalized);\n    if (cc === '1') return \/^1\\d{10}$\/.test(normalized);\n\n    return normalized.length >= 10;\n  }\n\n  function markFieldError(el) {\n    if (!el) return;\n    el.style.setProperty('border-color', '#c0392b', 'important');\n  }\n\n  function clearFieldError(el) {\n    if (!el) return;\n    el.style.borderColor = '';\n  }\n\n  function showSubmitError(message) {\n    if (!submitError) {\n      window.alert(message);\n      return;\n    }\n\n    submitError.textContent = message;\n    submitError.classList.add('visible');\n  }\n\n  function clearSubmitError() {\n    if (!submitError) return;\n\n    submitError.textContent = '';\n    submitError.classList.remove('visible');\n  }\n\n  function ensureClientRequestId() {\n    if (!clientRequestId) return;\n\n    if (clientRequestId.value) return;\n\n    if (window.crypto && window.crypto.randomUUID) {\n      clientRequestId.value = window.crypto.randomUUID();\n    } else {\n      clientRequestId.value = 'wp-' + Date.now() + '-' + Math.random().toString(16).slice(2);\n    }\n  }\n\n  function validateIdentity() {\n    updatePhoneLookup();\n\n    var ok = true;\n\n    [taxId, billingEmail, phone, country].forEach(clearFieldError);\n\n    if (!hasValue(taxId)) {\n      markFieldError(taxId);\n      ok = false;\n    }\n\n    if (!hasValue(billingEmail)) {\n      markFieldError(billingEmail);\n      ok = false;\n    }\n\n    if (!hasValue(country)) {\n      markFieldError(country);\n      ok = false;\n    }\n\n    if (!validPhoneForCountry()) {\n      markFieldError(phone);\n      ok = false;\n    }\n\n    if (identityError) {\n      identityError.classList.toggle('visible', !ok);\n    }\n\n    if (submitBtn) {\n      submitBtn.disabled = !ok;\n    }\n\n    return ok;\n  }\n\n  function setPurchaseChoice(choice) {\n    if (!choice) return;\n\n    var purchaseType = choice.getAttribute('data-purchase-choice') || 'paid_monthly';\n    var purchaseSku = choice.getAttribute('data-purchase-sku') || (\n      purchaseType === 'paid_monthly' ? 'paid_monthly_subscription' : 'topup_search'\n    );\n\n    if (selectedType) selectedType.value = purchaseType;\n    if (selectedSku) selectedSku.value = purchaseSku;\n\n    root.querySelectorAll('.bcp-choice').forEach(function(item){\n      var isActive = item === choice;\n      item.classList.toggle('active', isActive);\n\n      var input = item.querySelector('input[type=\"radio\"]');\n      if (input) input.checked = isActive;\n    });\n\n    if (planSummary) planSummary.hidden = purchaseType !== 'paid_monthly';\n    if (topupPanel) topupPanel.hidden = purchaseType !== 'topup';\n  }\n\n  function setTopupSku(choice) {\n    if (!choice) return;\n\n    var sku = choice.getAttribute('data-topup-sku');\n    if (!sku || !selectedSku) return;\n\n    selectedSku.value = sku;\n\n    root.querySelectorAll('[data-topup-sku]').forEach(function(item){\n      var isActive = item === choice;\n      item.classList.toggle('active', isActive);\n\n      var input = item.querySelector('input[type=\"radio\"]');\n      if (input) input.checked = isActive;\n    });\n  }\n\n  root.querySelectorAll('.bcp-choice').forEach(function(choice){\n    choice.addEventListener('click', function(){\n      setPurchaseChoice(choice);\n      validateIdentity();\n    });\n  });\n\n  root.querySelectorAll('[data-topup-sku]').forEach(function(choice){\n    choice.addEventListener('click', function(){\n      setTopupSku(choice);\n      validateIdentity();\n    });\n  });\n\n  if (country) {\n    country.addEventListener('change', function(){\n      updatePhoneLookup();\n      validateIdentity();\n    });\n  }\n\n  if (phone) {\n    phone.addEventListener('input', function(){\n      updatePhoneLookup();\n      validateIdentity();\n    });\n  }\n\n  if (taxId) taxId.addEventListener('input', validateIdentity);\n  if (billingEmail) billingEmail.addEventListener('input', validateIdentity);\n\n  form.addEventListener('submit', function(e){\n    e.preventDefault();\n    clearSubmitError();\n\n    if (!validateIdentity()) {\n      var firstInvalid = !hasValue(taxId) ? taxId : (!hasValue(billingEmail) ? billingEmail : phone);\n      if (firstInvalid) firstInvalid.scrollIntoView({ behavior: 'smooth', block: 'center' });\n      return false;\n    }\n\n    ensureClientRequestId();\n    updatePhoneLookup();\n\n    var checkoutEndpoint = form.getAttribute('data-checkout-endpoint');\n\n    if (!checkoutEndpoint) {\n      showSubmitError('El pago estar\u00e1 disponible pr\u00f3ximamente. Por ahora, escr\u00edbenos a info@balasto.ai para activar tu plan o recarga.');\n      return false;\n    }\n\n    if (submitBtn) {\n      submitBtn.disabled = true;\n      submitBtn.textContent = 'Creando enlace de pago...';\n    }\n\n    fetch(checkoutEndpoint, {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application\/json'\n      },\n      body: JSON.stringify({\n        source: 'wordpress_credit_recharge',\n        tax_id: taxId ? String(taxId.value || '').trim() : '',\n        billing_email: billingEmail ? String(billingEmail.value || '').trim() : '',\n        billing_phone_country_code: country ? onlyDigits(country.value) : '',\n        billing_phone_national: phone ? onlyDigits(phone.value) : '',\n        billing_phone_lookup: lookup ? String(lookup.value || '').trim() : '',\n        selected_purchase_type: selectedType ? String(selectedType.value || '').trim() : '',\n        purchase_sku: selectedSku ? String(selectedSku.value || '').trim() : '',\n        client_request_id: clientRequestId ? String(clientRequestId.value || '').trim() : ''\n      })\n    })\n    .then(function(response){\n      return response.json().then(function(data){\n        if (!response.ok) {\n          throw new Error(data && data.error ? data.error : 'No pudimos crear el enlace de pago.');\n        }\n        return data;\n      });\n    })\n    .then(function(data){\n      if (!data || !data.checkout_url) {\n        throw new Error('No recibimos el enlace de pago.');\n      }\n\n      window.location.href = data.checkout_url;\n    })\n    .catch(function(error){\n      showSubmitError(\n        error && error.message\n          ? error.message\n          : 'No pudimos validar que el RFC, correo y tel\u00e9fono correspondan a los datos de facturaci\u00f3n de una cuenta administradora activa de Balasto. Revisa los datos o escr\u00edbenos a info@balasto.ai.'\n      );\n\n      if (submitBtn) {\n        submitBtn.disabled = false;\n        submitBtn.textContent = 'Continuar a pago';\n      }\n    });\n\n    return false;\n  });\n\n  ensureClientRequestId();\n  updatePhoneLookup();\n\n  var initialChoice = root.querySelector('.bcp-choice.active') || root.querySelector('.bcp-choice');\n  if (initialChoice) setPurchaseChoice(initialChoice);\n\n  var initialTopupChoice = root.querySelector('[data-topup-sku].active') || root.querySelector('[data-topup-sku]');\n  if (initialTopupChoice) {\n    root.querySelectorAll('[data-topup-sku]').forEach(function(item){\n      var isActive = item === initialTopupChoice;\n      item.classList.toggle('active', isActive);\n\n      var input = item.querySelector('input[type=\"radio\"]');\n      if (input) input.checked = isActive;\n    });\n  }\n\n  if (selectedType && selectedType.value === 'topup' && initialTopupChoice) {\n    setTopupSku(initialTopupChoice);\n  }\n\n  validateIdentity();\n})();\n<\/script>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>BALASTO \u00b7 Cr\u00e9ditos y planes Recarga cr\u00e9ditos o activa un plan mensual para tu cuenta. Identifica tu cuenta y elige si quieres contratar un plan mensual o comprar cr\u00e9ditos adicionales. 01 Identifica tu cuenta Para aplicar correctamente el plan o la recarga, necesitamos validar estos tres datos de tu cuenta. RFC \/ Tax ID Lada [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"for-regular-pages-eru","meta":{"footnotes":""},"class_list":["post-224","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/pages\/224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/balasto.ai\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=224"}],"version-history":[{"count":11,"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/pages\/224\/revisions"}],"predecessor-version":[{"id":362,"href":"https:\/\/balasto.ai\/index.php?rest_route=\/wp\/v2\/pages\/224\/revisions\/362"}],"wp:attachment":[{"href":"https:\/\/balasto.ai\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}