/* SERVICIOS */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:2.75rem; }
.svc-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:1.75rem; position:relative; overflow:hidden; transition:all 0.3s; }
.svc-card::after { content:''; position:absolute; inset:0; background: radial-gradient(circle at top left, rgba(0,80,255,0.06), transparent 60%); opacity:0; transition:opacity 0.3s; }
.svc-card:hover { border-color:var(--border-glow); transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,0.35); }
.svc-card:hover::after { opacity:1; }

.svc-icon { width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.35rem; background:rgba(0,80,255,0.1); border:1px solid rgba(0,80,255,0.2); margin-bottom:1.1rem; }
.svc-card h3 { font-size:1.05rem; font-weight:800; color:var(--white); margin-bottom:0.6rem; letter-spacing:-0.01em; }
.svc-card p { font-size:0.875rem; color:var(--text-muted); line-height:1.65; font-weight:400; }
.svc-link { display:inline-block; margin-top:1rem; font-size:0.78rem; color:var(--blue-light); font-weight:700; letter-spacing:0.04em; text-decoration:none; }

/* WHY US & TESTIMONIOS */
.why-section { background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.why-grid { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }
.why-items { display:flex; flex-direction:column; gap:1.4rem; margin-top:2.25rem; }
.why-item { display:flex; gap:1rem; align-items:flex-start; }
.why-num { font-size:0.7rem; font-weight:900; color:var(--blue-light); letter-spacing:0.12em; padding-top:0.25rem; min-width:22px; }
.why-item h4 { font-size:0.95rem; font-weight:800; color:var(--white); margin-bottom:0.3rem; }
.why-item p { font-size:0.875rem; color:var(--text-muted); line-height:1.65; font-weight:400; }

.testi-stack { display:flex; flex-direction:column; gap:0.85rem; }
.testi { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:1.1rem 1.35rem; transition:border-color 0.3s; }
.testi:hover { border-color:var(--border-glow); }
.testi p { font-size:0.875rem; color:var(--text-muted); line-height:1.6; font-style:italic; font-weight:400; margin-bottom:0.7rem; }
.testi-author { display:flex; align-items:center; gap:0.7rem; }
.avatar { width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:0.7rem; font-weight:800; background: linear-gradient(135deg,var(--violet),var(--blue-light)); color:white; flex-shrink:0; }
.aname { font-size:0.78rem; font-weight:700; color:var(--white); }
.arole { font-size:0.68rem; color:var(--text-dim); }
.stars { color:#f59e0b; font-size:0.72rem; margin-left:auto; }

/* CURSO STRIP */
.curso-strip { background: linear-gradient(135deg, rgba #0f131b 0%, rgba(6,214,224,0.04) 100%); border-top:1px solid rgba(0,80,255,0.15); border-bottom:1px solid rgba(6,214,224,0.1); }
.curso-inner { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:60px 0; flex-wrap:wrap; }
.curso-left { flex:1; min-width:280px; }
.curso-badge-pill { display:inline-flex; align-items:center; gap:0.5rem; background:rgba(139,92,246,0.15); border:1px solid rgba(139,92,246,0.25); border-radius:100px; padding:0.3rem 1rem; font-size:0.72rem; color:#a78bfa; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; margin-bottom:0.85rem; }
.curso-title-text { font-size:clamp(1.5rem,3vw,2.1rem); font-weight:900; color:var(--white); letter-spacing:-0.02em; margin-bottom:0.75rem; line-height:1.1; }
.curso-feats { display:flex; flex-wrap:wrap; gap:0.6rem; margin-bottom:1.25rem; }
.feat { display:flex; align-items:center; gap:0.35rem; font-size:0.8rem; color:var(--text-muted); font-weight:500; }
.feat::before { content:'✓'; color:var(--cyan); font-weight:900; font-size:0.75rem; }

.curso-aside { background:var(--surface); border:1px solid var(--border-glow); border-radius:var(--radius); padding:1.75rem; text-align:center; min-width:200px; }
.curso-aside p { font-size:0.72rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.08em; font-weight:700; margin-bottom:0.4rem; }
.precio-big { font-size:2.2rem; font-weight:900; color:var(--white); line-height:1; margin-bottom:0.25rem; }
.precio-sub { font-size:0.75rem; color:var(--text-dim); margin-bottom:1.1rem; }

/* TECH CLOUD */
.tech-cloud { display:flex; flex-wrap:wrap; gap:0.65rem; margin-top:2.25rem; justify-content:center; }
.tech-pill { background:var(--surface); border:1px solid var(--border); border-radius:8px; padding:0.45rem 0.95rem; font-size:0.82rem; color: var(--text-main, #fff); font-weight:600; letter-spacing:0.02em; transition:all 0.2s; }
.tech-pill:hover { border-color:var(--border-glow); color:var(--text); }

/* CTA FINAL */
.cta-section { padding:100px 5%; text-align:center; position:relative; overflow:hidden; }
.cta-orb { position:absolute; width:700px; height:500px; top:50%; left:50%; transform:translate(-50%,-50%); background: radial-gradient(ellipse, rgba(0,80,255,0.09) 0%, transparent 70%); pointer-events:none; animation: pulse 8s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)} 50%{opacity:0.7;transform:translate(-50%,-50%) scale(1.1)} }

.cta-section h2 { font-size:clamp(2rem,4vw,3rem); font-weight:900; color:var(--white); letter-spacing:-0.025em; margin-bottom:0.85rem; }
.cta-section > p { color:var(--text-muted); font-size:0.95rem; max-width:440px; margin:0 auto 2rem; font-weight:400; }
.cta-btns { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; margin-top:2rem; }

/* RESPONSIVE SECCIONES */
@media (max-width:900px) {
  .services-grid { grid-template-columns:1fr; }
  .why-grid { grid-template-columns:1fr; gap:3rem; }
}
@media (max-width:600px) {
  .curso-inner { flex-direction:column; }
}