/**
 * color numbers
 * 
 * #005A60 -> dark turquoise
 * #23A4C3 -> turquoise
 * #F17C00 -> orange
 * #FFCC4D -> yellow
 * #D0D0D0 / #EEE / #FAFAFA -> greys
 *
 */
 
/**
 * Hover effect on box list images
 */
.location-box .image img,
.route-box .image img,
.articlebox .image img {
	transform: scale(1,1);
	transition: transform 0.25s ease;
} 
a:hover .location-box .image img,
a:hover .route-box .image img,
a:hover .articlebox .image img {
	transform: scale(1.1,1.1);
}
a:hover .location-box,
a:hover .route-box,
a:hover .articlebox {
	box-shadow: 0 0 8px rgba(0,0,0,0.1);	
}


.listitem:hover footer {
	height: 50px;
	padding-bottom: 1em;
}
html body {
	font-size: 19px;
	line-height: 2;
	background:	#FFF;
	color: #005A60;
}


/**
 * Wizard
 */
html body {
	--wiz-title-color: #23A4C3;
	--wiz-text-color: #333;
	--wiz-question-color: #005A60;
	--wiz-lightgray: #FAFAFA;
	--wiz-border-color: rgba(0,0,0,0.1);
}

#wrapper:after {
	content: "";
	display: block;
	max-width: 396px;
	width: 28%;
	height: 17.5vw;

	background: url("img/corner_lt.png") left top no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}
#createwidget {
	padding-top: 200px;	
}

body.emptypage {
	background: #FFF;	
}
h1,h2,h3,h4 {
	font-family: ScalaSans,"Lucida Sans",sans-serif;
	font-weight: bold;
	color: #23A4C3;
	margin: 0;
}
h1.maintitle,
h1  {
	font-size: 50px;
	line-height: 60px;
	padding-bottom: 20px;
	color: #23A4C3;
}
h2{
	font-size: 36px;
}
.center h2 {
	text-align: center;
	padding-bottom: 60px;	
}
h3 {
	font-size: 26px;
}
h4 {
	font-size: 20px;
}
h4.small  {
	font-size: 18px;
}
h5 {
	margin: 0;
	padding: 0;
	font-family: GrandHotel, sans-serif;
	font-weight: normal;
}
.subtitle {
	font-size: 30px;
	font-weight: normal;
	line-height: 1.1;
	color: #005a60;
}
	
	
a {
	color: #23A4C3;	
}
a:hover {
	text-decoration: none;	
}
a.icon {
	border: none;
	border-radius: 0;
	text-align: left;
	width: auto;
	padding-right: 20px;
}
a.icon:hover {
	background: none;	
}

div.lead,
p.lead {
	font-size: 23px;
	line-height: 1.9;
	color: #23A4C3;
}


#consent_modal {
  --consent-text-color: #005A60;
  --consent-accent-color: #23A4C3;
  --consent-text-background: #FFF;
  --consent-lightgray: #FAFAFA;
  --consent-headerbg: #005A60;
  --consent-headercolor: #FFF;
}
#consent_modal .consent-headertext em  {
	font-family: GrandHotel, cursive;
	font-size: 150%;
	font-style: normal;
}
#consent_modal .consent-headertext h2 {
	font-size: 200%;
	color: #FFF;
}
#consent_modal .consent-details h2 {
	color: 	#005A60;
}
#consent_modal .consent-details h3 {
	color: #23A4C3;
}


aside.popup {
	background: #23A4C3 url("img/texture.png");
	color: #FFF;
}
aside.popup .title {
	color: #FFCC4D;	
}
aside.popup .popup-close {
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	height: 40px;
	text-align: center;
	line-height: 40px;
	cursor: pointer;
	color: #FFCC4D;
}
aside.popup .button {
	background: #F17C00;	
}



footer.source {
	margin: 0;
	padding: 40px 0;	
}
.innersize {
	max-width: 1400px;	
}

form .selectbox, form input:not([type="file"]), form textarea, form .filebox,
input, form .button {
	border-radius: 1px;
	height: 50px;
	line-height: 50px;
	padding: 0 10px;
}
form .selectbox select {
	line-height: 50px;
	height: 50px;
	padding-right: 16px;
}
form .selectbox:before {
	line-height: 50px;
	background: transparent;
	color: #23A4C3;
	content: "\e620";
}
form input:focus, form textarea:focus {
	border-color: #23A4C3;	
	color: #23A4C3;
}

form li label {
	font-weight: bold;
	line-height: 1.2;	
}
form .button.cancel {
    opacity: 0.4;
}

.markdown blockquote {
	font-family: GrandHotel, sans-serif;
	border-left: 2px solid #23A4C3;
	margin: 0 0 2em 0;
	padding: 0 1em;
	color: #23A4C3;
	font-size: 40px;
	line-height: 50px;
}
.markdown blockquote p {
	position: relative;
}
.markdown blockquote p:before {
	 content: "“";
	 position: absolute;
	 right: 100%;
	 padding-right: 5px;
}
.markdown blockquote p:after {
	content: "”";
	padding-left: 5px;
}
.markdown p {
	margin: 0 0 2em 0;	
}
.markdown h2 {
	color: #005A60;
	font-size: 22px;
	line-height: 30px;
	margin: 0;
	padding-bottom: 10px;
}
.markdown h3 {
	color: #23A4C3;
	font-size: 20px;
	line-height: 30px;
	margin: 0;
	padding-bottom: 10px;
}
.markdown ol,
.markdown ul {
	margin: 0 0 2em 0;
}
.markdown a:hover {
	color: #005A60;	
}

.markdown .button {
	vertical-align: baseline;	
	line-height: 1;
	height: auto;
	margin: -5px 0;
	padding: 5px;
	border-radius: 3px;
}
.markdown .button:hover {
	color: #FFF;	
}


/* EMBED COMPONENTS */
.markdown .embedgallery .struct {
    margin: 0 -10px;
    overflow: hidden;
}
.markdown .embedgallery li {
	width: 25%;
	float: left;
}
.markdown .embedgallery li a {
	display: block;
	margin: 10px;	
}
.markdown .embedgallery li img {
	width: 100%;
	height: auto;
}
@media (max-width: 600px) {
	.markdown .embedgallery li { 
		width: 50%;
	}
	.markdown .smallsquare {
		width: 100px;
		height: 100px;
		margin: 20px 20px 20px 0;	
	}
}

.embedbanner{
	color: #FFF;
	margin: 20px -20px;
	padding: 20px;
	padding-left: 200px;
	overflow: hidden;
	border-radius: 3px;
	background: #23A4C3 url(img/texture.png);
}

.singlecol div.markdown .embedbanner p {
	margin-bottom: 0;
}

.embedbanner h3{
	color: #FFF;
	font-size: 19px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0;
	padding: 0;
	line-height: 1.2;
}

.markdown .embedbanner a {
	color: #FFCC4D;
}


.markdown .embedbanner a:after {
	content: "\e622";
	font-size: 120%;
	vertical-align: top;
	transform: translate(0, -50%);
	font-family: icomoon;
	color: #FFCC4D;
	padding-left: 0;
	top: -2px;
	position: relative;
	transition: padding 0.25s linear;
}

.markdown .embedbanner a:hover:after {
	padding-left: 6px;
}

.markdown .embedbanner .image {
	float: left;
	margin-left: -180px;
	width: 160px;
	margin-right: 0;
}

.markdown .embedbanner .image img {
	width: 100%;
	height: auto;
}

.menu-box h3 a{
	color: #23A4C3;
}


@media (max-width: 600px){
	.markdown .embedbanner .image {
		float: left;
		margin-left: -100px;
		width: 80px;
		margin-right: 0;
	}


	.markdown .embedbanner {
		padding-left: 120px;
	}
}

.markdown .boxslider {
	padding: 0;
}


.markdown .embed_suggestions a:after {
	content: "\e622";
	font-size: 120%;
	vertical-align: top;
	transform: translate(0, -50%);
	font-family: icomoon;
	padding-left: 0;
	top: -2px;
	position: relative;
	transition: padding 0.25s linear;
}

.markdown .embed_suggestions a:hover:after {
	padding-left: 6px;
}


.tabbar {
	border: none;
	overflow: hidden;
	height: 40px;
	padding-left: 1px;
	margin-bottom: 20px;
}
.tabbar h3 {
	float: left;
	padding: 0 14px;
	font-size: 16px;
	font-weight: normal;
	height: 38px;
	line-height: 38px;
	border: 1px solid #EEE;
	border-radius: 3px;
	left: -1px;
	bottom: 0;
	opacity: 1;
}
.tabbar h3.current {
	border-color: #23A4C3;
	color: #23A4C3;
	cursor: default;
}
.tab {
	display: none;
}
.tab.current {
	display: block;
}
.sidebar .compact .tabbar h3 {
	width: 32px;
	padding: 0 5px;
	overflow: hidden;
}
.sidebar .tabbar h3:hover {
	color: <?=$SIDEBAR_LINK_COLOR?>;
	background: #FFF;
}
.sidebar .tabbar h3 {
	padding: 0 7px;
	white-space: nowrap;
}
.sidebar .tabbar h3.current {
	width: auto;
	background: #FFF;
}


/**
 * Forms and buttons
 */
.button, .button.important {
	color: #FFF;
	background: none;
	transition: none;
	position: relative;
	overflow: hidden;
	background: #23A4C3;
	transform: perspective(1px) translateZ(0);
	border-radius: 1px;
	height: 50px;
	line-height: 48px;
	padding: 0 20px;
	font-size: 17px;
}
.button:hover {
	background: #23A4C3;	
}
.button:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #005A60;
	z-index: -1;
	transform: translate(100%,0);
	transition: transform 0.2s ease;
}
.button:hover:before {
	transform: translate(0,0);
}


#cookieconsent {
	background: #005A60;
	color: #FFF;
	padding: 20px 40px;
	line-height: 20px;
	text-align: center;
	position: relative;
	
}
#cookieconsent a {
	color: #FFF;
	margin-left: 0.5em;
	text-decoration: underline;	
}
#cookieconsent a.close {
	margin: 0;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
}
#cookieconsent a.close:hover {
	background: #23A4C3;	
}
#cookieconsent a.close:before {
	content: "✕";
}

#cookieconsent a.close span {
	display: none;	
}


/**
 * content rating form
 */
#ratingform {
	border: none;
	padding: 0 0 30px 0;
}
#ratingform h3 {
	color: #23A4C3;
	margin: 0;
	padding: 0;
	font-size: 20px;
}
#ratingform label {
	font-size: 150%;	
}



/**
 * Breadcrumbs
 */
.breadcrumbs {
	padding-top: 145px;
	position: relative;
	overflow: hidden;
	margin: 0;
	z-index: 13;
	white-space: nowrap;
}
.breadcrumbs ol {
	overflow: hidden;
	font-size: 15px;
	line-height: 40px;
	margin-left: 110px;
}
.breadcrumbs li {
	display: inline-block;
}
.breadcrumbs.small li {
	display: none;	
}
.breadcrumbs.small li.up {
	display: inline-block;
	margin-left: -10px;
}
.breadcrumbs li:before {
	content: " - ";
}
.breadcrumbs.small li.up:before {
	font-family: icomoon;
	content: "\e61f	";
	display: inline-block;
	position: relative;
	bottom: -0.1em;
	line-height: 1;
	
}
.breadcrumbs li:after {
	content: " ";
}
.breadcrumbs li:first-child:before {
	display: none;	
}
.breadcrumbs a {
	color: inherit;
	text-decoration: none;	
}
.breadcrumbs a:hover {
	color: #23A4C3;
	text-decoration: none;	
}
.breadcrumbs span {
	color: #d0d0d0;
}

.pagehead + .breadcrumbs {
	position: absolute;
	top: 145px;
	padding-top: 0;
	background: none;
	left: 0;
	right: 0;
	
}
.pagehead + .breadcrumbs ol {
	color: #FFF;
	background: rgba(0,0,0,0.4);
	border-radius: 20px;
	padding: 0 20px 0 30px;
	float: left;
}



.pagehead {
	background: #000;
	color: #FFF;
	text-align: center;
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.pagehead .image img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.pagehead.smallheader .image {
	height: 200px;
	overflow: hidden;
	text-align: center;
}
.pagehead.fullheader .image:after {
	display: block;
	content: "";
	position: absolute;
	top: 25%;
	right: 0;
	left: 0;
	bottom: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%); 	
}

@media (max-width: 1600px) {
	.pagehead.smallheader .image img {
		width: auto;
		height: 200px;	
	}
}

.pagehead h1 {
	margin: 0 auto;
	position: absolute;	
	left: 0;
	right: 0;
	bottom: 5px;
	top: 145px;
	color: #FFF;
}
.pagehead h1 span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	
	display: block;
	max-width: 1400px;
	margin: 0 auto;
	font-size: 80px;
	line-height: 1;
}
.pagehead h1 span em {
	font-family: GrandHotel, sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 60px;
	display: block;
	transform: translate(-0,0.30em);
}




/**
 * share box
 */
#share {
	position: absolute;
	right: 50%;
	margin-right: -700px;
	top: 230px;	
	z-index: 12;
	white-space: nowrap;
}
#share h3 {
	font-family: GrandHotel, sans-serif;
	font-weight: normal;
	color: #005A60;
	display: inline-block;
	padding-right: 10px;
}
#share div {
	display: inline-block;
	top: 0;
	right: 0;
	color: #23A4C3;	
}

#share a.icon:hover {
	background: #F17C00;
}
#share a.icon {
	display: inline-block;
	width: 40px;
	height: 40px;
	text-align: center;
	line-height: 40px;
	padding: 0;
	color: #FFF;
	background: #23A4C3;
	border-radius: 50%;	
}


/**
 * Graphic sub menu
 */
