@charset "utf-8";
/* CSS Document */
body {
  font-family: 'Montserrat', sans-serif;
}
* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}
.row {
    display: flex;
    flex-wrap: wrap; /* Importante para que los elementos pasen a la siguiente línea */
    /* Este es el código que soluciona la alineación de las filas */
    align-items: stretch; /* Asegura que todos los elementos de la fila tengan la misma altura */
    margin: 0 -10px; /* Ajusta los márgenes si tu sistema de columnas lo necesita */
}
.row::after {
    content: "";
    clear: both;
    display: table;
}

[class*="col-"] {
    float: left;
    padding: 10px;
}

.checked {
    color: orange;
}

.fcc-btn {
    display: inline-block;
    padding: 15px 25px;
    font-size: 24px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    outline: none;
    color: #fff;
    background-color: #4CAF50;
    border: none;
    border-radius: 15px;
    box-shadow: 2px 2px #999; /* Añadí 'px' para la sombra */
}

.fcc-btn:hover {
    background-color: #223094;
}

.accordion {
    background-color: #990000;
    color: #444;
    cursor: pointer;
    padding: 10px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    transition: 0.4s;
}

.active, .accordion:hover {
    background-color: #ccc;
}

.panel {
    padding: 0;
    display: none;
    background-color: #fafafa;
    overflow: hidden;
}
.responsive-button {
    /* Diseño básico */
    display: inline-block; /* Para que padding funcione y no ocupe todo el ancho */
    background-color: #007bff; /* Color de fondo */
    color: white; /* Color del texto */
    text-decoration: none; /* Eliminar subrayado si es un <a> */
    border-radius: 8px; /* Bordes redondeados */
    cursor: pointer; /* Cursor de mano */
    transition: background-color 0.3s ease, transform 0.2s ease; /* Transiciones suaves */
    text-align: center; /* Centrar el texto dentro del botón */

    /* Propiedades clave para la responsividad */
    font-size: 1.1rem; /* Tamaño de fuente relativo al elemento raíz (HTML) */
    padding: 0.8em 1.8em; /* Padding relativo al tamaño de la fuente del propio botón */
    min-width: 150px; /* Ancho mínimo para que no sea diminuto en móviles */
    max-width: 90%; /* Ancho máximo, para que no se extienda demasiado en pantallas grandes */
    box-sizing: border-box; /* Asegura que padding y border no aumenten el ancho total */
}

/* Efectos hover */
.responsive-button:hover {
    background-color: #0056b3;
    transform: translateY(-2px); /* Pequeño efecto de elevación */
}

/* Media Queries para ajustes finos en diferentes tamaños de pantalla */

/* Para pantallas más pequeñas (móviles) */
@media (max-width: 600px) {
    .responsive-button {
        font-size: 1rem; /* Ligeramente más pequeño para móviles */
        padding: 0.7em 1.5em; /* Ajustar padding */
        width: 100%; /* Ocupa todo el ancho disponible en pantallas pequeñas */
        max-width: 250px; /* Pero con un límite si el contenedor es muy grande */
        display: flex; /* Para que ocupe su propia línea si hay varios */
        margin-bottom: 15px; /* Espacio si hay varios botones */
		
    }
}

/* Para pantallas medianas (tabletas) */
@media (min-width: 601px) and (max-width: 900px) {
    .responsive-button {
        font-size: 1.2rem; /* Un poco más grande para tabletas */
        padding: 0.9em 2em; /* Ajustar padding */
    }
}

/* Para pantallas grandes (escritorio), se mantienen los estilos base o se refinan */
@media (min-width: 901px) {
    .responsive-button {
        font-size: 1.3rem; /* Más grande en escritorio para mejor legibilidad */
        padding: 1em 2.2em; /* Más padding */
    }
}
.bttn {
    position: relative;
    cursor: pointer;
    color: #fff;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background: #ab2f52;
    padding: 12px 45px;
    font-size: 18px;
    border-radius: 30px;
    margin-top: 30px;
    border: none;
}

p {
  font-size: 1rem; /* Párrafo relativo al tamaño base */
  line-height: 1.6; /* Altura de línea */
  margin-bottom: 20px; /* Espacio inferior */
  text-align: justify; /* Justificación del texto */
}

