.navbar-transparente {
    background: rgba(255, 255, 255, 0.5); /* Fondo blanco con opacidad */
    -webkit-backdrop-filter: blur(10px); /* Para Safari y otros navegadores WebKit */
    backdrop-filter: blur(10px); /* Desenfoque del fondo */
    border: none;
    box-shadow: 0 2px 25px rgba(0, 0, 0, 0.1); /* Sombra suave para un poco de profundidad */
    border-radius: 0; /* O ajusta a tu gusto para bordes redondeados */
}

.navbar {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.navbar-brand {
    color: black !important; /* Letras de la marca en negro */
}
.navbar-dark .navbar-nav .nav-link {
    color: black; /* Letras de los enlaces en negro */
}
.navbar-dark .navbar-toggler {
    color: black;
    border-color: rgba(0, 0, 0, 0.6);
}
.navbar-oculta {
    transform: translateY(-100%); /* Desplaza la barra de navegación hacia arriba fuera de la vista */
    transition: transform 0.3s; /* Hace que el cambio sea suave */
}


.navbar-brand {
    margin-left: -150px; /* Ajusta este valor según sea necesario */
}

/* Cambia el color de la pestaña activa */
.nav-link.active {
    color: #C14444 !important; /* El uso de !important asegura que este estilo tenga prioridad */
}

/* Opcional: Cambia el color de la pestaña también al pasar el mouse */
.nav-link:hover {
    color: #C14444 !important; /* El uso de !important asegura que este estilo tenga prioridad */
}

#contact .d-flex {
    align-items: center; /* Alinea verticalmente los elementos del flex container */
}
.btn-custom {
    background-color: #C14444;
    color: white;
    border-radius: 50px; /* Gives a pill-like shape */
    border: none;
    padding: 1rem 2rem;
    font-size: 1rem;
    font-family: 'DM Sans', sans-serif;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.btn-custom:hover {
    background-color: white; /* Fondo blanco para el hover */
    color: #C14444; /* Color de texto igual al color de fondo original del botón */
    border: 2px solid #C14444; /* Borde rojo para el hover */
}

.col-md-9 h2 {
    font-family: 'DM Sans', sans-serif; /* Aplica la fuente DM Sans */
    font-size: 20px; /* Tamaño de fuente de 26px */
}

p {
    font-family: 'DM Sans', sans-serif;
    font-size: 20px;
}

.custom-paragraph {
    font-family: 'DM Sans', sans-serif;
    font-size: 20px;
}

#photo-galleries img {
    border-radius: 50%; /* Hace que las imágenes sean completamente redondas */
    transition: transform 0.3s ease-in-out; /* Animación para el efecto de hover */
}

#photo-galleries img:hover {
    transform: scale(1.05); /* Efecto de zoom al pasar el mouse por encima, si ya lo tienes en tus botones anteriores */
}

.rounded-circle {
    object-fit: cover; /* Asegura que la imagen cubra completamente el área sin estirarse */
    width: 200px; /* Ancho fijo */
    height: 200px; /* Altura fija para hacer el círculo perfecto */
}

#photo-galleries .text-center {
    display: flex;
    justify-content: center; /* Centra el botón horizontalmente */
    width: 100%; /* Asegura que el contenedor flex ocupe todo el ancho disponible */
}

#photo-galleries .rounded-circle {
    width: 300px; /* Tamaño fijo para ancho */
    height: 300px; /* Tamaño fijo para altura, igual que el ancho para hacerlo circular */
    border-radius: 50%; /* Hace que la imagen sea un círculo perfecto */
    display: block; /* Asegura que la imagen se trate como un bloque */
    margin: 0 auto; /* Centra la imagen horizontalmente */
    object-fit: cover; /* Asegura que la imagen cubra la dimensión definida sin distorsión */
}

#contacto {
    background: #f8f9fa;
    color: #333;
}

#contacto h2 {
    color: #C14444; /* Color rojo personalizado para el título */
    margin-bottom: 1rem;
}

#contacto p {
    margin-bottom: 0.5rem;
}

#contacto .form-control {
    background: none;
    border: none;
    border-radius: 0;
    border-bottom: 2px solid #ddd; /* Borde inferior para cada input */
    box-shadow: none; /* Remueve cualquier sombra */
    margin-bottom: 1rem; /* Espacio entre campos del formulario */
}

#contacto .form-control:focus {
    border-color: #C14444; /* Color de borde al enfocar */
    box-shadow: none; /* Remueve cualquier sombra al enfocar */
}