.graphicsubmenu {
	padding: 40px 0;	
}
.graphicsubmenu .struct {
	overflow: hidden;
	margin: 0 -20px;
}
.graphicsubmenu li {
	width: 25%;
	float: left;
	padding: 5px 20px;
	display: block;
	box-sizing: border-box;
}
.graphicsubmenu.halfwidth li {
	width: 50%;	
}
.graphicsubmenu span {
	vertical-align: bottom;	
}
.graphicsubmenu li a {
	display: block;
	color: #000;
	border: 1px solid #EEE;
	border-radius: 2px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	line-height: 60px;
}
.agcatmenu a:hover,
.graphicsubmenu li a:hover {
	color: #23A4C3;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);
}
.graphicsubmenu li .image {	
	display: block;
	width: 80px;
	height: 60px;
	margin-right: 20px;
	float: left;
	background: #FAFAFA;
}
.graphicsubmenu img {
	width: 100%;
	height: 100%;	
}
.agcatmenu a {
	color: #005A60;
}
.agcatmenu  svg {
	fill: #23A4C3;
}
/**
 * Topic box
 */
.topiclinks {
	margin-bottom: 40px;	
}
.topiclinks li {
	display: inline-block;	
}
.topiclinks li a {
	display: block;
	position: relative;
	height: 38px;
	line-height: 38px;
	border: 1px solid #d0d0d0;
	color: #000;
	padding: 0 15px 0 25px;
	border-radius: 3px;
	margin: 3px;
	font-size 15px;
}
.topiclinks li a:before {
	content: "";
	display: block;
	background: #d0d0d0;
	width: 6px;
	height: 6px;
	position: absolute;
	left: 9px;
	top: 17px;
	border-radius: 50%;	
}
.topiclinks li a:hover {
	color: 	#23A4C3;
	border-color: #23A4C3;
}


#main {
	background: #FFF;
	position: relative;
	z-index: 2;
	min-height: 500px;
	padding-bottom: 100px;
}
.pt_newsItem #main {
	z-index: 13;
}
#homepagedias + #main:after,
.pagehead ~ #main:after {
	display: none;
}	
#main:after {
	content: "";
	display: block;
	top: -250px;
	height: 250px;
	left: 0;
	right: 0;
	z-index: 2;
	background: #FFF;
	position: absolute;
}
#main:before {
	content: "";
	display: block;
	width: 82px;
	height: 120px;
	background: url("img/shadedlogo.png") 0 0 no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 50%;
	bottom: -60px;
	z-index: 3;
	margin-left: -41px;
}
#main > .innersize {
	z-index: 11;
	position: relative;
}

#footerimages {
	z-index: 100;
	position: relative;
	height: 0;
	margin: 0 auto;
	padding: 0;
	overflow: visible;
}
#footerimages img {
	border: 6px solid #FFF;
	border-radius: 50%;
	position: absolute;
	right: 130px;
	top: -82px;
}
#footerimages img + img {
	right: 62px;
	top: 36px;	
}



#pagefooter {
	min-height: 500px;
	background: #23A4C3;
	bottom: 0;
	left: 0;
	right: 0;
	color: #FFF;
	z-index: 1;
}
#pagefooter:after {
	content: '';
	display: block;
	width: 35%;
	max-width: 279px;
	height: 300px;
	background: url("img/corner_rb.png") right bottom no-repeat;
	background-size: 100% auto;
	position: absolute;
	right: 0;
	bottom: 0;
}
#pagefooter .innersize {
	background: #23A4C3 url("img/footermap.png") right 150px no-repeat;
	min-height: 650px;
}
#pagefooter:before {
	content: "";
	display: block;	
	padding-top: 8%;
}
#pagefooter a {
	color: inherit;	
}
#pagefooter a:hover {
	color: #FFCC4D;
}
#pagefooter .newsletterbox {
	border-bottom: 3px dotted #FFCC4D;
	margin-right: 480px;
	overflow: hidden;
	padding-bottom: 50px;
}
#pagefooter .newsletterbox p {
	float: left;
	width: 440px;
}
#pagefooter .newsletterbox .subscribe_fields {
	float: right;
	padding-top: 8px;
	width: 440px;
}
#pagefooter .newsletterbox input {
	width: 67%;
	float: left;
}
#pagefooter .newsletterbox .button {
	width: 30%;
	float: right;
}

#pagefooter .footernav {
	overflow: hidden;
	margin-right: 480px;
	padding-bottom: 50px;
}
#pagefooter .footernav .lwr {
	width: 	440px;
	float: left;
	margin-right: 40px;
}
#pagefooter .footernav .regions {
	width: 	440px;
	float: right;
}
#pagefooter .footernav ul {
	-moz-column-count: 2;
    -moz-column-gap: 40px;
    -webkit-column-count: 2;
    -webkit-column-gap: 40px;
    column-count: 2;
    column-gap: 40px;
}
#pagefooter h3,
#pagefooter h4 {
	font-family: ScalaSans, sans-serif;
	font-size: 19px;
	line-height: 26px;
	font-weight: bold;
	padding-top: 50px;
	color: #FFCC4D;
}
/**
 * The page header containing the main menu
 *
 */
#pageheader .innersize {
	position: relative;
	height: 0;
	z-index: 1000;
	overflow: visible;
}
#headerbox {
	background: #FFF;
	position: absolute;
	top: 35px;
	padding-left: 120px;
	padding-right: 200px;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);
	border-radius: 3px;
	width: 100%;
	box-sizing: border-box;
}
#headerbox #logo {
	position: absolute;
	top: 20px;
	left: 30px;
	height: 116px;
}
#headerbox #logo img {
	height: 100%;
	width: auto;
}
/**
 * the main menu itself
 */
#mainmenu {
	overflow: hidden;
	height: 100px;
	line-height: 1.3;
}
#mainmenu li.main {
	width: 20%;
	float: left;
	height: 70px;
	box-sizing: border-box;
	position: relative;
	margin: 15px 0;
	padding: 0 20px;
	border-left: 1px solid #EEE;
}
#mainmenu li.main:first-child {
	border-color: #FFF;	
}
#mainmenu a.main {
	display: block;
	
}
#mainmenu a.main > span {
	color: #23A4C3;
	display: block;
	font-weight: bold;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
#mainmenu ul.submenu {
	position: relative;
	overflow: hidden;
	line-height: 22px;
	height: 44px;
}
#mainmenu li.sub {
	display: inline;
	font-size: 15px;
	font-weight: normal;
	color: #000;
}
#mainmenu li.sub span {
	color: #000;
}
#mainmenu li.sub:before {
	content: ". ";	
}
#mainmenu li.sub:first-child:before {
	content: "";	
}

.foldout  a.hl_tip:after {
	display: inline-block;
	color: #FFF;
	content: "tip!";
	background:#F17C00;
	border-radius: 3px;
	padding: 0 3px;
	line-height: 1.2;
	margin-left: 5px;
}

.foldout  a.hl_new:after {
	display: inline-block;
	color: #FFF;
	content: "nieuw";
	background:#005A60;
	border-radius: 3px;
	padding: 0 3px;
	line-height: 1.2;
	margin-left: 5px;
}
html[lang=de] .foldout  a.hl_new:after {
	content: "neu";	
}
html[lang=en] .foldout  a.hl_new:after {
	content: "new";	
}




/**
 * The foldout section, this is shown when the user hovers a main item,
 * or when the search box is opened
 */
#headerbox .foldout {
	display: none;
	background: #FFF;
	margin: 0 -200px 0 -120px;
	border-top: 1px solid #EEE;
	padding: 0 200px 0 120px;
	clear: both;
}
#headerbox .foldout.visible {
	display: block;	
}
.foldout .menu {
	position: relative;
	min-height: 179px;
}
.foldout .menu .n2 {
	display: block;
	position: absolute;
	right: -200px;;
	bottom: 0;
	background: url("img/logo_np.png") center center no-repeat;
	width: 206px;
	height: 179px;
}
.foldout .menu:after {
	display: block;
	content: "";
	clear: both;	
}
.foldout div.subsub {
	width: 25%;
	float: left;
	box-sizing: border-box;
	margin: 15px 0;
	padding: 0 20px;
}
.foldout div.subsub h4 {
	font-size: 17px;	
}
.foldout div.subsub li {
	font-size: 15px;
	color: #23A4C3;
	position: relative;
	padding: 0 0 5px 20px;
	line-height: 1.4;
}
.foldout div.subsub li:before {
	display: inline-block;
	vertical-align: top;
	font-weight: bold;
	width: 1em;
	content: "\e622";
	font-size: 17px;
	margin-left: -20px;
	width: 20px;
	font-family: icomoon;
	color: #FFCC4D;
	
}
.foldout div.subsub li a {
	color: inherit;
}
.foldout div.subsub li a:hover {
	color: #000;
	text-decoration: none;	
}
/**
 * The language selection menu
 */
.labelbox {
	width: 100px;
	height: 100px;
	position: absolute;
	top: 0;
	right: 0;
	background: #23A4C3;
	color: #FFF;
}
#langselect {
	right: 100px;
	background: #FAFAFA;
	color: #7d7d7d;
}
.labelbox label {
	display: block;
	width: 100px;
	height: 100px;
	line-height: 100px;
	text-align: center;
	cursor: pointer;
}
#searchbox label span {
	display: none;	
}
#showlangselect:checked ~ #headerbox #langselect label {
	color: #FFF;
	background:	#005A60;
}
#showlangselect:checked ~ #headerbox #langmenu {
	display: block;
}
#langmenu {
	display: none;
	background: #005A60;
	color: #FFF;
	width: 160px;
	padding: 20px;
	position: absolute;
	top: 100px;
	left: 0;
	z-index: 999;
	border-radius: 0 0 3px 3px;	
}
#langmenu li:before {
	display: inline-block;
	font-weight: bold;
	width: 1em;
	content: "❯";
}
#langmenu a {
	font-size: 15px;
	color: inherit;	
}

/**
 * The search form and language selection box
 */
#searchbox label:before {
	font-family: icomoon;
	content: "\f02e";
}
#headerbox .searchform {
	display: none;	
}

#showsearch:checked ~ #headerbox #searchbox label:before {
	content: "\f00d";
}
#showsearch:checked ~ #headerbox .foldout {
	display: block;	
}
#showsearch:checked ~ #headerbox .foldout .searchform {
	display: block;
}
#showsearch:checked ~ #headerbox .foldout .menu {
	display: none;
}


.searchform button {
	position: absolute!important;
	right: 0;
}



.searchform button span {
	display: inline-block;
	padding-right: 10px;	
}
.searchform button:after {
	content: "⏎";	
}
.searchform form {
	display: block;
	position: relative;
}
#headerbox .searchform form {
	margin-left: 0px;
	margin-right: -180px;
	padding: 20px 100px 20px 40px;
}


.searchform form:before {
	font-family: icomoon;
	color: #7d7d7d;
	content: "\f02e";
	position: absolute;
	line-height: 1;
	font-size: 18px;
	margin-top: -9px;
	top: 50%;
	left: 20px;
		
}
.searchresults .searchform input,
#headerbox .searchform input {
	background: transparent;
	border: none;
}




.searchresults .searchform input {
	border: 1px solid #EEE;
	padding-left: 50px;
}
.searchresults {
	max-width: 680px;
	padding: 20px 0;
	margin: 0 auto;	
}

.searchresults .searchform {
	margin-bottom: 40px; 	
}
.searchresults .filtermenu {
	float: right;
	height: 50px;
	position: relative;	
	border: 1px solid #23A4C3;
	padding: 0 10px;
	border-radius: 2px;
}
.searchresults .filtermenu:hover:after {
	bottom: -2px;
	left: 0;
	right: 0;
	height: 8px;
	content: "";
	background: #FFF;
	display: block;
	z-index: 11;
	position: absolute;	
}
	
