@import url('src/fonts.css');
@import url('src/share.css');
@import url('src/spinner.css');
@import url('src/cookiebanner.css');

/*
#42282f ==> chocolade
#74A558 ==> mintgroen
#d6ccad ==> zanderig geel
#dc9c76 ==> licht oranje
#d6655a ==> roze-oranje, zeg maar
*/

:root {
	--color-choc: #42282f;
	--color-mint: #74A558;
	--color-sand: #d6ccad;
	--color-orange-light: #dc9c76;
	--color-orange-pink: #d6655a;
	--color-green-dark: #004B00;
	--color-blueish: #4479be;
	--color-blueish-dark: #1e66c4;
	--color-blueish-light: #829bbb;
}

*:not(dialog) {margin: 0; padding: 0;}
html, body {overflow-x: hidden}
body {
    color:#222; 
    background-color: var(--color-mint);
	font-family: Georgia, "Times New Roman", serif; 
	position: relative;
}

a {
	color: #640000; 
	text-decoration: none;
}
#tekst p a, #r1c1 li a {
	border-bottom: 1px solid #640000;
	padding-bottom: 2px;
	transition: all 0.2s ease 0s;
}
#tekst p a:hover {
	text-decoration: none;
	padding-bottom: 1px;
}
#tekst p {
	line-height: 1.5em;
}
#tekst p.tekst-klein {
	font-size: 10px;
}

#r1c3 > *:first-child {
	border-top: 1px dashed #deb9a2;
    padding-top: 1em;
}
#r1c2 h3 {
	font-weight: 200;
}

#tekst ul li > ul {
    margin-left: 1em;
}
#r1c1 ul li, #r1c1 ol li {
	margin-bottom: 0.5em;
	line-height: 1.5em;
}


a img {border: 0;}

.clear {clear: both;}
.verberg {display: none !important}
.toon {display: block !important}

h1 {font-family: "Oswald-Regular", sans-serif; font-size: 28px; margin-bottom: 1em;}
h2 {font-family: "Oswald-Regular", sans-serif; font-size: 20px; margin: 0.5em 0 0.3em;}
h3 {font-family: "Oswald-Regular", sans-serif; font-size: 16px; margin: 0.3em 0 0.2em; letter-spacing: 0.5px;}
h4 {font-family: "Oswald-Regular", sans-serif; font-size: 14px; margin: 0.3em 0 0.2em; letter-spacing: 1px;}

dd {padding-left: 1em;}

.flexrow {
	display: flex;
	flex-direction: row;
}

div#skiptocontent a {
	position: absolute;
	top: -40px;
	left: 0;
	border: 1px solid silver;
	border-width: 0 1px 1px 0;
	border-bottom-right-radius: 5px;
	background-color: var(--color-orange-light);
	transition: top .3s ease-out;
	color: #111;
	z-index: 25;
}
div#skiptocontent a span {
	display: inline-block;
	padding: 5px 5px 1px;
	margin-bottom: 4px;
	border-bottom: 1px dotted #090000;
}
div#skiptocontent a:hover span {
	padding-bottom: 2px;
	margin-bottom: 3px;
}
div#skiptocontent a:focus {
	top: 0;
}


[class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'aodk' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-search:before {
	content: "\e986";
}
.icon-x:before {
	content: "\e904";
}
.icon-pijl-links:before {
	content: "\e905";
}
.icon-volgende:before {
	content: "\e909";
}
.icon-vorige:before {
	content: "\e90a";
}



#header {
    font-family: "Oswald-Regular", sans-serif; 
    color: #eee;
    padding-left: 1em;
    background-color: var(--color-choc); 
    margin-bottom: 1em;
    border-bottom: 1px solid #999;
}
#header h1 {
    font-size: 26px; 
    font-weight: bold;
    display: inline-block;
    margin-bottom: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 99%;
    overflow-x: hidden;
}

#topmenu {
	margin-top:7px; 
	list-style: none; 
	height: 1.5em; 
	float: right;
	display: grid;
	grid-auto-flow: column;
	align-items: baseline;
}
#topmenu li {
	display: inline-block; 
	padding: 3px; margin-right: 10px; font-size: 13px; letter-spacing: 1px;
    vertical-align: bottom;
}
#topmenu li a {display: block; padding: 3px; font-weight: normal; text-decoration: none; line-height: 25px; color: #eee;}
#topmenu li.actief a {color: var(--color-orange-light);}
#topmenu li.dropdown {
	position: relative;
}
#topmenu li.dropdown ul {
	position: absolute;
	right: 0;
	z-index: 101; /* over de kaartknoppen */
	background-color: var(--color-choc);
	display: none;
	width: 120px;
}
#topmenu li.dropdown ul li {
	display: block;
}
#topmenu li.dropdown:focus-within ul,
#topmenu li.dropdown:active ul, 
#topmenu li.dropdown:hover ul
{
	display: block;
}

