/* CSS de servicios/performance-marketing.html */

/* ==========================================================
   PERFORMANCE MARKETING — CSS ENCAPSULADO
   Prefijo: .sp-  (servicio-performance)
========================================================== */
.sp-page {
  --sp-blue:   var(--blue);
  --sp-blue-d: #3558F0;
  --sp-blue-l: rgba(95,121,238,.08);
  --sp-off:    #F3F2EE;
  --sp-warm:   #FAFAF7;
  --sp-dark:   #1C1C1C;
  --sp-muted:  #7A7A72;
  --sp-bdr:    rgba(47,47,47,.09);
  --sp-t:      0.3s ease;
}
#sp-rdp{position:fixed;top:0;left:0;height:2px;background:linear-gradient(to right,var(--sp-blue),#a78bfa);z-index:300;width:0%;transition:width .1s}

/* Nav bar */
.sp-nav-bar{position:sticky;top:64px;z-index:90;background:rgba(243,242,238,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--sp-bdr)}
.sp-nav-inner{width:min(1200px,100% - 2rem);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;height:48px;gap:2rem}
.sp-back{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:600;color:var(--sp-muted);transition:color var(--sp-t);text-decoration:none}
.sp-back:hover{color:var(--sp-blue)}
.sp-back svg{width:14px;height:14px}
.sp-svc-label{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sp-muted);display:flex;align-items:center;gap:6px}
.sp-svc-label::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--sp-blue);animation:spPulse 2s infinite}
@keyframes spPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.5}}
.sp-nav-cta{display:inline-flex;align-items:center;gap:6px;padding:7px 15px;background:var(--sp-blue);color:white;border-radius:100px;font-size:.75rem;font-weight:700;transition:all var(--sp-t);text-decoration:none}
.sp-nav-cta:hover{background:var(--sp-blue-d);transform:translateY(-1px)}

/* HERO */
.sp-hero{min-height:100svh;display:flex;align-items:flex-end;padding-bottom:80px;padding-top:130px;position:relative;overflow:hidden;background:var(--sp-dark)}
.sp-hero-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(28,28,28,.4) 0%,rgba(28,28,28,.05) 30%,rgba(28,28,28,.85) 70%,rgba(28,28,28,1) 100%),linear-gradient(to right,rgba(28,28,28,.95) 0%,rgba(28,28,28,.4) 60%,transparent 100%)}
.sp-hero-blob{position:absolute;width:500px;height:500px;border-radius:50%;background:var(--sp-blue);opacity:.07;filter:blur(130px);top:-60px;right:-80px;z-index:1;animation:spGlow 9s ease-in-out infinite}
@keyframes spGlow{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,20px)}}
.sp-deco-top{position:absolute;top:0;left:0;right:0;height:2px;z-index:3;background:linear-gradient(to right,transparent,var(--sp-blue),transparent)}

/* Dashboard visual fondo */
.sp-hero-dash{position:absolute;top:0;right:0;bottom:0;width:48%;z-index:1;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:.35}
.sp-dash-mock{width:90%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;backdrop-filter:blur(4px)}
.sp-dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}
.sp-dash-title{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.sp-dash-date{font-size:.6rem;color:rgba(255,255,255,.2)}
.sp-dash-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem}
.sp-dash-m{text-align:center;padding:.7rem;background:rgba(255,255,255,.04);border-radius:8px}
.sp-dash-mn{font-size:1.1rem;font-weight:900;color:white;letter-spacing:-.03em;line-height:1}
.sp-dash-ml{font-size:.55rem;color:rgba(255,255,255,.3);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-top:3px}
.sp-dash-mn.sp-green{color:#4ade80}
.sp-dash-mn.sp-red{color:#f87171}
/* Mini chart */
.sp-mini-chart{display:flex;align-items:flex-end;gap:3px;height:48px;margin-top:.5rem}
.sp-bar{flex:1;background:rgba(95,121,238,.4);border-radius:2px 2px 0 0;min-height:4px;transition:height .3s}
.sp-bar.sp-peak{background:var(--sp-blue)}

.sp-h-content{position:relative;z-index:2;width:min(1200px,100% - 3rem);margin-inline:auto}
.sp-hero-eyebrow{display:inline-flex;align-items:center;gap:7px;padding:5px 14px;border:1px solid rgba(255,255,255,.15);border-radius:100px;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:2rem}
.sp-hero-eyebrow::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--sp-blue);flex-shrink:0}
.sp-h1{font-size:clamp(2.6rem,6vw,5.8rem);font-weight:900;line-height:.96;letter-spacing:-.045em;color:#FAFAF7;margin-bottom:1.6rem;max-width:16ch}
.sp-h1 em{font-style:normal;color:var(--sp-blue)}
.sp-hero-sub{font-size:clamp(1rem,1.5vw,1.15rem);color:rgba(255,255,255,.5);line-height:1.75;max-width:52ch;margin-bottom:2.5rem}
.sp-hero-ctas{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sp-btn-p{display:inline-flex;align-items:center;gap:7px;padding:14px 26px;background:var(--sp-blue);color:white;border-radius:100px;font-size:.9rem;font-weight:700;transition:all var(--sp-t);text-decoration:none}
.sp-btn-p:hover{background:var(--sp-blue-d);transform:translateY(-2px);box-shadow:0 8px 28px rgba(95,121,238,.4)}
.sp-btn-p svg{width:13px;height:13px}
.sp-btn-s{display:inline-flex;align-items:center;gap:7px;padding:14px 24px;border:1.5px solid rgba(255,255,255,.2);color:rgba(255,255,255,.8);border-radius:100px;font-size:.9rem;font-weight:600;transition:all var(--sp-t);text-decoration:none}
.sp-btn-s:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.06)}

