html {
	--title-font: ubuntu, sans-serif;
	--text-font: ubuntu, sans-serif;
	--accent-font: laguapita, serif;
	--accent-weight: normal;
	--text-color: #000;
	--lead-color: #000;
	--title-color: #F00;
	
	--button: #F00;
	--button-color: #FFF;
	--button-hover: #000;	
	--button-hover-color: #FFF;
	
	--button-text-color: #FFF;

	--link-color: #FF0000;
	--link-hover-color: #000000;
	
	
	--foldout-bg: #F5F5F5;

	
	--light-gray: #F5F5F5;
	--gray: #686868;
	
	--red: #FF0000;
	--black: #000000;
	
	--border-gray: #F0F0F0;
	--logo-color: #D8207C;
	
	--big-radius: 2px;
	--small-radius: 2px;
	--stroke-color: rgba(255,0,0,0.4);
	
	
}
#tw23 {
	--consent-text-color: #000;
	--consent-accent-color: #FF0000;
	--consent-text-background: #FFF;
	--consent-lightgray: #F5F5F5;
	--consent-headerbg: #F00;
	--consent-headercolor: #FFF;
}
	
	

html, body {
	margin: 0;
	padding: 0;
	background: #FFF;

	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 2.125;
	font-weight: 300;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	font-family: var(--text-font);
	color: var(--text-color);
}
.struct, .struct li, .struct dt,.struct dd {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.inline > dt, .inline > dd,
.inline > li {
	display: inline-block;	
}
nav, main, aside, footer, header, figure, figcaption, article, hgroup,
section,p,form,dl,dt,dd, fieldset {
	display: block; margin: 0; padding: 0;
	border: none;
}
.darksection {
	background: #FAFAFA;
	padding: 100px 0;
	margin: 100px 0;
		
}

a {
	text-decoration: none;	
}
a img {
	border: none;
	outline: none;
	
}
h1,h2,h3,h4,h5 {
	font-size: 100%;
	font-weight: normal;
	margin: 0;
	padding: 0;
}


.title {
	text-transform: uppercase;
	font-weight: bold;
}
.t1 {
	color: var(--title-color);
	font-size: 80px;
	font-weight: bold;
	line-height: 90px;
	font-family: var(--title-font);
}
.t2 {
	color: var(--title-color);
	font-size: 40px;
	line-height: 45px;
	font-weight: bold;
	font-family: var(--title-font);
}
.t3 {
	font-family: var(--title-font);
	font-size: 26px;
	line-height: 40px;
	font-weight: bold;
		font-weight: 500;
	}

.markdown .t4,
.t4 {
	font-family: var(--title-font);
	color: var(--title-color);
	font-size: 22px;
	line-height: 40px;
	font-weight: bold;
}
.t4.l {
	font-weight: 500;
	line-height: 40px;
}
.markdown .t5m,
.t5m {
	font-size: 20px;
	font-weight: 500;
	line-height: 40px;
}
.markdown .t5l,
.t5l {
	font-size: 20px;
	line-height: 2;
	font-weight: bold;
	color: var(--title-color);

}
.t5 {
	font-weight: bold;
	font-size: 18px;
	line-height: 23px;	
}
.t5b {
	font-size: 18px;
	line-height: 23px;	
	font-weight: 500;
	color: var(--title-color);
}

.t6 {
	font-weight: 700;
	color: var(--title-color);
	font-size: 14px;
}
.t7 {
	text-transform: uppercase;
	font-weight: 700;
	color: var(--title-color);
	font-size: 13px;
	line-height: 28px;
}

.tt {
	font-style: normal;
	font-weight: var(--accent-weight);	
	font-family: var(--accent-font);
	font-size: 30px;
		transform: rotate(-2deg);
	
}


.lead {
	font-weight: 300;
	font-size: 18px;
	line-height: 2;
}
.pt_deal_list .lead {
	position: relative;
	top: -50px;	
	text-align: center;	
}
.pt_topic .lead,	
.pt_widgetPage .lead {
	text-align: center;	
}
a.box {
	color: inherit;
	text-decoration: none;	
}
img {
	transition: opacity 0.6s ease;
}
img.lazy {
	opacity: 0;
}

.hidden {
	display: none;	
}
.lazywrap {
	display: block;
	position: relative;
	background: rgba(0,0,0,0.2);
}
.lazywrap img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.centerhead {
	text-align: center;	
}
.centerhead .tt {
	display: block;
	position: relative;
	bottom: -15px;
	font-size: 24px;
	line-height: 32px;

}
.centerhead .t2 {
	line-height: 50px;
	padding: 15px 0;
}	

.buttonfooter {
	padding-top: 30px;
	text-align: center;	
}


.markdown .button,
.button {
	display: inline-block;
	height: 56px;
	line-height: 56px;
	font-weight: 700;
	font-size: 16px;
	color: var(--button-color);
	background: var(--button);
	border: 1px solid transparent;
	margin: 0;
	padding: 0 30px;
	text-align: center;
	text-decoration: none;
	vertical-align: top;
	white-space: nowrap;
	cursor: pointer;
	box-sizing: border-box;
	border: none;
	border-radius: 28px;
}
.button.go::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border: 2px solid var(--button-color);
	border-width: 2px 2px 0 0;
	margin-left: 5px;
	transform: translate(5px, -1px) rotate(45deg) 
}
.button.go:hover::before {
	border-color: var(--button-hover-color);
}
.button svg {
	fill: var(--button-color);
}
.markdown .button:hover,
.button:hover {
	color: var(--button-hover-color);
	background: var(--button-hover);
}
.button.white {
	color: var(--red);
	background: #FFF;
}
.button.white:hover {
	background: var(--red);
	color: #FFF;
}


