.concepts-hero{
  position: relative;
  padding: 5rem 2rem 3rem;
  overflow: hidden;
  background:
  radial-gradient(circle at top, rgba(20,30,60,0.25), rgba(10,15,30,0.98));
}

.concepts-hero-bg{
  position:absolute;
  inset:0;
  background-image:url("/static/img/earvu-concepts-hero.jpg");
  background-size:cover;
  background-position:center;
  opacity:0.14;
}

.concepts-hero-inner{
  position:relative;
  z-index:2;
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:2rem;
  align-items:center;
}

.concepts-hero-chips{
  display:flex;
  gap:.6rem;
  flex-wrap:wrap;
  margin-top:1.2rem;
}

.concept-chip{
  padding:.45rem .7rem;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
  font-size:.9rem;
}

.concepts-hero-card{
  border-radius:20px;
  padding:1.5rem;
  background:
  radial-gradient(140% 140% at 10% 0%, rgba(255,255,255,0.07), transparent 60%),
  linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.01));
  box-shadow:
  0 35px 70px rgba(0,0,0,.45),
  inset 0 0 0 1px rgba(255,255,255,.06);
}

.concepts-hero-card-title{
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.9;
}

.concepts-hero-flow{
  margin-top:.8rem;
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
  align-items:center;
  font-weight:600;
}

.flow-dot{
  opacity:.5;
}

.concepts-hero-note{
  margin-top:1rem;
  color:rgba(255,255,255,.75);
  line-height:1.45;
}

@media (max-width: 980px){
  .concepts-hero-inner{
    grid-template-columns:1fr;
  }
}

.concepts-grid{
  padding: 4rem 2rem 5rem;
  background:
  radial-gradient(
    circle at top,
    rgba(79,140,255,0.12),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(10,15,30,0.98),
    rgba(10,15,30,1)
  );
}

.concepts-inner{
  max-width:1200px;
  margin:0 auto;
}

.concepts-inner h2{
  margin:0 0 2rem 0;
  color:#fff;
  font-size: clamp(1.9rem,3vw,2.4rem);
  text-align:center;
}

.concepts-cards{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px,1fr));
  gap:1.2rem;
}

.concept-card{
  padding:1.3rem 1.3rem;
  border-radius:18px;
  background:
  radial-gradient(140% 140% at 10% 0%, rgba(255,255,255,0.07), transparent 60%),
  linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.01));
  box-shadow:
  0 25px 60px rgba(0,0,0,0.45),
  inset 0 0 0 1px rgba(255,255,255,0.06);
  transition: transform .25s ease, box-shadow .25s ease;
}

.concept-card:hover{
  transform: translateY(-4px);
  box-shadow:
  0 35px 70px rgba(0,0,0,0.55),
  inset 0 0 0 1px rgba(255,255,255,0.10);
}

.concept-card h3{
  margin:0 0 .4rem 0;
  color:#fff;
  font-size:1.05rem;
}

.concept-card p{
  margin:0;
  color: rgba(255,255,255,0.72);
  line-height:1.5;
  font-size:0.95rem;
}


/* =====================================================
   EARVU PIPELINE FLOW
   ===================================================== */

.concepts-workflow{
  padding:4rem 2rem 5rem;
  background:
  linear-gradient(
    180deg,
    rgba(10,15,30,0.98),
    rgba(10,15,30,1)
  );
}

.concepts-workflow-inner{
  max-width:1100px;
  margin:0 auto;
  text-align:center;
}

.concepts-workflow-intro{
  margin-top:.6rem;
  color:rgba(255,255,255,.72);
  line-height:1.55;
}

/* Pipeline */

.earvu-flow{
  margin-top:2.2rem;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:.9rem;
}

/* Step */

.earvu-flow-step{
  position:relative;

  padding:.75rem 1.1rem;

  border-radius:14px;

  font-weight:600;
  font-size:.95rem;

  background:
  radial-gradient(140% 140% at 10% 0%, rgba(255,255,255,0.07), transparent 60%),
  linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.01));

  box-shadow:
  0 18px 40px rgba(0,0,0,.45),
  inset 0 0 0 1px rgba(255,255,255,.08);
}

/* Final step highlight */

.earvu-flow-step-final{
  box-shadow:
  0 20px 45px rgba(0,0,0,.55),
  inset 0 0 0 1px rgba(255,155,63,0.45);
}

/* Connector */

.earvu-flow-connector{
  width:70px;
  height:3px;
  border-radius:999px;

  background:
  linear-gradient(
    90deg,
    #4f8cff,
    #ff9b3f
  );

  opacity:.9;

  box-shadow:
  0 0 8px rgba(79,140,255,.35),
  0 0 10px rgba(255,155,63,.25);
}

/* Label */

.earvu-flow-label{
  color:#fff;
  white-space:nowrap;
}


/* Responsive */