.searchresults .filtermenu h3 {
	line-height: 48px;
	padding: 0;
	font-size: 17px;
	font-weight: normal;
	color: #23A4C3;
	font-family: inherit;
}
.searchresults .filtermenu ul {
	z-index: 10;
	border: 1px solid #23A4C3;
	background: #FFF;
	position: absolute;
	top: 50px;
	left: -1px;
	right: -40px;
	padding: 0 10px 10px 10px;
	display: none;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

.searchresults .filtermenu li {
	height: 0;
	overflow: hidden;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.searchresults .filtermenu:hover ul {
	display: block;
}	
.searchresults .filtermenu:hover li {
	height: 30px;	
}
.searchresults .resultlist {
	clear: both;
}


.searchitembox {
	padding: 40px;
	margin: 0 -40px;
	overflow: hidden;	
}
li:nth-child(even) .searchitembox {
	background: #FAFAFA;
	border: 1px solid #EEE;
	border-radius: 3px;
}

.searchitembox  h3 {
	font-size: 26px;
	line-height: 30px;
	color: #23A4C3;
}
.searchitembox  .extra {
	color: #005A60;	
}
.searchitembox .image {
	float: left;
	width: 200px;
	margin-right: 40px;
	padding-top: 12px;
}
.searchitembox  .image img {
	width: 100%;
	height: auto;
}
.searchitembox p:after {
	display: inline-block;
	vertical-align: top;
	font-weight: bold;
	width: 1em;
	content: "\e622";
	font-size: 21px;
	margin: 0;
	width: 20px;
	margin-top: -1px;
	font-family: icomoon;
	color: #23A4C3;
	transition: transform 0.15s linear;
}
a:hover .searchitembox p:after {
	transform: translate(10px, 0);
}

.searchitembox mark {
	background: transparent;
	border-bottom: 2px solid #23A4C3;
	border-radius: 1px;
}

/**
 * Pagination box
 */
.pagination {
	background: none;	
	clear: both;
}
.pagination a {
	border:none;
	border-radius: 0;
	color: #005A60;
}
.pagination .current a,
.pagination a:hover {
	background: #23A4C3;
	color: #FFF;
}
.pagination .next,
.pagination .prev {
	width: 68px;
	position: static;
	margin: 0;
}

.pagination .prev:empty:before {
	font-family: icomoon;
	content: "";
	color: #EEE;
}
.pagination .next:empty:before {
	font-family: icomoon;
	content: "";
	color: #EEE;
}


.pagination span {
	border: 1px solid #EEE;
	width: 38px;
	height: 38px;
	line-height: 38px;
	vertical-align: bottom;
}
.pagination span a {
	width: 100%;
	height: 38px;
	
	max-width: none;
	max-height: none;	
}


/**
 * Videos and the like are put into click to play figures.
 */
figure.clicktoplay  {
	position: relative;
	overflow: hidden;
}
figure.clicktoplay:before {
	content: "";
	display: block;
	float: left;
	width: 0;
	padding-top: 56.25%;
	
}

figure.clicktoplay iframe,
figure.clicktoplay a {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 2px;
}
figure.clicktoplay a img {
	width: 100%;
	height: 100%;
	vertical-align: top;	
}
figure.clicktoplay a:after {
	content: "";
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	background: #F17C00 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="6" height="8"><polygon points="0,0 0,8 6,4" style="fill:white;"/></svg>') center center no-repeat;
	background-size: 6px 8px;
	left: 20px;
	bottom: 20px;
	border-radius: 50%;
		
}
figure.clicktoplay h3 {
	position: absolute;
	bottom: 10px;
	line-height: 50px;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	left: 90px;
	bottom: 20px;
	right: 10px;
	color: #FFF;
	font-weight: normal;
	font-size: 100%;
	opacity: 0.8;
}
figure.clicktoplay:hover h3 {
	opacity: 1;
}

/**
 * New listing
 */
.newsoverview .socialintro {
	border: 1px solid #EEE;
	background: #FAFAFA;
	padding: 30px 39px;
	max-width: 680px;
	margin: 0 auto;
	border-radius: 0 0 3px 3px;
}
.newsoverview ol {
	max-width: 760px;
	margin: 0 auto;	
}
.newsitembox {
	padding: 40px;
	overflow: hidden;
}
.newsoverview li:nth-child(even) .newsitembox {
	border: 1px solid #EEE;
	border-radius: 3px;
	background: #FAFAFA;
	padding: 39px;
}
.newsitembox time {
	color: #d0d0d0;
	display: block;
	line-height: 1;
	margin-bottom: 20px;
}
.newsitembox h3 {
	color: #23A4C3;
	font-size: 30px;
	line-height: 40px;
}
.newsitembox .image {
	float: left;
	width: 29.4117647058824%;
	
}
.newsitembox img {
	width: 100%;
	height: auto;	
	border-radius: 2px;
}
.newsitembox .body {
	width: 64.7058823529412%;
	float: right;
}


/**
 * Blog listing
 */
.simplebloglist,
.bloglisting {
	padding: 40px 0;
	margin: -20px;	
	overflow: hidden;
}
.simplebloglist li,
.bloglisting li {
	width: 320px;
	float: left;
	margin: 20px;	
}
.articlebox {
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 3px;
	position: relative;
}
.articlebox time {
	font-size: 90%;
	color: #d0d0d0;
	position: relative;
	top: -4px;	
}


.articlebox .advertorial:after {
	position: absolute;
	top: 5px;
	right: 10px;
	content: "advertorial";
	color: #FFF;
	color: rgba(255,255,255,0.8);
	font-size: 15px;	
}
.articlebox .image {
	overflow: hidden;
	height: 220px;
	background: #FAFAFA;
}
.articlebox .image img {
	width: auto;
	height: 100%;
	margin-left: -28px;
}
.eventbox .body,
.articlebox .body {
	padding: 30px;
	height: 120px;
	font-size: 19px;
	line-height: 32px;
	position: relative;
}
.eventbox .body:before,
.articlebox .body:before {
	position: absolute;
	left: 50%;
	top: -17px;
	height: 17px;
	width: 41px;
	margin-left: -21px;
	content: "";
	display: block;
	background: url("img/article_arrow.png") center bottom no-repeat;	
		
}
.eventbox .body p:after,
.newsitembox .body p:after,
.articlebox .body p:after {
	font-family: "icomoon";
	content: "\e622";
	color: #F17C00;
	padding-left: 2px;
	font-size: 21px;
	vertical-align: top;
	position: relative;
	top: 2px;
	transition: padding 0.1s ease;
}
.eventbox .body p:after {
	float: right;
	margin-right: -8px;
	padding-right: 8px;	
}
.newsitembox:hover .body p:after,
.articlebox:hover .body p:after {
	padding-left: 8px;
}
.eventbox:hover .body p:after {
	padding-right: 0;
}
.articlebox h3 {
	line-height: 1.2;
	font-size: 100%;
	font-weight: bold;
	color: #23A4C3;
	padding-bottom: 5px;
}
.articlebox .author {
	position: absolute;
	text-align: center;
	bottom: 151px;
	right: 20px;
	text-align: center;
	min-width: 58px;
	line-height: 29px;
	color: #FFF;
	padding-bottom: 58px;;
	font-size: 20px;
	font-family: GrandHotel, sans-serif;
}
.articlebox .author_image  {
	position: absolute;
	right: 0;
	bottom: 0;
}
.articlebox .author_image img {
	width: 58px;
	height: 58px;
	border-radius: 50%;
}

.eventbox .body  {
	border: 1px solid rgba(0,0,0,0.1);
	border-top: none;
	padding: 20px 40px;
	height: 90px;
}
.eventbox + .eventbox .body  {
	border-left: 0;	
}
.eventbox h4 {
	font-size: 18px;	
}
.eventbox h3 {
	line-height: 1.2;
	font-size: 20px;
	font-weight: normal;
	color: #005a60;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-bottom: 5px;
}
.eventbox p {
	color: #23A4C3;
	font-size: 16px;	
}




.more-articles {
	text-align: center;
	padding: 20px 0;
	position: relative;
}
.more-articles a {
	display: inline-block;
	background: #F17C00;
	color: #FFF;
	border-radius: 2px;
	line-height: 50px;
	padding: 0 20px;
}
.more-articles a:hover {
	background: #FFCC4D;
	color: #FFF;
}
.recentarticles .more-articles {	
	margin-top: -40px;
}


/**
 * agenda listing
 */
/**
 * agenda listing
 */
.calendarcontents {
	overflow: hidden;	
}
.calendarnav {
	width: 34.28571428%;
	float: left;
}
#calendar {
	max-width: 400px;
	position: relative;
}
#calendarbutton {
	display: none;	
}
.calendarmonth {
	margin: 0 0 0 0;
	padding: 0 10px 10px 10px;
	color: #FFF;
	background: #23A4C3 url("img/texture.png");	
}
.calendarmonth caption {
	font-size: 21px;
	font-weight: bold;
	text-align: center;
	position: relative;
}
.calendarmonth caption a {
	position: absolute;
	font-family: icomoon;
	color: #FFF;
	right: 0;
	display: inline-block;
	font-size: 140%;
	width: 1.2em;
	height: 1.2em;
	line-height: 1.2;
	border: 2px solid transparent;
	border-radius: 50%;
	top: 4px;
	cursor: pointer;
}
.calendarmonth caption a:hover {
	border-color: #FFF;
}
.calendarmonth caption a.prev {
	left: 0;
	right: auto;
}
.calendarmonth caption a.prev:after {
	content: "\e802";
}
.calendarmonth caption a.next:after {
	content: "\e801";
}

.calendarmonth th {
	color: #FFF;	
	text-align: center;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}
.calendarmonth table {
	width: 100%;
	text-align: center;	
}
.calendarmonth td {
	padding-bottom: 5px;	
}
.calendarmonth td a {
	color: #FFF;
	display: inline-block;
	width: 2em;
	height: 2em;
	line-height: 2em;
	border: 2px solid transparent;
	border-radius: 50%;
	color: rgba(255,255,255,0.9);
}
.calendarmonth td.today a {
	border-color: #FFF;	
}
.calendarmonth td a:hover {
	background: #FFC	C4D;	
}
@media (max-width: 1280px) {
	.calendarmonth td a {
		width: 2em;
		height: 2em;
		line-height: 2em;
	}
}




.sidebar .banner {
	border: 1px solid #EEE;
}
.periodmenu {
	padding: 10px 20px 0 20px;
	overflow: hidden;
}
.periodmenu a {
	display: block;
	border: 1px solid #EEE;
	line-height: 24px;
	padding: 10px;
	color: inherit;	
}
.periodmenu a:hover {
	color: #23A4C3;	
}
.periodmenu .active,
.periodmenu .current  {
	font-weight: bold;
}
.periodmenu li {
	padding-top: 10px;	
}
.periodmenu + p {
	padding: 10px 20px;	
}
.periodmenu + p .button {
	display: block;	
}

#dailysection { 
	width: 65.714285714%;
	float: right;
	padding-top: 20px;
}
#dailysection.about {
	padding-top: 60px;	
}
#dailysection .calendar li {
	width: 48%;
	float: left;
}
#dailysection .calendar li:nth-child(even) {
	float: right;
}
#dailysection .calendar {
	overflow: hidden;	
}
.section-title + .aglist h2 {
	margin-top: 0;
}

section.agenda.day .daytitle,
.daytitle,
.aglist h2 {
	padding: 0;
	font-size: 21px;
	background: none;
	margin: 40px 0 20px 0;
	font-size: 21px;
	color: #23A4C3;
}
.calendarbox .image {
	width: 120px;
	float: left;
	position: relative;
}

.calendarbox .image .event_cancelled{
	position: absolute;
	top: 32px;
	left: 50%;
	margin-left: -48px;
	width: 96px;
	text-align: center;
	color: #fff;
	display: block;
	background: #23A4C3;
}

@media (max-width: 500px) {
	.calendarbox .image .event_cancelled{
		margin-left: -37px;
		width: 74px;
		top: 20px;
	}
}

.calendarbox .image.nature:after {
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	bottom: 5px;
	right: 5px;
	background: url("img/leaves.svg") center bottom no-repeat;
	background-size: 100% auto;
}
.calendarbox .image img {
	border-radius: 2px;
	width: 100%;
	height: auto;
}
.calendarbox {
	overflow: hidden;
	margin-bottom: 20px;
}
.calendarbox .body {
	padding: 8px 0 8px 140px;	
}
.calendarbox h3 {
	font-family: inherit;
	font-size: 19px;
	font-weight: normal;
	color: #23A4C3;
	padding: 0;
	margin: 0;
	line-height: 34px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.calendarbox .location,
.calendarbox h4, .calendarbox .time {
	font-family: inherit;
	font-size: 17px;
	color: #000;
	font-weight: normal;
	line-height: 23px;
	padding: 0;
	margin: 0;
}
.calendarbox .location {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}




/**
 * Route listing
 */
.routegroup .introduction {
	position: relative;	
}
.routelist {
	margin: 20px -20px;
	overflow: hidden;
}
.routelist > li {
	width: 320px;
	float: left;
	margin: 20px;
}

.routeplannerbanner {
	text-align: center;
}

#main .route-box header {
	padding-top: 15px;	
}
.route-box header h2 {
	overflow: hidden;
	font-size: 20px;
	color: #23A4C3;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #EEE;
	height: 50px;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.route-box .body,
.location-box .body {
	height: 54px;
	padding: 0 20px 20px 20px;
	line-height: 27px;
	overflow: hidden;
}
.route-box footer,
.location-box footer {
	display: none;	
}
.route-box .body p {
	padding-right: 10px;
	float: left;
}
.route-box .body .icon {
	vertical-align: baseline;
	position: relative;
	top: 2px;
	display: inline-block;
	width: 30px;
	
}

/**
 * Location listing
 */
.routegroup .graphicsubmenu + .intro,
.locationgroup  .graphicsubmenu + .intro {
	padding-top: 0;
}
.routegroup .intro, .locationgroup .intro, .routeholder, .locationholder {
	width: 1040px;
	float: right;
	padding-top: 50px;
}

.listwrap {
	background: #FAFAFA;
	border: 1px solid #EEE;
	margin-bottom: 40px;
	position: relative;
	overflow: hidden;
}

#mapsection {
	position: relative;
	height: 220px;
}

#mapsection #map {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.agenda .sidebar
.newsoverview .sidebar, .searchresults .sidebar, .dealsoverview .sidebar, .agenda .sidebar, .routegroup .sidebar, .locationgroup .sidebar {
	float: left;
	width: 318px;
	background: #FFF;
	border: 1px solid #EEE;
	margin: 60px 0 0 0;
}


.routegroup .intro p,
.locationgroup .intro p {
	padding-bottom: 30px;
}
.locationgroup .sortnav {
	display: none;	
}
.routeholder,
.locationholder {
	border-bottom: 1px solid #EEE;	
	margin-bottom: 40px;
	position: relative;
}
.routeholder .innersize,
.locationholder .innersize {
	max-width: 1050px;
	padding-right: 350px;
}

.routeholder .mapholder,
.locationholder .mapholder {
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: 380px;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.2);	
}
.routeholder .mapholder {
	top: 20px;	
}


.routeholder .mapholder.fixed,
.locationholder .mapholder.fixed {
	top: 0;
	position: fixed;
}
.routeholder #map,
.locationholder #map {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.mapholder .btn {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 1000;
	white-space: nowrap;
	display: block;
	border: 1px solid #EEE;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.05);
	line-height: 40px;
	border-radius: 3px;
	cursor: pointer;
	background: #FFF;
	color: #000;
	padding: 0 20px 3px 20px;
}
.mapholder .btn.showfullscreen:after {
	content: "";
	width: 16px;
	height: 16px;
	display: inline-block;
	background: #FFF url("img/enlarge.png") right center no-repeat;
	padding-left: 10px;
}
.mapholder .btn.hidefullscreen {
	display: none;
}
.mapholder.fullscreen .btn.hidefullscreen {	
	display: block;	
}
.mapholder.fullscreen .btn.showfullscreen {
	display: none;
}


