/* Minification failed. Returning unminified contents.
(5,23): run-time error CSS1039: Token not allowed after unary operator: '-box-font'
(6,21): run-time error CSS1039: Token not allowed after unary operator: '-box-size--primary'
(8,21): run-time error CSS1039: Token not allowed after unary operator: '-box-width'
(9,27): run-time error CSS1039: Token not allowed after unary operator: '-bg-section-title'
(36,19): run-time error CSS1039: Token not allowed after unary operator: '-box-bg-primary'
(41,22): run-time error CSS1039: Token not allowed after unary operator: '-booking-height-min'
(48,21): run-time error CSS1039: Token not allowed after unary operator: '-box-icon-primary'
(52,17): run-time error CSS1039: Token not allowed after unary operator: '-bg-section-title'
(55,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray'
(127,26): run-time error CSS1039: Token not allowed after unary operator: '-box-min--desktop-heigth'
(203,19): run-time error CSS1039: Token not allowed after unary operator: '-color-button-active'
(254,19): run-time error CSS1039: Token not allowed after unary operator: '-bg-section-title'
(268,35): run-time error CSS1046: Expect comma, found '101'
(268,43): run-time error CSS1046: Expect comma, found '/'
(285,44): run-time error CSS1046: Expect comma, found '101'
(285,52): run-time error CSS1046: Expect comma, found '/'
(352,18): run-time error CSS1039: Token not allowed after unary operator: '-box-icon-primary'
(354,14): run-time error CSS1039: Token not allowed after unary operator: '-color-gray'
(382,15): run-time error CSS1039: Token not allowed after unary operator: '-color-icon'
(444,13): run-time error CSS1039: Token not allowed after unary operator: '-color-icon'
(659,14): run-time error CSS1039: Token not allowed after unary operator: '-color-icon'
(672,21): run-time error CSS1039: Token not allowed after unary operator: '-bg-section-title'
(676,14): run-time error CSS1039: Token not allowed after unary operator: '-color-label'
(694,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(695,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(696,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(697,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(698,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(699,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(700,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(701,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(702,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(703,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(704,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(705,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(706,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(707,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(708,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(709,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
.booking {
    position: relative !important;

   /* border-radius: var(--border-section);*/
    font-family: var(--box-font);
    font-size: var(--box-size--primary);
    width: 100%;
    max-width: var(--box-width);
    border:2px solid var(--bg-section-title);
    text-align: start !important;
    margin: 0 auto;
}

.booking-absolute {
	position: absolute;
	top: 30px;
	right: 20px;
	width: 263px;
}
.booking::before {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
}
.booking-p-3{
	padding-top:30px;
}
.booking__form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 10px 20px;
	padding: 20px;
	background: var(--box-bg-primary);
	border-radius: 4px;
	border-top: 4px solid #00A0DF;
}
.booking__min-height {
    min-height: var(--booking-height-min);
}
.section__row {
    grid-column: 1/-1;
}