#contacto .btn-custom {
    background-color: #C14444; /* Color de fondo para el botón */
    color: white;
    border-radius: 20px; /* Bordes redondeados para un botón estilo 'pill' */
    border: none;
    padding: 10px 20px; /* Relleno para el botón */
    font-size: 1rem;
    text-transform: uppercase;
    transition: all 0.3s ease; /* Transición suave para el efecto hover */
}

#contacto .btn-custom:hover {
    background-color: white; /* Fondo blanco para el hover */
    color: #C14444; /* Color de texto igual al color de fondo original del botón */
    border: 2px solid #C14444; /* Agrega un borde del mismo color que el botón */
}

#map-container iframe {
    width: 100%;
    height: 300px; /* O puedes usar 'vh' para altura basada en el porcentaje de la altura de la ventana gráfica */
    border: none;
    border-radius: 10px; /* Bordes redondeados */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Sombra para darle profundidad */
}

@media (max-width: 768px) {
    .navbar {
        padding-top: 0.25rem;
        padding-bottom: 0.25rem;
    }
    .navbar-brand {
        margin-left: 0; /* Ajusta el margen del logo */
        width: 50%; /* Ajusta el tamaño del logo */
    }
    .navbar-dark .navbar-toggler {
        color: rgba(255, 255, 255, 0.5);
    }
    .custom-paragraph, p {
        font-size: 14px; /* Reduce el tamaño de fuente */
    }
    .btn-custom {
        padding: 0.5rem 1rem; /* Reduce el tamaño del botón */
        font-size: 0.8rem; /* Reduce el tamaño de la fuente del botón */
    }
    .rounded-circle {
        width: 150px; /* Reduce el tamaño de las imágenes redondas */
        height: 150px;
    }
    #contacto .form-control {
        margin-bottom: 0.5rem; /* Menos espacio entre campos */
    }
    #contacto .btn-custom {
        padding: 8px 16px; /* Ajusta el tamaño del botón */
    }
    .footer-col {
        margin-bottom: 1rem; /* Espacio adicional en el footer */
    }
}
@media (max-width: 576px) {
    .navbar-brand {
        width: 70%; /* Aumenta el tamaño del logo para dispositivos más pequeños */
    }
    #photo-galleries .rounded-circle {
        width: 100%; /* Hace que las imágenes sean completamente responsivas */
        height: auto;
    }
    #map-container iframe {
        height: 200px; /* Altura más pequeña para el mapa en dispositivos móviles */
    }
    footer .col-md-4, footer .col-12 {
        text-align: center; /* Alinea el texto al centro en el footer */
    }
}

.img-fluid {
    max-height: 100%; /* Permite que las imágenes sean completamente responsivas */
    width: auto;
    max-width: 100%;
}


footer {
    border-top: 1px solid #fff; /* Línea en la parte superior del footer */
}

footer h5 {
    color: white;
    margin-bottom: 0.5rem;
}

footer ul {
    padding: 0;
}

footer ul li {
    margin-bottom: 0.25rem;
}

footer ul li a {
    color: white;
    text-decoration: none; /* Elimina el subrayado de los enlaces */
    transition: color 0.3s ease-in-out;
}

footer ul li a:hover {
    color: #dddddd; /* Color ligeramente más claro al pasar el ratón */
}


footer .fab {
    margin-right: 0.5rem; /* Espacio entre el ícono y el texto */
}

footer .row {
    width: 100%;
    justify-content: center; /* Centra los elementos en la fila horizontalmente */
}

footer .col-12 {
    display: flex;
    justify-content: center; /* Asegura que el contenido de la columna esté centrado */
    align-items: center; /* Centra verticalmente en caso de que sea necesario */
}

/* Estilo para la imagen, asegurando que no sea más alta que un cierto valor y sea responsive */
.img-fluid {
    max-height: 400px; /* Cambia este valor según lo que necesites */
    width: auto; /* Mantiene la proporción de la imagen */
    max-width: 100%; /* Asegura que la imagen sea responsive */
}

/* Estilos adicionales para mejorar el responsive design */


/* Asegúrate de que la sección no esté detrás de la barra de navegación */
main {
    padding-top: 70px; /* Ajusta este valor según la altura de tu barra de navegación */
}
.kitchen-title {
    color: #C14444; /* o el color específico que quieras usar */
}

