#holiday,
#gallery,
#programa,
#prices,
#accommodation,
#addinfo,
#faq {
    height: 140px;
    margin-top: -140px;
    position: relative;
    z-index: -1;
}

.topoffer { height: calc(100vh - 50px); }

.holidaynav {
	text-align: center;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	position: -webkit-sticky;
	position: sticky;
	top: 90px;
	z-index: 1;
	background-color: #FFF;
}

.holidaynav a {
	font-family: 'Oswald', sans-serif;
	font-weight: normal;
	display: inline-block;
	border-left: 1px solid #CCC;
	padding: 15px 30px;
	text-decoration: none;
}

.holidaynav a:last-child { border-right: 1px solid #CCC; }

.holiday { background-color: #fafafa; }

.holiday section { padding: 10px; }

.holiday article,
.holiday aside {
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 10px;
}

.holiday article {
	width: 70%;
	max-width: none;
}

.holiday aside .price {
	background-color: #FFF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 5px;
}

.holiday aside .price .days {
	display: flex;
	justify-content: space-between;
}

.holiday aside .price .days>div {
	/*min-width: 100px;*/
	text-align: center;
	padding: 10px;
}

.holiday aside .price .days h2 { 
	margin: 0;
	font-size: 20px; 
}

/*.holiday aside .price .buttons {
	display: flex;
	justify-content: space-between;
}*/

.holiday aside .price .buttons a {
	display: inline-block;
	padding: 10px 20px;
	margin: 5px;
	text-align: center;
	text-decoration: none;
	width: calc(100% - 10px);
	box-sizing: border-box;
	background-color: #e2001a;
	color: #FFF;
	font-weight: bold;
	border: 5px solid #f6b2ba;
	border-radius: 25px;
	cursor: pointer;
}

.holiday aside .overbooked {
	text-align: center;
	font-weight: bold;
	padding: 10px;
}


.holiday article .wblock {
	margin-top: 20px;
	border: 1px solid #CCC;
	padding: 20px;
	background-color: #FFF;
	border-radius: 5px;
}

.holiday article .wblock h3 { margin-top: 0; }

.holiday article .programa { padding-left: 25px; }

.holiday article .programa div.day {
	position: relative;
	padding-bottom: 10px;
}

.holiday article .programa div.day:before {
	position: absolute;
	content: "";
	background-image: url(../svg/tourpoint.svg);
	background-repeat: no-repeat;
	width: 35px;
	height: 35px;
	top: 4px;
	left: -25px;
}

.holiday article .programa div.day:not(:last-child)::after {
	position: absolute;
	content: "";
	top: 19px;
	left: -18px;
	width: 1px;
	height: 100%;
	background-color: #CCC;
}

.holiday article .programa div.day strong {
	font-family: 'Oswald', sans-serif;
	font-weight: normal;
	font-size: 16px;
}


.holiday article .programa div.day .slidetext.fade {
	max-height: 80px;
	position: relative;
	overflow: hidden;
}

.holiday article .programa div.day .slidetext .readmore {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.holiday article .programa div.day .slidetext .readmore div {
	height: 30px;
	background-image: url(../img/white-gradient.png);
	background-repeat: repeat-x;
	/*background-image: linear-gradient(to bottom, transparent, white);*/
}

.holiday article .programa div.day .slidetext .readmore a {
	display: block;
	background-color: white;
	cursor: pointer;
}

.holiday article .accommodation {
	border-top: 1px solid #CCC;
	/* padding: 20px 10px; */
}

.holiday article .accommodation h4 { margin: 0 0 10px 0; }

.holiday article .accommodation .desc .buttons { text-align: center; }

.holiday article .accommodation .desc .buttons a {
	display: inline-block;
	padding: 10px 20px;
	border: 1px solid #CCC;
	text-align: center;
	text-decoration: none;
	width: 200px;
	box-sizing: border-box;
}

.holiday article .accommodation h4 {
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
}

.holiday article .accommodation .accprice { text-align: center; }

.holiday article .accommodation .gallery { padding-top: 10px; }

.holiday article .accommodation.hide { display: none; }

.holiday article .wblock hr {
	clear: both;
	height: 1px;
	background-color: #CCC;
	border: none;
	margin: 20px 0;
}


/* dates */
aside .dates > div {
	background-color: #FFF;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 15px 20px;
	margin-bottom: 5px;
}

aside .dates input {
	display: none;
}

aside .dates > div.current {
	border-color: #292254;
	background-color: #292254;
	color: #FFF;
}

aside .dates > div.active,
aside .dates > div.disabled {
	cursor: pointer;
}

aside .dates em {
	background-image: url(../svg/calendar_blue.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 16px;
	padding-left: 20px;
}

aside .dates .disabled span {
	float: right;
	color: #292254;
	font-family: 'Oswald', sans-serif;
	font-size: 18px;
	line-height: 18px;
}

aside .dates .disabled.current span {
	color: #FFF;
}

aside .dates > div.current em {
	background-image: url(../svg/calendar.svg);
}

aside .dates em a { text-decoration: none; }

/*
.mgReservation div.restitle .dates label.radiocheck em {

}*/


@media all and (max-width: 800px) {
	.holiday article .accommodation .accprice { padding-top: 10px; }
}

@media all and (min-width: 801px) {
	.holiday article .accommodation .desc {
		display: grid;
		grid-template-columns: auto 200px;
		grid-column-gap: 40px;
	}
}

@media all and (max-width: 1200px) {
	.holiday article { width: 100%; }
	.holiday aside { width: 100%; }
	.holidaynav { display: none; }

	div.booknow {
		text-align: center;
		position: fixed;
		bottom: -100px;
		left: 0;
		right: 0;
		padding: 10px;
		background-color: rgba(255,255,255,0.7);

		-webkit-transition: bottom 0.5s ease;
		-moz-transition: bottom 0.5s ease;
		-ms-transition: bottom 0.5s ease; /* IE10 is actually unprefixed */
		-o-transition: bottom 0.5s ease;
		transition: bottom 0.5s ease;
	}

	div.booknow.show { bottom: 0; }

	div.booknow a {
		display: block;
		padding: 10px 20px;
		background-color: #e2001a;
		color: #FFF;
		font-weight: bold;
		text-decoration: none;
		border: 5px solid #f6b2ba;
		border-radius: 25px;
		cursor: pointer;
	}
}

@media all and (min-width: 1201px) {
	.holiday aside {
		float: right;
		width: 30%;
		position: -webkit-sticky;
		position: sticky;
		top: 150px;
	}

	div.booknow { display: none; }
}


article iframe.video {
	width: 100%;
	aspect-ratio: 16 / 9;
}