/* Estilos generales */


h1 {
    font-family: 'Playfair Display', serif;
    font-size: 2rem; /* Ajusta según sea necesario */
    color: #fff; /* Color del texto */
    text-align: center; /* Centra el texto */
    margin: 10px 0; /* Espaciado superior e inferior */
    line-height: 1.5; /* Ajusta el interlineado */
    letter-spacing: 2px; /* Espaciado entre letras */
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); /* Sombra de texto */
}


.navbar {
    width: 100%; /* Asegura que el navbar ocupe todo el ancho */
    position: relative; /* Posicionamiento relativo */
}


body,html {
    margin: 0;
    padding: 0;
}

header {
    display: flex;
    flex-direction: column; /* Para apilar el logo y el h2 verticalmente */
    align-items: center; /* Centra horizontalmente el contenido */
    justify-content: center; /* Centra verticalmente el contenido */
    padding: 20px; /* Añadir espacio alrededor */
    background-color: #343a40; /* Fondo oscuro */
}
header h1 {
    margin: 0; /* Puedes ajustar aquí si es necesario */
}
.logo {
    width: 100px; /* Ancho del logo */
    height: auto; /* Mantiene la proporción */
}
.menu {
    display: flex;
    gap: 15px;
}
.menu a {
    color: #fff;
    text-decoration: none;
    font-size: 1rem;
}
.menu a:hover {
    text-decoration: underline;
}
main {
    padding: 20px;
    text-align: center;
}
.cta-button {
    background-color: #007bff;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
}
.cta-button:hover {
    background-color: #0056b3;
}

/* Estilos del slider */
.slider {
    position: relative;
    width: 100%;
    margin: 20px auto;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
#slider1 {
    height: 600px; /* Altura deseada */
}
#slider1 .slides {
    display: flex;
	justify-content: center;
	align-items: center;
    transition: transform 0.5s ease-in-out;
	
}
.slide {
    min-width: 100%; /* Una imagen a la vez */
    box-sizing: border-box;
}
#slider1 .slide img {
    height: 100%; /* Asegura que la imagen ocupe toda la altura del contenedor */
    width: 100%;
    object-fit: cover; /* Mantiene la proporción de la imagen */
}

/* Slider 2: Estilo ajustado para centrar imágenes */
#slider2 .slides {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

#slider2 .slide {
    display: flex;
    justify-content: center; /* Centra las imágenes horizontalmente */
    align-items: center; /* Centra las imágenes verticalmente */
    gap: 20px; /* Añade espacio entre las imágenes */
}

#slider2 .slide img {
    max-width: 45%; /* Ajusta el tamaño de las imágenes */
    margin: 0 10px; /* Añade margen para evitar que cubran los botones */
    object-fit: contain;
}

/* Botones de navegación */
.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    padding: 10px;
    cursor: pointer;
    border: none;
    border-radius: 50%;
    font-size: 24px;
}
.prev {
    left: 10px;
}
.next {
    right: 10px;
}

/* Paginación */
.pagination {
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    gap: 4px; /* Espaciado entre viñetas */
}
.pagination .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #bbb;
    border-radius: 50%;
    cursor: pointer;
}
.pagination .active {
    background-color: #717171;
}

/* Sección Sobre Nosotros */
.about-us {
    background-color: #fff;
    padding: 40px 20px;
    margin: 20px auto;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.about-us h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
}
.about-us .row {
    align-items: center;
}
.about-us .text {
    font-size: 1.2rem;
    line-height: 1.6;
}
.about-us .image {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

/* Sección Contacto */
.contact {
    background-color: #fff;
    padding: 40px 20px;
    margin: 20px auto;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
}
.contact h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
}
.contact p {
    font-size: 1.2rem;
    line-height: 1.6;
}



/* Footer */
footer {
    background-color: #343a40;
    color: #fff;
    text-align: center;
    padding: 10px 0;
}


.container-fluid {
    display: flex;
    flex-direction: column; 
    align-items: center; /* Centra horizontalmente el contenido */
    justify-content: center; /* Centra verticalmente el contenido */
    padding: 0; /* Añadir espacio alrededor */
    margin: 0 auto; 
    width: 100%;
    max-width: 1200px;
}

.carousel {
    width: 100%; /* Ocupa todo el ancho del contenedor */
    overflow: hidden;
}

.carousel-inner {
    width: 100%;
}

.carousel img {
    width: 100%;
    height: auto;
}
.carousel-inner .row > [class*='col-'] {
          padding: 0;
}

.carousel-item {
        transition: transform 0.3s ease-in-out; /* Cambia 0.3s para ajustar la velocidad */
    }
  /* Asegura que las imágenes ocupen el 100% del contenedor */
     
.carousel-control-next-icon,
.carousel-control-prev-icon {
    background-color: rgba(0, 0, 0, 0.5); /* Fondo semitransparente */
    width: 20px;
    height: 20px;
    border-radius: 80%; /* Forma circular */
    display: flex;
    align-items: center;
    justify-content: center;
    filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.5)); /* Sombra */
}

.carousel-control-next-icon::after,
.carousel-control-prev-icon::after {
    content: '';
    display: inline-block;
    border: solid white;
    border-width: 0 4px 4px 0;
    padding: 8px;
    transform: rotate(45deg); /* Flecha de estilo más elegante */
}

.carousel-control-next-icon::after {
    transform: rotate(-45deg); /* Girar para la flecha de avance */
}
.carousel-control-prev-icon::after {
    transform: rotate(135deg); /* Girar para la flecha de retroceso */
}