:root {
  --bg: #0a0a0f;
  --text: #f0f0f5;
  --muted: #9a9ab0;
  --accent: #c8a96e;
  --border: rgba(255, 255, 255, 0.06);
  --surface: #12121c;
  --surface2: #16161f;
  --surface3: #1e1e2a;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: hidden; }

/* ══════════════════════════════════════════════════════════════
   UTILIDADES
══════════════════════════════════════════════════════════════ */
.cwp-ab-label{display:inline-flex;align-items:center;gap:.5rem;background:rgba(200,169,110,.1);border:1px solid rgba(200,169,110,.2);color:#c8a96e;padding:.5rem 1.25rem;border-radius:50px;font-size:.8rem;font-weight:500;letter-spacing:.03em}
.cwp-ab-h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,4vw,3rem);letter-spacing:.04em;color:#f0f0f5;margin:0 0 .75rem;line-height:1.05}
.cwp-ab-gold{color:#c8a96e}
.cwp-ab-desc{font-size:.95rem;color:#9a9ab0;max-width:620px;margin:0 auto;line-height:1.7}

/* ══════════════════════════════════════════════════════════════
   HERO ANIMADO — Negro + Dorado intenso
══════════════════════════════════════════════════════════════ */
.cwp-ab-hero{
  background:#050508;
  padding:6rem 2.5rem 2rem;
  text-align:center;
  position:relative;
  overflow:hidden;
  min-height:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

/* ── Orbs dorados visibles ── */
.cwp-ab-hero-orb{
  position:absolute;
  width:600px;height:600px;
  top:-200px;left:50%;
  transform:translateX(-50%);
  background:radial-gradient(circle,rgba(200,169,110,.25) 0%,rgba(200,169,110,.10) 30%,rgba(123,110,246,.05) 50%,transparent 70%);
  pointer-events:none;
  z-index:0;
  animation:abHeroPulse 8s ease-in-out infinite;
  filter:blur(40px);
}
.cwp-ab-hero-orb--2{
  width:400px;height:400px;
  top:-100px;
  background:radial-gradient(circle,rgba(123,110,246,.18) 0%,rgba(200,169,110,.12) 40%,transparent 70%);
  animation:abHeroPulse2 10s ease-in-out infinite 2s;
  filter:blur(30px);
}
@keyframes abHeroPulse{
  0%,100%{opacity:.7;transform:translateX(-50%) scale(1)}
  50%{opacity:1;transform:translateX(-50%) scale(1.15)}
}
@keyframes abHeroPulse2{
  0%,100%{opacity:.5;transform:translateX(-50%) scale(1)}
  50%{opacity:.9;transform:translateX(-50%) scale(1.2)}
}

/* ── Líneas decorativas doradas ── */
.cwp-ab-hero-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.cwp-ab-hero-lines span{position:absolute;width:1px;height:140px;background:linear-gradient(180deg,transparent,rgba(200,169,110,.3),transparent);animation:abLineFloat 6s ease-in-out infinite}
.cwp-ab-hero-lines span:nth-child(1){left:15%;top:20%;animation-delay:0s}
.cwp-ab-hero-lines span:nth-child(2){left:75%;top:30%;animation-delay:2s}
.cwp-ab-hero-lines span:nth-child(3){left:45%;top:60%;animation-delay:4s}
@keyframes abLineFloat{0%,100%{opacity:0;transform:translateY(0)}50%{opacity:1;transform:translateY(-30px)}}

/* ── Z-index layering ── */
.cwp-ab-hero>*{position:relative;z-index:3}
.cwp-ab-hero>.cwp-ab-hero-orb,.cwp-ab-hero>.cwp-ab-hero-lines{z-index:0}

/* ── Badge disponible ── */
.cwp-ab-hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(200,169,110,.1);border:1px solid rgba(200,169,110,.25);padding:.5rem 1.25rem;border-radius:50px;font-size:.8rem;color:#c8a96e;margin-bottom:2rem;font-weight:500;animation:abBadgePulse 3s ease-in-out infinite}
.cwp-ab-hero-badge-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;animation:abDotPulse 2s ease-in-out infinite}
@keyframes abDotPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(74,222,128,.5)}50%{opacity:.8;box-shadow:0 0 0 8px rgba(74,222,128,0)}}
@keyframes abBadgePulse{0%,100%{box-shadow:0 0 0 0 rgba(200,169,110,0)}50%{box-shadow:0 0 0 10px rgba(200,169,110,.08)}}

/* ── Título con shimmer dorado ── */
.cwp-ab-hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,6vw,5.2rem);letter-spacing:.04em;line-height:1;color:#f0f0f5;margin:0 0 1.5rem;text-shadow:0 0 60px rgba(200,169,110,.15)}
.cwp-ab-hero-title span{color:#c8a96e;background:linear-gradient(135deg,#c8a96e 0%,#e8d5a0 40%,#c8a96e 60%,#e8d5a0 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:abShimmer 3s linear infinite}
@keyframes abShimmer{0%{background-position:0% center}100%{background-position:200% center}}

.cwp-ab-hero-sub{font-size:1.05rem;color:#b0b0c0;max-width:650px;margin:0 auto;line-height:1.8}

/* ── CTAs hero ── */
.cwp-ab-hero-ctas{display:flex;justify-content:center;gap:1rem;margin-top:2.5rem;flex-wrap:wrap}

/* ── Trust bar ── */
.cwp-ab-hero-trust{display:flex;align-items:center;justify-content:center;gap:2.5rem;margin-top:3.5rem;flex-wrap:wrap}
.cwp-ab-hero-trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#b0b0c0}
.cwp-ab-hero-trust-item strong{color:#c8a96e;font-weight:700;font-family:'Bebas Neue',sans-serif;font-size:1.1rem;letter-spacing:.03em}

/* ══════════════════════════════════════════════════════════════
   SECCIONES BASE
══════════════════════════════════════════════════════════════ */
.cwp-ab-section{padding:6rem 0}
.cwp-ab-section--alt{background:#0e0e15;border-top:1px solid rgba(200,169,110,.06);border-bottom:1px solid rgba(200,169,110,.06);margin-top:-3rem;position:relative;z-index:5}
.cwp-ab-section--bg{background:#050508}
.cwp-ab-section--dark{background:#050508;border-top:1px solid rgba(200,169,110,.06);border-bottom:1px solid rgba(200,169,110,.06)}
.cwp-ab-head{text-align:center;margin-bottom:3.5rem}

/* ══════════════════════════════════════════════════════════════
   NUESTRA HISTORIA — Grid
══════════════════════════════════════════════════════════════ */
.cwp-ab-about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center;max-width:1280px;margin:0 auto;padding:0 2.5rem}

/* Visual — Anillo de experiencia */
.cwp-ab-about-visual{display:flex;flex-direction:column;align-items:center;gap:2.5rem}
.cwp-ab-exp-ring{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}
.cwp-ab-exp-svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.cwp-ab-exp-svg circle{transition:stroke-dashoffset 1.5s ease}
.cwp-ab-exp-ring-inner{text-align:center;z-index:1}
.cwp-ab-exp-num{font-family:'Bebas Neue',sans-serif;font-size:3.5rem;letter-spacing:.04em;color:#c8a96e;line-height:1}
.cwp-ab-exp-plus{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:#c8a96e;line-height:1}
.cwp-ab-exp-label{font-size:.7rem;color:#9a9ab0;text-transform:uppercase;letter-spacing:.1em;line-height:1.3}

/* Certificaciones */
.cwp-ab-about-certs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
.cwp-ab-cert-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:#9a9ab0;background:#16161f;border:1px solid rgba(200,169,110,.1);border-radius:8px;padding:.45rem .85rem;transition:all .25s}
.cwp-ab-cert-badge:hover{border-color:rgba(200,169,110,.3);color:#f0f0f5}
.cwp-ab-cert-badge span{color:#c8a96e;font-size:.65rem}

/* Skills */
.cwp-ab-about-skills{display:flex;flex-direction:column;gap:1.5rem}
.cwp-ab-skill{opacity:0;transform:translateY(15px);transition:all .5s ease}
.cwp-ab-skill.cwp-ab-visible,.cwp-ab-skill{opacity:1;transform:translateY(0)}
.cwp-ab-skill-head{display:flex;justify-content:space-between;margin-bottom:.4rem}
.cwp-ab-skill-name{font-size:.85rem;color:#f0f0f5;font-weight:500}
.cwp-ab-skill-pct{font-size:.8rem;color:#c8a96e;font-family:'Bebas Neue',sans-serif;letter-spacing:.04em}
.cwp-ab-skill-track{height:5px;background:#1e1e2a;border-radius:5px;overflow:hidden}
.cwp-ab-skill-fill{height:0%;border-radius:5px;background:linear-gradient(90deg,#c8a96e,#e8d5a0);transition:width 1.5s cubic-bezier(.4,0,.2,1);width:0%}

/* Features */
.cwp-ab-features{display:flex;flex-direction:column;gap:1.25rem}
.cwp-ab-feature{display:flex;gap:1rem;align-items:flex-start;opacity:0;transform:translateY(10px);transition:all .5s ease}
.cwp-ab-feature.cwp-ab-visible,.cwp-ab-feature{opacity:1;transform:translateY(0)}
.cwp-ab-feature-icon{width:44px;height:44px;border-radius:12px;background:rgba(200,169,110,.08);border:1px solid rgba(200,169,110,.15);display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0;transition:all .3s}
.cwp-ab-feature:hover .cwp-ab-feature-icon{background:rgba(200,169,110,.15);transform:scale(1.08);box-shadow:0 0 20px rgba(200,169,110,.12)}
.cwp-ab-feature-text strong{display:block;font-size:.9rem;color:#f0f0f5;margin-bottom:.2rem}
.cwp-ab-feature-text span{font-size:.82rem;color:#9a9ab0;line-height:1.6}

/* ══════════════════════════════════════════════════════════════
   STATS BAR
══════════════════════════════════════════════════════════════ */
.cwp-ab-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;max-width:1100px;margin:0 auto;border-radius:18px;overflow:hidden;border:1px solid rgba(200,169,110,.1);background:rgba(200,169,110,.1)}
.cwp-ab-stat{background:#0e0e15;padding:2.5rem 1.5rem;text-align:center;transition:background .3s}
.cwp-ab-stat:hover{background:rgba(200,169,110,.04)}
.cwp-ab-stat-num{font-family:'Bebas Neue',sans-serif;font-size:2.8rem;letter-spacing:.03em;color:#c8a96e;line-height:1;display:inline}
.cwp-ab-stat-suffix{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:#c8a96e;display:inline}
.cwp-ab-stat-label{font-size:.78rem;color:#9a9ab0;text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin-top:.35rem}

/* ══════════════════════════════════════════════════════════════
   VALORES — Glassmorphism cards
══════════════════════════════════════════════════════════════ */
.cwp-ab-values{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1280px;margin:0 auto;padding:0 2.5rem}
.cwp-ab-value-card{background:linear-gradient(160deg,rgba(22,22,31,.9) 0%,rgba(22,22,31,.5) 100%);border:1px solid rgba(200,169,110,.08);border-radius:18px;padding:2.25rem 1.75rem;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);opacity:0;transform:translateY(20px)}
.cwp-ab-value-card.cwp-ab-visible{opacity:1;transform:translateY(0)}
.cwp-ab-value-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,169,110,.06) 0%,transparent 50%);opacity:0;transition:opacity .4s;pointer-events:none}
.cwp-ab-value-card:hover{border-color:rgba(200,169,110,.3);transform:translateY(-8px);box-shadow:0 25px 60px rgba(0,0,0,.4),0 0 30px rgba(200,169,110,.08)}
.cwp-ab-value-card:hover::before{opacity:1}
.cwp-ab-value-num{position:absolute;top:1.25rem;right:1.25rem;font-family:'Bebas Neue',sans-serif;font-size:2.5rem;letter-spacing:.04em;color:rgba(200,169,110,.1);line-height:1;transition:color .4s}
.cwp-ab-value-card:hover .cwp-ab-value-num{color:rgba(200,169,110,.2)}
.cwp-ab-value-icon{font-size:2.2rem;margin-bottom:1.25rem;display:block;position:relative;z-index:1}
.cwp-ab-value-title{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.05em;color:#f0f0f5;margin-bottom:.6rem;position:relative;z-index:1}
.cwp-ab-value-desc{font-size:.85rem;color:#9a9ab0;line-height:1.7;position:relative;z-index:1}

/* ══════════════════════════════════════════════════════════════
   PROCESO
══════════════════════════════════════════════════════════════ */
.cwp-ab-process{max-width:1000px;margin:0 auto;padding:0 2.5rem;position:relative}
.cwp-ab-process-line{position:absolute;top:40px;left:15%;right:15%;height:2px;background:linear-gradient(90deg,transparent,rgba(200,169,110,.2) 20%,rgba(200,169,110,.2) 80%,transparent);z-index:0}
.cwp-ab-process{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative}
.cwp-ab-process-step{text-align:center;position:relative;padding:1.5rem 1rem;border-radius:16px;background:rgba(22,22,31,.6);border:1px solid rgba(200,169,110,.06);transition:all .4s cubic-bezier(.4,0,.2,1);opacity:0;transform:translateY(20px)}
.cwp-ab-process-step.cwp-ab-visible{opacity:1;transform:translateY(0)}
.cwp-ab-process-step:hover{border-color:rgba(200,169,110,.25);transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.3),0 0 20px rgba(200,169,110,.05)}
.cwp-ab-process-num{width:52px;height:52px;border-radius:50%;background:rgba(200,169,110,.1);border:2px solid rgba(200,169,110,.25);color:#c8a96e;font-weight:700;font-size:1.1rem;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:all .4s}
.cwp-ab-process-step:hover .cwp-ab-process-num{background:rgba(200,169,110,.18);border-color:#c8a96e;box-shadow:0 0 28px rgba(200,169,110,.2)}
.cwp-ab-process-content h3{font-family:'Bebas Neue',sans-serif;font-size:1.15rem;letter-spacing:.04em;color:#f0f0f5;margin:0 0 .5rem}
.cwp-ab-process-content p{font-size:.83rem;color:#9a9ab0;line-height:1.65;margin:0}

/* ══════════════════════════════════════════════════════════════
   STACK TECNOLÓGICO
══════════════════════════════════════════════════════════════ */
.cwp-ab-stack{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1280px;margin:0 auto;padding:0 2.5rem}
.cwp-ab-stack-card{background:linear-gradient(160deg,rgba(22,22,31,.9) 0%,rgba(22,22,31,.5) 100%);border:1px solid rgba(200,169,110,.06);border-radius:16px;padding:2rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;opacity:0;transform:translateY(20px)}
.cwp-ab-stack-card.cwp-ab-visible{opacity:1;transform:translateY(0)}
.cwp-ab-stack-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,169,110,.05) 0%,transparent 50%);opacity:0;transition:opacity .4s;pointer-events:none}
.cwp-ab-stack-card:hover{border-color:rgba(200,169,110,.25);transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.4),0 0 20px rgba(200,169,110,.05)}
.cwp-ab-stack-card:hover::before{opacity:1}
.cwp-ab-stack-icon{font-size:2rem;margin-bottom:1.25rem;position:relative;z-index:1}
.cwp-ab-stack-card h3{font-family:'Bebas Neue',sans-serif;font-size:1.15rem;letter-spacing:.05em;color:#c8a96e;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(200,169,110,.08);position:relative;z-index:1}
.cwp-ab-stack-card ul{list-style:none;padding:0;margin:0;position:relative;z-index:1}
.cwp-ab-stack-card li{font-size:.83rem;color:#9a9ab0;padding:.35rem 0;display:flex;align-items:center;gap:.5rem;transition:color .2s}
.cwp-ab-stack-card li:hover{color:#f0f0f5}
.cwp-ab-stack-card li::before{content:'';width:5px;height:5px;border-radius:50%;background:rgba(200,169,110,.5);flex-shrink:0}

/* ══════════════════════════════════════════════════════════════
   TIMELINE
══════════════════════════════════════════════════════════════ */
.cwp-ab-timeline{max-width:800px;margin:0 auto;padding:0 2.5rem;position:relative}
.cwp-ab-timeline-line{position:absolute;top:0;bottom:0;left:28px;width:2px;background:linear-gradient(180deg,transparent,rgba(200,169,110,.3) 10%,rgba(200,169,110,.3) 90%,transparent)}
.cwp-ab-tl-item{display:flex;gap:2rem;margin-bottom:3rem;position:relative;opacity:0;transform:translateX(-20px);transition:all .6s cubic-bezier(.4,0,.2,1)}
.cwp-ab-tl-item.cwp-ab-visible{opacity:1;transform:translateX(0)}
.cwp-ab-tl-dot{width:58px;height:58px;border-radius:50%;border:2px solid rgba(200,169,110,.3);background:#16161f;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;z-index:1;transition:all .35s}
.cwp-ab-tl-item:hover .cwp-ab-tl-dot{border-color:#c8a96e;box-shadow:0 0 24px rgba(200,169,110,.2);transform:scale(1.08)}
.cwp-ab-tl-content{background:#16161f;border:1px solid rgba(200,169,110,.06);border-radius:14px;padding:1.5rem;flex:1;transition:all .35s}
.cwp-ab-tl-item:hover .cwp-ab-tl-content{border-color:rgba(200,169,110,.2);box-shadow:0 8px 30px rgba(0,0,0,.3)}
.cwp-ab-tl-year{font-size:.75rem;color:#c8a96e;font-weight:600;letter-spacing:.1em;margin-bottom:.5rem;display:block}
.cwp-ab-tl-content h3{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.04em;color:#f0f0f5;margin-bottom:.35rem}
.cwp-ab-tl-content p{font-size:.85rem;color:#9a9ab0;line-height:1.7}

/* ══════════════════════════════════════════════════════════════
   CONTENIDO EDITOR
══════════════════════════════════════════════════════════════ */
.cwp-ab-editor{max-width:1280px;margin:0 auto;padding:0 2.5rem}
.cwp-ab-editor .entry-content{color:#9a9ab0;line-height:1.8;font-size:.95rem}
.cwp-ab-editor .entry-content h2{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:.04em;color:#f0f0f5;margin:2.5rem 0 1rem}
.cwp-ab-editor .entry-content p{margin-bottom:1rem}

/* ══════════════════════════════════════════════════════════════
   CTA FINAL
══════════════════════════════════════════════════════════════ */
.cwp-ab-cta{background:#050508;padding:7rem 2.5rem;text-align:center;position:relative;overflow:hidden}
.cwp-ab-cta-orb{position:absolute;width:500px;height:500px;bottom:-200px;left:50%;transform:translateX(-50%);background:radial-gradient(circle,rgba(200,169,110,.2) 0%,rgba(123,110,246,.08) 40%,transparent 70%);pointer-events:none;animation:abCtaPulse 8s ease-in-out infinite;filter:blur(40px)}
.cwp-ab-cta-orb--2{width:350px;height:350px;bottom:-100px;background:radial-gradient(circle,rgba(123,110,246,.15) 0%,rgba(200,169,110,.1) 40%,transparent 70%);animation:abCtaPulse 10s ease-in-out infinite 3s;filter:blur(30px)}
@keyframes abCtaPulse{0%,100%{opacity:.5;transform:translateX(-50%) scale(.9)}50%{opacity:1;transform:translateX(-50%) scale(1.15)}}
.cwp-ab-cta-content{position:relative;z-index:1}
.cwp-ab-cta-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,4.5vw,3.8rem);letter-spacing:.04em;color:#f0f0f5;margin-bottom:.75rem;line-height:1.05}
.cwp-ab-cta-title span{color:#c8a96e}
.cwp-ab-cta-desc{font-size:1rem;color:#9a9ab0;max-width:550px;margin:0 auto 2.5rem;line-height:1.7}
.cwp-ab-cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.cwp-ab-cta-trust{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:2.5rem;flex-wrap:wrap}
.cwp-ab-cta-trust span{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#9a9ab0}
.cwp-ab-cta-trust span::before{content:'✓';color:#c8a96e;font-weight:700}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════════════════════ */
@media(max-width:1100px){
  .cwp-ab-stack{grid-template-columns:repeat(2,1fr)}
  .cwp-ab-values{grid-template-columns:repeat(2,1fr)}
  .cwp-ab-process{grid-template-columns:repeat(2,1fr)}
  .cwp-ab-process-line{display:none}
}
@media(max-width:900px){
  .cwp-ab-about-grid{grid-template-columns:1fr;gap:3rem}
  .cwp-ab-values{grid-template-columns:1fr}
  .cwp-ab-stats{grid-template-columns:repeat(2,1fr)}
  .cwp-ab-hero{min-height:auto;padding:6rem 2rem 4rem}
}
@media(max-width:640px){
  .cwp-ab-stack{grid-template-columns:1fr}
  .cwp-ab-process{grid-template-columns:1fr}
  .cwp-ab-stats{grid-template-columns:1fr}
  .cwp-ab-hero-trust{flex-direction:column;gap:.75rem}
  .cwp-ab-hero-ctas{flex-direction:column;align-items:center}
  .cwp-ab-cta-btns{flex-direction:column;align-items:center}
}