#subheader h2 {
  float: left;
  text-align: left;
  margin-left: 10px;
  line-height: 35px;
  width: calc(100% - 80px);
  white-space: nowrap;
  overflow-x: hidden;
  text-overflow: ellipsis;
}
@media screen and (min-width: 901px) {
  #prodmenuknop, #subheader h2 {
    display: none;
  }
}

#footer {
    font-family: Courier, monospace; width: 100%; padding: 0.5em 0; border-top: 1px solid #999;
    background-color: var(--color-orange-light);
}
#footer p {
    margin: 0 1em 1em;
}
#footer a {
    color: #eee;
}



#header {margin-bottom: 0}
#subheader {
	position: fixed;
	top: 0;
	width: 100vw;
	background-color: var(--color-mint);
	z-index: 151; /* hoger dan de zoekbox */
	border-bottom: 1px solid var(--color-choc);
}
body {
	padding-top: 50px;
}

body #container {
    padding: 10px 5px; 
    background-color: #222; 
    border-top: 1px solid #bbb; 
    position: relative;
	/* min-height: calc(100vh - 50px - 4px); 100vh - subheader - paddingVanContainer */
}

@media only screen and (max-device-width: 480px) {
    #header {
        width: 95% !important; padding: 5px;
        -webkit-border-top-left-radius: 15px; 
        -webkit-border-bottom-right-radius: 15px; 
        border-top-left-radius: 15px; 
        border-bottom-right-radius: 15px; 
    }
    #container {width: 100%; }
    h1 {font-size: 20px;}
    h2 {font-size: 17px;}
    h3 {font-size: 16px;}
    #header menu {margin: 4px 0;}
    #header menu li {
        float: none;
        margin-right: -1px;
        font-size: 90%;
    }
    #header menu li a {padding: 3px 0 0; text-decoration: none;}
}
/* phone and also some tablets */
@media screen and (max-width: 900px) { /* was 540 */

	#container {padding: 2px !important; width: calc(100% - 4px);}
	#header {display: none}
	
	.nietOpMobiel {
		display: none !important;
	}
}
@media screen and (min-width: 901px) {
	.nietOpDesktop {
		display: none !important;
	}
}

a.ext::after, .oip_media a:after {
	font-family: 'aodk' !important;
	content: "\e906";
}




.center {
	text-align: center;
}


button#prodmenuknop {
	width: 40px;
	height: 40px;
	margin: 5px 5px 5px 0;
	border-width: 0;
	background-color: transparent;
	float: right;
}
#prodmenu {
	padding: 5px; list-style: none; margin: 0;
	background-color: #000;
	width: 80%;
	max-width: 280px;
	position: absolute;
	z-index: 100;
	text-align: left;
	left: calc(-80% - 5px);
	transition: left .2s ease-in;
	border: 1px solid silver;
	border-width: 0 1px 1px 0;
	border-radius: 0 0 10px 0;
	top: 0px;
}
#prodmenu.inbeeld {
	left: 0;
}
#prodmenu a.actief, #prodmenu a:hover {color: #fff}
#prodmenu li a {
	padding-left: 15px;
	display: block;
	color: var(--color-choc);
	font-family: "Oswald-Regular", sans-serif;
	letter-spacing: 1px;
    font-size: 16px;
}
#prodmenu li a.prodkeuze {
	background: url('/assets/pix/pins/kaartikonen-sprite.png?v=0.2') 0 0 / 30px 300px no-repeat; /* 60% van werkelijke maten */
}
#prodmenu li a.prodkeuze.keuze0  {
	background: none;
}
#prodmenu li a.prodkeuze.keuze1  {
	background-position: -9px -5px;
}
#prodmenu li a.prodkeuze.keuze2  {
	background-position: -9px -35px;
}
#prodmenu li a.prodkeuze.keuze3 {
	background-position: -9px -65px;
}
#prodmenu li {
	display: block;
	height: 35px;
	padding: 5px 5px 5px 10px;
	margin: 5px 0;
	background-color: var(--color-mint);
	line-height: 35px;
}
#prodmenu a.catkeuze, #prodmenu a.geenkeuze {
	background-image: none;
	padding-left: 0px;
}
#prodmenu li.sep {
	height: 1px;
	padding: 0;
	background-color: inherit;
	line-height: 2px;
}


