@font-face {
	font-family:"Akrobat SemiBold";
	font-style:normal;
	font-weight:bold;
	src : url("../fonts/Akrobat-SemiBold.otf");
}
@font-face {
	font-family:"Akrobat Bold";
	font-style:normal;
	font-weight:bold;
	src : url("../fonts/Akrobat-Bold.otf");
}
@font-face {
	font-family:"Akrobat-Regular";
	font-style:normal;
	font-weight:500;
	src : url("../fonts/Akrobat-Regular.otf");
}
@font-face {
	font-family:"Gobold Extra2";
	font-style:normal;
	font-weight:normal;
	src : url("../fonts/Gobold-Extra2.otf");
}
@font-face {
	font-family:Hunterswood;
	font-style:normal;
	font-weight:normal;
	src : url("../fonts/Hunterswood-Regular.otf");
}
@font-face {
	font-family:"Mega Fresh";
	font-style:normal;
	font-weight:normal;
	src : url("../fonts/MegaFresh.otf");
}
@font-face {
	font-family:"Minion Pro";
	font-style:normal;
	font-weight:normal;
	src : url("../fonts/MinionPro-Regular.otf");
}
@font-face {
	font-family:"Modern MT Pro Display";
	font-style:normal;
	font-weight:normal;
	src : url("../fonts/ModernMTPro-Display.otf");
}
html, body {
    margin: 0;
    padding: 0;
    height: 100%; 
} 
body { 
	font-family: "Gobold Extra2", sans-serif;
	font-size: 2.6rem;
	min-height: 100vh;
	background: #e2cdb8;
	/*
	background-image: url('../images/fondo.jpg');
	background-size: 100% 100%;
	background-position: top center;
	background-repeat: repeat;	
	*/
	margin: 0Px;
}
.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* Ocupa como mínimo el 100% del alto de la pantalla */
}
.contenido-principal {
    flex: 1 0 auto; /* La clave: Crece para ocupar todo el espacio libre que quede */
    padding: 0px; 
    background-color: transparent; /* Color de tu web */
	background-image: url('../images/fondo.jpg');
	background-size: 100% 100%;
	background-position: top center;
	background-repeat: repeat;    
}

/* 4. El Footer con la imagen */
.footer-imagen {
    flex-shrink: 0; /* Evita que el footer se aplaste menos de su min-height */
    width: 100%;
    
    /* Configuración de la imagen */
    background-image: url('../images/botellas_enteras_1440.png'); /* Pon aquí la ruta de tu imagen */
    background-position: top center; /* Anclada arriba: siempre asegura que se vea la mitad superior primero */
    background-repeat: no-repeat;
    
    /* 'cover' asegura que ocupe todo el ancho sin deformarse. 
       Si prefieres que se vea la botella entera a lo ancho siempre, usa '100% auto' */
    background-size: cover; 
    
    /* Como el fondo de tu imagen es muy oscuro, ponemos un color base casi negro
       por si la pantalla es altísima y se ve más allá del límite de la foto */
    background-color: #e2cdb8; 

    /* LA REGLA DE "LA MITAD": 
       Esto asegura que, aunque haya muchísimo contenido, el footer nunca mida menos que esto.
       Puedes usar 'vh' (porcentaje de la pantalla) o 'px' (píxeles fijos, ej: 350px). */
    min-height: 35vh; 
}
#cabecera1 { 
	background-image: url('../images/F1.jpg');
	background-size: 25% 100%;
	background-position: top center;
	background-attachment: fixed;		
}
.titulo1 {
	font-family: "Gobold Extra2", sans-serif;
}
.legales {
	font-family:"Akrobat-Regular", sans-serif;
}
.confirmacion {
	font-family: "Akrobat Bold", sans-serif;
}
h1 {
	font-size: 2.8rem;
}
h3 {
	font-size: 1.0rem;
}
.form-check-label {
	font-family:"Akrobat-Regular", sans-serif;
	font-size: 1.0rem;
}
/* .step-container { position: relative; z-index: 20;} */
.img-preview { max-width: 100%; height: auto; border-radius: 8px; margin-top: 10px; display: none; }