.markdown a.topicbtn,
a.topicbtn {
	display: inline-block;
	border-radius: 22.5px;
	padding: 0 20px;
	height: 43px;
	line-height: 43px;
	font-weight: 400;
	text-decoration: none;
	border: 1px solid rgba(0,0,0,0.1);
	font-size: 15px;
	color: var(--black);
	background: #FFF;	
}
.markdown a.topicbtn:hover,
a.topicbtn:hover {
	background: var(--red);
	border-color: var(--red);
	color: #FFF;
	text-decoration: none;
}

a.clink {
	color: #000;
	font-weight: 400;	
}
a.clink svg {
	fill: var(--red);
	margin-right: 5px;
}
a.clink:hover {
	color: var(--red);
		
}

.listmenuitem {
	position: relative;
	color: var(--black);
	text-decoration: none;
	display: inline-block;
	font-size: 15px;
	line-height: 20px;
	padding: 8px 0;
}
.listmenuitem:hover {
	color: var(--red);
}


main {
	min-height: 400px;	
}
img {
	transition: opacity 0.6s ease;
}
img.lazy {
	opacity: 0;
}



#ovf {
	overflow: hidden;	
}
.pt_weblogItem #ovf,
.pt_organisation #ovf,
.pt_route #ovf {
	overflow: visible;	
}
.widewrap {
	max-width: 1600px;
	margin: 0 auto;	
}
.sectwrap {
	width: 1400px;
	margin: 0 auto;	
}
.smallwrap {
	max-width: 780px;
	margin: 0 auto;	
}

section.bw {
	padding-top: 90px;	
}
@media (max-width: 1440px) {
	.sectwrap {
		width: 1160px;
	}
}
@media (max-width: 1200px) {
	.sectwrap {
		width: 960px;
	}
}
@media (max-width: 1000px) {
	html, body { 
		font-size: 15px;	
	}
	.sectwrap {
		width: 720px;
	}
	.thuge {
		font-size: 40px;
		line-height: 58px;
	}
	.tt {
		font-size: 20px;
	
	}
	.t1 {
		font-size: 40px;
		line-height: 58px;
	}
	.t2 {
		font-size: 30px;
		line-height: 42px;
	}
	.markdown .t4,
	.t4 {
		font-size: 20px;
	}
	.markdown .t5m,
	.t5m {
		font-size: 18px;
		line-height: 40px;
	}
	.markdown .t5l,
	.t5l {
		font-size: 18px;
		line-height: 2;
	}
	.markdown .t5,
	.t5 {
		font-size: 16px;
		line-height: 21px;
	}

}
@media (max-width: 799px) {
	.pagebody {
		overflow: hidden;
	}
	.smallwrap,
	.sectwrap {
		width: auto;
		max-width: 520px;
		margin: 0 auto;
	}
}

@media (max-width: 560px) {
	.smallwrap,
	.sectwrap {
		width: auto;
		margin: 0 10px;
	}
	.smallwrap .smallwrap,
	.sectwrap .smallwrap, .sectwrap .sectwrap {
		margin: 0;	
	}
}


legend {
	display: none;	
}
input, textarea {
	font-size: 16px;
	font-family: inherit;
	padding: 0 10px;
	box-sizing: border-box;
	border-radius: 2px;
}
input:focus, textarea:focus {
	outline: none;
	border-color: var(--red);
}
input {
	height: 56px;
	border: 1px solid var(--border-gray);
	line-height: 46px;
}
textarea {
	border: 1px solid var(--border-gray);
	height: 120px;
	padding: 10px;
}
.cta input, .cta textarea, .cta .selectbox {
	border-color: var(--border-gray);	
}

.selectbox {
	height: 48px;
	line-height: 46px;
	border: 1px solid var(--border-gray);
	border-radius: 24px;
	font-size: 1rem;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: bottom;
	cursor: pointer;
	background: #FFF;
}
.selectbox:after {
	content: "";
	position: absolute;
	top: 17px;
	right: 22px;
	bottom: 0;
	width: 7px;
	height: 7px;
	border: 2px solid #1C524A;
	border-width: 2px 2px 0 0;
	display: block;
	transform: rotate(135deg);
}

