    body {
      font-family: 'Segoe UI', sans-serif;
    }
    header {
      background-color: #004080;
      color: white;
    }
    header .navbar-brand img {
      height: 60px;
    }
    .carousel-item img {
      height: 400px;
      object-fit: cover;
    }
    .section-title {
      color: #004080;
      border-left: 4px solid #004080;
      padding-left: 10px;
      margin-top: 40px;
    }
    footer {
      background-color: #002a4d;
      color: white;
      padding: 20px 0;
    }
    footer a {
      color: #a7dfff;
      text-decoration: none;
    }
    footer a:hover {
      text-decoration: underline;
    }
.video-background-container {
  position: relative;
  height: 830px;
  overflow: hidden;
}

.video-background-container video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;
}

.video-overlay {
  position: relative;
  z-index: 2;
  height: 100%;
  background: rgba(0, 0, 0, 0.4); /* opcional: oscurecer para mejor contraste */
}

.servicio {
      text-align: left;
      padding: 20px;
    }

    .servicio i {
      font-size: 32px;
      color: #0047AB;
      float: right;
    }

    .btn-servicio {
      border: 2px solid #0047AB;
      border-radius: 20px;
      padding: 6px 20px;
      font-weight: 500;
      color: #0047AB;
    }

    .btn-servicio:hover {
      background-color: #0047AB;
      color: white;
    }

    .servicio h5 {
      font-weight: bold;
      margin-top: 15px;
    }


    .card {
  position: relative;
  height: 300px;
  overflow: hidden;
  display: flex;
  align-items: center;
  color: white;
  text-shadow: 1px 1px 3px black;
}

.card {
  position: relative;
  height: 300px;
  overflow: hidden;
  display: flex;
  align-items: center;
  color: white;
  text-shadow: 1px 1px 3px black;
}

.card::before {
  content: "";
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: inherit; /* toma el background-image del atributo inline */
  transition: transform 0.5s ease;
  z-index: 1;
}

.card:hover::before {
  transform: scale(1.05); /* solo la imagen hace zoom */
}

.card-content {
  position: relative;
  z-index: 2;
  padding: 20px;
  width: 100%;
}

.icon {
  position: absolute;
  top: 20px;
  right: 20px;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  text-align: center;
  line-height: 32px;
  font-size: 18px;
  z-index: 2;
}

.card:hover .icon {
  background: rgba(255, 255, 255, 0.6);
  color: black;
}