/* Botones */
.btn-tarsus {
	border-radius: 0 !important;
	padding: 1rem 1.5rem !important; /* Doble altura */
	background-color: #99191e !important;
	color: #FFFFFF !important;
	border: none !important;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.6) !important; /* Sombra negra difuminada */
	transition: all 0.3s ease;
	font-family: "Gobold Extra2", sans-serif;
	font-size: 1.8rem;
}
.btn-tarsus:hover {
	background-color: #99191e !important;
	transform: translateY(-2px);
}
.btn-participar {
	border-radius: 0 !important;
	padding: 1rem 1.5rem !important; /* Doble altura */
	background-color: #99191e !important;
	color: #FFFFFF !important;
	border: none !important;
	font-family: "Gobold Extra2", sans-serif;
	font-size: 1.8rem;
}
.btn-participar:hover {
	background-color: #99191e !important;
	transform: translateY(-2px);
}
/* Inputs */
.input-tarsus {
	border-radius: 0 !important;
	padding: 1rem !important; /* Doble altura */
	border: 3px solid #846d56 !important;
	background-color: #FFF !important;
	color: #846d56 !important;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.6) !important; /* Sombra negra difuminada */
	font-family: "Gobold Extra2", sans-serif;
	font-size: 1.4rem;
}
.input-tarsus::placeholder {
	color: #846d56 !important;
	opacity: 1;
	font-family: "Gobold Extra2", sans-serif;
	font-size: 1.8rem;
}
.input-tarsus:focus {
	outline: none;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.8) !important;
}

/* Checkboxes */
.form-check-input.check-tarsus {
	width: 2rem !important;  /* Doble de ancho */
	height: 2rem !important; /* Doble de alto */
	border-radius: 0 !important;
	border: 3px solid #99191e !important;
	background-color: #FFF !important;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.6) !important;
	margin-top: 0;
	cursor: pointer;
}
/* Checkbox Marcado (Custom SVG Rojo) */
.form-check-input.check-tarsus:checked {
	background-color: #FFF !important;
	border-color: #99191e !important;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2399191e' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e") !important;
}
.label-tarsus {
	line-height: 2rem; /* Alinear verticalmente con el checkbox grande */
	margin-left: 0.5rem;
	cursor: pointer;
}
/* ==========================================================================
   PERSONALIZACIÓN BOOTBOX ALERT (Estilo Tarsus)
   ========================================================================== */

/* 1. Fondo y texto del contenedor principal (Content) */
.bootbox-alert .modal-content {
    background-color: #99191e !important;
    color: #FFFFFF !important;
    border: 2px solid #99191e !important; /* Un borde sutil para darle profundidad */
    border-radius: 0 !important; /* Estilo cuadrado Tarsus */
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5) !important;
    font-family: "Akrobat Bold", sans-serif;
    text-align:center;
}

/* 2. Quitar el borde separador de la cabecera (si quieres que se vea continuo) */
.bootbox-alert .modal-header {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

/* 3. Estilo de la X de cerrar (Botón Close) */
/* Bootstrap 5 usa un SVG de fondo negro por defecto. Lo cambiamos a blanco con filter */
.bootbox-alert .modal-header .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%) !important; /* Convierte la X negra en blanca */
    opacity: 0.8;
}
.bootbox-alert .modal-header .btn-close:hover {
    opacity: 1;
}

/* 4. Estilizar los textos que metemos con Bootbox (ej. los h5) */
.bootbox-alert .modal-body h5 {
    color: #FFFFFF !important;
    font-weight: bold;
}

/* 5. Quitar el borde separador del pie (donde está el botón OK) */
.bootbox-alert .modal-footer {
    border-top: none !important;
}