@media screen and (min-width: 901px) {
	#subheader {
		position: static;
		border-bottom: 0px;
		width: auto;
	}
	body {
		padding-top: 0;
	}
	#prodmenu {padding: 5px 1em; position: static; background-color: transparent; width: 100%; max-width: 100%; border-width: 0}
	#prodmenu a {background-size: 12px 15px; font-size: inherit;}
	#prodmenu li {
		display: inline-block; width: auto; padding: 0 25px 0 0; height: auto; background-color: transparent;
		line-height: 20px;
	}
	#prodmenu li.laatsteOpDesktop {
	    padding-right: 0;
	}
	#prodmenu li a.prodkeuze.keuze1  {
		background-position: -9px -12px;
	}
	#prodmenu li a.prodkeuze.keuze2  {
		background-position: -9px -42px;
	}
	#prodmenu li a.prodkeuze.keuze3 {
		background-position: -9px -72px;
	}
}



#tekst {
	color: #111;
	width: 100%; 
	background-color: var(--color-orange-light);
	/* display: table;
	clear: both;  */
}
div#footer {
	background-color: #111;
}
div#footer p {
	margin: 2em 5px;
}
div#footer, #div footer a {
	color: #aaa !important;
}
@media (min-width: 901px) {
	div#footer p {
	    margin: 2em 15px;
	}
}


#tekst p, #tekst div div {margin-bottom: 1em;}
#tekst {
	border-collapse:separate;
	border-spacing:0px;
}

/* grid-indeling tekstvak */
#r1 {
    display: grid;
}
#r1c1, #r1c2, #r1c3, #r1c4 {
	vertical-align: top;
	padding: 5px;
}
@media ( min-width: 901px ) and (max-width: 1050px) { 
    #r1 {
	    /* grid-template-columns: 1fr 1fr 350px; */
	    grid-template-columns: minmax(350px, 1fr) 1fr 1fr;
	}
}
@media ( min-width: 1051px ) { 
    #r1 {
	    /* grid-template-columns: 1fr 1fr 350px; */
	    grid-template-columns: minmax(350px, 1fr) 1fr 350px;
	}
}
#r1c1 {order: 1}
#r1c2 {order: 3}
#r1c3 {order: 4}
#r1c4 {order: 2}
#r1.item #r1c2 {order: 4}
#r1.item #r1c3 {order: 3}

@media (max-width: 900px) {
	#r1c1 {margin-bottom: 0 !important;}
}

@media (min-width: 901px) { /* was 541 */
	#r1c1 p, #r1c1 li, #tekst .oip_media, #r1c1 blockquote {
		max-width: 500px;
	}
	#r1c1, #r1c2, #r1c3, #r1c4 {
		border: 1px dashed #deb9a2;
		padding: 15px;
	}
	#r1c1 {
		padding-right: 1em;
		border-width: 0 2px 0 0;
		order: 2;
        /* grid-area: 1 / 2 / span 1 / span 1; */ 
	}
	#r1c2 {
		border-width: 0;
        order: 3;
        /* grid-area: 1 / 2 / span 1 / span 1; */ 
	}
	#r1c3 {
		border-width: 0 0 0 2px;
        order: 4;
        grid-area: 1 / 3 / span 2 / span 1; 
	}
	#r1c4 {
		border-width: 0 2px 0 0;
		order: 1;
        grid-area: 1 / 1 / span 2 / span 1; 
	}
	#r1c3 > *:first-child {
		border-width: 0px !important;
    	padding-top: 0em !important;
	}
	#r1.item #r1c1 {border-width : 0}
	#r1.item #r1c2 {border-width : 0}
	#r1.item #r1c3 {border-width : 0 0 0 2px}
	#r1.item #r1c4 {border-width : 0 2px 0 0}
}

#r1c1 hr + p {margin-top: 1em}
#r1c1 ul, #r1c1 ol {
	padding-left: 1em;
	margin-bottom: 1em;
}
#r1c1 ol {
	padding-left: 2em;
}



