.anc-data-clean,
.anc-data-clean *{
  box-sizing:border-box;
}

.anc-data-clean{
  width:100%;
  overflow:hidden;
  padding:100px 5%;
  background:
    radial-gradient(circle at 8% 18%,var(--anc-dc-blue-soft, rgba(31,98,174,.08)),transparent 26%),
    radial-gradient(circle at 92% 80%,var(--anc-dc-green-soft, rgba(14,113,57,.08)),transparent 28%),
    linear-gradient(120deg,var(--anc-dc-bg-start, #ffffff) 0%,var(--anc-dc-bg-mid, #f8fbff) 52%,var(--anc-dc-bg-end, #edf6ff) 100%);
}

.anc-data-clean-wrap{
  max-width:1480px;
  margin:auto;
}

.anc-data-clean-head{
  max-width:980px;
  margin:0 auto 58px;
  text-align:center;
}

.anc-data-clean-head span{
  display:block;
  color:#0E7139;
  font-size:14px;
  font-weight:900;
  letter-spacing:5px;
  margin-bottom:16px;
}

.anc-data-clean-head span:after{
  content:"";
  display:block;
  width:72px;
  height:3px;
  margin:14px auto 0;
  border-radius:30px;
  background:linear-gradient(90deg,#1F62AE,#0E7139);
}

.anc-data-clean-head h2{
  margin:0;
  color:#08264f;
  font-size:60px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-1.2px;
}

.anc-data-clean-head h2 strong{
  color:#0E7139;
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
}

.anc-data-clean-head p{
  max-width:760px;
  margin:22px auto 0;
  color:#334963;
  font-size:22px;
  line-height:1.65;
  font-weight:500;
}

.anc-data-clean-cards{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

.anc-data-clean-cards article{
  position:relative;
  min-height:250px;
  padding:30px 28px;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(31,98,174,.08);
  box-shadow:0 20px 55px rgba(8,38,79,.08);
  overflow:hidden;
  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.22,1,.36,1),
    box-shadow .35s ease;
}

.anc-data-clean-cards article:before{
  content:"";
  position:absolute;
  left:0;
  top:54px;
  width:4px;
  height:86px;
  border-radius:30px;
  background:#0E7139;
}

.anc-data-clean-cards article:hover{
  transform:translateY(-7px);
  box-shadow:0 30px 80px rgba(8,38,79,.13);
}

.anc-data-clean-icon{
  width:66px;
  height:66px;
  margin-bottom:20px;
  border-radius:50%;
  background:#fff;
  color:#0E7139;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  font-weight:900;
  box-shadow:0 14px 35px rgba(8,38,79,.12);
}

.anc-data-clean-cards h3{
  margin:0 0 14px;
  color:#08264f;
  font-size:20px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:-.3px;
}

.anc-data-clean-cards p{
  margin:0;
  color:#465d75;
  font-size:15px;
  line-height:1.7;
}

/* ANIMACIÓN DE ENTRADA */
.anc-data-clean-head span,
.anc-data-clean-head h2,
.anc-data-clean-head p,
.anc-data-clean-cards article{
  opacity:0;
  transform:translateY(38px);
  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.22,1,.36,1);
}

.anc-data-clean.is-inview .anc-data-clean-head span,
.anc-data-clean.is-inview .anc-data-clean-head h2,
.anc-data-clean.is-inview .anc-data-clean-head p,
.anc-data-clean.is-inview .anc-data-clean-cards article,
.elementor-editor-active .anc-data-clean .anc-data-clean-head span,
.elementor-editor-active .anc-data-clean .anc-data-clean-head h2,
.elementor-editor-active .anc-data-clean .anc-data-clean-head p,
.elementor-editor-active .anc-data-clean .anc-data-clean-cards article{
  opacity:1;
  transform:translateY(0);
}

.anc-data-clean.is-inview .anc-data-clean-head h2{
  transition-delay:.12s;
}

.anc-data-clean.is-inview .anc-data-clean-head p{
  transition-delay:.22s;
}

.anc-data-clean.is-inview .anc-data-clean-cards article:nth-child(1){
  transition-delay:.32s;
}

.anc-data-clean.is-inview .anc-data-clean-cards article:nth-child(2){
  transition-delay:.42s;
}

.anc-data-clean.is-inview .anc-data-clean-cards article:nth-child(3){
  transition-delay:.52s;
}

.anc-data-clean.is-inview .anc-data-clean-cards article:nth-child(4){
  transition-delay:.62s;
}

@media(max-width:1100px){
  .anc-data-clean-cards{
    grid-template-columns:1fr 1fr;
  }

  .anc-data-clean-head h2{
    font-size:58px;
  }
}

@media(max-width:768px){
  .anc-data-clean{
    padding:70px 22px;
  }

  .anc-data-clean-head h2{
    font-size:44px;
    letter-spacing:-.8px;
  }

  .anc-data-clean-head p{
    font-size:17px;
  }

  .anc-data-clean-cards{
    grid-template-columns:1fr;
  }

  .anc-data-clean-cards article{
    min-height:auto;
  }
}

/* v0.4.7: mantener diseño original sin altura exagerada.
   Padding superior/inferior ahora son px, laterales %/px. */
.elementor-widget-anc_data_clean .anc-data-clean{
  height:auto !important;
  max-height:none !important;
}
@media(max-width:768px){
  .elementor-widget-anc_data_clean .anc-data-clean-cards article{
    min-height:auto;
  }
}