.selectbox select:-moz-focusring {
	color:transparent;
	text-shadow:0 0 0 #333; /* your normal text color here */
}
form .selectbox select:-moz-focusring * {
	color: #333; /* your normal text color here */
	text-shadow:none;
}
/** and in other browsers */
form .selectbox select:option {
	outline: none;	
}
/* remove the styling of the normal select box completely */
form .selectbox select {
	display: block;
	font-family: inherit;
	font-size: 1rem;
	outline: none;
	position: relative;
	width: 100%;
	height: 100%;
	line-height: 48px;
	border: 0;
	padding: 0 40px 0 20px;
	background: transparent;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}






.backnavshare {
	height: 40px;
	line-height: 40px;
	padding: 40px 0;
	text-align: right;
	position: relative;
	z-index: 50;
}

.backnavshare summary span,
.backnavshare > a {
	float:  right;
	display: inline-block;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	border: 1px solid var(--gray);
	text-align: center;
	position: relative;
	margin: 0 0 0 20px;
}
.backnavshare > a {
	float: left;
	margin: 0 10px 0 0;
}
.backnavshare summary span svg,
.backnavshare > a svg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	fill: var(--black);	
}
.backnavshare summary:hover span,
.backnavshare > a:hover {
	background: var(--red);
	border-color: var(--red);
}
.backnavshare summary:hover svg,
.backnavshare > a:hover svg {
	fill: #FFF;	
}
.backnavshare details {
	margin: -10px -15px 0 0;
	padding: 10px 15px 0 15px;
	display: inline-block;
	position: relative;
}
.backnavshare summary {
	display: block;
	color: var(--black);
	cursor: pointer;
	font-weight: 500;	
}
.backnavshare details[open] {
	background: var(--red);
	border-radius: 2px;
}
.backnavshare details[open] summary {
	color: #FFF;	
}
.backnavshare details[open] summary span {
	border-color: #FFF;
}
.backnavshare details[open] summary:hover span {
	background: rgba(255,255,255,0.1);	
}
.backnavshare details[open] summary span svg {
	fill: #FFF;
}	
.backnavshare details ul {
	padding: 20px 0;
	white-space: nowrap;	
}
.backnavshare details a {
	text-decoration: none;
	color: #FFF;
	display: block;
	border-radius: 2px;
}
.backnavshare details a svg {
	fill: #FFF;
	vertical-align: middle;	
}
.backnavshare details a:hover {
	background: #FFF;
	color: var(--red);
}
.backnavshare details a:hover svg {
	fill: #FFF;
}

#pageheader {
	position: relative;
	z-index: 100;
	height: 100px;
	max-width: 1495px;
	padding-left: 105px;
	margin: 0 auto;
}

@media (max-width: 1600px) {
	#pageheader {
		padding-left: calc(50vw - 695px);
	}
}
@media (max-width: 1440px) {
	#pageheader {
		padding-left: 0;
	}
}


#navbar {
	display: flex;
	position: relative;
	height: 100px;
	margin: 0 auto;
	z-index: 1000;
	box-shadow: 0 0 5px rgba(0,0,0,0.4);
	background: #FFF;
}

#navbar nav {
	flex-grow: 1;
}
#logo {
	background: var(--red);
	width: 170px;
	position: relative;
	left: -5px;
}
#logo.unbranded {
	background: #FAFAFA;	
}
#logo.unbranded img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#logo svg {
	fill: #FFF;
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}
.recreatieschap #logo {
	width: 200px;
	background: #FFF;
	text-align: center;
}
.recreatieschap #logo img {
	width: 80%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}


#langselect,
#searchbox {
	position: absolute;
	right: 0;
	top: 0;
	width: 100px;
	height: 100px;
}
#searchbox button {
	margin: 0;
	padding: 0;
	display: block;
	text-align: center;
	width: 100px;
	height: 100px;
	border: none;
	cursor: pointer;
	transition: background 0.3s ease;
	background: #FAFAFA;
}
#searchbox button svg {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -8px 0 0 -10px;
	fill: #000;
	transition: fill 0.3s ease;
}
#searchbox button:hover {
	background: var(--red);
}
#searchbox button:hover svg {
	fill: #FFF;	
}
#togglesearch:checked ~ #pageheader #searchbox svg {
	opacity: 0;	
}
#togglesearch:checked ~ #pageheader #searchbox button {
	background: rgba(255,255,255,0.1);	
}
#togglesearch:checked ~ #pageheader #searchbox button:before,
#togglesearch:checked ~ #pageheader #searchbox button:after {
	height: 2px;
	border-radius: 2px;
	width: 18px;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -3px;
	margin-left: -11px;
	transform: rotate(-45deg);
	background: var(--red);
}
#togglesearch:checked ~ #pageheader #searchbox button:before {
	transform: rotate(45deg);
}
#togglesearch:checked ~ #pageheader #searchbox button:hover:before,
#togglesearch:checked ~ #pageheader #searchbox button:hover:after {
	background: #FFF;
}

#togglesearch:checked ~ #pageheader #searchform {
	display: block;	
}