/* BASE */
.sp-inn{width:min(1200px,100% - 3rem);margin-inline:auto}
.sp-inn-w{width:min(1440px,100% - 2rem);margin-inline:auto}
.sp-pad-xl{padding:8rem 0}.sp-pad-lg{padding:7rem 0}.sp-pad-md{padding:5rem 0}
.sp-bg-off{background:var(--sp-off)}.sp-bg-warm{background:var(--sp-warm)}.sp-bg-dark{background:var(--sp-dark)}
.sp-rv{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.sp-rv.sp-vis{opacity:1;transform:translateY(0)}
.sp-rvl{opacity:0;transform:translateX(-24px);transition:opacity .75s ease,transform .75s ease}
.sp-rvl.sp-vis{opacity:1;transform:translateX(0)}
.sp-rvr{opacity:0;transform:translateX(24px);transition:opacity .75s ease,transform .75s ease}
.sp-rvr.sp-vis{opacity:1;transform:translateX(0)}
.sp-d1{transition-delay:.1s}.sp-d2{transition-delay:.2s}.sp-d3{transition-delay:.3s}
.sp-eye{display:flex;align-items:center;gap:9px;margin-bottom:1rem}
.sp-eye-num{font-size:.66rem;font-weight:700;color:var(--sp-blue);letter-spacing:.15em}
.sp-eye-line{height:1px;width:30px;background:var(--sp-blue);opacity:.4}
.sp-eye-lbl{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(47,47,47,.4)}
.sp-bg-dark .sp-eye-lbl{color:rgba(255,255,255,.3)}
.sp-h2{font-size:clamp(1.8rem,3.5vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--sp-dark);margin-bottom:1.2rem}
.sp-h2 em{font-style:normal;color:var(--sp-blue)}
.sp-h2-light{color:#FAFAF7}
.sp-body{font-size:1rem;color:var(--sp-muted);line-height:1.8;max-width:56ch}
.sp-body-light{color:rgba(255,255,255,.5)}

/* PROBLEMA */
.sp-prob-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.sp-prob-items{display:flex;flex-direction:column;gap:.7rem;margin-top:2rem}
.sp-prob-item{display:flex;align-items:flex-start;gap:1rem;padding:1.1rem 1.3rem;background:white;border:1px solid var(--sp-bdr);border-radius:12px;transition:all var(--sp-t)}
.sp-prob-item:hover{border-color:rgba(95,121,238,.2);transform:translateX(4px)}
.sp-prob-ico{width:34px;height:34px;background:rgba(239,68,68,.07);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#ef4444;flex-shrink:0}
.sp-prob-ico svg{width:16px;height:16px}
.sp-prob-t{font-size:.85rem;font-weight:700;color:var(--sp-dark);margin-bottom:2px}
.sp-prob-d{font-size:.76rem;color:var(--sp-muted);line-height:1.5}
.sp-prob-quote{margin-top:2.5rem;padding:2rem 2.5rem;border-left:3px solid var(--sp-blue);background:var(--sp-blue-l);border-radius:0 14px 14px 0;font-size:1.05rem;font-weight:700;color:var(--sp-dark);line-height:1.5}

/* QUÉ HACEMOS — canales */
.sp-canales-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-radius:20px;overflow:hidden;margin-top:3rem}
.sp-canal{background:white;border:1px solid var(--sp-bdr);padding:1.8rem 1.5rem;transition:all var(--sp-t);position:relative;overflow:hidden}
.sp-canal::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--sp-blue);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.sp-canal:hover::after{transform:scaleX(1)}
.sp-canal:hover{background:var(--sp-blue-l)}
.sp-canal-num{font-size:.66rem;font-weight:700;letter-spacing:.14em;color:rgba(95,121,238,.3);margin-bottom:.9rem}
.sp-canal-ico{width:36px;height:36px;color:var(--sp-blue);margin-bottom:.8rem}
.sp-canal-ico svg{width:100%;height:100%}
.sp-canal-t{font-size:.9rem;font-weight:700;color:var(--sp-dark);margin-bottom:.4rem}
.sp-canal-d{font-size:.77rem;color:var(--sp-muted);line-height:1.6}

/* LO IMPORTANTE — frase central */
.sp-insight-sec{background:var(--sp-dark);padding:6rem 0;position:relative;overflow:hidden}
.sp-insight-sec::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(95,121,238,.08) 0%,transparent 70%);pointer-events:none}
.sp-insight-inner{position:relative;z-index:1;width:min(1200px,100% - 3rem);margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.sp-insight-text{font-size:clamp(1.8rem,4vw,3.5rem);font-weight:900;color:#FAFAF7;line-height:1.05;letter-spacing:-.04em}
.sp-insight-text em{font-style:normal;color:var(--sp-blue)}
.sp-insight-list{display:flex;flex-direction:column;gap:.6rem}
.sp-insight-item{display:flex;align-items:center;gap:.8rem;padding:.9rem 1.1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;font-size:.85rem;font-weight:500;color:rgba(255,255,255,.7);transition:all var(--sp-t)}
.sp-insight-item:hover{background:rgba(95,121,238,.08);border-color:rgba(95,121,238,.2)}
.sp-insight-dot{width:6px;height:6px;border-radius:50%;background:var(--sp-blue);flex-shrink:0}

/* VISUAL — métricas */
.sp-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:3rem}
.sp-metric-card{padding:3rem 2rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);text-align:center;transition:all .3s ease;position:relative;overflow:hidden}
.sp-metric-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--sp-blue);transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
.sp-metric-card:hover::after{transform:scaleX(1)}
.sp-metric-card:hover{background:rgba(95,121,238,.05)}
.sp-metric-n{font-size:clamp(2.5rem,5vw,5rem);font-weight:900;letter-spacing:-.06em;line-height:.9;color:#FAFAF7;margin-bottom:.5rem;display:block}
.sp-metric-n .sp-bl{color:var(--sp-blue)}
.sp-metric-n .sp-gr{color:#4ade80}
.sp-metric-lbl{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.25)}
.sp-metric-desc{font-size:.78rem;color:rgba(255,255,255,.3);line-height:1.6;margin-top:.7rem}

/* CASOS */
.sp-casos-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.5rem}
.sp-caso-card{border-radius:16px;overflow:hidden;border:1px solid var(--sp-bdr);transition:all .35s ease;text-decoration:none;display:flex;flex-direction:column;background:white}
.sp-caso-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(47,47,47,.12);border-color:rgba(95,121,238,.2)}
.sp-caso-card:hover .sp-caso-img img{transform:scale(1.05)}
.sp-caso-img{position:relative;overflow:hidden;height:200px;background:var(--sp-dark)}
.sp-caso-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.sp-caso-img-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(28,28,28,.5) 0%,transparent 40%)}
.sp-caso-badge{position:absolute;top:1rem;left:1rem;padding:3px 10px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border-radius:100px;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:white}
.sp-caso-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.sp-caso-num{font-size:.64rem;font-weight:700;letter-spacing:.14em;color:var(--sp-blue);margin-bottom:.6rem}
.sp-caso-title{font-size:1rem;font-weight:700;color:var(--sp-dark);line-height:1.25;margin-bottom:.6rem}
.sp-caso-title em{font-style:normal;color:var(--sp-blue)}
.sp-caso-metrics{display:flex;gap:1.2rem;padding-top:.8rem;border-top:1px solid var(--sp-bdr);margin-top:auto}
.sp-cm-n{font-size:1.2rem;font-weight:700;color:var(--sp-dark);letter-spacing:-.02em}
.sp-cm-l{font-size:.65rem;color:var(--sp-muted);margin-top:1px}
.sp-caso-arrow{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:700;color:var(--sp-blue);margin-top:1rem;transition:gap var(--sp-t)}
.sp-caso-card:hover .sp-caso-arrow{gap:9px}
.sp-caso-arrow svg{width:13px;height:13px}