@media (max-width: 600px) {
  p {
    font-size: 1rem; /* Ajuste para móviles */
  }
}

h1, h2, h3, h4, h5, h6 {
    text-align: center;
    padding: 10px;
}

h1 {
    font-size: clamp(24px, 5vw, 36px); /* Título responsive */
    color: #444;
}

h2 {
    font-size: 24px;
    color: #900;
}

h3 {
    font-size: 22px;
}

h4 {
    font-size: 20px;
}

h5 {
    font-size: 17px;
}

h6 {
    font-size: 13px;
}

.imagen {
    width: 420px;
    max-width: 100%;
    height: auto;
    border-radius: 0;
    box-shadow: 0 1px 33px rgba(0,0,0,0.12), 0 1px 22px rgba(0,0,0,0.24);
}

@media only screen and (max-width: 480px) {
    .imagen {
        width: 100%;
    }
}

.img_v {
    height: 180px; /* O el valor que mejor se adapte a la mayoría de tus imágenes */
    object-fit: cover; /* Recorta la imagen si es necesario para llenar el espacio sin deformarla */
    width: 100%; /* Asegura que la imagen llene el ancho de la columna */
}

.img_carta {
    width: 100%;
    height: 220px;
}

@media only screen and (max-width: 480px) {
    .img_carta {
        width: 100%;
    }
}

.img_2 {
    width: 100%;
    height: auto;
}

.img_3 {
    width: 200px;
    height: 200px;
}

.img_l {
    float: left;
    margin: 0 15px 5px 0;
    width: 100%;
    max-width: 106px;
    font-size: 0.5em;
    max-height: 173px;
    height: 173px;
}



.container {
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  text-align: justify;
  
}

/* Estilos para dispositivos móviles */
@media (max-width: 600px) {
  .container {
    padding: 10px;
  }

  .header, .content, .footer {
    width: 100%;
    margin: 0;
  }
}

/* Estilos para tabletas */
@media (min-width: 601px) and (max-width: 1024px) {
  .container {
    padding: 15px;
  }

  .header, .content, .footer {
    width: 100%;
    margin: 0;
  }
}

/* Estilos para ordenadores */
@media (min-width: 1025px) {
  .container {
    max-width: 1200px;
    margin: 0 auto;
  }

  .header, .content, .footer {
    width: 100%;
    margin: 0;
  }
}

.RCarta {
    width: 40%;
    max-width: 180px;
    height: 160px;
    padding: 15px;
    border-radius: 18px;
}

.Seleccionada {
    border: solid 2px red;
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 10px; /* Añadido 'px' */
}

li {
    padding: 2px;
    margin-bottom: 10px;
    color: #444;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    line-height: 1.6;
}

.menu li:hover {
    background-color: #0099cc;
}

.column {
    
    padding: 0;
    color: #444;
    text-align: center;
}
.column p{
		
	  text-align: center;
	  	}
.column2 {
    padding: 0;
    text-align: center;
    color: #fff;
    background-color: #990000;
}

.column3 {
    background-color: #FCC;
    padding: 8px;
    color: #444;
    text-align: center;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    border-radius: 15px;
    font-size: 18px;
}

.column4 {  
  padding: 20px;
  color: #f3f3f3;
  text-align: center;
    background-color:#000000;
}

.column5 {
    width: 30%;
    padding: 10px;
    border: 1px solid black;
    display: flex;
    flex-wrap: wrap;
}