#searchform {
	display: none;
	background: var(--foldout-bg);
	position: absolute;
	top: 0;
	left: 270px;
	right: 0;
	z-index: 9;
	padding-top: 100px;
	height: 100px;
}
#searchform_form {
	position: relative;
	padding: 20px 0 20px 70px;
}
#searchform input {
	box-sizing: border-box;
	display: block;
	height: 60px;
	width: 100%;
	border: none;
	padding: 0;
	font-family: inherit;
	font-size: inherit;
	border: none;
	caret-color: #000;
	background: rgba(255,255,255,0.1);
	color: #000;
	border-radius: 0;
	padding: 0 0 0 2px;
}
#searchform input:focus {
	outline: none;
	
}
#searchform button {
	position: absolute;
	top: 0;
	left: 0;
	width: 70px;
	height: 100px;
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100px;	
	border: none;
	background: transparent;
	cursor: pointer;
}
#searchform button svg {
	transform: translate(0,2px);
	vertical-align: baseline;
	fill: var(--black);
}
#searchform button:hover svg {
	fill: #FFF;
}
#suggestionlist:empty {
	display: none;	
}
#suggestionlist {
	border-top: 1px solid rgba(0,0,0,0.1);
	margin: 0 auto;
	padding: 10px 40px 10px 70px;
	position: relative;
	background: var(--foldout-bg);
}
#suggestionlist li img {
	vertical-align: bottom;	
}
#suggestionlist li {
	max-width: 600px;
	padding: 5px 0;
	border-bottom: 1px solid rgba(255,255,255,0.1);
}
#suggestionlist li.viewall {
	border: none;
	padding: 15px 0 0 0;
	max-width: 500px;	
}
#suggestionlist li.viewall .button {
	display: block;	
}
#suggestionlist a.suggest {
	display: block;
	height: 55px;
	position: relative;
	color: var(--black);
	line-height: 20px;
}
#suggestionlist a.suggest:hover .title {
	color: var(--red);
}
#suggestionlist a.suggest .title {
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	left: 70px;
	right: 30px;
	max-height: 48px;
	color: var(--black);
	display: block;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;  
	overflow: hidden;
	text-overflow: ellipsis;
}

#suggestionlist a.suggest svg {
	position: absolute;
	right: 22px;
	top: 50%;
	transition: right 0.4s ease;
	transform: translate(0,-50%);
	fill: var(--red);
}
#suggestionlist a.suggest:hover svg {
	right: 18px;	
}


#langselect {
	right: 100px;
}
#langselect label {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 10;
	font-weight: 500;
	display: block;
	line-height: 56px;
	height: 56px;
	width: 56px;
	border-radius: 50%;
	text-align: center;
	cursor: pointer;
	background: rgba(6,54,63,0.1);
}

#togglelang:checked ~ #pageheader #langselect label {
	background: var(--red);
	color: #FFF;
	
}
#togglelang:checked ~ #pageheader #langmenu {
	display: block;
}
#langmenu {
	background: var(--foldout-bg);
	position: absolute;
	transform: translate(0,30px);
	top: -100px;
	left: 0px;
	padding: 180px 30px 40px 20px;
	display: none;
	width: 150px;
	border-radius: 0 0 0 40px;
}
#langmenu a {
	font-weight: normal;
	text-decoration: none;
	color: var(--link-color);
	position: relative;
}
#langmenu .active a:before {
	content: ""; 
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background: var(--yellow);
	display: block;
	position: absolute;
	top: 50%;
	left: -13px;
	margin-top: -4px;
}
#langmenu a:hover {
	color: var(--yellow);
}



#skipnav {
	position: absolute;
	top: 5px;
	left: 50%;
	transform: translate(-50%,0);
	display: block;
	background: #FFF;
	color: var(--text-color);
	padding: 5px 10px;
	border-radius: var(--small-radius);
	font-weight: bold;
	text-decoration: none;
	visibility: hidden;
}
#skipnav:focus {
	z-index: 1000;
	visibility: visible;
}


