/* Works on Firefox */
*
{
	scrollbar-width: thin;
	scrollbar-color: #f8f8f8;
}
/* Estilos para Chrome, Edge y otros navegadores basados en WebKit */

/* Works on Chrome, Edge, and Safari */
*::-webkit-scrollbar
{
	width: 12px;
}

*::-webkit-scrollbar-track
{
	background: white;
}

*::-webkit-scrollbar-thumb
{
	background-color: white;
	border-radius: 0px;
	border: 0px solid orange;
}

@media (max-width: 767px)
{
	/* movil */
	.sys_caja_reserva
	{
		position: absolute;
		top: 0px;
		/*left: 0px;*/
		display: flex;
		padding: 30px;
		flex-direction: column;
		padding: 10px;
		background-color: white;
		border: 0px solid red;
		border-radius: 0px;
		width: 100vw;
		height: 100vh;
		overflow-y: auto;
	}
	.sys_caja_reserva_home
	{
		display: flex;
		flex-direction: column;
		margin: 10px;
		background-color: transparent;
		border: 0px solid red;

		justify-content: flex-end;
		align-items: center;
		width: 100vw;
	}
	.sys_titulo_reserva
	{
		width: 100%;
	}
	.sys_titulo_reserva > h2
	{
		text-align: center;
		color: darkblue !important;
		font-size: 2.4rem;
		font-weight: bold;
	}

	.sys_titulo_reserva > h3
	{
		text-align: center;
		color: darkblue !important;
		font-size: 1.6rem;
		font-weight: normal;
		margin-bottom: 10px;
	}
	.sys_caja_precios
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
		margin-bottom: 10px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.sys_precios_por_tipo_reserva
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		display: flex;
		justify-content: center;
	}
	.sys_precios_por_tipo_reserva_nombre
	{
		font-size: 0.8rem;
		margin-right: 10px;
	}
	.sys_precios_por_tipo_reserva_city
	{
		font-size: 1.4rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}
	.sys_precios_por_tipo_reserva_ofi
	{
		font-size: 1rem;
		font-weight: normal;
		color: grey;
		text-decoration: line-through;
		margin-right: 10px;
	}
	.caja_selector_reserva
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		margin-top: 2px;
		margin-bottom: 10px;
		display: flex;
		flex-direction: column;
		border-radius: 8px;
	}

	.caja_selector_reserva_interior
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		margin-top: 4px;
		margin-bottom: 4px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.sys_precios_por_tipo_reserva_nombre_selector
	{
		font-size: 1.6rem;
		margin-right: 10px;
		width: 48%;
	}
	.sys_botonera_selector
	{
		display: flex;
		width: 48%;
	}

	.sys_precios_selector_mas
	{
		display: flex;
		padding-top: 8px;
		justify-content: center;
		align-items: center;
	}
	.sys_boton_mas
	{
		color: darkblue;
		margin-left: 0px;
		margin-right: 0px;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 2.5rem;
	}

	.sys_boton_mas :hover
	{
		background-color: grey;
	}
	.sys_pasajeros
	{
		width: 90px !important;
		background: white !important;
		background-color: white !important;
		text-align: center !important;
		border: 2px solid darkblue !important;
		font-size: 1.9rem !important;
	}
	.sys_caja_precio_total
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
	}
	.sys_precio_total
	{
		font-size: 2.2rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
		width: 100%;
		line-height: 2.2rem;
	}
	.caja_ver_billetes
	{
		display: flex;
		width: 100%;
		padding-top: 5px;
		justify-content: center;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.caja_ver_billetes_no
	{
		display: none;
	}
	.caja_ver_billetes_wrap
	{
		display: flex;
		width: 100%;
		padding-top: 20px;
		flex-direction: column;
		align-items: center;
	}
	.sys_tipo_billete
	{
		text-align: right;
		color: black;
		font-size: 1rem;
		font-weight: bold;
		margin-right: 20px;
	}
	.sys_texto_cancelacion
	{
		font-size: 1rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}

	.sys_caja_botonera
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
		display: flex;
		justify-content: center;
	}
	.sys_caja_botonera_fechas
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
		display: flex;
		justify-content: space-between;
		border: 1px solid grey;
		border-radius: 8px;
		padding-left: 10px;
	}
	.sys_caja_botonera_fechas_vuelta
	{
		display: none;
	}
	.sys_texto_fecha
	{
		display: flex;
		align-items: center;
		font-size: 1.5rem;
	}
	.sys_input_fecha
	{
		display: flex;
	}
	.sys_input_uso
	{
		width: 100% !important;
		font-size: 1.5rem !important;
		margin-top: 0px !important;
		font-weight: 400 !important;
		letter-spacing: 0em !important;
		border-radius: 0.2em !important;
		background: transparent !important;
	}
	.sys_subtitulo_reserva > h3
	{
		width: 100%;
		text-align: left;
		color: darkblue !important;
		font-size: 1.2rem;
		font-weight: normal;
		margin-top: 20px;
		margin-bottom: 10px;
		padding-left: 40px;
	}
	.sys_subtitulo_reserva > h2
	{
		width: 100%;
		text-align: center;
		color: darkblue !important;
		font-size: 1.5rem;
		font-weight: bold;
		margin-top: 20px;
		margin-bottom: 10px;
	}

	.sys_caja_extras
	{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.sys_otros_por_reserva
	{
		padding-left: 20px;
		text-align: left;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 10px;
	}
	.sys_input_label
	{
		font-size: 0.9rem;
		font-weight: bold;
		width: 20%;
	}
	.sys_input_input
	{
		width: 95%;
	}
	.sys_error
	{
		font-size: 0.6rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}
	.caja_oferta
	{
		background-color: darkblue;
		color: white;
		margin-top: 20px;
		padding: 10px;
		border-radius: 10px;
	}
	.sys-btn-style_home
	{
		font-size: 2.5rem;
		line-height: 1.2!important;
		font-weight: 700;
		font-style: normal;
		text-transform: none;
		letter-spacing: 0em;
		border-radius: 0.3em;
		padding: 20px;
		background: red;
		border-color: transparent;
		color: #ffffff!important;
		box-shadow: 5px 5px black;
	}

	.sys-btn-style_home:hover
	{
		background: #d6d6d6;
		color: #000!important;
	}
}
@media (min-width: 768px)
{
	/* desktop */
	.sys_caja_reserva
	{
		display: flex;
		padding: 30px;
		flex-direction: column;
		margin: 10px;
		background-color: white;
		margin: auto;
	}
	.sys_titulo_reserva
	{
		width: 100%;
	}
	.sys_titulo_reserva > h2
	{
		text-align: center;
		color: darkblue !important;
		font-size: 2.4rem;
		font-weight: bold;
	}
	.sys_titulo_reserva > h3
	{
		text-align: center;
		color: darkblue !important;
		font-size: 1.4rem;
		font-weight: normal;
	}
	.sys_caja_precios
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
		margin-bottom: 10px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.sys_precios_por_tipo_reserva
	{
		width: 48%;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
		margin-bottom: 10px;
		display: flex;
		justify-content: center;
	}
	.sys_precios_por_tipo_reserva_nombre
	{
		font-size: 0.9rem;
		margin-right: 10px;
	}
	.sys_precios_por_tipo_reserva_city
	{
		font-size: 1.0rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}
	.sys_precios_por_tipo_reserva_ofi
	{
		font-size: 0.8rem;
		font-weight: normal;
		color: grey;
		text-decoration: line-through;
		margin-right: 10px;
	}
	.caja_selector_reserva
	{
		width: 100%;
		text-align: center;
		font-weight: bold;
		margin-top: 2px;
		margin-bottom: 10px;
		display: flex;
		justify-content: space-evenly;
		flex-wrap: wrap;
	}
	.caja_selector_reserva_interior
	{
		width: 48%;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
		margin-bottom: 10px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.sys_precios_por_tipo_reserva_nombre_selector
	{
		font-size: 1.5rem;
		margin-right: 10px;
		width: 100%;
	}
	.sys_precios_selector_mas
	{
		display: flex;
		width: 100%;
		padding-top: 8px;
		justify-content: center;
		align-items: center;
	}
	.sys_boton_mas
	{
		color: darkblue;
		margin-left: 10px;
		margin-right: 10px;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.6rem;
		cursor: pointer;
	}

	.sys_boton_mas:hover
	{
		background-color: grey;
		cursor: pointer;
	}
	.sys_pasajeros
	{
		width: 50px !important;
		background: white !important;
		background-color: white !important;
		text-align: center;
		border: 1px solid darkblue !important;
	}
	.sys_caja_precio_total
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
	}
	.sys_precio_total
	{
		font-size: 2.2rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
		width: 100%;
		padding: 10px;
		text-align: center;
		line-height: 2.8rem;
	}
	.caja_ver_billetes
	{
		display: flex;
		width: 100%;
		padding-top: 20px;
		justify-content: center;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.caja_ver_billetes_no
	{
		display: none;
	}
	.caja_ver_billetes_wrap
	{
		display: flex;
		width: 100%;
		padding-top: 20px;
		flex-direction: column;
		align-items: center;
	}
	.sys_tipo_billete
	{
		text-align: left;
		color: black;
		font-size: 1rem;
		font-weight: bold;
		margin-right: 30px;
		display: flex;
		justify-content: center;
		width: 300px;
		margin-top: 5px;
		margin-bottom: 5px;
	}
	.sys_caja_cancelable_si
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
		display: block;
	}
	.sys_caja_cancelable_no
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
		display: none;
	}
	.sys_texto_cancelacion
	{
		font-size: 1.0rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}
	.sys_caja_botonera
	{
		width: 100%;
		margin-top: 10px;
		text-align: center;
		display: flex;
		justify-content: center;
	}
	.sys_caja_botonera_fechas{
		width: 60%;
		margin-top: 10px;
		text-align: center;
		display: flex;
		justify-content: space-around;
		border: 1px solid grey;
		border-radius: 8px;
		padding-left: 10px;
		margin-left: auto;
		margin-right: auto;
	}
	.sys_caja_botonera_fechas_vuelta
	{
		display: none;
	}
	.sys_texto_fecha
	{
		display: flex;
		align-items: center;
		font-size: 1rem;
	}
	.sys_input_fecha
	{
		display: flex;
	}
	.sys_input_uso
	{
		width: 100% !important;
		font-size: 1rem !important;
		margin-top: 0px !important;
		font-weight: 400 !important;
		letter-spacing: 0em !important;
		border-radius: 0.2em !important;
		background: transparent !important;
	}
	.sys_subtitulo_reserva > h2
	{
		width: 100%;
		text-align: center;
		color: darkblue !important;
		font-size: 1.2rem;
		font-weight: bold;
		margin-top: 20px;
		margin-bottom: 10px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.sys_subtitulo_reserva > h3
	{
		width: 100%;
		text-align: left;
		color: darkblue !important;
		font-size: 1.0rem !important;
		font-weight: normal;
		margin-top: 20px;
		margin-bottom: 10px;
		padding-left: 40px;
	}
	.sys_caja_extras
	{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.sys_otros_por_reserva
	{
		padding-left: 20px;
		text-align: left;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 10px;
	}
	.sys_input_label
	{
		font-size: 1.2rem;
		font-weight: bold;
		width: 100%;
	}
	.sys_input_input
	{
		font-size: 0.8rem;
		font-weight: normal;
		width: 100%;
		margin-right: 20px;
	}
	.sys_error
	{
		font-size: 0.6rem;
		font-weight: bold;
		color: red;
		margin-right: 10px;
	}

	.caja_oferta
	{
		background-color: darkred;
		color: white;
		margin-top: 20px;
		padding: 10px;
		border-radius: 10px;
	}

	.sys_botonera_selector
	{
		display: flex;
	}
}