@media (max-width:900px){

  .earvu-flow{
    gap:.5rem;
  }

  .earvu-flow-connector{
    width:30px;
  }

}

/* =====================================================
   EarVu Flow — subtle energy animation
   ===================================================== */

/* Animación base: desplaza el gradiente */
@keyframes earvu-flow-energy {
  0%   { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

/* Conectores animados */
.earvu-flow-connector{
  width:70px;
  height:3px;
  border-radius:999px;

  /* gradiente EarVu ampliado para animar */
  background: linear-gradient(
    90deg,
    #4f8cff 0%,
    #6fa7ff 25%,
    #ff9b3f 50%,
    #6fa7ff 75%,
    #4f8cff 100%
  );

  background-size: 200% 100%;
  background-position: 0% 50%;

  opacity:.9;

  box-shadow:
    0 0 8px rgba(79,140,255,.35),
    0 0 10px rgba(255,155,63,.25);

  /* animación sutil */
  animation: earvu-flow-energy 6s linear infinite;
}

/* suavizar animación al pasar el ratón por el pipeline */
.earvu-flow:hover .earvu-flow-connector{
  animation-duration: 3.5s;
}

/* accesibilidad: respetar reduced motion */
@media (prefers-reduced-motion: reduce){
  .earvu-flow-connector{
    animation: none;
    background-position: 100% 50%;
  }
}

/* responsive */
@media (max-width:900px){

  .earvu-flow-connector{
    width:30px;
  }

}

/* =====================================================
   Desktop optimization for EarVu pipeline
   ===================================================== */

.earvu-flow{
  margin-top:2rem;
  display:flex;
  flex-wrap:nowrap;
  justify-content:center;
  align-items:center;
  gap:.6rem;
}

/* pasos más compactos */

.earvu-flow-step{
  padding:.55rem .9rem;
  font-size:.9rem;
}

/* conectores más cortos */

.earvu-flow-connector{
  width:45px;
}

/* responsive tablet */

@media (max-width:1100px){

  .earvu-flow{
    flex-wrap:wrap;
    gap:.8rem;
  }

  .earvu-flow-connector{
    display:none;
  }

}

.earvu-flow-step-final{
  border:1px solid rgba(255,155,63,0.6);

  background:
  linear-gradient(
    180deg,
    rgba(255,155,63,0.12),
    rgba(255,255,255,0.02)
  );

  box-shadow:
  0 0 10px rgba(255,155,63,.25),
  inset 0 0 0 1px rgba(255,155,63,.25);
}

/* =====================================================
   EarVu ecosystem card
   ===================================================== */

.earvu-ecosystem{
  margin-top:3.5rem;

  padding:2.2rem 2rem;

  border-radius:22px;

  background:
  radial-gradient(
    120% 120% at 10% 0%,
    rgba(79,140,255,0.12),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(255,255,255,0.05),
    rgba(255,255,255,0.01)
  );

  box-shadow:
  0 40px 80px rgba(0,0,0,0.45),
  inset 0 0 0 1px rgba(255,255,255,0.06);

  text-align:center;
}

.earvu-ecosystem-steps{
  margin-top:1.4rem;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:.8rem;
}

.earvu-ecosystem-step{

  padding:.6rem .9rem;

  border-radius:12px;

  background:rgba(255,255,255,0.05);

  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);

  font-weight:600;
}

/* =====================================================
   Ecosistema dinámico de EarVu
   ===================================================== */

.earvu-ecosystem{

  margin-top:3.5rem;

  padding:2.4rem 2rem;

  border-radius:22px;

  background:
  radial-gradient(
    120% 120% at 10% 0%,
    rgba(79,140,255,0.12),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(255,255,255,0.05),
    rgba(255,255,255,0.01)
  );

  box-shadow:
  0 40px 80px rgba(0,0,0,0.45),
  inset 0 0 0 1px rgba(255,255,255,0.06);

  text-align:center;
}

.earvu-ecosystem h3{
  margin:0 0 .6rem 0;
  font-size:1.3rem;
  color:#fff;
}

.earvu-ecosystem-intro{
  color:rgba(255,255,255,.72);
  max-width:720px;
  margin:0 auto;
  line-height:1.55;
}

.earvu-ecosystem-steps{

  margin-top:1.6rem;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:.8rem;
}

.earvu-ecosystem-step{

  display:flex;
  align-items:center;

  gap:.45rem;

  padding:.55rem .9rem;

  border-radius:12px;

  background:rgba(255,255,255,0.05);

  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);

  font-weight:600;
}

.eco-step-number{

  display:inline-flex;

  align-items:center;
  justify-content:center;

  width:22px;
  height:22px;

  border-radius:999px;

  font-size:.8rem;

  background:rgba(255,255,255,0.12);
}