@media (min-width: 1260px) {
	
	#mainmenu .struct {
		padding-top: 20px;
		height: 60px;
		display: flex;
		margin: 0 200px 0 0;
		
	}
	@media (min-width: 1360px) {
		
		#mainmenu .struct {
			margin: 0 300px 0 0;
			display: flex;
		}
	}

	#mainmenu .struct li {
		flex-grow: 1;
 		padding: 0 10px 0 20px;
		min-width: 145px;
		position: relative;
		border-left: 1px solid rgba(0,0,0,0.1);
		position: relative;
	}
	#mainmenu .struct li:first-child { 
		border-left: none;	
	}

	#mainmenu a {
		text-decoration: none;
		display: block;
		margin: 0;
		padding: 0;
		height: 60px;
		line-height: 20px;
		color: var(--title-color);
		transition: color 0.4s ease;
	}
	#mainmenu .active a::after,
	#mainmenu a:hover::after {
		content: "";
		display: block;
		height: 2px;
		border-radius: 1px;
		position: absolute;
		bottom: -18px;
		left: 0;
		right: 0;
		background: var(--link-color);
			
	}
	#mainmenu a .title {
		display: block;
		font-weight: 700;
		position: relative;
		font-size: 14px;
		height: 19px;
		line-height: 19px;
		top: -2px;
		color: inherit;
		padding-bottom: 2px;
	}
	#mainmenu a p {
		height: 38px;
		line-height: 20px;
		max-width: 140px;
		font-size: 13px;
		color: #686868;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;  
		overflow: hidden;

	}
	@media (min-width: 1400px) {
		#logo img {
			max-width: 260px;	
		}

	}
	@media (min-width: 1520px) {
	
	}

	#mainmenu .menuitem_foldout{
		background: rgba(255,255,255,1);;
		position: absolute;
		display: none;
		left: 0;
		top: 100px;
		border-radius: 3px;
		color: var(--text-color);
	}

	#mainmenu .main:nth-of-type(5n) .menuitem_foldout{
		right: 0;
		left: unset;
	}


	#foldout {
		background: var(--foldout-bg);
		position: absolute;
		top: 100px;
		left: 100px;
		right: 0;
		overflow: hidden;
		padding: 0;
		z-index: 9;
		opacity: 0;
		transition: opacity 0.4s ease;
		border-radius: 0 0 0 var(--big-radius);
	}
	#foldout.visible {
		height: auto;
		padding: 20px 0;
		opacity: 1;
	}
	#foldoutcontent {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		margin: 0 300px 0 170px; 
	}
	
	#foldoutcontent a {
		color: #000;
		text-decoration: none;
		display: block;
		padding: 0 20px 0 0;
	}
	#foldoutcontent a[href]:hover {
		color: var(--red);
	}
	#foldoutcontent .title a {
		color: var(--title-color);	
	}
	#foldoutcontent .title a[href]:hover {
		color: #000;	
	}	
	#foldoutcontent .subsub {
		padding: 30px 10px 30px 20px;
	}
	#foldoutcontent .subsub ul {
		
		opacity: 0.8;
		font-size: 15px;
	}
	#foldoutcontent .subsub li a {
		line-height: 20px;
		padding: 10px 0;	
	}
}
@media (max-width: 1260px) {
	
	#mobilefoldoutcontent .struct li .listmenuitem img {
		display: none;
	}
	#pageheader {
		height: 80px;	
	}
	#pageheader::after {
		top: 99px;
		display: none;	
	}
	#navbar {
		position: relative;
		height: 60px;
		padding: 0 0 0 0;	
	}
	.recreatieschap #logo,
	#logo {
		margin-left: 60px;
		left: 0;
		padding: 0;
		width: 135px;
	}
	#logo svg {
		left: 50%;
		width: 120px;
		height: auto;
		transform: translate(-50%, -50%);
	}
	#logo.unbranded img {
		position: absolute;
		height: 50px;
		width: auto;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	#mainmenu {
		display: none;	
	}
	
	#searchbox {
		top: 0;
		right: auto;
		width: 60px;
		height: 60px;
		left: 195px;
	}
	#searchbox button {
		width: 60px;
		height: 60px;
		
		background: #FFF;
		border-right: 1px solid rgba(0,0,0,0.1);
	}
	#searchbox button svg {
		margin: -9px 0 0 -8px
	}
		
	
	#searchform {
		position: fixed;
		z-index: 8;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	#langselect {
		top: 7px;
		width: 46px;
		height: 46px;
		right: 7px;;
	}
		
	#langselect label {
		width: 46px;
		height: 46px;
		line-height: 46px;
	}
	#langmenu {
		left: auto;	
		right: -7px;
	}

	#menutoggle {
		width: 60px;
		height: 60px;
		position: absolute;
		left: 0;
		bottom: 0;
		border: none;
		background: var(--button-hover);
		cursor: pointer;
	}
	#menutoggle::before, #menutoggle::after {
		content: "";
		display: block;
		width: 18px;
		height: 2px;
		border-radius: 1px;
		background: #FFF;
		position: absolute;
		top: 50%;
		left: 50%;
		transition: transform 0.4s ease;
		transform: translate(-50%,-6px);
	}
	#menutoggle::after {
		transform: translate(-50%,3px);
	}

	#togglemenu:checked ~ #pageheader {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1002;
		background: transparent;
	}
	#togglemenu:checked ~ #pageheader #langselect,
	#togglemenu:checked ~ #pageheader #searchbox {
		display: none;	
	}
	#togglesearch:checked ~ #pageheader #searchbox button::before, #togglesearch:checked ~ #pageheader #searchbox button::after {
		margin-top: -1px;
		margin-left: -9px;
	}
	#togglesearch:checked ~ #pageheader #menutoggle,
	#togglemenu:checked ~ #pageheader #menutoggle {
	}
	#togglemenu:checked ~ #pageheader #menutoggle:hover::before,
	#togglemenu:checked ~ #pageheader #menutoggle:hover::after {
		background: #FFF;
	}


	#togglemenu:checked ~ #pageheader #menutoggle::after {
		transform: translate(-50%,-2px) rotate(-45deg);
	}
	#togglemenu:checked ~ #pageheader #menutoggle::before {
		transform: translate(-50%,-2px) rotate(45deg);
	}
	
	#togglesearch:checked ~ #mobilefoldout,
	#togglesearch:checked ~ #mobilemenu {
		padding-top: 60px;
	}
	
	#mobilefoldout,
	#mobilemenu {
		position: fixed;
		z-index: 1001;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: var(--foldout-bg);
		color: var(--text-color):
		height: auto;
		margin: 0;
		padding: 108px 0 20px 0;
		overflow: auto;
	}
	#mobilefoldout {
		transition: transform 0.4s ease;
		transform: translate(100%,0);
		font-size: 1.111rem;
	}
	#mobilefoldout.visible {
		transform: translate(0,0);	
	}
	.mobilewrap {
		position: relative;
		height: 100%;
		padding: 0 40px;
	}
	#togglemenu:checked ~ #mobilefoldout,
	#togglemenu:checked ~ #mobilemenu {
		display: block;
	}
	#togglemenu:checked ~ footer,
	#togglemenu:checked ~ #contentstart {
		display: none;
		
	}
	#mobilemenu li {
		position: relative;
		padding: 16px 0;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	#mobilemenu li p {
		font-size: 13px;
		line-height: 22px;
		padding: 0;
		color: rgba(0,0,0,0.8);
	}
	#mobilemenu li a {
		cursor: pointer;
		display: block;
		padding: 10px 0;
		color: var(--text-color);
		text-decoration: none;
	}
	#mobilemenu li a:hover {
		color: var(--red);
	}
	#mobilemenu li a .title {
		position: relative;
		display: block;
		top: -3px;	
	}
	#mobilemenu li svg {
		position: absolute;
		top: 50%;
		right: 0;
		width: 6px;
		height: auto;
		fill: var(--black);
	}
	#mobilefoldout .subsub {
		padding: 10px 0 15px 0;
		margin-bottom: 10px;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	#mobilefoldout .subsub:last-child  {
		border: none;
		
	}
	#mobilefoldout .subsub .title {
		font-weight: bold;
		font-size: 15px;
		padding-bottom: 10px;
		margin-bottom: 10px;
		position: relative;
	}
	#mobilefoldout .subsub .title a {
		color: var(--red);
		display: block;
		text-decoration: none;
		padding: 0 20px 0 0;
		
	}
	#mobilefoldout .subsub .title a.link:hover {
		color: var(--black);
	}
	#mobilefoldoutclose {
		display: block;
		margin-bottom: 20px;
		cursor: pointer;
		font-size: 14px;
	}
	#mobilefoldoutclose svg {
		fill: var(--black);
		width: 6px;
		transform: scaleX(-1);
	}
	#mobilefoldoutclose:hover {
		color: var(--red);
	}
	#searchform {
		padding-top: 60px;	
		height: 80px;
	}
	#searchform button {
		height: 80px;
		line-height: 80px;
		width: 60px;
	}
	#searchform_form {
		padding: 10px 10px 10px 60px;	
	}
	#suggestionlist {
		padding: 10px 10px 40px 10px	
	}
}


