
html, body {
  height: 100%;
  margin: 0;
}

/* Estilos generales */
body {
  font-family: 'Barlow', sans-serif;
  margin: 0;
  padding: 0;
  background-image: url('../img/bg/bg-services.svg');
    background-size: cover;
  display: flex;
  flex-direction: column;
  min-height: 100vh; /* Asegura que el body tenga al menos la altura de la viewport */
  width: 100vw;
  overflow-x: hidden;
}
/* Services Section */
.container {
  flex: 1; /* Permite que el contenido principal se expanda para ocupar todo el espacio disponible */
  min-height: 100vh;
  height: auto;
  display: flex;
  justify-content: center;
}

.services{
	width: 100%;
	height: auto;
    display: flex;
    align-content: center;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 10vh;
}

.titleservices {
    text-align: center;
    padding-top: 6vh;
}

.titleservices h1 {
    color: #1c5285;
    font-family: 'Roboto', serif;
    font-size: 4vw;
}

.owl-carousel{
    margin-left: 19%;
	width: 60%;
	height: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(300px, 1fr));
  gap: 20px;
   place-items: center;
}

.owl-carousel .service-item {
    position: relative;
    height: 45vh;
    width: 300px;
}



.owl-carousel .service-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.owl-carousel .service-text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    transition: all 0.3s ease-in-out;
    height: 60%;
    text-align: center;
    font-size: 2.5rem;

}

.owl-carousel .service-text p{
    display: none;
}

.btn{
    background-color: #1c5285;
    width: 80%;
    margin-left: 10%;
    border-radius: 12px;
    text-decoration: none;
    color: white;
    text-align: center;
}

.btn:hover{
    text-decoration: none;
    color: white;
}

.owl-carousel .service-item:hover .service-text {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: all 0.6s ease-in-out;
}

.owl-carousel .service-item:hover .service-text .btn {
    display: block;
}

.owl-carousel .service-text .btn {
    display: none;
}

/* Modal Styles */
.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: 
 rgba(0, 0, 0, 0.4);
}

.modal-content {
    background-color: 
 #4caf50;
    margin: 10% auto;
    padding: 20px;
    border-radius: 12px;
    width: 50%;
    font-family: 'Barlow', sans-serif;
    color: white;
    font-weight: bold;
    font-size: 1.2em;
    width: 40vw;
    height: 70vh;
    overflow-y: auto;
    text-align: center;
}

.modal-content h4{
    font-size: 3.5vw;
    margin-top: 2%;
}

.modal-content p{
    font-size: 1.5vw;
    text-align: justify;
    margin-left: 5%;
    margin-right: 5%;
}
.text-white{
    display: hidden;
}

.close{
    display: hidden;
}

.ver {
    display: block;
}

@media (max-width: 900px) {

.titleservices h1 {
    font-size: 12vw;
}

.owl-carousel{
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}

.modal-content {
    margin: 20% auto;
    width: 70vw;
}

.modal-content h4{
    font-size: 6vw;
}

.modal-content p{
    font-size: 3.5vw;
}

.owl-carousel{
    margin-left: 10%;
    width: 80%;
    height: 100%;
  display: grid;
  gap: 20px;
   place-items: center;
}

}