.caption-background {
    background-color: rgba(0, 0, 0, 0.6); /* Fondo negro con opacidad */
    padding: 1rem 2rem; /* Padding fijo para pantallas grandes */
    border-radius: 10px; /* Bordes redondeados */
    position: absolute; /* Posicionamiento absoluto */
    left: 50%; /* Centrado horizontal */
    transform: translateX(-50%); /* Alineación horizontal precisa */
    width: auto; /* Ancho automático basado en el contenido */
    max-width: 70%; /* Ancho máximo para evitar que el recuadro sea demasiado ancho */
    box-sizing: border-box; /* Asegura que el padding no afecte el ancho total */
    text-align: center; /* Alineación del texto al centro */
    bottom: 10%; /* Posición desde la parte inferior del contenedor */
}

.caption-background h1 {
    font-size: 1.25rem; /* Tamaño de fuente para pantallas grandes */
    color: white; /* Color de texto */
}

.caption-background{
    max-width: 90%;
}

.navbar-brand img{
    max-width: 100%;
    height: auto;
}

/* CSS Base para el logo */
.navbar-brand img {
    height: auto; /* Mantiene la proporción de la imagen */
    width: auto; /* Mantiene la proporción del ancho */
    max-height: 80px; /* Altura máxima para el logo en dispositivos de escritorio */
}

/* Media Queries para iPads Pro y Air */
@media only screen 
  and (min-device-width: 768px) 
  and (max-device-width: 1024px) 
  and (-webkit-min-device-pixel-ratio: 2) { /* Agregamos una consulta para la densidad de pixeles para iPads Pro y Air */

    .navbar-brand img {
        max-height: 60px; /* Ajusta la altura máxima del logo para iPads */
    }

    /* Aquí puedes agregar otros ajustes específicos para iPads Pro y Air si es necesario */
}

/* Ajustes adicionales para orientación portrait y landscape si es necesario */
@media only screen 
  and (min-device-width: 834px) /* iPad Pro 11-inch */
  and (max-device-width: 1112px) /* iPad Pro 10.5-inch */
  and (orientation: portrait) {
    .navbar-brand img {
        max-height: 50px; /* Ajusta según lo necesites para iPad Pro en portrait */
    }
}

@media only screen 
  and (min-device-width: 1024px) /* iPad Pro 12.9-inch */
  and (max-device-width: 1366px) 
  and (orientation: landscape) {
    .navbar-brand img {
        max-height: 70px; /* Ajusta según lo necesites para iPad Pro en landscape */
    }
}


/* Media queries para pantallas de tamaño mediano (tabletas) */
@media (max-width: 991px) and (min-width: 768px) {
    .caption-background {
        max-width: 80%; /* Ancho máximo más grande para tabletas */
    }
    .caption-background h1 {
        font-size: 1.75rem; /* Tamaño de fuente más grande para tabletas */
    }
}


navbar-brand img {
    height: auto; /* Mantiene la proporción de la imagen */
    max-width: 100%; /* Evita que el logo sea más grande que su contenedor */
    max-height: 80px; /* Altura máxima del logo para asegurar que no sea demasiado grande */
}

/* CSS para el carrusel */
.carousel-item img {
    width: 100%; /* Asegura que las imágenes se estiren a lo ancho del carrusel */
    height: auto; /* Mantiene la proporción de la imagen */
}

/* Media queries para asegurar la responsividad */
@media (max-width: 991px) {
    .navbar-brand img {
        max-height: 60px; /* Altura más pequeña del logo para pantallas medianas */
    }
}

@media (max-width: 767px) {
    .navbar-brand img {
        max-height: 40px; /* Altura más pequeña del logo para pantallas pequeñas */
    }
}

@media (max-width: 576px) {
    .navbar-brand img {
        max-height: 30px; /* Altura más pequeña del logo para teléfonos móviles */
    }
}

/* Media queries para pantallas pequeñas (teléfonos móviles) */
@media (max-width: 767px) {
    .caption-background {
        padding: 1rem; /* Padding reducido para pantallas pequeñas */
        max-width: 90%; /* Ancho máximo más grande para móviles */
        bottom: 15%; /* Aumenta la distancia desde la parte inferior */
    }
    .caption-background h1 {
        font-size: 1.5rem; /* Tamaño de fuente más grande para móviles */
    }
}

/* Asegúrate de que el recuadro no sea demasiado pequeño en pantallas extremadamente pequeñas */
@media (max-width: 480px) {
    .caption-background {
        padding: 0.5rem; /* Padding aún más reducido para pantallas muy pequeñas */
        max-width: 95%; /* Ancho máximo ajustado para pantallas muy pequeñas */
    }
    .caption-background h1 {
        font-size: 1.25rem; /* Tamaño de fuente ajustado para pantallas muy pequeñas */
    }
}