.section__icon {
    font-size: var(--box-icon-primary);
    cursor: pointer;
}
.section__icon--primary {
    color: var(--bg-section-title);
}
.section__icon--secondary {
    color: var(--color-gray);
}
.section__active_horizontal {
    display: none;
}
.section__relative {
    position: relative !important;
}
.booking__flex-end {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.forzeBooking .booking__logos{
	display: none;
}
.modal__booking-exit {
	display: none;
}

.modal__program {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 100000;
	top: 0;
	left: 0;
	background: #00000091;
	display: flex;
	flex-direction: column;
	justify-content: center;
	display: none;
}

.modal__program-show {
	display: flex !important;
}

.modal__program-close {
	text-align: end;
	font-size: 30px;
	color: white;
	position: absolute;
	top: 30px;
	right: 30px;
	cursor: pointer;
}
@media screen and (max-width: 490px) {
	.reserva {
        display: none;
        top: 23%;
        left: 0;
        z-index: 999999999;
        height: 100%;
        position: fixed;
        width: 100%;
    }

    .section__row .img-fluid, .TA_certificateOfExcellence {
        display: none;
    }
}

@media screen and (min-width: 790px) {
	.booking{
		display: block;
	}
    .booking__form {
        padding: 13px;
        grid-gap: 6px 20px;
    }
    .booking__min-height {
        min-height: var(--box-min--desktop-heigth);
    }
	.booking__logos{
		display: none;
		padding: 10px;
		font-size: 40px;
	}
	.forzeBooking .booking__logos{
		display: block;
	}
	.forzeBooking .box__horizontal + .booking__logos{
		display: none;
	}
    .box__horizontal.booking {
        border: 2px solid #EDEDED;
        border-radius: 5px;
    }
}

@media only screen and (max-width:790px){
  
	.forzeBooking .modal__booking {
		background: #0000009c;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 99999;
		flex-direction: column;
		justify-content: center;
		display: none;
	}

    .modal__booking--open, .modal__call--open {
        display: flex !important;
    }

    .forzeBooking .modal__booking--close, .forzeBooking .modal__call--close {
        display: none;
    }
	
	.forzeBooking .modal__booking-exit {
		text-align: end;
		font-size: 35px;
		color: white;
		position: absolute;
		top: 20px;
		right: 20px;
		display:none;
	}

	.forzeBooking	.modal__booking-exit i {
			cursor: pointer;
	}
    
}
.section__button {
	border: none;
	outline: none;
	border-radius: 8px;
	color: white;
	font-weight: bold;
	font-size: 0.88em;
	padding: .6em;
	width: 100%;
	min-height: 48px;
}

.section__button--disabled {
	background: #EDEDED;
	cursor: pointer;
	color: #363636
}

.section__button--active {
	background: var(--color-button-active);
	cursor: pointer;
	color:#ffffff;
	line-height:20px
}



@media screen and (min-width: 790px) {
    .section__button {
        border: none;
        outline: none;
        border-radius: 8px;
        color: #363636;
        font-weight: bold;
        font-size: 0.88em;
        padding: .5em;
        width: 100%;
        min-height: 48px;
		font-size:18px;
    }
}
.booking__dropdown {
	position: absolute !important;
	left: 0;
	top: 0;
	width: 100%;
/*	border-radius: var(--border-section);*/
	z-index: 1;
	background: white;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;	
}
.booking__dropdown-container {
	flex-grow: 1;
	display: grid;
	overflow-y: auto;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}
.booking__dropdown-scroll {
	overflow-y: auto;
}
.booking__dropdown-scroll::-webkit-scrollbar {
	background: white;
	width: 5px;
}

.booking__dropdown-scroll::-webkit-scrollbar-thumb {
	background: var(--bg-section-title);
	border-radius: 8px;
}

@media screen and (min-width: 790px) {
	.box__horizontal .booking__dropdown-container{
		padding:20px;
	}
	.box__horizontal .booking__dropdown {
		position: absolute;
		top: 67px;
		bottom: initial;
		left: initial;
		right: initial;
		box-shadow: 1px 1px 6px rgb(105 101 101 /39%);
		background: white;
		width: 100%;
		z-index: 100;
		border-radius: 5px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		min-height: 50px;
		font-size: 15px;
		height: initial;
	}
	.box__horizontal .booking__dropdown::before {
		content: "";
		position: absolute;
		width: 0;
		height: 0;
		filter: drop-shadow(0px -1px 1px rgb(105 101 101 /39%));
		border-right: 10px solid transparent;
		border-bottom: 9px solid #fdfdfd;
		border-left: 10px solid transparent;
		border-top: 9px solid transparent;
		top: -18px;
	}
	.box__horizontal .booking__dropdown--direction-left {
		left: 0;
	}
	.box__horizontal .booking__dropdown--direction-right {
		right: 0;
	}
	.box__horizontal .booking__dropdown--direction-right::before {
		right: 30px;
	}
	.box__horizontal .booking__dropdown--direction-left::before {
		left: 30px;
	}
	.box__horizontal .booking__dropdown-min {
		width: 100%;
	}
	.box__horizontal .booking__dropdown--max {
		width: 200%;
		max-width: 270px;
	}
	.box__horizontal .booking__dropdown-item {
		padding: 4px 10px;
	}
	.box__horizontal .booking__dropdown-item:hover {
		cursor: pointer;
		background-color: rgb(228, 228, 228);
	}
}

.section__input {
	display: flex;
	cursor: pointer;
	border: 1px solid #EDEDED;
	border-radius: 5px;
	padding: 10px;
	align-items: center;
	justify-content: space-between;
	font-size: 0.9em;
	position: relative !important;
}

.section__input:hover {
	border: 1px solid #069cc4;
}

.section__input--active {
	border: 1px solid #069cc4;
}

.section__input-text {
	width: 100%;
	font-size: .9em;
	color: #767575;
}

.section__input-text--select {
	color: black;
	font-weight: bold;
}

.section__input-icon {
	font-size: var(--box-icon-primary);
	cursor: pointer;
	color: var(--color-gray);
}


@media screen and (min-width: 790px) {
    .section__input {
        padding: 6px;
        font-size: 0.7em;
    }
}
.section__alert {
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 170px;
	margin: auto;
}

	.section__alert > div:nth-child(2) {
		margin: 20px 0 0;
		color: #818181;
		text-align: center;
		font-size: 15px;
	}

	.section__alert i {
		color: var(--color-icon);
		font-size: 30px;
	}

.section__input-error {
	position: absolute !important;
	background: #FF4035;
	color: white;
	font-size: 13px;
	padding: 5px;
	border-radius: 4px;
	bottom: -35px;
	left: 0;
	z-index: 1;
}

.section__input-error::before {
	content: "";
	position: absolute !important;
	width: 0;
	height: 0;
	border-right: 10px solid transparent;
	border-bottom: 9px solid #FF4035;
	border-left: 10px solid transparent;
	border-top: 9px solid transparent;
	left: 15px;
	top: -18px;
}

.message__modal {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.40);
	border-radius: 8px;
	padding: 10px;
	display: flex;
	flex-direction: column;
}