.eco-step-final{

  border:1px solid rgba(255,155,63,0.5);

  box-shadow:
  0 0 10px rgba(255,155,63,.25),
  inset 0 0 0 1px rgba(255,155,63,.2);
}

/* =====================================================
   Ecosistema dinámico de EarVu (layout visual)
   ===================================================== */

.earvu-ecosystem{
  margin-top:3rem;
}

.earvu-ecosystem-inner{

  display:grid;
  grid-template-columns: 1fr 1fr;

  gap:2.5rem;

  align-items:center;

  padding:2.5rem;

  border-radius:22px;

  background:
  radial-gradient(
    120% 120% at 10% 0%,
    rgba(79,140,255,0.12),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(255,255,255,0.05),
    rgba(255,255,255,0.01)
  );

  box-shadow:
  0 40px 80px rgba(0,0,0,0.45),
  inset 0 0 0 1px rgba(255,255,255,0.06);
}

.earvu-ecosystem-text h3{
  margin:0 0 .6rem 0;
  font-size:1.4rem;
}

.earvu-ecosystem-intro{
  margin-bottom:1.4rem;
  color:rgba(255,255,255,.75);
  line-height:1.55;
}

/* imagen */

.earvu-ecosystem-media img{

  width:100%;

  border-radius:18px;

  box-shadow:
  0 30px 80px rgba(0,0,0,0.6),
  0 0 0 1px rgba(255,255,255,0.08);
}

/* responsive */

@media (max-width:980px){

  .earvu-ecosystem-inner{

    grid-template-columns:1fr;

  }

}

/* =========================================
   Divider separación flujo / ecosistema
   ========================================= */

.concepts-workflow .section-divider{
  margin: 3.5rem auto 2.5rem auto;
  max-width: 900px;
}

.concepts-workflow{
  padding: 4rem 2rem 3rem;
}

/* =========================================
   Concept cards destacadas
   ========================================= */

.concept-card-highlight{

  position: relative;

  background:
  radial-gradient(
    120% 120% at 10% 0%,
    rgba(79,140,255,0.28),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(255,255,255,0.08),
    rgba(255,255,255,0.02)
  );

  box-shadow:
  0 40px 90px rgba(0,0,0,0.65),
  inset 0 0 0 1px rgba(255,255,255,0.10);

}

/* halo EarVu */

.concept-card-highlight::after{

  content:"";

  position:absolute;

  inset:-1px;

  border-radius:inherit;

  background:linear-gradient(
    90deg,
    rgba(79,140,255,0.6),
    rgba(240,150,60,0.6)
  );

  opacity:.35;

  filter: blur(10px);

  z-index:-1;

}

/* título destacado */

.concept-card-highlight h3{

  background: linear-gradient(
    90deg,
    #8fb9ff,
    #f2a65a
  );

  background-clip: text;
  -webkit-background-clip: text;

  color: transparent;
  -webkit-text-fill-color: transparent;

}

/* =========================================
   CTA final EarVu Concepts
   ========================================= */

.concepts-cta{
  position: relative;
  margin-top: 0;
  padding: 3.5rem 2rem 4.5rem;
  background:
  radial-gradient(
    circle at top,
    rgba(79,140,255,0.18),
    transparent 60%
  ),
  linear-gradient(
    180deg,
    rgba(8,12,22,0.98),
    rgba(8,12,22,1)
  );
  text-align:center;
  border-top:1px solid rgba(255,255,255,0.06);
}

.concepts-cta-inner{
  max-width: 900px;
  margin: 0 auto;
}

.concepts-cta h2{
  font-size: clamp(2rem,3.5vw,2.6rem);
  margin-bottom: 1rem;
  color:#fff;
}

.concepts-cta-text{
  max-width: 720px;
  margin: 0 auto 1.8rem auto;
  color: rgba(255,255,255,.75);
  line-height:1.6;
  font-size:1.05rem;
  opacity:.9;
}

.concepts-cta-actions{
  display:flex;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
}

.concepts-cta-link{
  color:#8fb9ff;
  text-decoration:none;
  font-weight:500;
}

.concepts-cta-link:hover{
  text-decoration:underline;
}

.concepts-cta::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("/static/img/earvu-cta-bg.jpg");
  background-size:cover;
  background-position:center;
  opacity:.10;
  pointer-events:none;
}

.concepts-cta .evu-blue{
  box-shadow:
  0 10px 30px rgba(79,140,255,.35),
  0 0 0 1px rgba(79,140,255,.25);
}



/* =========================================
   EarVu spectrum accent (CTA)
   ========================================= */

.concepts-cta::after{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:180px;
  height:3px;
  border-radius:3px;
  background:linear-gradient(
    90deg,
    rgba(79,140,255,0),
    rgba(79,140,255,.9),
    rgba(240,150,60,.9),
    rgba(240,150,60,0)
  );
  filter:blur(.3px);
  opacity:.8;
}

.concept-card {
  scroll-margin-top: 120px;
}