#main .leaflet-popup-content-wrapper {
	border-radius: 0;	
}
#main .leaflet-popup-content {
	margin: 0 0 0 0;
	overflow: hidden;	
}


.poimapbox {
	overflow: visible;
	font-size: 17px;
}
.poimapbox .body {
	padding: 20px;	
}
.poimapbox h2 {
	color: #23A4C3;
	font-size: 20px;
	font-weight: bold;
}
.poimapbox .image {
	padding-top: 0;	
}
.poimapbox .image:empty {
	padding: 0;
	display: none;	
}
.poimapbox .image:empty + .body {
	margin: 0;
}
.poimapbox footer a {
	font-weight: bold;
	color: #23A4C3;
	font-size: 14px;
}
.poimapbox .body h2 {
	padding-bottom: 10px;	
}
.poimapbox .body p {
	margin: 0;
	line-height: 1.4;
	color: rgb(0, 90, 96);	
}

.poimap {
	position: relative;
}
.poimap header {
	text-align: center;	
}
.poimap .poimap {
	margin-bottom: 150px;	
}
.poimap .poimap:before {
	content: "";
	display: block;
	position: absolute;
	left: -100px;
	bottom: -100px;
	top: 100px;
	right: 50%;
	background: #23A4C3 url("img/texture.png");
		
}
.ovlswitcher {
	background: #005A60;
	border-radius: 4px;
	color: #FFF;
	position: absolute;
	bottom: 50px;
	left: 50px;
	padding: 10px;
	z-index: 1000;
}
.ovlswitcher h3 {
	color: #FFF;	
}
.ovlswitcher label {
	display: block;	
	padding: 0 40px;
	line-height: 40px;
	font-weight: normal;
	font-size: 17px;
	cursor: pointer;
	position: relative;
}
.ovlswitcher label:before {
	content: "";
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	left: 0;
	top: 5px;
	border-radius: 50%;
	background: #FFF;	
}
.ovlswitcher label.giethoorn:before {
	background: url("img/lg_giethoorn.png");
	background-size: 100% auto;
}
.ovlswitcher label.natpark:before {
	background: url("img/lg_natpark.png");
	background-size: 100% auto;
}
.ovlswitcher label.steenwijk:before {
	background: url("img/lg_steenwijk.png");
	background-size: 100% auto;
}
.ovlswitcher label.stadjes:before {
	background: url("img/lg_stadjes.png");
	background-size: 100% auto;
}
.ovlswitcher label span {
	position: relative;
	display: block;
}
.ovlswitcher label span:after {
	content: "";
	font-family: icomoon;
	font-size: 9px;
	line-height: 14px;
	text-align: center;
	display: block;
	width: 14px;
	height: 14px;
	background: #FFF;
	position: absolute;
	right: -20px;
	top: 50%;
	margin-top: -6px;
	border-radius: 2px;
}
.ovlswitcher label input:checked + span:after {
	background: #23A4C3;
	content: "\ea10";
}	
.ovlswitcher label input { 
	display: none;
}




.locationlist {
	overflow: hidden;
}
.locationlist ul.locations {
	margin: 20px -20px;
	overflow: hidden;
}
.locationlist li {
	width: 320px;
	float: left;
	margin: 20px;
	
}
.route-box,
.location-box {
	border: 1px solid #EEE;
	border-radius: 3px;
	position: relative;
	background: #FFF;
	height: 327px;
}
.route-box .image,
.location-box .image {
	background: #FAFAFA;
	height: 186px;
	overflow: hidden;
	position: relative;
}
.location-box .image .ctalabel {
	position: absolute;
	top: 10px;
	right: 10px;
	height: 20px;
	font-size: 12px;
	line-height: 20px;
	display: block;
	background: #FFF;
	color: #23A4C3;
	padding: 0 10px;
	border-radius: 10px;
}
.location-box .image .logos {
	position: absolute;
	bottom: 10px;
	right: 10px;
}

.route-box .image img,
.location-box .image img {
	width: auto;
	height: 100%;
}

.route-box header,
.location-box header {
	position: relative;
	display: block;
	padding: 30px 20px 0 20px;
}
.location-box header .stars {
	line-height: 20px;
	position: absolute;
	top: 10px;	
}
.stars .star:before {
	color: 	#FFCC4D;
}

.location-box header h2 {
	overflow: hidden;
	text-overflow: ellipsis;
	font-family: inherit;
	font-weight: normal;
	font-size: 19px;
	margin: 0;
	padding: 0;
	line-height: 25px;
	max-height: 50px;
	color: #005A60;
	
}
.location-box.prop header h2 {
	height: 25px;
	white-space: nowrap;	
}
.location-box .partner {
	width: 40px;
	height: 40px;
	background: #23A4C3 url("img/horse.png") center center no-repeat;
	background-size: 100% auto;
	display: block;
	position: absolute;
	top: 166px;
	right: 20px;
	border-radius: 50%;
}
.location-box .temp_closed{
	font-weight: bold;
	font-size: 90%;
}

.location-box .body {
	padding: 0 20px 20px 20px;
}
.location-box .city {
	color: 	#23A4C3;
}
.location-box footer {
	display: none;	
}
.location-box .pirprice {
	border: 1px solid #eee;
	height: 34px;
	border-radius: 18px;
	background: transparent;
	font-size: 12px;
	line-height: 34px;
	color: #000;
	padding: 0 10px;
	top: auto;
	left: auto;
	right: 20px;
	bottom: 20px;
}
html[lang=nl] .location-box .pirprice:before {
	content: "vanaf ";	
}
.location-box .pirprice em {
	font-style: normal;
		
}



.backbutton {
	text-align: center;
	display: block;	
}
.backbutton:before {
	font-family: icomoon;
	content: "\e61f";	
}
.backbutton span {
	display: none;	
}



/**
 * The location, deal and event pages
 */
article.itempage {
	padding-top: 40px;
	position: relative;	
}
article.itempage .backbutton {
	width: 50px;
	height: 50px;
	line-height: 50px;
	background: rgba(0,0,0,0.15);
	color: #FFF;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	display: none;
}


article.itempage #share {
	
	top: 200px;	
}
article.itempage:after  {
	content: "";
	display: block;
	clear: both;
	height: 40px;	
}
article.itempage h4 {
	color: inherit;	
}
article.itempage .leftcol {
	width: 680px;
	float: left;
	clear: left;
}
article.itempage .rightcol {
	width: 680px;
	float: right;
}
article.itempage .rightcol.clear {
	clear: right;	
}
article.itempage .mainimage {
	display: block;
	position: relative;	
}
article.itempage .image.nature:after {
	content: "";
	width: 40px;
	height: 40px;
	position: absolute;
	bottom: 20px;
	right: 20px;
	background: url("img/leaves.svg") center bottom no-repeat;
	background-size: 100% auto;
}

article.itempage .mainimage .logos {
	position: absolute;
	bottom: 30px;
	right: 30px;		
}

article.itempage .mainimage .icon {	display: none;	}
html[lang=nl] article.itempage .mainimage .icon { display: block; }

article.itempage .mainimage .grouplogos {
	position: absolute;
	right: 20px;
	bottom: 20px;
	height: 50px;
	line-height: 50px;
	
}
article.itempage .mainimage .grouplogos img {
	height: 100%;
	width: auto;
	vertical-align: bottom;
	margin: 0 0 0 20px;
}
article.itempage .mainimage .icon.Steenwijk img { background: #F17C00; }
article.itempage .mainimage .icon.Giethoorn  img { background: #23A4C3; }
article.itempage .mainimage .icon.Zuiderzee img {  background: #005A60; }
article.itempage .mainimage .icon.Nationaalpark img { background: #FFCC4D; }
article.itempage .mainimage .icon img {
	position: absolute;
	left: 10px;
	bottom: 10px;
	padding: 20px;
	height: 10%;	
	width: auto;
	border-radius: 5px;
}
article.itempage .readmore { 
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: opacity 1s;
}
article.itempage .readmore.visible {
	height: auto;
	overflow: hidden;
	opacity: 1;	
}
article.itempage .button {
	background: #F17C00;	
}
article.event .collage,
article.location .collage {
	width: 100%;
	float: left;	
}
article.event #location {
	overflow: hidden;	
}
article.event #location img  {
	float: left;
	margin-right: 20px;
}
article.event #location h4 {
	font-size: 13px;
}
article.event #location h4 a:hover {
	color: #23A4C3;	
}
article.event #location dl.infolist dd:before {
	display: none;	
}
article.event #location dl.infolist dd {
	padding-left: 0;	
}

article.event #when .struct.cancelled {
	opacity: 60%;
}

article.itempage #pointermap {
	height: 640px;
	clear: both;
}

article.deal header {
	display: block;
	height: 140px;
	padding-bottom: 50px;
	padding-top: 30px;
	position: relative;
	z-index: 100;
}
article.deal header h1 {
	padding: 80px 0 10px 0;
	color: #005A60;
	font-size: 60px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
article.deal header h2 {
	position: absolute;
	top: 50px;
	font-family: GrandHotel, sans-serif;
	font-size: 46px;
	font-weight: normal;
	color: #23A4C3;
}
article.deal .collage {
	margin-top: 40px;
	position: relative;	
}
article.deal .collage .image1 img {
	width: 100%;
	height: auto;
	position: absolute;
	left: 0;
	top: 0;
}

article.deal .collage .image1 {
	position: relative;
	padding-top: 70.588235294%;
}
article.deal .collage .image2,
article.deal .collage .image3 {
	width: 33.823529412%;
	position: absolute;
	top: 70%;
	left: 5.882352941%;
}
article.deal .collage .image2 img,
article.deal .collage .image3 img {
	width: 100%;
	height: auto;
	border: 5px solid #FFF;
	border-radius: 50%;
	
}
article.deal .collage .image3 {
	top: 90%;
	width: 23.529411765%;
	left: 33.823529412%;
}


article.deal .ctabox {
	margin: 20px 0;
	border: 1px solid #EEE;
	padding: 20px;
	overflow: hidden;
	line-height: 50px;
}
article.deal .ctabox .button {
	float: right;
}
article.deal .ctabox h3 {
	float: left;
	color: #005A60;
	margin-right: 10px;
	font-size: 19px;
	line-height: 50px;
	transform: translate(0,3px);
}
article.deal .ctabox p {
	float: left;		
}
article.deal .ctabox .price {
	font-size: 23px;
	vertical-align: baseline;
}
article.deal .ctabox .price span {
	font-size: 17px;
}

article.deal .markdown ul {
	background: #FAFAFA;
	padding: 20px 0;
}
article.deal .markdown ul li {
	padding-left: 80px;
	position: relative;
	list-style-type: none;
}
article.deal .markdown ul li:before {
	content: "";
	display: block;
	position: absolute;
	top: 14px;
	left: 40px;
	width: 14px;
	height: 14px;
	background: url("img/deal_bullet.png") 0 0 no-repeat;
}

article.contactform header {
	padding-top: 46px;
}
article.event header,
article.location header {
	display: block;
	padding-bottom: 50px;
	padding-top: 46px;
	position: relative;
	z-index: 100;	
}
article.event header h1,
article.location header h1 {


}
article.location header .stars {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
article.event header .bookbutton,
article.location header .bookbutton {
	position: absolute;
	left: 0;
	bottom: 0;
}

article.itempage .leftcol .grouplist {
	background: #23A4C3 url("img/texture.png");
	color: #FFF;
}
article.itempage .leftcol .grouplist h2 {
	color: #FFF;	
}
article.itempage .leftcol .grouplist a {
	color: #FFCC4D;	
}
article.itempage .leftcol .grouplist a:hover {
	color: #FFF;	
}

article.itempage .leftcol h2 {
	color: #005A60;
	font-size: 20px;
}
article.itempage .leftcol section {
	border: 1px solid #EEE;
	border-radius: 3px;
	padding: 30px;
	margin-top: 40px;
}

article.itempage .leftcol section.temp_closed {
	border: 3px dotted #FFCC4D;
}

article.itempage .leftcol section.temp_closed .remark{
	font-weight: bold;
	color: #23A4C3;
}

article.itempage .leftcol #bookbutton {
	border-color: transparent;
	padding-top: 0;
	padding-bottom: 0;
}
article.itempage .leftcol #bookbutton a {
	display: block;
	text-align: center;	
}

article.deal section {
	clear: both;
}
article.deal section.locations {
	padding-top: 100px;
}
article.deal section.locations h5 {
	color: #005A60;	
}


article.deal section {
	clear: both;
}
article.deal section.locations {
	padding-top: 100px;
}
article.deal section.locations h2 {
	text-align: center;
	color: #005A60;
	margin-bottom: 1em;
}






.deal .locations ul {
	overflow: hidden;	
}
.deal .locations li  {
	width: 680px;
	float: left;
	border-bottom: 1px solid #EEE;
	
}
.deal .locations li a {
	display: block;
	height: 80px;
	padding: 20px 40px 20px 150px;
	position: relative;
}
.deal .locations li a:after {
	display: block;
	vertical-align: top;
	font-weight: bold;
	width: 1em;
	content: "\e622";
	font-size: 17px;
	width: 20px;
	position: absolute;
	top: 50%;
	color: #23A4C3;
	margin-top: -8px;
	right: 10px;
	font-family: icomoon;
	transition: right 0.15s linear;
}
.deal .locations li a:hover:after {
	right: 2px;	
}
.deal .locations li:nth-child(even) {
	float: right;	
}
.deal .locations li .image {
	position: absolute;
	background: #EEE;
	top: 20px;
	left: 0;
	width: 130px;
	height: 80px;
	border-radius: 2px;
}
.deal .locations li .image img {
	width: 100%;
	height: auto;
	border-radius: 2px;
}
.deal .locations li p,
.deal .locations li h4 {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;	
}
.deal .locations li p {
	color: #000;	
}