.graphicheader {
	color: #FFF;
	--title-color: #FFF;
	position: relative;
	overflow: hidden;
	text-align: center;
	height: 500px;
	max-width: 1600px;
	margin: -100px auto 0 auto;
}
.graphicheader.topicheader {
	height: 700px;
	overflow: visible;
}
.graphicheader  + .lead {
	padding: 40px 0;	
}
.graphicheader  + .leadblock {
	padding: 60px 0;
}
.topic .lead {
	margin-bottom: 80px;	
}

@media (max-width: 1260px) {
	.graphicheader {
		height: 480px;
	}
	.graphicheader.topicheader {
		height: 540px;	
	}
}

.graphicheader #citiesmenu {
	height: 100px;
	width: 480px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: left;
}
.graphicheader #citiesmenu details summary {
	list-style-type: none;
	height: 100px;
	position: relative;
	padding-right: 20px;
	font-weight: 500;
	cursor: pointer;
}
.graphicheader #citiesmenu details summary span {
	position: absolute;
	display: block;
	line-height: 1.2;
	left: 120px;
	top: 50%;
	right: 80px;
	transform: translate(0,-50%);
}
.graphicheader #citiesmenu details summary svg {
	fill: var(--red);
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translate(0,-50%) rotate(90deg);
}
.graphicheader #citiesmenu details[open] summary svg {
	transform: translate(0,-50%) rotate(270deg);

}
.graphicheader #citiesmenu details {
	list-style-type: none;
	margin: 0;
	padding: 0;
	background: var(--black);
	color: #FFF;
}
.graphicheader #citiesmenu details a {
	color: #FFF;			
}
.graphicheader #citiesmenu details a:hover {
	color: var(--red);	
}
.graphicheader #citiesmenu  img {
	vertical-align: bottom;
}
.graphicheader #citiesmenu details ul {
	columns: 2;
	columns-gap: 20px;	
	padding: 40px 40px 40px 100px;
}