/* 6. Estilizar el botón "OK" por defecto de Bootbox para que encaje */
.bootbox-alert .modal-footer .btn-primary {
    background-color: #FFFFFF !important;
    color: #99191e !important;
    border: none !important;
    border-radius: 0 !important;
    font-weight: bold !important;
    padding: 0.5rem 2rem !important;
    transition: all 0.3s ease;
}
.bootbox-alert .modal-footer .btn-primary:hover {
    background-color: #f8f9fa !important;
    transform: translateY(-2px);
}
img._idGenObjectAttribute-1 {
	height:100.00%;
	min-width:100%;
	width:100.00%;
}
img._idGenObjectAttribute-2 {
	left:0px;
	position:absolute;
	top:0px;
}
/* CAPA DE VERIFICACIÓN DE EDAD */
#ageOverlay {
    position: fixed;
    top: 20px; left: 20px; right: 20px; bottom: 20px;
    background-color: rgba(153, 25, 30, 0.95);
    z-index: 9999;
    
    /* Habilitar el scroll */
    overflow-y: auto; 
    
    /* Configuración Flexbox segura */
    display: flex;
    flex-direction: column;
    align-items: center; /* Centra horizontalmente */
    
    /* ELIMINADO: justify-content: center; (Esto es lo que rompía el scroll por arriba) */
    color: white;
    padding: 20px;
}
/*
#ageOverlay {
	position: fixed;
	top: 20Px; left: 20Px; right: 20Px; bottom: 20Px; width: auto; height: auto;
	background-color: rgba(153, 25, 30, 0.95);
	z-index: 9999;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: white;
	padding: 20px;
}
*/
.modal-backdrop {
    z-index: 10000 !important; 
}

/* La ventana blanca del mensaje de Bootbox/Bootstrap */
.modal {
    z-index: 10001 !important; 
}

/* BOTELLAS FOOTER (Scroll normal) */
.footer-botellas {
	position: relative; /* Ya no es fixed */
	width: 100%;
	text-align: center;
	pointer-events: none; 
	z-index: 10;
	margin-top: 0px; /* Separación del formulario */
	overflow: hidden; /* VITAL: Corta la imagen para que el tercio inferior no genere scroll en blanco */
	margin-bottom: 0Px;
}
.footer-botellas img {
	/*height: 100vh;  3 veces más grande
	width: auto; */
	 /* transform: translateY(33.33%); Desplaza la imagen hacia abajo ocultando el tercio inferior */
	display: block;
	margin: 0 auto;
} 
.cajaoculta {
	display: none !important;
}
.texto-sobre-rojo {	
	background:#99191e; color:#FFF;
	font-size: 2.8rem !important;
	font-family: 'Akrobat Bold', sans-serif !important;
}
.texto-sobre-blanco {
	font-size: 1.8rem !important;
	font-family: 'Akrobat Bold', sans-serif;
}
.texto-sobre-blanco1 {
	font-size: 1.8rem !important;
	font-family: 'Akrobat SemiBold', sans-serif;
}
@media (max-width: 2600px) {
	.footer-imagen {
		min-height: 145vh !important; 
	}
}
@media (max-width: 1200px) {
	.footer-imagen {
		min-height: 85vh !important; 
	}
	.btn-participar {
		font-size: 1.8rem !important;
	}
	.btn-tarsus {
		font-size: 1.8rem !important;
	}
	.texto-sobre-blanco1 {
		font-size: 1.4rem !important;
		font-family: 'Akrobat Bold', sans-serif;
	}
	.texto-sobre-rojo {	
		background:#99191e; color:#FFF;
		font-size: 2.4rem !important;
	}	
}
@media (max-width: 900px) {
	.footer-imagen {
		min-height: 155vh !important; 
	}
}
@media (max-width: 600px) {
	body { 	font-size: 1.4rem; 
	.footer-imagen {
		min-height: 40vh !important; 
	}		
	.texto-sobre-rojo {
		background:#99191e; color:#FFF;
		font-size: 1.8rem !important;
	}
	.texto-sobre-blanco1 {
		font-size: 1.4rem !important;
	}	
	.texto-sobre-blanco {
		font-size: 1.4rem !important;
	}	
	#cabecera1 { 
		font-size: 1.4rem;
		/* background-image: url('../images/F1.jpg');*/
		background-size: 50% 50%;
		/* background-position: center; */
		background-attachment: fixed;		
	}
	/* .step-container { margin: 0 auto; padding: 20px; margin-top: 30px; position: relative; z-index: 20;} */
	.img-preview { max-width: 100%; height: auto; border-radius: 8px; margin-top: 10px; display: none; }
	.footer-botellas {
		width: 100%;
	}
	.footer-botellas img {
		 /* height: 50vh; 3 veces más grande
		width: auto; */
		width: 100%;
		 /* transform: translateY(33.33%); Desplaza la imagen hacia abajo ocultando el tercio inferior */
		display: block;
		margin: 0 auto;
	}
	#pie {
		background-image: url('../images/F2.jpg');
		background-size: 25% 100%;
		background-position: bottom center;		
	}
}