#contactform {
	border-top: 3px dotted #FFCC4D;
	padding-top: 40px;
}
#contactform h2 {
	color: #005A60;
}
#contactform .error {
	color:	#23A4C3;
}
#contactform .error ul,
#contactform .error li {
	margin: 0;
	padding: 10px 0;
	list-style-type: none;
}
#contactform label {
	float: none;
	display: block;
	padding-bottom: 20px;
	width: auto;
	color: #23A4C3;
}
#contactform .req_warning {
	display: block;
	font-size: 15px;
}
#contactform .req_warning em {
	font-style: normal;
	color: #23A4C3;	
}
#contactform li {
	padding-bottom: 30px;
}
#contactform .req_warning:first-letter,
#contactform label:first-letter {
		
}
#contactform .ctemail, #contactform .ctphone {
	width: 48%;
	float: left;
	clear: none;
}
#contactform .ctphone {
	float: right;	
}
#contactform input {
	width: 100%;	
}
#contactform textarea {
	height: 120px;	
}



#ctalink {
	text-align: right;
	overflow: hidden;
}
#ctalink strong {
	font-family: ScalaSans,"Lucida Sans",sans-serif;
	font-weight: bold;
	font-size: 20px;
}
#ctalink .button {
	float: right;
	margin: -5px 0 0 1em	
}
@media (max-width: 1040px) {
	
	#ctalink .button {
		margin-top: -10px;
	}
}
@media (max-width: 500px) {
	#ctalink {
		text-align: center;;	
	}
	#ctalink strong {
		display: block;
	}
	#ctalink .button {
		float: none;
		margin: 0;
	}
}





.openingtimes td, .openingtimes th {
	line-height: 1.2;	
}



.siteform li {
	width: 49%;
	float: left;
	clear: none;
	padding: 0 0 0 1%;
}
.siteform .errors li {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;	
}
.siteform .witherror input {
	border-color: red;	
}
.siteform li.altset {
	clear: both;
	width: 100%;
}
.siteform li:nth-child(odd){
	padding: 0 1% 0 0;
	clear: left;
}
form li label.inline input:checked + span:before, form li label.inline:before {
	width: 14px;
	height: 14px;
	line-height: 14px;
	font-size; 10px;
	text-align: center;
	display: block;
	border: 1px solid #CCC;
	top: 16px;	
}


#wrapper .siteform li label {
	padding-top: 10px;
	display: block;
	float: none;
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-bottom: 10px;
}
#wrapper .siteform li label.inline {
	white-space: normal;
	text-align: left;
}
#wrapper .siteform li input {
	width: 100%;
	vertical-align: top;
}
#wrapper .siteform li .selectbox {
	width: 100%;
	vertical-align: top;
}
#wrapper .siteform li textarea {
	height: 120px;
	vertical-align: top;
}
#bookform p.buttons {
	text-align: center;
}	


#galleryslider .inner {
	height: 110px;
	padding-top: 20px;
	overflow: auto;
}
#galleryslider.fancy .inner {
	overflow: hidden;	
}
#galleryslider ul {
	white-space: nowrap;
	height: 90px;
}
#galleryslider li {
	display: inline-block;
	padding-left: 10px;
}
#galleryslider li a {
	display: block;
	width: 128px;
	height: 90px;
	background: #000;
	overflow: hidden;
	position: relative;
}
#galleryslider li a.video:after ,
#galleryslider li a.frame:after {
	display: block;
	content: "";
	background: url("img/360.png") center center no-repeat;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: absolute;
}
#galleryslider li a.video:after {
	background: url("img/video.png") center center no-repeat;
}
#galleryslider li a img {
	height: 100%;
	width: auto;	
}
#galleryslider li:first-child {
	padding-left: 0;
}	




.prevnextbuttons {
	width: 130px;
	height: 60px;
}

.prevnextbuttons a {
	color: #FFF;
	width: 60px;
	height: 60px;
	display: block;
	float: left;
	background: #005A60;
	text-align: center;
	line-height: 60px;
	border-radius: 50%;
	margin-left: 5px;
	cursor: pointer;
}
.prevnextbuttons a:hover {
	background: #F17C00;
}
.prevnextbuttons a:before {
	font-family: icomoon;
	color: #FFF;
	content: "\e622"
}
.prevnextbuttons a.prev {
	background: #23A4C3;	
}
.prevnextbuttons a.prev:hover {
	background: #F17C00;	
}
.prevnextbuttons a.prev:before {
	content: "\e61f";
}
.prevnextbuttons span {
	display: none;	
}


/**
 * pir pages
 */
.pir-module .innersize .maintitle {
	margin: 0;
	padding-top: 100px;
	
}
.pir-module .innersize {
	width: 680px;
	margin: 0 auto;
	position: relative;
}
.pir-module .innersize .mainbar,
.pir-module .innersize .sidebar {
	width: 100%;
	float: none;
	margin: 20px 0;	
}
.pir-module .innersize .sidebar .details {
	background: none;
	padding: 0;
}
.pir-module .sidebar .details > .wrap:first-child {
	padding: 0;	
}

.pir-module #steps {
	height: 40px;
	position: absolute;
	top: 0;
	left: -10px;
	right: 0;
	font-size: 15px;
}
.pir-module #steps h3 {
	display: none;

}
.pir-module #steps li {
	display: inline-block;
	padding: 0;
	margin-left: 0;
	color: #d0d0d0;
}
.pir-module #steps li.current {
	border: none;
}
.pir-module #steps li a {
	line-height: 38px;
	display: block;
	border: 1px solid #EEE;
	border-radius: 3px;
	padding: 0 10px;
	color: #000;
}
.pir-module #steps li.current a {
	border-color: #23A4C3;
}
.pir-module #steps li a:hover {
	color: #23A4C3;
}
.pir-module #bookingsidebar h3 {
	color: #005A60;
	font-size: 17px;
	
}
.pir-module #bookingsidebar {
	position: absolute;
	z-index: 10;
	top: 42px;
	left: -10px;
	padding: 10px;
	border: 1px solid transparent;
	border-top: 0;
	background: #FFF;
	border-radius: 3px;
}
.pir-module #bookingsidebar .body {
	display: none;
}
.pir-module #bookingsidebar:hover {
	border-color: #EEE;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);

}
.pir-module #bookingsidebar:hover .body {
	display: block;
	padding: 20px 20px 20px 0;
}

#pir_confirm label,
#pir_details label {
	line-height: 1.3;	
}
#pir_details li.field_salutation {
	width: 50%;	
}
#pir_details li.field_firstname {
	clear: left;	 
}
#pir_details li.field_firstname,
#pir_details li.field_lastname {
	width: 40%;	
}
#pir_details li.field_insertion {
	width: 20%;
}
	
/**
 * The route page
 */
.route h1 {
	padding: 40px 0 20px;
	margin: 0;	
}
.route div.image img {
	width: 100%;
	height: auto;	
}

.route .propertylist {
	background: #23A4C3;
	color: #fff;
}

.route .propertylist h4{
	color: #FFCC4D;
}

.route .infocolumn {
	margin-left: 0;	
	float: left;
	clear: left;
	width: 50%;
	padding:  0 20px 0 0;
	box-sizing: border-box;
}
.route #map {
	padding: 70px 0 0 20px;
}
.route .markdown p {
	margin-bottom: 20px;	
}
.route .markdown h2 {
	border-top: 1px solid #EEE;
	padding-top: 20px;
	padding-bottom: 10px;
	font-size: 17px;
}
#poilist h2 a,
#poilist h2 {
	font-family: inherit;
	font-weight: normal;
	color: #005A60;
	font-size: 19px;
}	
#poilist .body h2 {
	color: inherit;
	margin-bottom: 0;	
}
#poilist header ~ * {
	height: 0;
	overflow: hidden;
	opacity: 0;	
	transition: opacity 0.5s linear;
}
#poilist header.open ~ * {
	height: auto;
	overflow: hidden;
	opacity: 1;	
}

#poilist .POI h2 a {
	cursor: pointer;
	display: block;
	position: relative;
	padding-right: 120px;
}
#poilist .POI h2 a:before {
	position: absolute;
	right: 17px;
	top: 2px;
	content: "uitklappen";
	color: #23A4C3;
	font-size: 17px;
}
#poilist .POI h2 a:after {
	position: absolute;
	right: 0;
	top: 6px;
	font-family: icomoon;
	content: "\e620";
	color: #23A4C3;
	font-size: 17px;
}
#poilist .POI header.open h2 a:after {
	content: "\e621";
}
#poilist .POI header.open h2 a:before {
	content: "inklappen";
}
.route #share {
	right: 0;
	top: 20px;
	left: auto;
	bottom: auto;
	margin: 0;
}
.route #share h3 {
	padding-top: 0;
	padding-right: 10px; /*90px;*/
}

.route .fixed ~ footer {
	position: fixed;
}
.route .fixed ~ footer #share {
	margin-right: 20px;	
}
.route footer {
	position: absolute;
	top: 0;
	padding: 10px 0;
	right: 0;
	width: 50%;
	text-align: left;
	background: #FFF;
}
.route.downloads {
	margin: 0;
	padding: 0 20px;
	position: static;
	text-align: left;
}	
.route.downloads li {
	display: inline-block;	
}
.route.downloads li:before {
	display: none;	
}
.route.downloads li a {
	display: block;
	color: #23A4C3;	
	border: 1px solid #23A4C3;
	line-height: 48px;
	padding: 0 20px;
}
.route.downloads li a:hover {
	color: #FFF;
	background: #23A4C3;
}





figure.bannerslide {
	position: relative;
	overflow: hidden;
	min-height: 360px;
}
figure.bannerslide:before {
	content: "";
	float: left;
	display: block;
	padding-top: 50%;
}
figure.bannerslide img {
	height: 100%;
	width: auto;
	position: absolute;
	top: 0;
	bottom: 0;	
}
figure.bannerslide .body {
	width: 50%;
	max-width: 720px;
	left: 50%;
	bottom: 80px;
	text-align: left;
	position: absolute;
}
figure.bannerslide .box {
	float: right;
	position: relative;
	margin-right: 20px;
	padding: 40px;
	color: #FFF;
	background: #23A4C3 url("img/texture.png");

}
figure.bannerslide .box:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #23A4C3 url("img/texture.png");
	z-index: 2;
}
figure.bannerslide .box .text,
figure.bannerslide .box h2 {
	position: relative;
	z-index: 3;
	color: #FFF;
	font-weight: normal;
}
figure.bannerslide .box span {
	display: block;	
}
figure.bannerslide .box h2 {
	font-family: GrandHotel, sans-serif;
	font-size: 40px;
	line-height: 50px;
	margin: 0;
	padding-bottom: 0;

}
figure.bannerslide .box a {
	color: #FFF;
	line-height: 32px;
}
figure.bannerslide .box a:after {
    display: inline-block;
    vertical-align: bottom;
    font-weight: normal;
    width: 1em;
    content: "\e622";
    margin-left: 3px;
    position: relative;
    bottom: -3px;
    width: 20px;
    font-family: icomoon;
    transition: margin 0.15s linear;
    color: #FFCC4D;
}
figure.bannerslide .box a:hover:after {	
	margin-left: 8px;
}
/**
 * Default static page
 */
article.page {
	padding-top: 40px;
	overflow: hidden;
}
article.page #share {
	top: 40px;	
}
/**
 * At full width, every 5th article is highlighted as well. 
 */
@media (min-width: 1440px) {
	
	
	.bloglisting li:nth-child(6n),
	.bloglisting li:nth-child(6n+1) {
		width: 680px;
	}
	.bloglisting li:nth-child(6n) .articlebox .image,
	.bloglisting li:nth-child(6n+1) .articlebox .image {
		height: 100%;
	}
	.bloglisting li:nth-child(6n) .articlebox .image img,
	.bloglisting li:nth-child(6n+1) .articlebox .image img {
		margin: 0;	
	}
	.bloglisting li:nth-child(6n) .articlebox .body,
	.bloglisting li:nth-child(6n+1) .articlebox .body {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 260px;
		color: #FFF;
		background: #23A4C3 url("img/texture.png");
		overflow: hidden;
	}
	.bloglisting li:nth-child(6n) .articlebox h3,
	.bloglisting li:nth-child(6n+1) .articlebox h3 {
		color: #FFF;	
	}
	.bloglisting li:nth-child(6n) .articlebox .author,
	.bloglisting li:nth-child(6n+1) .articlebox .author {
		bottom: 20px;
		left: 360px; 
		text-align: right;
		line-height: 58px;
	}
	.bloglisting li:nth-child(6n) .articlebox .author_image:before,
	.bloglisting li:nth-child(6n+1) .articlebox .author_image:before {
		background-image: url("img/white_barrow.svg");
		top: 40px;
	}
	.bloglisting li:nth-child(6n) .articlebox .body p:after,
	.bloglisting li:nth-child(6n+1) .articlebox .body p:after {
		color: #FFCC4D;
	}
	
	#mainmenu a.main.active:after {
		content: "";
		display: block;
		left: 20px;
		right: 20%;
		position: absolute;
		bottom: -15px;
		height: 0;
		border: 1px solid #F17C00;
		border-radius: 2px;
	}
}

@media (max-width: 1560px) {
	body:after {
		display: none;	
	}
}	
	
@media (max-width: 1440px) {
	
	.simplebloglist {
		width: 720px;
		margin: 0 auto;
	}
	#share {
		right: 20px;
		margin-right: 0;
	}	
	.innersize {
		margin: 0 20px;	
	}
	
	#pagefooter .newsletterbox .subscribe_fields {
		float: none;	
	}
	#pagefooter .newsletterbox p {
		float: none;
		width: auto;
	}
	
	#pagefooter .newsletterbox,
	#pagefooter .footernav {
		width: 440px;
		margin-right: 0;	
	}
	
	#main article.deal .locations li,
	article.itempage .rightcol,
	article.itempage .leftcol,
	article.itempage header {
		width: auto;
		max-width: 800px;
		margin: 0 auto;
		float: none;
		clear: both;
	}
	


	article.deal header {
		text-align: center;	
	}
	article.deal header:after {
		margin: -20px auto 20px;
	}
	article.deal header h2 {
		width: 100%;	
	}
}