@media (max-width: 560px) {
	.graphicheader {
		height: 560px;
	}
	.graphicheader #citiesmenu {
		height: 100px;
		width: 100%;
	}
}
@media (max-width: 400px) {
	.graphicheader #citiesmenu details ul {
		padding-left: 40px;	
	}
}

.graphicheader .image img {
	vertical-align: top;	
	height: 100%;
	width: auto;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
}
.graphicheader .text {
	width: 100%;
	max-width: 900px;
	padding: 20px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin-top: 40px;
	text-shadow: 0 0 3px rgba(0,0,0,0.2);
}



.gsm_item {
	display: block;
	height: 60px;
	padding: 20px 0 20px 20px;
	position: relative;
	overflow: hidden;
	background: #FFF;
	border-bottom: 1px solid rgba(0,0,0,0.2);
	color: var(--title-color);
}
.gsm_item svg {
	fill: var(--link-color);
}

.gsm_item:hover {
	color: var(--link-color);
}
.gsm_item .body,
.gsm_item .title {
	position: absolute;
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
	line-height: 18px;
	left: 100px;
	right: 40px;
	top: 50%;
	transform: translate(0,-50%);
	max-height: 54px;
	text-transform: none;
	color: var(--black);
	
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;  
	overflow: hidden;	
}
.gsm_item em {
	font-weight: bold;
	display: block;
}	
.gsm_item .icon {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 70px;
	height: 26px;
	text-align: center;
	fill: var(--red);
}
.gsm_item .icon svg {
	width: auto;
	height: 26px;
}
.gsm_item:hover .icon {
	fill: var(--title-color);
}
.gsm_item > svg {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0,-50%);
}
.gsm_item .img {
	width: 60px;
	float: left;	
}
.graphicsubmenu {
	background: var(--light-gray);	
}
.graphicsubmenu .t3 {
	text-align: center;
	margin-bottoM: 20px;	
}
.graphicsubmenu .body {
	padding: 0;
	background: var(--light-gray);	
	border-radius: 2px;
}
.graphicsubmenu input + ul li:nth-child(6) ~ li {
	display: none;	
}
.graphicsubmenu input:checked + ul li:nth-child(6) ~ li {
	display: block;
}
.graphicsubmenu .togglemore {
	margin: -20px 0 0 0;
	padding-bottom: 20px;
	text-align: center;	
}
.graphicsubmenu input:checked ~ .togglemore {
	display: none;	
}
.graphicsubmenu .togglemore label {
	display: inline-block;
	padding: 5px;
	font-weight: 500;
	position: relative;
	cursor: pointer;
}
.graphicsubmenu .togglemore label::after {
	content: "";
	width: 8px;
	height: 8px;
	border: 2px solid var(--red);
	border-width: 0 2px 2px 0;
	transform: translate( 7px, -3px) rotate(45deg);
	display: inline-block;
}
.graphicsubmenu .togglemore label:hover {
	color: var(--red);
}

.graphicsubmenu ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 30px;
	padding: 40px;	
}
.graphicsubmenu ul li {
	vertical-align: top;
	display: inline-block;
}

.gsm_item:hover .title {
	color: var(--red);	
}

@media (max-width: 1000px) {
	.graphicsubmenu ul {
		grid-template-columns: 1fr 1fr ;
	}
}
@media (max-width: 799px) {
	.graphicsubmenu ul {
		padding: 20px;
		grid-gap: 20px;	
	}

	.gsm_item {
		display: block;
		padding: 10px;
		height: 48px;
	}
	.gsm_item > svg {
		display: none;
	}
	.gsm_item .img {
		width: 48px;
		float: left;	
	}
	.gsm_item .body,
	.gsm_item .title {
		position: absolute;
		text-decoration: none;
		font-size: 15px;
		font-weight: 500;
		line-height: 16px;
		left: 68px;
		right: 10px;
		max-height: 48px;
	}
}

@media (max-width: 600px) {
	.graphicsubmenu ul {
		grid-template-columns: 1fr ;
		padding: 10px;
		grid-gap: 10px;	
	}
	.graphicsubmenu ul li {
		width: auto;
		display: block;
	}
	
}