.message__modal-exit {
	text-align: end;
	color: white;
	font-size: 25px;
	margin: 0 0 10px;
}
.message__modal-exit i {
	cursor: pointer;
}
.message__container {
	background: white;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 80%;
	margin: auto;
	height: 60%;
}
.message__container span{
	color:var(--color-icon);
	font-weight: bold;
}
.message__icon {
	display: flex;
	justify-content: center;
	font-size: 70px;
	color: #18415a;
}

.message__text {
	text-align: center;
	margin: 20px 0 0;
}
.stickyMob{
	display:none;
}
.forzeBooking .stickyMob {
	background: #fff;
	position: fixed;
	left: 0;
	bottom: 0;
	height: 80px;
	z-index: 1;
	box-shadow: 0 2px 14px rgba(0,0,0,.8);
	width: 100%;
	display: none;
	z-index: 1000;
}

.forzeBooking .stickyMob__container {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	height: 100%;
}

.forzeBooking .stickyMob__button {
	padding: 5px 15px;
	width: 45%;
	margin: 0 10px;
	border-radius: 6px;
	text-align: center;
	height: 45px;
	line-height: 38px;
	text-transform: uppercase;
	font-size: 16px;
	cursor:pointer;
}

.forzeBooking .stickyMob__button--call {
	border: 1px solid #38112d;
	font-weight: bold;
	color: #38112d;
}

.forzeBooking .stickyMob__button--booking {
	background: #38112d;
	color: #fff;
}

@media screen and (min-width:768px) {
	.forzeBooking .stickyMob{
		display:none;
	}
} 
.section-quotation__subtotal {
	font-size: 10px;
	color: #2C2C2C;
	text-decoration: line-through;
	text-align: right;
}