@media (min-width: 1080px) and (max-width: 1440px) {
	
	
	#mainmenu a.main.active:after {
		content: "";
		display: block;
		left: 20px;
		right: 20%;
		position: absolute;
		bottom: -10px;
		height: 0;
		border: 1px solid #23A4C3;
		border-radius: 2px;
	}
	
	.intro,
	.routegroup .introduction,
	.locationgroup .introduction {
		margin: 0 auto;	
		width: 1080px;
		padding: 0;
	}
	.routeplannerbanner {
		left: 720px;	
	}
	
	.graphicsubmenu,
	.bloglisting {
		padding: 40px 0;
		margin: 0 auto;	
		width: 1080px;
	}
	
	.routeholder .innersize,
	.locationholder .innersize {
		width: 730px;
		margin: 0 auto;	
	}
	.routeholder .mapholder,
	.locationholder .mapholder {
		margin-left: 180px;
		
	}
	
	.graphicsubmenu.halfwidth {
		width: auto;	
	}

	
	.bloglisting.n6 li:nth-child(4),
	.bloglisting.n6 li:nth-child(5),
	.bloglisting li:nth-child(10n+7),
	.bloglisting li:nth-child(10n+1) {
		width: 680px;
	}
	.bloglisting.n6 li:nth-child(4)  .articlebox .image,
	.bloglisting.n6 li:nth-child(5)  .articlebox .image,
	.bloglisting li:nth-child(10n+7) .articlebox .image,
	.bloglisting li:nth-child(10n+1) .articlebox .image {
		height: 100%;
	}
	
	.bloglisting.n6 li:nth-child(4) .articlebox .image img,
	.bloglisting.n6 li:nth-child(5) .articlebox .image img,
	.bloglisting li:nth-child(10n+7) .articlebox .image img,
	.bloglisting li:nth-child(10n+1) .articlebox .image img {
		margin: 0;	
	}
	.bloglisting.n6 li:nth-child(4) .articlebox .body,
	.bloglisting.n6 li:nth-child(5) .articlebox .body,
	.bloglisting li:nth-child(10n+7) .articlebox .body,
	.bloglisting li:nth-child(10n+1) .articlebox .body {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 260px;
		color: #FFF;
		background: #23A4C3 url("img/texture.png");
		overflow: hidden;
		
	}
	.bloglisting.n6 li:nth-child(4) .articlebox h3,
	.bloglisting.n6 li:nth-child(5) .articlebox h3,
	.bloglisting li:nth-child(10n+7) .articlebox h3,
	.bloglisting li:nth-child(10n+1) .articlebox h3 {
		color: #FFF;	
	}
	.bloglisting.n6 li:nth-child(4) .articlebox .author,
	.bloglisting.n6 li:nth-child(5) .articlebox .author,
	.bloglisting li:nth-child(10n+7) .articlebox .author,
	.bloglisting li:nth-child(10n+1) .articlebox .author {
		bottom: 20px;
		left: 360px; 
		text-align: right;
		line-height: 58px;
	}
	.bloglisting.n6 li:nth-child(4) .articlebox .author_image:before,
	.bloglisting.n6 li:nth-child(5) .articlebox .author_image:before,
	.bloglisting li:nth-child(10n+7) .articlebox .author_image:before,
	.bloglisting li:nth-child(10n+1) .articlebox .author_image:before {
		background-image: url("img/white_barrow.svg");
		top: 40px;
	}
	.bloglisting.n6 li:nth-child(4) .articlebox .body p:after,
	.bloglisting.n6 li:nth-child(5) .articlebox .body p:after,
	.bloglisting li:nth-child(10n+7) .articlebox .body p:after,
	.bloglisting li:nth-child(10n+1) .articlebox .body p:after {
		color: #FFCC4D;
	}
}

@media (max-width: 1250px) and (min-width: 1000px) {
	#mainmenu  li .submenu {
		display: none;	
	}
	#mainmenu a.main {
		white-space: normal;
		margin-top: 35px;
		transform: translate(0,-50%);
	}
	html #headerbox .foldout {
		padding: 0 0 0 120px;	
	}
	
	.foldout .menu .n2 {
		display: block;
		position: absolute;
		right: auto;
		left: -120px;
		bottom: 0;
		background: url("img/logo_np.png") center center no-repeat;
		width: 103px;
		height: 89.5px;
		background-size: 100% auto;
	}

	#headerbox .searchform form {
		margin: 0 20px 0 0
	}
	
}
@media (max-width: 1200px) {
	.route.downloads a span {
		display: none;	
	}
	.route.downloads a.pdf:before {
		content: "PDF";	
	}
	.route.downloads a.gpx:before {
		content: "GPX";	
	}	
}

@media (max-width: 1080px) {

	html body {
		font-size: 15px;
	}

	.graphicsubmenu li {
		width: 50%;	
	}
	
	.graphicsubmenu li a {
		font-size: 17px;	
	}
	

	.routegroup .intro,
	.locationgroup .intro {
		text-align: center;
	}
	
	.routeholder .innersize,
	.locationholder .innersize {
		padding: 0;
	}
	.routeholder .mapholder,
	.locationholder .mapholder {
		position: fixed;
		margin: 0;
		padding: 0;
		width: 100%;
		height: 100%;
		top: 0;
		left: 100%;	
	}


		
	article.deal .markdown ul li:before {
		top: 10px;
	}
	figure.bannerslide .box a:after {
		bottom: -2px;
	}
	.markdown blockquote {
		font-size: 19px;
		line-height: 37px;
	}
	p.lead {
		font-size: 19px;
		line-height: 1.9;
		color: #23A4C3;
	}

	.markdown h2 {
		font-size: 20px;
		line-height: 30px;
	}
	.markdown h3 {
		font-size: 19px;	
	}

	.routegroup .introduction,
	.intro,
	.graphicsubmenu,
	.routeholder,
	.filtering,
	.locationholder {
		margin: 0 auto;	
		width: 720px;
	}

	.routeplannerbanner {
		left: auto;
		right: 0;
		bottom: 31px;
	}
	.blogoverview .filtering {
		width: 680px;
	
	}
	.bloglisting {
		padding: 40px 0;
		margin: 0 auto;	
		width: 720px;
	}
	
	.bloglisting li:nth-child(12n+6),
	.bloglisting li:nth-child(12n+1) {
		width: 680px;
	}
	.bloglisting li:nth-child(12n+6) .articlebox .image,
	.bloglisting li:nth-child(12n+1) .articlebox .image {
		height: 100%;
	}
	.bloglisting li:nth-child(12n+6) .articlebox .image img,
	.bloglisting li:nth-child(12n+1) .articlebox .image img {
		margin: 0;	
	}
	.bloglisting li:nth-child(12n+6) .articlebox .body,
	.bloglisting li:nth-child(12n+1) .articlebox .body {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 260px;
		color: #FFF;
		background: #23A4C3 url("img/texture.png");
		overflow: hidden;
	}
	.bloglisting li:nth-child(12n+6) .articlebox h3,
	.bloglisting li:nth-child(12n+1) .articlebox h3 {
		color: #FFF;	
	}
	.bloglisting li:nth-child(12n+6) .articlebox .author,
	.bloglisting li:nth-child(12n+1) .articlebox .author {
		bottom: 20px;
		left: 360px; 
		text-align: right;
		line-height: 58px;
	}
	.bloglisting li:nth-child(12n+6) .articlebox .author_image:before,
	.bloglisting li:nth-child(12n+1) .articlebox .author_image:before {
		background-image: url("img/white_barrow.svg");
		top: 40px;
	}
	.bloglisting li:nth-child(12n+6) .articlebox .body p:after,
	.bloglisting li:nth-child(12n+1) .articlebox .body p:after {
		color: #FFF;
	}	
	
	#pagefooter h3 {
		padding: 30px 0 10px 0;
		font-size: 18px;
	}
	#pagefooter .innersize {
		background-size: 300px 278px;
		background-position: right 200px;
	}
	#pagefooter .footernav article .lwr,
	#pagefooter .footernav article {
		float: none;
		margin-right: 0;	
	}
	
	.pagehead h1 span {
		font-size: 60px;
	}	
	.pagehead h1 span em {
		font-size: 50px;
	}

}


/**
 * formpage 
 */
.formcontext  {
	overflow: hidden;
	margin: 20px 0;
	position: relative;
	
}	
.formcontext .banner {
	width: 160px;
	height: 160px;
	position: relative;
	overflow: hidden;
	float: left;
}
.formcontext .banner:after {
	content: "";
	width: 63.636363636%;
	height: 63.636363636%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	background: #23A4C3 url("img/texture.png");
	z-index: 1;	
}
.formcontext .banner img {
	position: absolute;
	width: 100px;
	height: 100px;
	bottom: 0;
	right: 0;
	mix-blend-mode: multiply;
	z-index: 2;
}
.formcontext .banner + .text {
	left: 180px;
	right: 0;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
}
.formcontext .text h3 {
	line-height: 1.2;	
}

@media (max-width: 600px) {
	.formcontext .banner {
		width: 100px;
		height: 100px;
	}
	.formcontext .banner img {
		width: 64px;
		height: 64px;
	}
	.formcontext .banner + .text {
		left: 120px;	
	}
}




@media (max-width: 1080px) {
	html body {
		font-size: 15px;
	}


	.agenda .sidebar {
		float: none;
		width: auto;
		max-width: 720px;
		margin: 50px 0 0 0;
		border: none;
		background: transparent;	
	}
	
	.agenda .sidebar {
		margin: 50px auto 0 auto;
		padding-bottom: 40px;
	}
	.agenda .sidebar:after {
		content: "";
		display: block;
		clear: both;		
	}
	#dailysection {
		margin: 0 auto;
		float: none;
		width: 720px;
		max-width: 720px;	
	}
	 
	 
	.calendarmonth {
		margin-bottom: 20px;	
	}

	.calendarbtnsection {
		width: auto;
		margin: 0 auto;
	}
		
	.calendarcontents .calendarnav { 
		float: left;
		width: 48%;
	}
	.calendarcontents .filtering {
		width: 48%;
		float: right;
	}
	.calendarcontents .filtering #filterbar {
		padding-top: 0;
	}
	
	.agenda .sidebar {
		margin: 0 auto;
		padding-top: 20px;
		padding-bottom: 0;	
	}
	.sidebar .banner {
		display: none;	
	}
	.periodmenu {
		margin: 0;
		padding: 0;
		width: 48%;
		float: left;
	}
	.eventgroup .periodmenu {
		width: auto;
		float: none;	
	}
	.periodmenu li {

		width: 32.33%;
		float: left;
		padding: 0 1.5% 1.5% 0;	
	}
	.periodmenu li:nth-child(3n) {
		padding-right: 0;	
	}
	.periodmenu a {
		padding: 12px 10px;	
	}
	
	
}
@media (max-width: 1000px) {
	
	#footerimages {
		display: none;	
	}
	.breadcrumbs ol {
		margin-left: 0;
	}
	
	
	#showmenu:checked + #wrapper #togglemenu {
		border-radius: 3px 0 0 0;	
	}
	#togglemenu {
	  display: block;
	  width: 55px;
	  height: 55px;
	  line-height: 55px;
	  text-align: center;
	  position: absolute;
	  top: 0;
	  left: 0;
	  background: #FFF;
	  cursor: pointer;
	  border-radius: 3px 0 0 3px;
	}
	.burger-x {
		position: absolute;
		top: 45%;
		left: 0;
		display: block;
		width: 26px;
		height: 4px;
		border-radius: 2px;
		background-color: #23A4C3;
		font-size: 0;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-transition: all 225ms ease;
		transition: all 225ms ease;
		margin-left: 14px;
	}
	.burger-x:after,
	.burger-x:before {
		position: absolute;
		border-radius: 2px;
		left: 0;
		width: 100%;
		height: 100%;
		background: #23A4C3;
		content: '';
		-webkit-transition: all 225ms ease;
		transition: all 225ms ease;
	}
	.burger-x:before {
		-webkit-transform: translateY(-200%);
		transform: translateY(-200%);
	}
	.burger-x:after {
		-webkit-transform: translateY(200%);
		transform: translateY(200%);
	}
	#showmenu:checked + #wrapper > #pageheader .burger-x {
		background-color: transparent !important;
	}
	#showmenu:checked + #wrapper > #pageheader .burger-x:before {
		-webkit-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#showmenu:checked + #wrapper > #pageheader .burger-x:after {
		-webkit-transform: translateY(0) rotate(-45deg);
		transform: translateY(0) rotate(-45deg);
	}
	
	
	#pageheader #headerbox {
		top: 20px;
		height: auto;
		padding: 55px 110px 0 200px;
	}
	#headerbox .foldout {
		margin: 0 -110px 0 -200px;
		padding: 0;
	}
	
	
	#headerbox .searchform form {
		padding: 3px 90px 3px 40px;;
		margin-right: 0;
	}
	
	#headerbox .searchform .button {
		right: 10px;
		height: 40px;
		line-height: 40px;
		top: 8px;
	}
	#pageheader #logo {
		height: 45px;
		top: 5px;
		left: 55px;	
	}
	#pageheader .labelbox {
		width: 55px;
		height: 55px;	
	}
	#pageheader .labelbox label {
		width: 55px;
		height: 55px;
		line-height: 55px;
	}
	#pageheader #langselect {
		right: 55px;	
	}
	#pageheader #langmenu {
		top: 55px;
		left: auto;
		right: -55px;
	}
	#pageheader #mainmenu {
		position: absolute;
		display: none;
		top: 55px;
		left: 0;
		right: 0;
		background: #FFF;
		border-top: 1px solid #EEE;
		z-index: 100;
		height: auto;
		box-shadow: 0 0 8px rgba(0,0,0,0.1);
	}
	#pageheader #mainmenu li.main {
		float: none;
		width: auto;
		border-left: none;
		border-top: 1px solid #EEE;
		padding: 10px 0;
		margin: 0 20px;
		height: auto;
	}
	#pageheader #mainmenu li.main:after {
		display: block;
		vertical-align: top;
		font-weight: bold;
		width: 1em;
		content: "\e622";
		font-size: 17px;
		width: 20px;
		position: absolute;
		top: 50%;
		color: #23A4C3;
		margin-top: -8px;
		right: 10px	;
		font-family: icomoon;
	}
	#pageheader #mainmenu li.main:first-child {
		border: none;
	}
	#pageheader #mainmenu .submenu {
		width: 200px;	
	}
	#pageheader #mainmenu ul.submenu:after {
		display: none;	
	}
	
	#pageheader #mainmenu .submenu a[href] {
		display: inline;
	}
	#headerbox .foldout.visible {
		display: none;
	}
	
	
	
	
	.pagehead.fullheader .image {
		height: 340px;
		position: relative;
	}

	.pagehead.fullheader .image img {
		height: 100%;
		width: auto;
		position: absolute;
		left: 50%;
		margin-left: -500px;
	}
	
	.pagehead h1,
	.pagehead + .breadcrumbs {
		top: 90px;	
	}
	
	.breadcrumbs {
		padding-top: 80px;
	}
	
	.routegroup .filtering {
		display: inline-block;
		width: auto;
		background: none;
	}
	.routeplannerbanner {
		position: static;
		display: inline-block;
		margin-left: 6px;
	}
	.routegroup .introduction {
		background-image: linear-gradient(to right, #FFCC4D 20%, rgba(255,255,255,0) 0%);
		background-position: left bottom;
		background-size: 10px 2px;
		background-repeat: repeat-x;
	}

}


