@charset "utf-8";
/* CSS Document */



@font-face {
	font-family:'dollop_serifcondensed';
		src:url('../fonts/dollopserif-condensed-webfont.woff2') format('woff2'),
			url('../fonts/dollopserif-condensed-webfont.woff') format('woff');
	font-weight:normal;
	font-style:normal;
}

@font-face {
	font-family:'dollop_serifexpanded';
		src:url('../fonts/dollopserif-expanded-webfont.woff2') format('woff2'),
			url('../fonts/dollopserif-expanded-webfont.woff') format('woff');
	font-weight:normal;
	font-style:normal;
}




body {
	background-color:#06043c;
	font-family:'dollop_serifexpanded';
	padding:0;
	margin:0;
}

a {
	text-decoration:none;
	cursor:pointer;
}

button {
	font-family:inherit;
	cursor:pointer;
}

h2 {
	font-size:40px;
	color:#00306b;
	margin:67px auto 50px;
}

.fontazul {
	color:#00306b;
}

.fontceleste {
	color:#4686ff;
}

.admin h2 {
	font-size:36px;
	color:#4686ff;
}

.grande {
	font-size:26px;
	color:#4686ff;
	text-transform:uppercase;
}

.grande.normal {
	font-size:19px;
}

.grande.masgrande {
	font-size:45px;
}

.condensed {
	font-family:'dollop_serifcondensed';
}

.info.masgrande {
	font-size:30px;
}

.contenedor {
	background:url('../img/bkgd_ondaazul.png') top left no-repeat, url('../img/bkgd_ondaamarilla.png') 100% 58vh no-repeat;
	background-color:#e7e0d1;
	width:calc(100% - 44px);
	max-width:850px;
	text-align:center;
	padding:22px;
	margin:0 auto;
	overflow:hidden;
}

.admin .contenedor {
	background:none;
	background-color:#002e6d;
}

header {
	background-color:#002358;
	border-bottom:1px solid #919dad;
	width:calc(100% + 44px);
	height:8px;
	margin:0 0 197px 0;
	position:relative;
	top:-22px;
	left:-22px;
}

header img {
	width:94px;
	position:absolute;
	left:calc(50% - 47px);
	bottom:-161px;
}

.hamburguesa {
	position:absolute;
	top:22px;
	right:22px;
}

.hamburguesa span {
	background-color:#002358;
	width:40px;
	height:4px;
	margin:0 0 5px 0;
	display:block;
}

.admin .hamburguesa span {
	background-color:#ffdf77;
}

menu {
	background-color:#002358;
	width:calc(100% - 60px);
	height:100vh;
	padding:0 30px;
	margin:0;
	text-align:center;
	position:absolute;
	top:-100vh;
	left:0;
	transition:all .4s ease-out;
	z-index:99;
}

menu img {
	width:130px;
	margin:40px auto 85px;
	position:static;
}

menu a {
	font-size:22px;
	color:#fff;
	text-transform:uppercase;
	margin:0 0 13px 0;
	display:block;
}

.cerrar {
	font-size:18px;
	color:#f0e7da;
	text-transform:none;
	margin:50px 0;
}

.admin .cerrar {
	color:#ffdf77;
}

.btn {
	border-radius:31px;
	width:94%;
	font-size:26px;
	text-align:center;
	padding:8px 0;
	margin:8px auto;
	display:block;
}

.corto {
	width:71%;
	max-width:404px;
}

.blanco {
	background-color:#fff;
	border:4px solid #00306b;
	color:#00306b;
}

.azul {
	background-color:#002358;
	border:4px solid #efe9dd;
	color:#fff;
}

.beige {
	background-color:#f0e7da;
	border:4px solid #00306b;
	color:#00306b;
}

.azuloscuro {
	background-color:#06043c;
	border:4px solid #efe9dd;
	color:#fff;
}

.naranja {
	background-color:#f28c28;
	border:4px solid #efe9dd;
	color:#fff;
}

.rojo {
	background-color:#b81f2d;
	border:4px solid #efe9dd;
	color:#fff;
}

.celeste {
	background-color:#4686ff;
	border:4px solid #fff;
}

.link {
	font-family:'dollop_serifcondensed';
	font-size:17px;
	color:#00306b;
}

.aclaraciones {
	font-size:19px;
	color:#083270;
}