.navbar-brand img {
    max-height: 50px; /* Nuevo tamaño máximo del logo */
    width: auto; /* Asegúrate de que el ancho es automático para mantener la proporción */
}

/* Media queries para ajustar el tamaño del logo en diferentes puntos de ruptura */
@media (min-width: 992px) {
    .navbar-brand img {
        max-height: 60px; /* Tamaño ligeramente más grande para pantallas de escritorio */
    }
}

@media (max-width: 991px) {
    .navbar-brand img {
        max-height: 50px; /* Tamaño medio para tabletas */
    }
}

@media (max-width: 768px) {
    .navbar-brand img {
        max-height: 40px; /* Tamaño más pequeño para dispositivos móviles grandes */
    }
}

@media (max-width: 576px) {
    .navbar-brand img {
        max-height: 30px; /* Tamaño más pequeño para teléfonos móviles */
    }
}

/* Ajustes generales para el logo */
.navbar-brand img {
    height: auto;
    width: auto; /* Ajusta el ancho automáticamente para mantener la relación de aspecto */
    max-width: 100%; /* Evita que el logo sea más ancho que su contenedor */
    max-height: 50px; /* Altura máxima para el logo */
}

/* Media queries específicas para iPad Pro */
@media only screen 
  and (min-device-width: 834px) /* iPad Pro 11-inch */
  and (max-device-width: 1112px)
  and (-webkit-min-device-pixel-ratio: 2) /* Alta densidad de píxeles para Retina display */
  and (orientation: portrait) {
    .navbar-brand img {
        max-height: 40px; /* Ajusta la altura del logo para iPad Pro en modo portrait */
    }
}

@media only screen 
  and (min-device-width: 1024px) /* iPad Pro 12.9-inch */
  and (max-device-width: 1366px)
  and (-webkit-min-device-pixel-ratio: 2) /* Alta densidad de píxeles para Retina display */
  and (orientation: landscape) {
    .navbar-brand img {
        max-height: 40px; /* Ajusta la altura del logo para iPad Pro en modo landscape */
    }
}

.service-title {
    color: #C14444; /* El color de tu marca para el título */
    font-size: 2.5rem; /* Tamaño de fuente grande para el título */
    margin-bottom: 1rem; /* Espacio debajo del título */
}

.service-section {
    background-color: #f8f9fa; /* Fondo gris claro para la sección */
    margin-bottom: 2rem; /* Espacio debajo de cada sección */
}

/* Opcional: Añadir padding a la columna de texto para un mejor espaciado en pantallas grandes */
@media (min-width: 768px) {
    .service-section .col-md-6:first-child {
        padding-right: 2rem;
    }
}

.services-header {
    margin-top: -70px; /* Ajusta este valor según la altura de tu navbar */
    padding-top: 70px; /* Este relleno interno compensa el margen negativo */
    background: url('img/Fondo_Services.png') no-repeat center center;
    background-size: cover;
    padding: 5rem 0; /* Añade más padding para una sección más grande */
    position: relative;
    
}

.services-header::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5); /* Superposición negra con opacidad del 50% */
    z-index: 1;
}

.services-title-container {
    position: relative;
    z-index: 2; /* Asegúrate de que el título esté por encima de la superposición */
}

.services-title {
    font-size: 4rem; /* Tamaño grande de título */
    font-weight: bold; /* Fuente en negrita */
    letter-spacing: -2px; /* Espaciado entre letras para un estilo más apretado */
    margin-bottom: 0; /* Sin margen inferior */
}

/* Efecto Parallax (opcional) */
.parallax::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url('img/Fondo_Services.png');
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Esto es lo que crea el efecto parallax */
    z-index: 1;
}

/* Asegúrate de que el texto esté por encima de la superposición */
.services-title-container {
    position: relative;
    z-index: 2;
}

.services-header h1 {
    font-family: 'DM Sans', sans-serif; /* Asegurándonos de que la fuente sea coherente */
    color: #ffffff; /* Cambiando el color a blanco para que resalte sobre un fondo oscuro */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Añadiendo una sombra para mejorar la legibilidad */
    font-size: 4rem; /* Aumentando el tamaño del texto */
    font-weight: 700; /* Aumentando el peso de la fuente para que sea más audaz */
    letter-spacing: 0.1rem; /* Añadiendo espaciado entre letras para un toque más estilizado */
    margin-bottom: 1rem; /* Ajustando el margen inferior para un mejor espaciado */
}