/* simpele berichtentoner */
div#berichtbox {
	transition: right 0.2s ease-in;
	width: 200px;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 0;right: -210px;
	border: 1px solid silver;
	z-index: 152; /* hoger dan de (sub)header */
	padding: 5px;
	font-family: sans-serif;
}
div#berichtbox.toon {
	right: 0px;
}
div#berichtbox.neutraal {
	background-color: var(--color-blueish-dark);
}
div#berichtbox.alarm {
	background-color: red;
}

/* bericht in modal venster */
div#modalBg {
	background-color: rgba(0,0,0,0.6);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: none;
	z-index: 125;
}
div#modalBox {
	background-color: #008000;
	color: var(--color-choc);
	width: 33%;
	min-width: 300px;
	max-width: 500px;
	position: fixed;
	z-index: 126;
	top: 100px;
	max-height: calc(100vh - 120px);
	display: none;
	box-shadow: #000 1px 1px 5px;
}
div#modalBox header {
	background-color: var(--color-choc);
	color: #eee;
	font-family: "Oswald Regular", sans-serif;
	font-size: 20px;
	padding: 5px 10px;
}
div#modalBox header .sluitknop::before {
	font-family: 'aodk' !important;
	content: "\e903";
}
div#modalBox header .sluitknop {
	float: right;
	cursor: pointer;
}
div#modalBox article {
	padding: 10px;
}

/* mastodon-modal */
.mstdnModal {
	padding: 5px;
	background-color: var(--color-orange-light);
	list-style: none;
	font-size: 1.2em;
}
.mstdnModal li {
	margin-bottom: 1em;
}
.mstdnModal li label {
	display: block;
	margin-bottom: 1em;
}
.mstdnModal li input[type=text] {
	height: 20px;
	padding: 6px;
	width: 300px;
	max-width: fit-content;
	font-size: 18px;
}
.mstdnModal li.laatste  {
	text-align: right;
}
.mstdnModal li.feedback p {
	background-color: var(--color-orange-pink);
	padding: 5px;
}
.mstdnModal .knop  {
	margin-bottom: 5px;
}



input.knop, button.knop {
	padding: 5px;
	height: 32px;
	-webkit-appearance: none;
	border: 1px solid #333;
	border-radius: 0;
	font-size: 0.9em;
	background-color: rgba(224,224,224,1);
}
input.knop:hover, input.knop:active, button.knop:hover, button.knop:active {
	background-color: rgba(242,242,242,1);
}

button.mooieknop {
	border-radius: 5px;
	background-color: #004B00;
	color: #fff;
	font-weight: bold;
	padding: 10px;
	border: 0;
	letter-spacing: 1px;
	font-size: larger;
}
button.mooieknop:hover, button.mooieknop:focus {
	background-color: #008000;
}




/* server-messages, oud */
/* .msg_error, .msg_notice, .msg_success {padding:.8em;padding-left: 40px;margin-bottom:1em;border:2px solid #ddd;}
.msg_error {background:#FBE3E4 url("/assets/pix/notice-alert.png") no-repeat 3px 5px;color:#8a1f11;border-color:#FBC2C4;}
.msg_notice {background:#C6D3EF url("/assets/pix/notice-info.png") no-repeat 3px 3px; color:#514721;border-color:#5AA2FF;}
.msg_success {background:#E6EFC2 url("/assets/pix/notice-ok.png") no-repeat 3px 3px;color:#264409;border-color:#C6D880;}
.msg_error a {color:#8a1f11;}
.msg_notice a {color:#514721;}
.msg_success a {color:#264409;} */

/* server messages in their own bar */
div.messagebar {
	padding:.8em; 
	margin-bottom:1em; 
	margin-top:1em; 
	border:2px solid #ddd;
	display: flex;
}
div.messagebar svg {
	margin-right: 10px;
	flex-shrink: 0;
}
div.messagebar.message-success {
	background-color: #E6EFC2;
	color: #264409;
	border-color:#C6D880;
}
div.messagebar.message-success a {
	color: #264409;
}
div.messagebar.message-info {
	background-color: #C6D3EF;
	color:#162f60;
	border-color:#5AA2FF;
}
div.messagebar.message-info a {
	color:#162f60;
}
div.messagebar.message-error {
	background-color: #fff3cd;
	color: #664d03;
	border-color: #ffdd79;
}
div.messagebar.message-error a {
	color: #8a1f11;
}
div.messagebar.message-danger {
	background-color: #FBE3E4;
	color: #8a1f11;
	border-color:#FBC2C4;
}
div.messagebar.message-danger a {
	color: #8a1f11;
}

