/* Styles específicos para la sección de Planes */
.Planes { padding:56px 0; }
.Planes h2 { color:var(--brand-primary); text-align:center; margin-bottom:28px; }
.planes-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr)); gap:18px; }
.plan { background: linear-gradient(180deg, #fff, #fff); border-radius:12px; padding:20px; box-shadow: var(--card-shadow); transition: transform 0.18s ease, box-shadow 0.18s; border: 1px solid rgba(50,0,90,0.04); position:relative; overflow:hidden; }
.plan::before{ content: ''; position:absolute; left:0; top:0; height:6px; width:100%; background: linear-gradient(90deg, var(--brand-primary), var(--brand-accent)); }
.plan:hover { transform: translateY(-6px); box-shadow: 0 28px 60px rgba(50,0,90,0.09); }
.plan .card-title { color:var(--brand-primary); font-weight:800; font-size:1.15rem; }
.plan .card-text { color:#444; }
.plan .price { font-size:1.6rem; font-weight:900; color:var(--brand-accent); }

/* Featured (card del medio) - fondo morado completo y contenido en blanco */
.plan.featured {
  background: var(--brand-primary);
  color: var(--white);
}
.plan.featured::before { background: transparent; }
.plan.featured .card-title { color: var(--white); }
.plan.featured .card-text { color: rgba(255,255,255,0.92); }
.plan.featured .price { color: var(--white); }
.plan.featured ul li { color: rgba(255,255,255,0.95); }
.plan.featured .btn {
  background: var(--white) !important;
  color: var(--brand-primary) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}
.plan.featured .card-body { display:flex; flex-direction:column; }

/* Accent badge for highlighted plans (use .border-primary on the card for Premium) */
.plan.border-primary { border-color: rgba(255,43,80,0.18); box-shadow: 0 28px 70px rgba(255,43,80,0.06); border-width: 2px; }
.plan.border-primary .card-title::after { content: "POPULAR"; display:inline-block; background: var(--brand-accent); color:var(--white); font-size:11px; padding:4px 8px; border-radius:999px; margin-left:8px; font-weight:800; box-shadow: 0 6px 18px rgba(255,43,80,0.12); }

.plan .price small { font-size:0.6rem; color:#666; font-weight:600; }

/* Responsive tweaks */
@media (max-width: 768px) {
  .Planes { padding:40px 0; }
  .plan { padding:18px; }
}

/* Sección: Proveedores (publicidad) */
.Marcas { padding:40px 0; background: linear-gradient(180deg,#fbfbff,#fff); }
.Marcas h2 { color:var(--brand-primary); text-align:center; margin-bottom:6px; }
.Marcas p { max-width:720px; margin:0 auto 18px auto; }
.marcas-grid .marca-logo { max-height:64px; width:auto; object-fit:contain; filter:grayscale(60%); opacity:0.9; transition: filter .18s ease, transform .18s ease, opacity .18s ease; }
.marcas-grid .brand-link:hover .marca-logo { filter:none; transform:translateY(-6px) scale(1.03); opacity:1; }

@media (max-width: 576px) {
  .marcas-grid .marca-logo { max-height:48px; }
}