header {
    padding: 30px 0;
    text-align: center;
    color: #555;
    background-color: #eaeaea;
    background-image: url(imagenes/sky-g1400a1c39_1280.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.footer-nav {
    list-style-type: none;
    padding: 0;
    text-align: center;
}

.footer-nav li {
    display: inline;
    margin: 0 10px;
}

.footer-nav a {
    text-decoration: none;
    color: #000; /* Cambia el color según tu diseño */
}

.footer-nav a:hover {
    text-decoration: underline;
}

/* For mobile phones: */
[class*="col-"] {
    width: 100%;
}

@media only screen and (min-width: 600px) {
    /* For tablets: */
    .col-s-1 {width: 8.33%;}
    .col-s-2 {width: 16.66%;}
    .col-s-3 {width: 25%;}
    .col-s-4 {width: 33.33%;}.col-s-4 {
    /* Aquí va tu ancho, por ejemplo: width: 33.333%; */
    padding: 0 10px; /* Agrega el relleno para que las columnas no se peguen */
    box-sizing: border-box; /* Fundamental para que el padding se incluya en el ancho */
    margin-bottom: 20px; /* Espacio para separar visualmente las filas */
}
    .col-s-5 {width: 41.66%;}
    .col-s-6 {width: 50%;}
    .col-s-7 {width: 58.33%;}
    .col-s-8 {width: 66.66%;}
    .col-s-9 {width: 75%;}
    .col-s-10 {width: 83.33%;}
    .col-s-11 {width: 91.66%;}
    .col-s-12 {width: 100%;}
}

@media only screen and (min-width: 768px) {
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

.banner {
    padding: 30px 0;
    background-color: #990000;
    text-align: center;
    color: #fefefe;
}

.banner-2 {
    padding: 0;
    background-color: #fefefe;
    text-align: center;
}
.nav {
	  overflow: hidden;
	  background-color: #333;
	}
	
	.nav a {
	  float: left;
	  display: block;
	  color: #f2f2f2;
	  text-align: center;
	  padding: 18px 20px;
	  text-decoration: none;
	  font-size: 17px;
	}
	
	.active {
	  background-color: #04AA6D;
	  color: white;
	}
	
	.nav .icon {
	  display: none;
	}
	
	.dropdown {
	  float: left;
	  overflow: hidden;
	}
	
	.dropdown .dropbtn {
	  font-size: 17px;    
	  border: none;
	  outline: none;
	  color: white;
	  padding: 18px 20px;
	  background-color: inherit;
	  font-family: inherit;
	  margin: 0;
	}
	
	.dropdown-content {
	  display: none;
	  position: absolute;
	  background-color: #f9f9f9;
	  min-width: 160px;
	  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	  z-index: 1;
	}
	
	.dropdown-content a {
	  float: none;
	  color: black;
	  padding: 18px 20px;
	  text-decoration: none;
	  display: block;
	  text-align: left;
	}
	
	.nav a:hover, .dropdown:hover .dropbtn {
	  background-color: #555;
	  color: white;
	}
	
	.dropdown-content a:hover {
	  background-color: #ddd;
	  color: black;
	}
	
	.dropdown:hover .dropdown-content {
	  display: none;
	}
	
	@media screen and (max-width: 1900px) {
	  .nav a:not(:first-child), .dropdown .dropbtn {
	    display: none;
	  }
	  .nav a.icon {
	    float: right;
	    display: block;
	  }
	}
	
	@media screen and (max-width: 1900px) {
	  .nav.responsive {position: relative;}
	  .nav.responsive .icon {
	    position: absolute;
	    right: 0;
	    top: 0;
	  }
	  .nav.responsive a {
	    float: none;
	    display: block;
	    text-align: left;
	  }
	  .nav.responsive .dropdown {float: none;}
	  .nav.responsive .dropdown-content {position: relative;}
	  .nav.responsive .dropdown .dropbtn {
	    display: block;
	    width: 100%;
	    text-align: left;
	  }
	}
article, aside, footer, header, nav, section {
    display: block;
}

a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a:active {
	text-decoration: none;
}
.ad-unit {
  padding: 10px 0; /* 10px de padding arriba y abajo, 0 a los lados */
  text-align: center;
}
.mail {
    
    color: #3498db;
    text-align: center;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
    padding: 10px;
    background-color: #f0f0f0;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  }
  .texto-parpadeante {
  animation: parpadear 1s infinite; /* Nombre de la animación, duración, repetición */
}

@keyframes parpadear {
  0% { opacity: 1; } /* Al inicio, completamente visible */
  50% { opacity: 0; } /* A la mitad, completamente invisible */
  100% { opacity: 1; } /* Al final, vuelve a ser visible */
}