/* ================= SERVICES ================= */
.services-section{
  width:100%;
  height:auto;
  padding:70px 0 70px;
  background:#ffffff;
  color:#092D69;
  overflow:hidden;
}

/* DIV INTERNA */
.services-inner{
  width:100%;
  max-width:90%;
  margin:0 auto;
}

/* ================= TOPO ================= */
.services-header{
  max-width:720px;
  margin-bottom:80px;
  text-align:left;

  opacity:0;
  transform:translateY(40px);

  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.22,.61,.36,1);
}

/* TOPO APARECE */
.services-section.show-header .services-header{
  opacity:1;
  transform:translateY(0);
}

.services-subtitle{
  display:inline-flex;
  align-items:center;
  padding:10px 18px;
  border-radius:30px;
  background:rgba(72,197,243,.15);
  color:#48C5F3;

  font-size:13px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;

  margin-bottom:20px;
}

.services-title{
  font-size:48px;
  font-weight:900;
  line-height:1.2;
  margin-bottom:24px;
  white-space:nowrap;
}

.services-desc{
  font-size:18px;
  line-height:1.7;
  max-width:720px;
  opacity:.9;
}

/* ================= CARDS ================= */
.services-cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:30px;
}

/* ✅ CARD COMO LINK (SEM AZUL / SEM SUBLINHADO) */
.service-card{
  display:block;
  text-decoration:none;
  color:inherit;

  background:#f6fbff;
  border-radius:22px;
  padding:36px 28px;
  position:relative;
  overflow:hidden;

  box-shadow:0 10px 30px rgba(0,0,0,.06);

  opacity:0;
  transform:translateY(50px);

  transition:
    opacity .7s ease,
    transform .7s cubic-bezier(.22,.61,.36,1),
    box-shadow .4s ease;
}

/* evita azul em visited */
.service-card:visited{ color:inherit; }
.service-card:hover,
.service-card:focus{ color:inherit; }

/* CARDS APARECEM */
.services-section.show-cards .service-card{
  opacity:1;
  transform:translateY(0);
}

/* DELAY PROGRESSIVO (6) */
.service-card:nth-child(1){ transition-delay:.12s; }
.service-card:nth-child(2){ transition-delay:.22s; }
.service-card:nth-child(3){ transition-delay:.32s; }
.service-card:nth-child(4){ transition-delay:.42s; }
.service-card:nth-child(5){ transition-delay:.52s; }
.service-card:nth-child(6){ transition-delay:.62s; }

/* HOVER */
.service-card:hover{
  transform:translateY(-6px);
  box-shadow:
    0 20px 45px rgba(9,45,105,.15),
    0 0 0 1px rgba(72,197,243,.25),
    0 0 30px rgba(72,197,243,.25);
}

/* ✅ Acessibilidade: foco visível sem “azul padrão” */
.service-card:focus-visible{
  outline:3px solid rgba(72,197,243,.45);
  outline-offset:4px;
}

/* ÍCONE */
.service-icon{
  width:56px;
  height:56px;
  border-radius:50%;
  background:#48C5F3;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
}

.service-icon i{
  color:#092D69;
  font-size:22px;
}

/* TEXTO */
.service-card h3{
  font-size:22px;
  font-weight:800;
  margin-bottom:14px;
}

.service-card p{
  font-size:16px;
  line-height:1.7;
  opacity:.9;
}

/* ================= RESPONSIVO ================= */
@media (max-width:1200px){
  .services-cards{
    grid-template-columns: repeat(2, 1fr);
  }

  .services-title{
    white-space:normal;
  }
}

@media (max-width:600px){
  .services-cards{
    grid-template-columns:1fr;
  }

  .services-title{
    font-size:38px;
  }

  .service-card{
    transform:translateY(30px);
  }
}