.section-quotation__total {
	font-size: 18px;
	color: #333333;
}

.section-quotation__total-orange {
	color: #E54910;
	margin-left: 20px;
}

.section-quotation__promotion {
	font-size: 14px;
	color: #333333;
}

.section-quotation__promotion-code {
	color: #00a887;
	margin-left: 8px;
}

.section-quotation__taxes {
	font-size: 9px!important;
	color: #1ECAD3;
	text-align:right
}



@media screen and (min-width: 790px) {
    .section-quotation__subtotal {
        font-size: 12px;
    }

    .section-quotation__total {
        font-size: 17.3px;
    }

    .section-quotation__promotion {
        font-size: 12px;
    }
}
.activity__item {
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	padding: 10px 20px;
	margin: 0 4px;
}
.activity__item:hover {
	background: #99D9D7;
	cursor: pointer;
	color: black;
	font-weight: bold;
}
.activity__text {
	margin-left: 20px;
	display: block;
	cursor: pointer;
	user-select: none;
	font-size: 16px;
}
.activity__input {
	margin: auto 0;
	background: #F6F6F6;
	width: 35px;
	min-width: 35px;
	height: 35px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
}
.activity__radio {
	width: 15px;
	height: 15px;
	display: block;
	cursor: pointer;
}
.activity__radio:after {
	width: 15px;
	height: 15px;
	border-radius: 15px;
	top: -0px;
	left: -0px;
	position: relative !important;
	background-color: #d1d3d1;
	content: '';
	display: block;
	visibility: visible;
	border: 2px solid white;
}
.activity__radio:checked::after {
	width: 15px;
	height: 15px;
	border-radius: 15px;
	top: 0px;
	left: 0px;
	position: relative !important;
	background-color: #f5c571;
	content: '';
	display: block;
	visibility: visible;
	border: 2px solid white;
}



@media screen and (min-width: 790px) {

    .activity__text {
        font-size: 13px;
    }
}
.booking__title {
	padding: 0.9em 10px;
	font-size: 0.8em;
	min-height: 45px;
}

.booking__title--theme-blue {
	font-weight: bold;
	background: transparent;
	color: #00A0DF;
	text-align: center;
}

@media screen and (max-width:767px) {
	.booking__title--theme-blue {
		color: #ffffff;
	}
}

.booking__title--theme-white {
	padding: 10px 20px 0px;
	color: #818181;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.booking__title--theme-white i {
	color: var(--color-icon);
	font-size: 20px;
	cursor: pointer;
}

.section__subtitle {
	display: flex;
	align-items: center;
	margin: 0 0 5px;
}

    .section__subtitle i {
        font-size: 16px;
        color: var(--bg-section-title);
    }

.section__label {
	color: var(--color-label);
	font-weight: bold;
	font-size: 16px;
	margin: 0 10px 0 8px;
}

@media screen and (min-width: 790px) {
    .booking__title {
        padding: 0.4em 10px;
        font-size: 0.70em;
        min-height: initial;
    }
    .section__label {
        font-size: 13px;
    }
}
/*---------------- config ----------------------*/
:root {
    --border-section: 8px;
    --padding-section: 20px;
    --bg-section-title: #4E6C80;
    --color-label: #4E6C80;
    --color-button-active: #E51A92;
    --color-icon: #38112d;
    --color-gray: #c8c7c7;
    --box-bg-primary: white;
    --box-font: "latoregular";
    --box-width: 320px;
    --box-min-heigth: 350px;
    --box-icon-primary: 15px;
    --box-size--primary: 18px;
    --booking-height-min: 350px;
    --box-width-desktop: 290px;
    --box-min--desktop-heigth: 270px;
}

.u-booking__padding-tb {
	padding: 10px 0;
}

.u-booking__padding {
    padding: 0px 16px 15px 16px;
}

.u-booking__mt-2 {
	margin: 10px 0 0;
}
.section__relative {
	position: relative !important;
}

.section__view--buttom {
	padding: 20px;
}