@media (max-width: 900px) {
	article.page #share {
		top: 20px;	
	}
	.route #map,
	.route .infocolumn {
		float: none;
		width: auto;
		padding: 0;
		margin: 0;
	}
	.route h1 {
		text-align: center;	
	}
	
	.route footer {
		position: relative;
		width: auto;
		top: 0;
		left: 0;
		right: 0;
		padding: 20px 0;
	}
	.route .downloads {
		padding-left: 0;
	}
	.route .propertylist ul {
		overflow: hidden;
		padding: 0;
		border-bottom: 0;
	}

	.route .propertylist ul li {
		width: 49%;
		box-sizing: border-box;
		padding-bottom: 10px;
	}


	.route .propertylist li:nth-child(odd):last-child {
		width: 100%;	
	}
	.route .propertylist h4 {
		width: auto;
		float: none;
		display: block;
	}
	
	
	figure.bannerslide .body {
		width: 75%;
		left: 25%;
		bottom: 60px;
	}



}
@media (max-width: 800px) {
	
	.simplebloglist {
		width: 360px;
		margin: 0 auto;
	}
	.more-articles {
		text-align: right;
	}
	.more-articles a {
		transform: translate(0, 0);
		margin-right: 10px;
	}

	.more-articles:after {
		position: static;
		margin-right: 20px;
		display: inline-block;
	}
	
	.pagehead h1 span {
		font-size: 40px;
	}	
	.pagehead h1 span em {
		font-size: 35px;
	}
	
	.prevnextbuttons {
		width: 100px;
		height: 45px;
	}
	.prevnextbuttons a {
		width: 45px;
		height: 45px;
		line-height: 45px;
	}


	.newsoverview .socialintro {
		padding: 20px;
	}
	.newsitembox {
		margin: 0;
		padding: 20px;
	}
	.newsoverview li:nth-child(even) .newsitembox {
		padding: 19px;
	}
	#main {
		padding-bottom: 70px; 
	}
	

	#pagefooter .innersize {
		padding-top: 50px;		
		padding-bottom: 360px;
		background-position: center bottom 50px;
		background-size: 250px 231px;
		min-height: 0;
	}
	
	#pagefooter .newsletterbox,
	#pagefooter .footernav {
		width: auto;
		max-width: 440px;
		margin: auto;	
		border-bottom: 0;
		padding-bottom: 0;
	}
	#pagefooter .footernav .lwr,
	#pagefooter .footernav .regions {
		width: auto;
		float: none;	
	}
	#pagefooter .newsletterbox p {
		padding: 0 0 20px 0;	
	}
	#pagefooter .newsletterbox input {
		width: 100%;	
	}
	#pagefooter .newsletterbox .button {
		float: none;
		margin-top: 20px;
		width: 100%;	
	}
	#pagefooter .newsletterbox .subscribe_fields,
	#pagefooter .footernav article {
		width: auto;	
	}

}

@media (max-width: 720px) {
	
	#headerbox .searchform .button {
		right: 0;
		top: 0;
		height: 46px;
		line-height: 46px;
		width: 55px;
	}
	#headerbox .searchform .button span {
		display: none;	
	}

	#dailysection {
		margin: 0;
		width: auto;
	}
	
	#dailysection .calendar li:nth-child(even),
	#dailysection .calendar li {
		width: auto;
		float: none;
	}	

	form .selectbox select,
	form .selectbox, form input:not([type="file"]), form textarea, form .filebox,
	input, form .button {
		height: 40px;
		line-height: 40px;
	}
	form .selectbox:before {
		line-height: 40px;
	}

	
	figure.bannerslide .body {
		width: auto;
		left: 20px;
		right: 20px;
		bottom: 40px;
	}	
	figure.bannerslide .box {
		float: none;
		padding: 20px;
		margin-right: 0;
	}

	figure.bannerslide .box h2 {
		font-size: 30px;
		line-height: 40px;
	}


	
	article.deal header h2 {
		font-size: 30px;
		line-height: 40px;	
	}
	
	article.itempage header {
		height: auto;
		text-align: center;
	}
	article.itempage header h1 {
		font-size: 40px;
		line-height: 50px;
		max-height: auto;
		position: static;
		white-space: normal;
	}
	
	
	.pir-module .innersize {
		width: auto;
		margin: 0 20px;
	}
	
	
	#pir_details li.field_salutation {
		width: auto;
		display: block;
		float: none;	
	
	}
	#pir_details li.field_street { 
		width: 100%;	
	}
	#pir_details li.field_city { 
		width: 70%;	
	}
	#pir_details li.field_lastname,
	#pir_details li.field_firstname,
	#pir_details li.field_email,
	#pir_details li.field_phone,
	#pir_details li.field_street {
		width: 100%;	
	}
	#pir_details li.field_house,
	#pir_details li.field_house_addition {
		width: 50%;	
	}
	#pir_details li.field_zipcode,
	#pir_details li.field_insertion {
		width: 30%	
	}
	
	
	.graphicsubmenu,
	.graphicsubmenu.halfwidth {
		width: auto;
	
	} 
	.graphicsubmenu.halfwidth li,
	.graphicsubmenu li {
		width: auto;
		margin: 5px 0;
		float: none;	
	}
	
	
	
	
	.searchresults {
		padding: 20px;	
	}
	
	.searchresults li {
		padding: 5px 0;	
	}
	
	.searchitembox {
		padding: 20px;
	}
	
	
	#pageheader #logo {
		height: 40px;
		top: 8px;
	}
	
	
	
	.routegroup .introduction,
	.intro,
	.graphicsubmenu,
	.routeholder,
	.filtering,
	.locationholder,
	.bloglisting {
		width: auto;	
	}
	.routegroup .introduction {
		margin: 0 20px;	
	}

	
	.routelist li {
		float: none;
		margin: 20px auto;
	}
	
	.locationlist li {
		float: none;	
		margin: 20px auto;
	}
	.bloglisting li {
		float: none;	
		margin: 40px auto;
	}
	
	
	.bloglisting li:nth-child(12n+6),
	.bloglisting li:nth-child(12n+1) {
		width: auto;
		margin: 40px 20px;
	}
	.bloglisting li:nth-child(12n+6) .articlebox .image,
	.bloglisting li:nth-child(12n+1) .articlebox .image {
		overflow: hidden;
		width: 100%;	
	}

	.bloglisting li:nth-child(12n+6) .articlebox .image img,
	.bloglisting li:nth-child(12n+1) .articlebox .image img {
		height: 100%;
		width: auto;
	}
	.graphicsubmenu,
	.graphicsubmenu.halfwidth {
		width: auto;
	
	} 
	.graphicsubmenu.halfwidth li,
	.graphicsubmenu li {
		width: auto;
		margin: 5px 0;
		float: none;	
	}
	
}

@media (max-width: 500px) {
	
	article.event #location img  {
		display: none;
		
	}


	
	article.deal .ctabox .price,
	article.deal .ctabox h3 {
		float: none;
		line-height: 25px;
		text-align: center;
	}
	article.deal .ctabox h3 {
		margin-top: 10px;
		font-size: 17px;
	}
	article.deal .ctabox .price {
		font-size: 17px;
	}
	article.deal .ctabox .price span {
		font-size: 15px;	
	}
	article.deal .markdown ul li {
		padding-left: 40px;	
	}
	article.deal .markdown ul li:before {
		left: 14px;
	}
	article.deal .ctabox .button,
	article.deal .button {
		float: none;
		display: block;
		text-align: center;	
	}
	
	
	.calendarbox .image {
		width: 80px;
		float: left;
	}
	.calendarbox .body {
		padding: 0 0 0 100px;	
	}
	.calendarbox h3 {
		font-size: 17px;
		line-height: 23px;	
	}
	.calendarbox .location,
	.calendarbox h4, .calendarbox .time {
		font-size: 15px;
		line-height: 19px;	
	}
	
	.calendarcontents .periodmenu,
	.calendarcontents .filtering {
		width: auto;
		float: none;
		clear: both;
	}
	.calendarcontents .periodmenu {
		padding-bottom: 10px;	
	}
	

	
	.newsoverview .innersize {
		margin: 0;	
	}
	.newsitembox {
		margin: 0;
		padding: 20px;
	}
	.newsitembox h3 {
		font-size: 20px;
		line-height: 30px;	
	}
	.newsoverview li:nth-child(even) .newsitembox {
		padding: 40px 20px;
		border: none;
	}
	.newsitembox time {
		margin: 0;
	}
	.newsitembox .body,
	.newsitembox .image {
		width: auto;
		float: none; 
	}


	#wrapper .siteform li {
		width: auto;
		float: none;
		clear: none;
		padding: 0;
	}

}

@media (max-width: 460px) {
	.route.downloads {
		padding: 55px 0 0 0;
		overflow: hidden;	
	}
	.route.downloads li {
		display: block;
		float: left;
		width: 50%;
		text-align: center;
	}
	.route.downloads li:first-child a {
		margin-right: -1px;	
	}
}

@media (max-width: 360px) {
	.bloglisting li:nth-child(12n+6),
	.bloglisting li:nth-child(12n+1) {
		width: 320px;
		margin: 40px auto;	
	}
}



.deallistitem {
    font-size: 17px;
}
.deallistitem header {
    color:#23A4C3;
	display: inline-block;
	padding: 40px 0 8px 30px;
}

.deallistitem header h2 {
	display: inline;
}
.deallistitem .image {
	float: left;
	position: relative;
	width: 320px;
	height: 240px;
}
.deallistitem .body {
    padding: 0 0 8px 30px;
    overflow: hidden;
}

.deallistitem .info {
	padding-top: 0.5em;	
}
.deallistitem .info li::before{
    display: block;
    position: absolute;
    top: 3px;
    left: 0;
    width: 20px;
    height: 20px;
    text-align: center;
    font-family: 'icomoon';
	color: #005A60;
}

.deallistitem .info li.price_per_person::before {
    content: "\f153";
}

.deallistitem .info li.location::before {
    content: "\e705";
}

.deallistitem .info li {
    position: relative;
    padding-left: 30px;
    float: left;
    width: auto;
}

.deallistitem .info li:first-child{
	margin-right: 40px;
}


.dealbar {
	float: left;
	margin-left: 50px;
	width: calc(100% - 378px);
}

@media (max-width: 800px) {
    .deallistitem header{
        display: block;
        width: 100%;
    }
    .deallistitem .image,
    .deallistitem img{
        width: 200px;
        height: 150px;
        background: #FAFAFA;
    }
    
    .deallistitem header {
	 	padding: 20px;   
	}
}

@media (max-width: 500px) {
	.deallistitem .image {
		width: auto!important;
        height:  auto!important;
        float: none;
        overflow: hidden;
	}
	.deallistitem .image:before {
		content: "";
		float: left;	
		display: block;
		padding-top: 30%;		
	}
	
    .deallistitem img{
        width: 100%!important;
        height:  auto!important;
    }
    .deallistitem .body {
		 padding: 10px 20px;
		 overflow: hidden;    
	}
}



@media (max-width: 1080px) {
	.dealbar{
		width: 100%;
		margin-left: 0!important;

	}
}



.dealtag {
    display: block;
    position: absolute;
    top: 20px;
    left: 20px;
    color: #ffffff;
    width: 80px;
    height: 80px;
    text-align: center;
	color: #FFF;
	background: #23A4C3 url("img/texture.png");	
    border-radius: 40px;
    transform: rotate(-15deg);
    text-transform: uppercase;
}
.specialstruct .dealtag {
	top: 15px;
    left: 15px;
}
.dealfooter .dealtag {
	left: auto;
	right: 20px;
	transform: rotate(15deg);
}
.dealtag .number{
    display: block;
    font-size: 23px;
    line-height: 20px;
    margin-top: 20px;
}

.dealtag .rebate{
    font-size: 13px;
    margin-top: -2px;
	display: block;
	color: #FFCC4D;
}
.collage .dealtag {
	left: auto;
	right: 0;
	top: 35.29411764706%;
	z-index: 2;
	transform: translate(50%,-50%) rotate(-15deg);
}


