/* Ecomally — Checkout nativo. Prefijo .ecom-co */
.ecom-co [hidden]{display:none!important;}
.ecom-co{--co-dark:#1a1a1a;--co-gray:#8a8a94;--co-indigo:#6366f1;--co-lime:#d4f542;--co-border:#ececf1;--co-field:#f7f7f9;--co-green:#16a34a;
  font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--co-dark);max-width:1080px;margin:0 auto;padding:24px 16px;box-sizing:border-box;}
.ecom-co *{box-sizing:border-box;}
.ecom-co--empty{text-align:center;color:var(--co-gray);padding:60px 16px;}
.ecom-co__grid{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:28px;align-items:start;}
@media(max-width:820px){.ecom-co__grid{grid-template-columns:1fr;}}

/* ── Tarjeta resumen ── */
.ecom-co__summary{position:sticky;top:24px;align-self:start;}
.ecom-co__card{background:#fff!important;border-radius:20px;padding:32px 30px;box-shadow:0 10px 40px rgba(20,20,40,.06);}
.ecom-co__badge{display:inline-block;background:var(--co-lime);color:#1a1a1a;font-size:11px;font-weight:700;letter-spacing:.06em;padding:6px 14px;border-radius:100px;margin-bottom:20px;}
.ecom-co__plan{font-family:"Syne",'Nunito Sans',inherit;font-size:23px;font-weight:800;color:#0a0a0a;margin:0 0 24px;line-height:1.2;}
.ecom-co__qty{font-size:13px;font-weight:500;color:var(--co-gray);}
.ecom-co__features{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:14px;}
.ecom-co__features li{display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.45;}
.ecom-co__features li.is-in{color:#0a0a0a;font-weight:700;}
.ecom-co__features li.is-out{color:#b9b9c2;font-weight:600;}
.ecom-co__ico{flex:none;width:18px;display:inline-flex;align-items:center;justify-content:center;margin-top:1px;}
.ecom-co__features li.is-in .ecom-co__ico{color:var(--co-green);}
.ecom-co__features li.is-out .ecom-co__ico{color:#cfcfd6;}
.ecom-co__price{font-size:38px;font-weight:800;letter-spacing:-.02em;color:#0a0a0a;margin-top:6px;}
.ecom-co__price-note{font-size:11px;color:var(--co-gray);margin-top:6px;}
.ecom-co__totals{margin-top:26px;}
.ecom-co__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14.5px;
  padding:16px 0;margin:0;border-top:1px solid var(--co-border);}
.ecom-co__row > span:first-child{color:#0a0a0a;font-weight:700;}
.ecom-co__row > span:last-child{color:#0a0a0a;font-weight:700;text-align:right;}
.ecom-co__row small{color:var(--co-gray);font-size:11px;font-weight:500;}
.ecom-co__row--total{font-size:15.5px;}
.ecom-co__row--total strong{font-weight:800;}
/* Desglose pago inicial / recurrente */
.ecom-co__sec-label{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--co-indigo);padding:14px 0 2px;border-top:1px solid var(--co-border);margin-top:4px;}
.ecom-co__sec-label--mt{margin-top:10px;}
.ecom-co__sec-label + .ecom-co__row{border-top:none;}
.ecom-co__row--disc > span:last-child{color:var(--co-green);}
.ecom-co__strike{color:var(--co-gray);font-weight:600;}
.ecom-co__fineprint{font-size:11.5px;line-height:1.5;color:var(--co-gray);margin:12px 0 0;padding-top:12px;border-top:1px dashed var(--co-border);}

/* ── Formulario ── */
.ecom-co__form{background:#fff!important;border-radius:20px;padding:32px 30px;box-shadow:0 10px 40px rgba(20,20,40,.06);}
@media(max-width:560px){.ecom-co__form{padding:24px 20px;}}
.ecom-co__title{font-size:26px;font-weight:800;margin:0 0 4px;}
.ecom-co__subtitle{color:var(--co-gray);font-size:14px;margin:0 0 24px;}
.ecom-co__label{font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--co-indigo);text-transform:uppercase;margin:24px 0 12px;}
.ecom-co__fields{display:grid;grid-template-columns:repeat(6,1fr);gap:14px 16px;}
.ecom-co__field{display:flex;flex-direction:column;grid-column:1 / -1;}
.ecom-co__field.is-half{grid-column:span 3;}
.ecom-co__field.is-third{grid-column:span 2;}
@media(max-width:560px){.ecom-co__field.is-half,.ecom-co__field.is-third{grid-column:1 / -1;}}
.ecom-co__field label{font-size:13px;font-weight:600;margin-bottom:6px;color:#2a2a32;}
.ecom-co__req{color:var(--co-indigo);}
.ecom-co__opt{color:var(--co-gray);font-weight:400;}
.ecom-co .ecom-co__field input,
.ecom-co .ecom-co__field textarea{
  width:100%!important;font-family:inherit!important;font-size:14px!important;color:#1a1a1a!important;
  background:var(--co-field)!important;border:1px solid var(--co-border)!important;border-radius:12px!important;
  padding:13px 14px!important;outline:none!important;transition:border-color .2s,box-shadow .2s;margin:0!important;box-shadow:none!important;}
.ecom-co .ecom-co__field input:focus,
.ecom-co .ecom-co__field textarea:focus{border-color:var(--co-indigo)!important;box-shadow:0 0 0 3px rgba(99,102,241,.12)!important;}
.ecom-co__field.is-error input,.ecom-co__field.is-error textarea{border-color:#dc2626!important;}
.ecom-co__err{color:#dc2626;font-size:12px;margin-top:5px;min-height:0;}
.ecom-co__field.is-check{flex-direction:row;}
.ecom-co__check{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#3a3a44;cursor:pointer;line-height:1.4;}
.ecom-co__check input{margin-top:2px;flex:none;}

/* ── Métodos (en fila, uno al lado del otro) ── */
.ecom-co__methods{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;}
.ecom-co__method{display:block;cursor:pointer;flex:0 0 auto;width:200px;max-width:100%;}
@media(max-width:560px){.ecom-co__method{flex:1 1 140px;width:auto;}}
.ecom-co__method input{position:absolute;opacity:0;pointer-events:none;}
.ecom-co__method-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  border:2px solid var(--co-border);border-radius:14px;padding:18px;text-align:center;transition:border-color .2s,background .2s;min-height:92px;}
.ecom-co__method input:checked + .ecom-co__method-card{border-color:var(--co-indigo);background:rgba(99,102,241,.06);}
.ecom-co__method-ico{font-size:18px;color:#555;display:inline-flex;align-items:center;justify-content:center;min-height:24px;}
.ecom-co__method-ico--pp svg{display:block;}
.ecom-co__method-title{font-size:13px;color:#3a3a44;}
.ecom-co__pmbox{position:relative;background:var(--co-field);border:1px solid var(--co-border);border-radius:12px;padding:16px 18px;margin-top:18px;--caret-x:40px;}
.ecom-co__pmbox::before{content:"";position:absolute;top:-9px;left:var(--caret-x);width:16px;height:16px;background:var(--co-field);border-left:1px solid var(--co-border);border-top:1px solid var(--co-border);transform:translateX(-50%) rotate(45deg);}
.ecom-co__pmbox p{margin:0;font-size:13px;color:#555;line-height:1.55;}

.ecom-co__privacy{font-size:12px;color:var(--co-gray);line-height:1.6;margin:20px 0 12px;}
.ecom-co__privacy a,.ecom-co__terms a{color:var(--co-indigo);text-decoration:underline;}
.ecom-co a:not(.ecom-co__submit):hover{color:var(--co-accent,#d9ff00);text-decoration-color:var(--co-accent,#d9ff00);}
.ecom-co__terms{margin:0 0 20px;}

.ecom-co .ecom-co__submit{
  -webkit-font-smoothing:antialiased;display:inline-block;width:100%!important;
  background:var(--co-accent,#d9ff00)!important;color:var(--co-accent-text,#0a0a0a)!important;
  font-family:"Syne",'Nunito Sans',system-ui,sans-serif!important;
  font-weight:800!important;font-size:16px!important;line-height:1!important;
  text-align:center;text-decoration:none!important;
  border:0!important;border-radius:999px!important;padding:18px 32px!important;
  cursor:pointer!important;box-shadow:0 6px 20px rgba(217,255,0,.35)!important;
  transition:transform .1s ease,opacity .15s ease;}
[data-ecom-place] .ecom-co__submit{margin-top:16px;}
.ecom-co .ecom-co__submit:hover{opacity:.92;transform:translateY(-1px);color:var(--co-accent-text,#0a0a0a)!important;}
.ecom-co .ecom-co__submit:disabled{opacity:.6;cursor:not-allowed;transform:none;}
.ecom-co__paypal{margin-top:6px;min-height:46px;}
.ecom-co__msg{font-size:13px;margin-top:14px;min-height:0;}
.ecom-co__msg.is-error{color:#dc2626;}
.ecom-co__msg.is-ok{color:var(--co-green);}

/* ── Selector de plan ── */
.ecom-co--select{max-width:1080px;}
.ecom-cosel__head{text-align:center;margin-bottom:28px;}
.ecom-cosel__head .ecom-co__subtitle{max-width:560px;margin-left:auto;margin-right:auto;}
.ecom-cosel__cat{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--co-indigo);margin:24px 0 14px;}
.ecom-cosel__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:20px;justify-content:start;margin-bottom:10px;}
.ecom-cosel__card{position:relative;background:#fff;border:1px solid var(--co-border);border-radius:18px;padding:24px 22px;display:flex;flex-direction:column;box-shadow:0 8px 30px rgba(20,20,40,.05);transition:border-color .2s,box-shadow .2s,transform .2s;}
.ecom-cosel__card:hover{border-color:var(--co-indigo);box-shadow:0 12px 36px rgba(99,102,241,.12);transform:translateY(-2px);}
.ecom-cosel__card.is-featured{border-color:var(--co-lime);}
.ecom-cosel__name{font-size:18px;font-weight:800;margin:6px 0 8px;}
.ecom-cosel__price{font-size:30px;font-weight:800;letter-spacing:-.01em;}
.ecom-cosel__per{font-size:13px;font-weight:500;color:var(--co-gray);}
.ecom-cosel__features{margin-top:16px;margin-bottom:20px;}
.ecom-cosel__btn{display:block;text-align:center;text-decoration:none;margin-top:auto;}
.ecom-cosel__btn:hover{color:#1a1a1a;}
