
/* eLINK Pricing Tables - ORIGINAL look v1.0.6 tweaks */
.elink-pt-wrap{
  --elink-green:#39B44A;
  --elink-blue:#264D9B;
  --elink-blue-strong:#2E3191;
  --elink-text:#1f2a37;

  width:100%;
  display:grid;
  grid-template-columns: repeat(4, minmax(220px, 1fr));
  gap:26px;
  align-items:stretch;
  padding-bottom: 18px; /* room for outside button */
}

.elink-pt-wrap,
.elink-pt-wrap *{
  box-sizing:border-box;
  font-family: Arimo, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif !important;
}

@media (max-width: 1024px){
  .elink-pt-wrap{ grid-template-columns: repeat(2, minmax(220px, 1fr)); }
}
@media (max-width: 640px){
  .elink-pt-wrap{ grid-template-columns: 1fr; }
}

/* Card border like original */
.elink-pt-wrap .elink-pt-card{
  background:#fff;
  border:3px solid var(--elink-blue);
  border-radius:22px;
  overflow: visible; /* allow button to sit outside */
  display:flex;
  flex-direction:column;
  min-height:100%;
  box-shadow: 0 10px 0 rgba(0,0,0,.08);
  position:relative;
}

/* create clipping layer for header/body while keeping button outside */
.elink-pt-wrap .elink-pt-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:22px;
  pointer-events:none;
  box-shadow: inset 0 0 0 0 rgba(0,0,0,0); /* placeholder (keeps layer) */
}

/* Plans 4/8/12 green border */
.elink-pt-wrap .elink-pt-card.variant-standard,
.elink-pt-wrap .elink-pt-card.variant-featured{
  border-color: var(--elink-green);
}

/* Header */
.elink-pt-wrap .elink-pt-head{
  padding:14px 16px;
  text-align:center;
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}

/* eLINK-1 header filled blue */
.elink-pt-wrap .elink-pt-card.variant-starter .elink-pt-head{
  background: linear-gradient(180deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 45%), var(--elink-blue);
}

/* Others: white header with subtle green divider */
.elink-pt-wrap .elink-pt-card.variant-standard .elink-pt-head,
.elink-pt-wrap .elink-pt-card.variant-featured .elink-pt-head{
  background:#fff;
  border-bottom: 2px solid rgba(57,180,74,.55);
}

/* Title styles */
.elink-pt-wrap .elink-pt-title{
  font-weight:900;
  font-size:22px;
  letter-spacing:.2px;
}
.elink-pt-wrap .elink-pt-card.variant-starter .elink-pt-title{
  color:#fff !important;
  font-style: italic !important;
}
.elink-pt-wrap .elink-pt-card.variant-standard .elink-pt-title,
.elink-pt-wrap .elink-pt-card.variant-featured .elink-pt-title{
  color: var(--elink-blue-strong) !important;
  font-style: italic !important;
}

/* Body */
.elink-pt-wrap .elink-pt-body{
  padding: 10px 18px 0;
  text-align:center;
  flex:1;
}

/* Price (italic like original) */
.elink-pt-wrap .elink-pt-price{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  gap:5px;
  margin: 6px 0 4px;
}
.elink-pt-wrap .elink-pt-currency{
  font-size:16px;
  font-weight:700;
  margin-top:10px;
  color: var(--elink-blue-strong);
  font-style: italic !important;
}
.elink-pt-wrap .elink-pt-main{
  font-size:58px;
  font-weight:900;
  line-height:1;
  color: var(--elink-blue-strong);
  font-style: italic !important;
}
.elink-pt-wrap .elink-pt-cents{
  font-size:13px;
  font-weight:900;
  margin-top:14px;
  color: var(--elink-blue-strong);
  font-style: italic !important;
}

/* Duration color (make it match original: darker/blue-ish) */
.elink-pt-wrap .elink-pt-duration{
  font-size:13px;
  font-weight:700;
  color: var(--elink-blue-strong); /* was gray; user wants closer */
  margin-bottom:6px;
}

/* Green "Gratis ..." (small italic) */
.elink-pt-wrap .elink-pt-badge{
  font-size:12px;
  font-weight:800;
  font-style: italic !important;
  color: var(--elink-green);
  margin: 2px 0 8px;
}

/* Divider line before headline (green) */
.elink-pt-wrap .elink-pt-divider{
  height:2px;
  width:100%;
  background: rgba(57,180,74,.55);
  margin: 6px 0 10px;
}

/* Headline italic green */
.elink-pt-wrap .elink-pt-headline{
  color: var(--elink-green);
  font-style: italic !important;
  font-weight:900;
  line-height:1.2;
  margin: 0 0 10px;
}

/* Features: SMALL BLUE DOT bullets like original, smaller text */
.elink-pt-wrap .elink-pt-features{
  list-style:none !important;
  padding: 0 !important;
  margin: 0 0 10px !important;
  text-align:left;
}
.elink-pt-wrap .elink-pt-features li{
  position:relative;
  padding: 4px 0 4px 18px;
  margin:0 !important;
  color: var(--elink-text) !important;
  font-size:12px;
  font-weight:700;
  border:0 !important;
}
.elink-pt-wrap .elink-pt-features li::before{
  content:"";
  position:absolute;
  left:4px;
  top: 10px;
  width:5px;
  height:5px;
  border-radius:50%;
  background: var(--elink-blue-strong);
}

/* Bonus feature line (Gratis ... el primer año*) -> green italic, no bullet */
.elink-pt-wrap .elink-pt-features li.feature-bonus{
  color: var(--elink-green) !important;
  font-style: italic !important;
  font-weight:900;
  padding-left: 0;
}
.elink-pt-wrap .elink-pt-features li.feature-bonus::before{
  content:"";
  width:0;
  height:0;
}

/* Footer line + button OUTSIDE the card */
.elink-pt-wrap .elink-pt-foot{
  padding: 0 18px 0;
  display:flex;
  justify-content:center;
  position:relative;
  margin-bottom: -14px; /* pull outside */
}
.elink-pt-wrap .elink-pt-foot::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top: 18px;
  height:2px;
  background: rgba(57,180,74,.55);
}

/* Button: starter GREEN, others BLUE-STRONG */
.elink-pt-wrap .elink-pt-btn{
  width: 92%;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  padding: 12px 14px;
  border-radius: 16px;
  text-decoration:none !important;
  font-size:16px;
  font-weight:900;
  font-style: italic !important;
  color:#fff !important;
  background: linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 45%), var(--elink-blue-strong);
  box-shadow: 0 10px 0 rgba(0,0,0,.10);
  border: 0;
  transform: translateY(10px); /* push outside */
}
.elink-pt-wrap .elink-pt-card.variant-starter .elink-pt-btn{
  background: linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 45%), var(--elink-green);
}
.elink-pt-wrap .elink-pt-btn:hover{
  filter: brightness(1.03);
  transform: translateY(9px);
}

/* Empty state */
.elink-pt-empty{
  padding:14px 16px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:12px;
  background:#fff;
}