/* CTA FINAL */
.sp-cta{text-align:center;position:relative;overflow:hidden;background:var(--sp-dark)}
.sp-cta::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:700px;height:700px;background:radial-gradient(circle,rgba(95,121,238,.1) 0%,transparent 70%);pointer-events:none}
.sp-cta-in{position:relative;z-index:1}
.sp-cta-h{font-size:clamp(2rem,5vw,5rem);font-weight:900;color:#FAFAF7;line-height:.98;letter-spacing:-.05em;max-width:20ch;margin:0 auto 1.2rem}
.sp-cta-h em{font-style:normal;color:var(--sp-blue)}
.sp-cta-sub{font-size:1rem;color:rgba(255,255,255,.35);max-width:46ch;margin:0 auto 2.5rem;line-height:1.75}
.sp-cta-acts{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.sp-btn-white{display:inline-flex;align-items:center;gap:7px;padding:14px 26px;background:#FAFAF7;color:var(--sp-dark);border-radius:100px;font-size:.9rem;font-weight:700;transition:all var(--sp-t);text-decoration:none}
.sp-btn-white:hover{background:var(--sp-blue);color:white;transform:translateY(-2px);box-shadow:0 8px 28px rgba(95,121,238,.4)}
.sp-btn-outline{display:inline-flex;align-items:center;gap:7px;padding:14px 24px;border:1.5px solid rgba(255,255,255,.18);color:rgba(255,255,255,.8);border-radius:100px;font-size:.9rem;font-weight:600;transition:all var(--sp-t);text-decoration:none}
.sp-btn-outline:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.06)}

/* ANTES/DESPUÉS */
.sp-ba-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:start;margin-top:3rem}
.sp-ba-col{display:flex;flex-direction:column;gap:.6rem}
.sp-ba-label{font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 12px;border-radius:100px;width:fit-content;margin-bottom:.6rem}
.sp-ba-before .sp-ba-label{background:rgba(239,68,68,.08);color:#dc2626}
.sp-ba-after  .sp-ba-label{background:var(--sp-blue-l);color:var(--sp-blue)}
.sp-ba-item{display:flex;align-items:center;gap:.7rem;padding:.85rem 1.1rem;border-radius:10px;font-size:.84rem;font-weight:500}
.sp-ba-before .sp-ba-item{background:rgba(239,68,68,.04);border:1px solid rgba(239,68,68,.1);color:rgba(47,47,47,.55);text-decoration:line-through;text-decoration-color:rgba(239,68,68,.35)}
.sp-ba-after  .sp-ba-item{background:var(--sp-blue-l);border:1px solid rgba(95,121,238,.15);color:var(--sp-dark);font-weight:600}
.sp-ba-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.sp-ba-before .sp-ba-dot{background:#ef4444}
.sp-ba-after  .sp-ba-dot{background:var(--sp-blue)}
.sp-ba-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--sp-muted);gap:.3rem;padding-top:2.5rem}
.sp-ba-arrow svg{width:28px;height:28px}
.sp-ba-arrow span{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase}

/* RESPONSIVE */
@media(max-width:1024px){.sp-prob-grid{grid-template-columns:1fr;gap:3rem}.sp-canales-grid{grid-template-columns:repeat(2,1fr)}.sp-insight-inner{grid-template-columns:1fr;gap:3rem}.sp-casos-grid{grid-template-columns:1fr}}
@media(max-width:768px){.sp-hero{padding-top:100px}.sp-hero-dash{display:none}.sp-h1{font-size:clamp(2.2rem,9vw,3.8rem)}.sp-hero-ctas{flex-direction:column;align-items:flex-start}.sp-canales-grid{grid-template-columns:1fr}.sp-metrics-grid{grid-template-columns:1fr}.sp-ba-grid{grid-template-columns:1fr;gap:1rem}.sp-ba-arrow{flex-direction:row;padding-top:0}.sp-cta-acts{flex-direction:column;align-items:center}}