.carousel-caption h1.display-4 {
    font-size: 2rem; /* Aumenta el valor actual para hacer el título más grande */
}

.carousel-caption .lead {
    font-size: 1.5rem; /* Aumenta el valor actual para hacer el subtítulo más grande */
}



/* Si deseas que el texto tenga un efecto más moderno, puedes añadir animación */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.services-header h1 {
    animation: fadeInDown 1s ease forwards; /* Aplica la animación al cargar la página */
}

.about-us img {
    /* Estilos para la imagen del presidente */
    max-width: 100%;
    border-radius: 5px;
}

.mission-vision {
    margin-top: 20px;
}

.custom-padding-top {
    padding-top: 4.5rem; /* Ajusta este valor según la altura de tu navbar */
}

.pt-custom {
    padding-top: 100px; /* Cambia este valor por la altura de tu barra de navegación */
}
.modal-content {
    padding: 1rem; /* Agrega un margen interno alrededor del contenido del modal */
    border-radius: 0.3rem; /* Bordes ligeramente redondeados para un aspecto moderno */
    border: none; /* Elimina el borde si no es necesario */
}

.modal-body img {
    width: 100%; /* Esto asegurará que la imagen se estire al ancho completo */
    height: auto; /* Esto mantendrá la relación de aspecto de la imagen */
    margin: 0 auto; /* Centra la imagen si no ocupa el ancho completo */
    display: block; /* Esto asegura que la imagen no tenga espacio adicional debajo */
}

/* Si el modal-header o modal-footer se van a utilizar */
.modal-header,
.modal-footer {
    padding: 0.5rem 1rem; /* Margen interno más pequeño para el encabezado y el pie de página */
}

/* Para el botón de cerrar si se utiliza */
.close {
    font-size: 1.5rem; /* Un tamaño más grande para el icono de cerrar */
    color: #000; /* Cambia esto según el color que prefieras */
}

/* Para el título del modal si se utiliza */
.modal-title {
    font-size: 1.25rem; /* Un tamaño de fuente adecuado para el título del modal */
    font-weight: bold; /* Fuente en negrita para el título */
}

.rounded-circle img {
    object-fit: cover; /* Asegura que la imagen cubra el área del círculo sin deformarse */
}

/* Estilo para las etiquetas de texto que aparecen sobre las imágenes */
.card-body .card-text {
    position: relative;
    top: -40px; /* Ajusta según el tamaño de tus imágenes */
    font-weight: bold;
    z-index: 10;
}

/* Ajuste para que la etiqueta de texto no sea tan ancha como la tarjeta */
.card-body {
    padding: 0;
}

/* Efecto hover para las imágenes de la galería */
#photo-galleries .gallery-item img {
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Suave transición para transform y sombra */
}

#photo-galleries .gallery-item:hover img {
    transform: scale(1.05); /* Aumenta ligeramente el tamaño */
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.3); /* Sombra para resaltar la imagen */
}

/* Puedes también querer cambiar la opacidad o el brillo al pasar el cursor */
#photo-galleries .gallery-item:hover img {
    filter: brightness(1.1); /* Hace la imagen un poco más brillante */
}
#photo-galleries .gallery-img {
    border: 4px solid #CCCCCC; /* Ajusta el color del marco según tu esquema de diseño */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra sutil para dar profundidad */
    border-radius: 8px; /* Bordes ligeramente redondeados para una estética suave */
    object-fit: cover; /* Esto asegurará que las imágenes cubran el área asignada sin estirarse */
    width: 100%; /* Esto asegura que la imagen se estire al ancho del contenedor */
    height: auto; /* Esto mantiene la proporción de la imagen */
}

.modal-body img {
    border-radius: 0; /* Esto asegura que no habrá bordes redondeados */
}

.modal-body .img-fluid {
    border-radius: 0; /* Rectangular, sin bordes redondeados */
}

/* Eliminar el efecto de hover de las imágenes en el modal */
.modal-body .img-fluid:hover {
    transform: none; /* Anula cualquier transformación */
    box-shadow: none; /* Anula cualquier sombra */
    cursor: default; /* Restablece el cursor a su estado predeterminado */
}


.hidden {
    display: none;
}

.notification {
    position: fixed;
    top: 20px;
    right: 20px;
    padding: 10px 20px;
    background-color: green;
    color: white;
    border-radius: 5px;
    z-index: 1000;
    display: none;
}
/******************************************************************/