input {
	background-color:#f0e7da;
	border:4px solid #00306b;
	border-radius:31px;
	width:calc(100% - 16px);
	max-width:564px;
	font-family:'dollop_serifcondensed';
	font-size:22px;
	color:#749fdd;
	text-align:center;
	padding:8px;
	margin:8px auto;
	display:block;
}

.password-field {
	width:calc(100% - 16px);
	max-width:588px;
	margin:8px auto;
	position:relative;
}

.password-field input {
	box-sizing:border-box;
	width:100%;
	max-width:none;
	margin:0;
	padding-right:56px;
}

.password-toggle {
	background:transparent;
	border:0;
	color:#00306b;
	cursor:pointer;
	padding:4px;
	position:absolute;
	right:14px;
	top:50%;
	transform:translateY(-50%);
}

.password-toggle svg {
	display:block;
}

.acepto {
	margin:30px 0;
}

.acepto input {
	width:30px;
	display:inline-block;
}

.acepto span {
	display:inline-block;
}

.separador {
	background-color:#00306b;
	width:58%;
	height:2px;
	margin:-30px auto 35px;
	display:block;
}

.perfil .blanco {
	margin:50px auto;
}

.recuperar .btn {
	margin:85px auto;
}

.recuadros {
	border-radius:31px;
	width:85%;
	padding:22px;
	margin:25px auto;
	display:inline-block;
	vertical-align:top;
}

.perfil .recuadros {
	width:34%;
	max-width:341px;
	min-height:165px;
	box-sizing:border-box;
	display:inline-flex;
	flex-direction:column;
	justify-content:center;
	text-align:left;
	margin:25px 8px;
}

.perfil .recuadros span {
	font-size:44px;
	display:block;
}

.perfil .recuadros.azul span {
	font-size:76px;
}

.info {
	font-size:19px;
	color:#fff;
}

.turnosconfirmados .recuadros .grande {
	margin:-10px auto;
}

.cargarticket p {
	width:100%;
	max-width:500px;
	margin:35px auto;
}

.cargarticket img {
	width:100%;
	max-width:411px;
}

.archivo-ticket {
	position:absolute;
	width:1px;
	height:1px;
	opacity:0;
	pointer-events:none;
}

.estado-ticket {
	min-height:24px;
}

.ticket-loader {
	width:85%;
	max-width:500px;
	margin:10px auto 20px;
}

.ticket-loader video {
	display:block;
	width:100%;
	max-width:320px;
	margin:auto;
}

.ticket-progress {
	width:85%;
	max-width:500px;
	margin:10px auto 20px;
}

.ticket-progress-bar {
	background:#efe9dd;
	border:3px solid #00306b;
	border-radius:18px;
	height:18px;
	overflow:hidden;
}

.ticket-progress-bar span {
	background:#f4bd0b;
	display:block;
	width:0;
	height:100%;
	transition:width .3s ease;
}

.btn:disabled,
.btn.disabled {
	opacity:.65;
	cursor:wait;
}

.ticketcargado .btn.disabled {
	cursor:not-allowed;
}

.clarito {
	color:#4686ff;
}

.ticketcargado .grande {
	margin:-30px auto 35px;
}

.ticketcargado img {
	width:100%;
	max-width:219px;
	margin:0 auto -26px;
}

.leyenda {
	font-size:26px;
	color:#fff;
}

.productos {
	width:100%;
	max-width:500px;
	font-family:'dollop_serifcondensed';
	font-size:21px;
	color:#3d8bff;
	margin:35px auto;
}

.productos span {
	display:block;
}

.qrinvitacion .grande, .confirycanje .grande {
	text-transform:none;
}

.qrinvitacion .recuadros {
	width:auto;
	padding:22px;
	margin:auto;
	display:inline-block;
}

.qrinvitacion .recuadros.celeste {
	background-color:#fff;
	border-color:#4686ff;
}

.qrinvitacion .recuadros .link {
	color:#4686ff;
	margin:5px auto -10px;
}

.qrinvitacion .aclaraciones span {
	display:block;
}

.qrinvitacion .aclaraciones .lista-titulo,
.qrinvitacion .aclaraciones ul {
	text-align:left;
}

.validacion .btn {
	margin:50px auto;
}

.confirycanje img {
	width:121px;
	position:relative;
	top:27px;
	left:-30%;
}

.personas {
	border-radius:31px;
	width:94%;
	text-align:center;
	padding:0;
	margin:8px auto;
	position:relative;
}