.homeslider {
	contain: layout;
	position: relative;
	max-width: 1600px;
	margin: -100px auto 0 auto;
}
.homeslider img {
	vertical-align: top;	
}
.homeslider .slide {
	position: relative;
	overflow: hidden;
	width: 100%;
	color: #FFF;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.homeslider .swiper-slide-active .slide {
	opacity: 1;	
}
.homeslider .preview {
	position: absolute;
	right: 180px;
	bottom: 0;
	background: var(--button-hover);
	font-size: 15px;
	line-height: 28px;
	height: 150px;
	color: #FFF;
	--title-color: #FFF;
	display: grid;
	grid-template-columns: 150px 450px
}
.homeslider .preview h4 {
	font-weight: bold;	
}
.homeslider .preview .text {
	padding: 0 40px;
	align-self: center;	
}
.homeslider .slide .slidetext {
	width: 1400px;
	position: absolute;
	--title-color: #FFF;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.homeslider .t1 {
	padding: 10px 0;
	font-size: 100px;
	line-height: 112px;	
}
.homeslider .tt {
	font-size: 30px;
}
.homeslider .prevnext {
	position: absolute;
	bottom: 0;
	right: 0;
	height: 150px;
	line-height: 150px;
	width: 180px;
	background: var(--button-hover);
	z-index: 40;
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.homeslider .prevnext a {
	display: block;
	width: 90px;
	height: 150px;
	cursor: pointer;
	text-align: center;
}
.homeslider .prevnext a::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border: 2px solid #FFF;
	border-width: 2px 2px 0 0;
	margin-left: 5px;
	transform: translate(-5px, -1px) rotate(45deg) 
}
.homeslider .prevnext a.prev {
	background: rgba(255,255,255,0.1);	
}
.homeslider .prevnext a.prev::after {
	transform: translate(-5px, -1px) rotate(-135deg) 
}

.homeslider .prevnext a.prev:hover,
.homeslider .prevnext a:hover {
	background: var(--red);
}
.homeslider .prevnext a svg {
	fill: #FFF;	
}

@media (max-width: 1440px) {
	 .homeslider .slide .slidetext {
		width: auto;
		left: 20px;
		right: 20px;
		transform: translate(0,-50%);
	}
 
}

@media (max-width: 1000px) {
	.homeslider .slide .t1 {
		font-size: 40px;
		line-height: 60px;
	}
	.homeslider .slide {
		gap: 30px;
	}
	.homeslider .slide .slidetext {
		margin-right: 30px;
	}
	#vd23 .homeslider .pagination {
		left: calc(50% + 15px);
		bottom: 0;
	}
}

@media (max-width: 799px) {
	.homeslider .slide {
		display: block;
	}
	.homeslider .slide .slidetext {
		padding: 40px 10px;
		width: auto;
		max-width: 540px;
		margin: 0 auto;
		text-align: center;
	}
	
	.homeslider .prevnext {
		height: 60px;
		line-height: 60px;
		width: 120px;
	}
	.homeslider .prevnext a {
		width: 60px;
		height: 60px;
	}
	.homeslider .prevnext a::after {
		content: "";
		display: inline-block;
		width: 6px;
		height: 6px;
		border: 2px solid #FFF;
		border-width: 2px 2px 0 0;
		margin-left: 5px;
		transform: translate(-5px, -1px) rotate(45deg) 
	}

	.homeslider .preview {
		right: 120px;
		height: 60px;
		grid-template-columns: 60px 0;
	}
	.homeslider .preview .text {
		display: none;
	}	
}

.storytop {
	background: #FAFAFA;
	margin-bottom: 40px;
}

.search_and_popular {
	display: flex;
	padding: 40px 0;
}
.search_and_popular .button {
	text-transform: uppercase;
	font-weight: 500;
	font-size: 14px;	
}
.search_and_popular .poptopics li {
	padding-right: 10px;	
}
.search_and_popular .poptopics .active {
	background: var(--red);
	color: #FFF;
	border-color: transparent;	
}
.search_and_popular form {
	flex-grow: 1;
	position: relative;	
}
.search_and_popular form input {
	width: 100%;
	border: 1px solid transparent;
	border-bottom-color: rgba(0,0,0,0.1);
	background: transparent;
	height: 56px;
	line-height: 55px;
	padding: 0 40px;
	box-sizing: border-box;
	font-size: 16px;
	font-family: inherit;
}
.search_and_popular form button {
	position: absolute;
	right: 0;
	top: 0;
	background: transparent;
	width: 56px;
}
.search_and_popular form button svg {
	fill: var(--red);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.search_and_popular form button:hover {
	background: var(--gray);	
}



.textbanner {
	overflow: hidden;
	white-space: nowrap;
	padding-left: 50%;
}
.textbanner .banner {
	display: inline-block;
	transform: translate(-50%,0);	
}
.textbanner span,
.textbanner em {
	font-style: normal;
	font-weight: bold;
	font-size: 300px;
	line-height: 340px;
	text-transform: uppercase;
	color: transparent;
	-webkit-text-stroke: 4px var(--stroke-color);;	
}
@media (max-width: 1000px) {
	.textbanner span,
	.textbanner em {
		font-size: 200px;
		line-height: 240px;
		-webkit-text-stroke: 3px var(--stroke-color);;	
	}
}
@media (max-width: 799px) {
	.textbanner span,
	.textbanner em {
		-webkit-text-stroke: 2px var(--stroke-color);;	
		font-size: 100px;
		line-height: 140px;
	}
}