.dealsoverview {
	background: #FAFAFA;	
}
.dealsoverview .textsection {
	background: #FFF;
}
/* Specials overview page */
.dealliststruct{
	margin-top: 60px;
}

.dealliststruct li.dealstruct{
	border: 1px solid #EEE;
	overflow: hidden;
	margin-bottom: 40px;
	background: #ffffff;
}


/** new design location/route group */
.routeholder, .locationholder{
	overflow: hidden;
}

#filterbar fieldset.filter {
	width: auto;
	display: block;
	margin: 20px;
}

@media (max-width: 1440px) and (min-width: 1080px){
	.routegroup .listwrap .innersize,
	.locationgroup .listwrap .innersize{
		width: 1080px;
	}

	.routegroup .intro, .locationgroup .intro, .routeholder, .locationholder {
		width: 680px;
		float: right;
	}
}

@media (max-width: 1080px) {

	.dealbar{
		width: 100%;
		margin-left: 0!important;

	}

	.sidebar{
		width:100%!important;
		background: none!important;
		border:none!important;
	}

	.routegroup .intro, .locationgroup .intro {
		text-align: center;
		float: none;
		width: auto;
	}

	.listwrap .innersize {
		width: auto;
		max-width: 680px;
		margin: 0 auto;
	}

	.routegroup .introduction, .filtering, .intro, .graphicsubmenu, .routeholder, .locationholder {
		margin: 0 auto;
		width: 680px;
		float: none;
		display: block;
	}


	.sidebar > aside.routeplannerbanner{
		width: 100%;
		padding: 1em 0;
		margin: 0;
	}

	.routegroup .sidebar #filterbar,
	.dealsoverview .sidebar #filterbar,
	.locationgroup .sidebar #filterbar{
		width: 100%;
		display: block;
	}

	.locationgroup .sidebar #filterbar,
	.routegroup .sidebar .filtering,
	.dealsoverview .filtering{
		display: block;
		width: 100%;
	}


}

@media (max-width: 720px){
	.routegroup .introduction, .intro, .graphicsubmenu, .routeholder, .blogoverview .filtering, .filtering, .locationholder, .bloglisting {
		width: 320px;
	}

	.listwrap .innersize {
		width: 320px;
	}
}


@media (min-width: 1020px) {
	.singlecol .routembed {
		margin: 0 -160px 40px -160px;	
	}
}
@media (min-width: 1400px) {
	.singlecol .routembed {
		margin: 0 -360px 40px -360px;	
	}
}

.altheader h4 {
	background: #005A60;
	color: #FFF;
	margin: 0 0 40px 0;
	border-radius: 1px;
	line-height: 20px;
	padding: 10px 20px;
	font-weight: normal;
	font-family: inherit;
	
}
.altheader h4:before {
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	font-weight: bold;
	font-size: 12px;
	vertical-align: baseline;
	position: relative;
	bottom: 3px;
	border: 1px solid #FFF;
	border-radius: 50%;
	content: "i";
	display: inline-block;
	margin-right: 8px;
}




/*** datepicker ***/
.vanilla-datepicker {
	background:#20a4c3;
	border:solid 1px #20a4c3;
	border-radius: 2px;
	color:#FFF;
	font-size: 15px;
	position: absolute;
	z-index: 10;
	width:300px;
}
.vanilla-datepicker > .title-nav {
	align-items:center;
	background:#20a4c3;
	border:solid 1px transparent;
	border-bottom: 1px solid #EEE;
	border-radius:3px;
	display:flex;
	flex-direction:row;
	font-weight:bold;
	justify-content:space-between;
	margin:2px;
	width:auto;
}
.vanilla-datepicker > .title-nav > .month-navigate,
.vanilla-datepicker > .title-nav > .year-navigate {
	align-items:center;
	border-radius:5px;
	cursor:pointer;
	display:flex;
	flex:0 15px;
	font-weight:bold;
	height:15px;
	justify-content:center;
	margin:1px;
	padding:2px;
	text-align: center;
}

.vanilla-datepicker > .title-nav > .month-navigate:hover,
.vanilla-datepicker > .title-nav > .year-navigate:hover {
	background: #429291;
}
.vanilla-datepicker > .week-header {
	font-weight: bold;
}
.vanilla-datepicker > .week-header,
.vanilla-datepicker > .week {
	display:flex;
	flex-direction:row;
	justify-content:space-between;
}
.vanilla-datepicker > .week-header > div {
	align-items:flex-start;
	display:flex;
	flex:1;
	justify-content:center;
}
.vanilla-datepicker > .week > div {
	align-items:flex-end;
	border:solid 1px transparent;
	cursor:pointer;
	display:flex;
	flex:1;
	justify-content:center;
	width: 36px;
	height: 36px;
	line-height: 36px;
	margin: 1px;
	text-align: center;
	border-radius: 2px;
}
.vanilla-datepicker > .week > div.no-select {
	cursor:auto;
	color:#AAA;
}
.vanilla-datepicker > .week > div.selected {
	background-color:#20a4c3;
	font-weight:bold;
}
.vanilla-datepicker > .week > div:not(.no-select):hover {
	background:#FAFAFA;
	color: #20a4c3;
}

/*
Location group feedback
 */
.feedback-block {
	padding: 20px 0;
	border-color: #FFCC4D;
	border-style: dotted;
	border-width: 3px 0;
	align-items: center;
	flex-wrap: wrap;
	margin: 0 auto 20px auto;
	width: 100%;
	overflow: hidden;
}
.feedback-block .button{
	cursor: pointer;
}

.feedback-block .button-container{
	float: right;
}

.feedback-block .button:after {
	display: none;

}

.feedback-block .title {
	font-size: 20px;
	line-height: 53px;
	color: #005A60;
}


@media (max-width: 720px) {
	.feedback-block .button-container{
		float: none;
	}
}


/*
Location rating
 */


.ratelocation {
	position: fixed;
	bottom: 20px;
	left: 20px;
	background: #fff;
	box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15);
	z-index: 10;
	padding: 40px;
	width: 100%;
	max-width: 460px;
}


.ratelocation .title {
	font-size: 20px;
	color: #23A4C3;
	margin-bottom: 20px;
}

.ratelocation .close {
	position: absolute;
	right: 20px;
	top: 10px;
	cursor: pointer;
}

.ratelocation .button{
	margin-right: 10px;
}

/*** webshop ***/
article#webshop .mainbar h2.cat_subtitle{
	font-family: GrandHotel, sans-serif;
	font-weight: normal;
	color: #005A60;
}

article#webshop .mainbar .productlist ul li article .text h2 {
	color: #23A4C3;
}

article#webshop table.cartoverview th {
	color: #005A60;
}

article .sidebar .cartbox {
	background: #23A4C3;
}

article .sidebar .cartbox h3{
	color: #FFCC4D;
}

article .sidebar .submenu .subtitle {
	color: #005A60;
}

article#webshop .fieldset label {
	color: #005A60;
}
article#webshop .mainbar h3.cat_title,
article#webshop-product .mainbar h3.product_cat {
	font-size: 18px;
	color: #005A60;
	text-transform: uppercase;
}

article#webshop-product .mainbar {
	margin-top: 20px;
}
article#webshop-product .sidebar {
	margin-top: 20px;
}

article#webshop .mainbar,
article#webshop .mainbar.mainbar-center{
	margin-top: 20px;
}
article#webshop .sidebar {
	margin-top: 20px;
}

article#webshop-product .mainbar h3 {
	color: #005A60;
}

article#webshop-product .mainbar #ws_orderform .pricebox {
	color: #005A60;
}

article#webshop-product .mainbar .imgbar h3.product_subtitle{
	font-size: 179%;
	line-height: 1.4;
	font-family: GrandHotel, sans-serif;
	font-weight: normal;
	color: #23A4C3;
}

#extrashare div {
	display: inline;
}
#extrashare h3{
	font-family: GrandHotel, sans-serif;
	font-weight: normal;
	color: #005A60;
	display: inline-block;
	padding-right: 10px;
}
@media (max-width: 768px) {
	article#webshop-product .mainbar .imgbar h3.product_subtitle {
		display: none;
	}
	article#webshop .cart-wrapper .siteform li {
		width: 100%;
	}
}



@media (max-width: 1000px) {

	#togglesearch:checked ~ #mobilefoldout,
	#togglesearch:checked ~ #mobilemenu {
		padding-top: 150px;
	}

	#mobilefoldout,
	#mobilemenu {
		position: fixed;
		z-index: 500;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: #23A4C3;
		color: #FFF;
		height: auto;
		margin: 0;
		padding: 100px 0 0 0;
		overflow: auto;
	}
	#mobilefoldout {
		transition: transform 0.4s ease;
		transform: translate(100%,0);
		font-size: 15px;
	}
	#mobilefoldout.visible {
		transform: translate(0,0);
	}
	#mobilemenu .sectwrap,
	#mobilefoldout .sectwrap {
		position: relative;
		height: 100%;
	}
	#showmenu:checked ~ #wrapper #mobilefoldout,
	#showmenu:checked ~ #mobilefoldout,
	#showmenu:checked ~ #wrapper #mobilemenu,
	#showmenu:checked ~ #mobilemenu{
		display: block;
	}
	#showmenu:checked ~ #wrapper #pagefooter,
	#showmenu:checked ~ #pagefooter,
	#showmenu:checked ~ #wrapper #main,
	#showmenu:checked ~ #wrapper #cookieconsent{
		display: none;
	}

	#mobilemenu li {
		border-bottom: 1px solid #ffffff40;
		position: relative;
	}
	#mobilemenu li p {
		font-size: 15px;
		line-height: 17px;
		color: #FFF;
	}
	#mobilemenu li a {
		cursor: pointer;
		display: block;
		padding: 10px 0;
		color: #FFF;
	}

	#mobilefoldout a {
		color: #FFF;
	}
	#mobilefoldout .subsub li a:before,
	#mobilemenu li a:after {
		content: "";
		display: inline-block;
		width: 0;
		height: 0;
		border-left: 8px solid #FFF;
		border-top: 5.5px solid transparent;
		border-bottom: 5.5px solid transparent;
		position: absolute;
		right: 0;
		top: 50%;
		margin-top: -5.5px;
	}

	#mobilefoldout .subsub li a:before {
		position: static;
		margin-right: 10px;
		border-left-color: #FFF;

	}

	#mobilefoldout .subsub {
		padding: 20px 0 10px 0;
		margin-bottom: 10px;
	}
	#mobilefoldout .subsub .title {
		border-bottom: 1px solid #ffffff40;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	#mobilefoldoutclose {
		display: block;
	}
	#mobilefoldoutclose:before {
		content: "";
		display: inline-block;
		width: 0;
		height: 0;
		border-right: 8px solid #FFF;
		border-top: 5.5px solid transparent;
		border-bottom: 5.5px solid transparent;
		margin-top: -5.5px;
		margin-right: 10px;
	}

	#mobilemenu .title,
	#mobilefoldout .title{
		font-weight: bold;

	}

	#mobilemenu .innersize,
	#mobilefoldout .innersize{
		margin: 0 20px!important;
	}
}




/** STORY_SELLING **/

#story_selling{

	background-image: url("img/texture.png");
}
#story_selling a.ctalink{
	color: #fff;
	border: 1px solid #fff;
}

#story_selling a.ctalink:hover{
	background: #005A60;
	color: #fff;
}



/**
 * Small deal banner
 */
.itempage .deallisting {
	padding-bottom: 40px;	
}
.itempage .deallisting h4 {
	padding: 20px 0;	
}
.smalldeal {
	border: 1px solid #EEE;
	height: 60px;
	position: relative;
	padding: 0 60px;
	margin-bottom: 10px;
}
.smalldeal:after {
	font-family: icomoon;
	content: "\e622";
	width: 60px;
	height: 60px;
	background: #EEE;
	line-height: 60px;
	text-align: center;
	color: #FFF;
	background: #23A4C3;
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	transition: font-size 0.2s ease;

}
a:hover .smalldeal:after {
	font-size: 125%;
	background: #F17C00;	
}
.smalldeal .image {
	width: 60px;
	height: 60px;
	background: #EEE;
	position: absolute;
	top: 0;
	left: 0;
}
.smalldeal .image img {
	width: 100%;
	height: auto;	
}
.smalldeal .body {
	padding-top: 30px;
	
}
.smalldeal span,
.smalldeal h3 {
	float: left;
	font-size: 18px;
	line-height: 18px;
	letter-spacing: 1px;
	padding: 0 20px;
	transform: translate(0,-50%);
	max-width: 70%;

	
}
@media (max-width: 720px) {
	
	.smalldeal {
		height: 80px;
		padding: 0 40px 0 80px;
	}
	.smalldeal:after {
		width: 40px;
		height: 80px;
		line-height: 80px;	
	}	
	.smalldeal .image {
		width: 80px;
		height: 80px;
		background: #EEE;
		float: left;
	}
	.smalldeal .body {
		padding-top: 20px;
		height: 40px;
	}
	.smalldeal span,
	.smalldeal h3 {
		float: none;
		line-height: 20px;
		height: 20px;
		padding: 0 20px;
		max-width: 100%;
		transform: translate(0,0);
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
	}
}

@media (max-width: 500px) {
	
	
	.smalldeal {
		height: 80px;
		padding: 0 0 0 40px;
	}
	.smalldeal:after {
		width: 40px;
		height: 40px;
		line-height: 40px;
		
		right: auto;
		top: 40px;
		left: 0;
	}	
	.smalldeal .image {
		width: 40px;
		height: 40px;
		background: #EEE;
	}
	.smalldeal .body {
		padding-top: 20px;
		height: 40px;
	}
	.smalldeal span,
	.smalldeal h3 {
		font-size: 16px;
	}
}