.masmenos {
	background-color:#0041a3;
	border:4px solid #fff;
	border-radius:100px;
	min-width:40px;
	padding:0 5px;
	font-size:25px;
	color:#f4bd0b;
	line-height:40px;
	display:inline-block;
	position:relative;
	top:-3px;
}

.cantidad {
	font-size:40px;
	color:#fff;
	margin:0 13px;
	display:inline-block;
}

input.cantidad {
	background:transparent;
	border:0;
	width:92px;
	font-family:'dollop_serifcondensed';
	text-align:center;
	padding:0;
}

.reservarturno .grande {
	text-transform:none;
}

.reservarturno .grande span {
	font-size:16px;
	display:block;
}

.reservarturno .personas {
	text-align:right;
}

.mini {
	width:85%;
	font-size:12px!important;
	margin:-3px auto 16px;
}

.izquierda {
	text-align:left;
}

.derecha {
	text-align:right;
}

.tipo {
	font-size:17px;
	color:#fff;
	text-transform:uppercase;
	position:absolute;
	top:10px;
	left:31px;
}

.contador {
	margin:0 13px 0 0;
}

.contador .masmenos {
	width:31px;
	line-height:31px;
	text-align:center;
	position:relative;
	top:-1px;
}

.contador .cantidad {
	width:51px;
	font-size:31px;
	text-align:center;
	margin:0;
}

.titulo {
	font-size:26px;
	color:#00306b;
}

.grupos {
	width:174px;
	display:inline-block;
}

.grupos:nth-child(3) {
	margin:0 3px 0 0;
}

.fechas {
	background-color:#fff;
	border:4px solid #002358;
	border-radius:27px;
	width:53px;
	height:52px;
	font-size:16px;
	color:#002358;
	text-transform:uppercase;
	text-align:left;
	padding:10px;
	margin:0 0 2px 0;
	display:inline-block;
}

.numero {
	font-size:23px;
	display:block;
}

.selecfecha {
	background-color:#002358;
	border:4px solid #fff;
	color:#fff;
}

.horarios {
	width:350px;
	margin:18px auto;
}

.horas {
	background-color:#fff;
	border:4px solid #002358;
	border-radius:27px;
	width:99px;
	font-size:16px;
	color:#4686ff;
	padding:3px;
	margin:0 0 5px 0;
	display:inline-block;
}

.estado {
	font-size:12px;
	color:#002358;
	margin:-1px 0 0 0;
	display:block;
}

.selechora {
	background-color:#002358;
	border:4px solid #fff;
	color:#4686ff;
}

.selechora .estado, .lleno .estado {
	color:#fff;
}

.lleno {
	background-color:#4686ff;
	border:4px solid #fff;
	color:#fecc17;
}

.error {
	font-size:19px;
	color:#dc210e;
}

.error input {
	border:4px solid #dc210e;
}

footer {
	background-color:#002e6d;
	width:100%;
	text-align:left;
	padding:22px;
	margin:85px 0 0 0;
	position:relative;
	left:-22px;
	bottom:-22px;
}

.admin footer {
	background-color:#f0e7da;
}

.picos {
	background:url('../img/bkgd_picos.png') top left;
	width:calc(100% + 44px);
	height:12px;
	position:relative;
	top:-34px;
	left:-22px;
}

.admin .picos {
	background:url('../img/bkgd_picos_admin.png') top left;
}

footer img {
	margin:0 18px 0 0;
	display:inline-block;
}

footer p {
	width:calc(100% - 125px);
	font-family:Arial, Helvetica, sans-serif;
	font-size:16px;
	color:#fff;
	margin:8px 0 0 0;
	display:inline-block;
	vertical-align:top;
}

.admin footer p {
	color:#002358;
}




@media (max-width:600px) {
	.contenedor {
		background-size:18%, 13%;
		background-color:#e7e0d1;
	}
	h2 {
		width:93%;
		font-size:31px;
		line-height:40px;
		margin:55px auto 40px;
	}
	.grande {
		font-size:19px;
	}
	.home img {
		width:58%;
	}
	.btn {
		font-size:21px;
	}
	.aclaraciones, .error {
		font-size:17px;
	}
	.acepto span {
		width:75%;
		text-align:left;
		vertical-align:top;
	}
	.perfil .recuadros {
		margin:25px 1px;
		width:48%;
		font-size: 14px;
	}
	.perfil .recuadros.azul span {
		font-size:65px;
	}
	footer p {
		font-size:12px;
	}
}
