
* {
	box-sizing: border-box;
	margin: 0;
}

html {
    /* overflow kills position sticky */
	/* overflow-x: hidden; */
    overflow-wrap: break-word;
}

body {
	margin: 0;
	max-width: 100%;
	overflow-x: hidden;
}

a {
	text-decoration: none;
}

img {
	image-orientation: from-image;
}

/* ===== SITE ===== */
.skip_nav_link {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 0.8em;
    text-align: center;
    border-radius: 0 0 0.5em 0.5em;
    padding: 0.25em 0.5em;
    color: rgb(55,49,59);
    background-color: rgb(224,227,230);
    z-index: 9;

    opacity: 0;
    height: 0;
    transition: all 0.15s ease-in!important;
}

.skip_nav_link:focus {
    opacity: 1;
    height: 30px;
    outline: none;
}

.skip_nav_link_right {
    width: 180px;
    transform-origin: right top;
    transform: translate(-180px, 3px) rotate(-90deg);
}

.skip_nav_link_top {
    width: 50%;
    transform: translateX(50%);
}

.site {
	position: relative;
	bottom: 100%;
	left: 0;
	top: 0;

	height: 100%;
	min-height: 100vh;
	min-width: 100%;

	z-index: 1;
}

.site_foldout {
	box-shadow: 0 0 5px 3px rgba(0,0,0,0.4);
	transition: left 0.25s ease-in;
}

.body_disabled,
.body_foldout {
	overflow: hidden !important;
	position: inherit;
}

.body_disabled {
	width: 100%;
	height: 100%;
}

.site_content {
	margin: auto;
    min-height: 2.5em;
}

.forced_fullwidth,
.main_content section.forced_fullwidth {
	max-width: 100%;
	width: 100%;
}

.forced_maxwidth,
.main_content section {
    max-width: 1350px;
    width: 100%;
    margin: auto;
}

/* ===== FOOTER ===== */
.site_footer {
    margin-top: 0;
    height: auto;
}

.site_footer section {
	margin: auto;
	width: 100%;
}

/* ===== NAVIGATION ===== */
.logo_container img {
    display: block;
}

.headernav ul {
    list-style: none;
}

.headernav li {
    display: inline-block;
}

.headernav li a {
    display: block;
    text-decoration: none;
}

/* ===== HEADERNAV SUBMENU ===== */
.headernav li ul {
    display: none;
    position: absolute;
    text-align: left;
}

.headernav li ul li {
    display: block;
}

.headernav li li {
    border-right: 0;
    height: auto;
}

.headernav li:hover ul {
    z-index: 99;
    display: block;
}

/* ===== SUBMENU ===== */
.site_submenu li {
    display: inline-block;
    font-weight: normal;
}

.site_submenu li a {
    display: block;
    text-decoration: none;
}

.site_submenu li a.active {
    cursor: default;
}

/*noinspection CssOverwrittenProperties */
.mobile_nav {
	display: none;
	
	height: 100%;
	width: 100%;

	position: fixed;
	bottom: 0;
	left: 60px;
	right: 0;
	top: 0;
	list-style: none;
	overflow-y: scroll;
	z-index: 0;
}

.mobile_nav .h2 {
    margin: 0;
    padding: calc(var(--default_padding_margin) * 0.5) var(--default_padding_margin);
}

.mobile_nav ul {
	list-style: none;
	padding: 0;
}

.mobile_nav li {
	font-weight: normal;
    line-height: var(--body_line_height);
}

.mobile_nav li a {
	display: block;
	padding: calc(var(--default_padding_margin) * 0.5) var(--default_padding_margin);
}

.mobile_nav li a.active {
	cursor: default;
}

.mobile_nav ul li ul {
	margin: 0;
}

.mobile_nav ul li ul li a {
	padding-left: calc(var(--default_padding_margin) * 2);
}

/* ===== UI DATEPICKER ===== */
.ui-datepicker {
    background-color: rgb(255,255,255);
    padding: 0.4em;
    margin-left: 0.2em;
    display: none;
}

.ui-datepicker select {
    margin-bottom: 0.2em;
}

.ui-datepicker a.ui-state-default {
    color: rgb(101,45,145);
}

.ui-datepicker a.ui-state-active,
.ui-datepicker a.ui-state-default:hover {
    text-decoration: underline;
}

.ui-datepicker-prev {
    float: left;
    background-position: center -30px;
}

.ui-datepicker-next {
    float: right;
    background-position: center 0;
}

/* ===== BOOTBOX ===== */
.modal-footer .button {
    margin: 0;
}

.bootbox-close-button {
    --button_padding: 0.3em;
    --button_font_size: 1em;
    border-radius: 50%;
    padding: var(--button_padding) 0;
    width: calc((var(--button_font_size) + (2 * var(--button_padding))) + 0.125em);
    height: calc((var(--button_font_size) + (2 * var(--button_padding))) + 0.125em);
    margin: 0;
    color: rgb(55,49,59);
    border: 1px solid rgb(224,227,230);
    background-color: rgb(224,227,230);
}

.bootbox-close-button:hover {
    color: rgb(255,255,255);
    border: 1px solid rgb(0,145,199);
    background-color: rgb(0,145,199);
}

.btn-primary {
    color: rgb(255,255,255);
    border: 1px solid rgb(101,45,145);
    background-color: rgb(101,45,145);
}

.btn-primary:hover {
    color: rgb(255,255,255);
    border: 1px solid rgb(0,145,199);
    background-color: rgb(0,145,199);
}

.close {
    float: right;
}

h4.modal-title {
    margin: 0;
    padding: 0;
    font-size: 1.1em;
    font-weight: normal;
}

.bootbox-body a {
    text-decoration: underline;
}

/* ===== OTHER ===== */
.blur {
    -webkit-filter: blur(1.25rem) grayscale(50%);
    filter: blur(1.25rem) grayscale(50%);
}

.breadcrumb {
    font-weight: normal;
}

.chapter_img {
    margin-bottom: 0.3em;
}

.clear_both {
    clear: both;
}

.cursor_pointer {
    cursor: pointer;
}

.collapsable {
    width: 100%;
    float: none;
}

.collapsable[collapsable_data_bodyclick="true"] .collapsable_body,
.collapsable_header {
    cursor: pointer;
}

.collapsable_header > span {
    margin-right: 0.625em;
}

.collapsable .inputrow_label {
    width: 100%;
}

.direction_rtl {
    direction: rtl;
}

.direction_ltr {
    direction: ltr;
}

dl {
    display: -webkit-box;	/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;		/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;	/* TWEEN - IE 10 */
    display: -webkit-flex;	/* NEW - Chrome */
    display: flex;			/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: row;
    flex-direction: row;

    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

dt,
dd {
    flex: none;
}

.error404 {
    background-image: url("https://www.stadstochten.nl/resources_shared/img/error-404.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    font-size: 2em;
    font-weight: normal;
    text-align: center;
    margin: var(--default_padding_margin);
    padding: var(--default_padding_margin);
}

.float_right {
    float: right;
}

.float_left {
    float: left;
}

.font_header {
	font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
}

.font_text {
	font-family: 'robotoregular','Helvetica','Arial','sans-serif';
}

.fontsize_10 { font-size: 0.6rem !important; }
.fontsize_15 { font-size: 0.9rem !important; }
.fontsize_20 { font-size: 1.25rem !important; }
.fontsize_25 { font-size: 1.5rem !important; }
.fontsize_30 { font-size: 1.9rem !important; }
.fontsize_40 { font-size: 2.5rem !important; }
.fontsize_50 { font-size: 3rem !important; }
.fontsize_60 { font-size: 3.75rem !important; }
.fontsize_70 { font-size: 4.4rem !important; }
.fontsize_80 { font-size: 5rem !important; }
.fontsize_90 { font-size: 5.6rem !important; }
.fontsize_100 { font-size: 6.25rem !important; }

H1, H2, H3,
.h1, .h2, .h3 {
	font-weight: normal;
	padding: 0;
	margin: 0 0 0.3em 0;
}

H4, .h4 {
	padding: 0;
	margin: 0;
}

.img_align_left,
.img_align_right {
    width: 50%;
}

.img_align_small {
    width: 25%;
}

.img_align_right,
.img_align_left,
.img_align_top,
.img_align_bot {
    margin: 0;
}

.img_align_right {
    float: right;
    padding-left: var(--default_padding_margin);
}

.img_align_left {
    float: left;
    padding-right: var(--default_padding_margin);
}

.img_align_top {
    padding-bottom: calc(var(--default_padding_margin) * 0.5);
}

.img_align_bot {
    padding-top: calc(var(--default_padding_margin) * 0.5);
}

.list_style_none {
    list-style: none;
    padding-inline-start: 0;
}

.mobile_visible {
    display: none;
}

.nofilter {
	-webkit-filter: none;
	-ms-filter: none;
	filter: none;
}

.noscroll {
    overflow: hidden;
}

.overflow_hidden {
    overflow: hidden;
}

P, P P {
	padding: 0;
	margin: 0 0 0.625em 0;
}

P:empty:first-of-type { display: none; }


.pointer_events_none {
    pointer-events: none;
}

.position_absolute {
    position: absolute;
}

.position_relative {
    position: relative;
}

strong,
.bold {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    font-weight: bold;
}

.text_center,
.center {
    text-align: center;
}

.text_left,
.left {
    text-align: left;
}

.text_right,
.right {
    text-align: right;
}

.text_justify {
    text-align: justify;
}

.text_underline {
    cursor: pointer;
    text-decoration: underline;
}

.toggle_element {
	display: none;
}

.toggle_element_button {
	cursor: pointer;
}

.user_select_none {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.uppercase 		{ text-transform: uppercase; }
.lowercase 		{ text-transform: lowercase; }
.capitalize 	{ text-transform: capitalize; }

.width_auto     { width: auto; }
.width_50       { width: 50%; }
.width_75       { width: 75%; }
.width_100,
.fullwidth      { width: 100%; }

.whitespace_nowrap {
	white-space: nowrap;
}

/* ===== FLEX ===== */
section {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    margin-bottom: 1.25em;
    padding: 0;

    -webkit-flex-direction: row;
    flex-direction: row;

    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-align-items: stretch;
    align-items: stretch;
}

section div {
    margin-bottom: 0;
}

/* div12_12 (100 - 2 = 98) --> div1_12 (98 / (12/1) - 2 = 6.16) */
.div1_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 6%;	        /* IE 10 */
    -webkit-flex: 1 0 6%;	    /* NEW - Chrome */
    flex: 1 0 6%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div2_12 (98 / (12/2) - 2 = 14.33) */
.div2_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 14%;	        /* IE 10 */
    -webkit-flex: 1 0 14%;	    /* NEW - Chrome */
    flex: 1 0 14%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div3_12 (98 / (12/3) - 2 = 22.5) */
.div3_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 21%;	        /* IE 10 */
    -webkit-flex: 1 0 21%;	    /* NEW - Chrome */
    flex: 1 0 21%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div4_12 (98 / (12/4) - 2 = 30.67) */
.div4_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 31%;	        /* IE 10 */
    -webkit-flex: 1 0 31%;	    /* NEW - Chrome */
    flex: 1 0 31%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div5_12 (98 / (12/5) - 2 = 38.83) */
.div5_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 38%;	        /* IE 10 */
    -webkit-flex: 1 0 38%;	    /* NEW - Chrome */
    flex: 1 0 38%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div6_12 (98 / (12/6) - 2 = 47) */
.div6_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 47%;	        /* IE 10 */
    -webkit-flex: 1 0 47%;	    /* NEW - Chrome */
    flex: 1 0 47%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div7_12 (98 / (12/7) - 2 = 55.16) */
.div7_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 55%;	        /* IE 10 */
    -webkit-flex: 1 0 55%;	    /* NEW - Chrome */
    flex: 1 0 55%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div8_12 (98 / (12/8) - 2 = 63.33) */
.div8_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 63%;	        /* IE 10 */
    -webkit-flex: 1 0 63%;	    /* NEW - Chrome */
    flex: 1 0 63%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div9_12 (98 / (12/9) - 2 = 71.50) */
.div9_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 71%;	        /* IE 10 */
    -webkit-flex: 1 0 71%;	    /* NEW - Chrome */
    flex: 1 0 71%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div10_12 (98 / (12/10) - 2 = 79.67) */
.div10_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 79%;	        /* IE 10 */
    -webkit-flex: 1 0 79%;	    /* NEW - Chrome */
    flex: 1 0 79%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) --> div11_12 (98 / (12/11) - 2 = 87.8) */
.div11_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 87%;	        /* IE 10 */
    -webkit-flex: 1 0 87%;	    /* NEW - Chrome */
    flex: 1 0 87%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

/* div12_12 (100 - 2 = 98) */
.div12_12 {
    margin: 0.625rem 1%;

    -ms-flex: 1 0 98%;	        /* IE 10 */
    -webkit-flex: 1 0 98%;	    /* NEW - Chrome */
    flex: 1 0 98%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.display_flex {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEEN - IE 10 */
    display: -webkit-flex; /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.display_flex_row,
.display_flex_row_wrap {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: row;
    flex-direction: row;

    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.display_flex_row_nowrap {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: row;
    flex-direction: row;

    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.display_flex_column,
.display_flex_column_wrap {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: column;
    flex-direction: column;

    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.display_flex_column_nowrap {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: column;
    flex-direction: column;

    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.flex_0 {
    -webkit-box-flex: 0;	/* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 0;	    /* OLD - Firefox 19- */
    -ms-flex: 0;	        /* IE 10 */
    -webkit-flex: 0;	    /* NEW - Chrome */
    flex: 0;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_1 {
    -webkit-box-flex: 1;	/* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1;	    /* OLD - Firefox 19- */
    -ms-flex: 1;	        /* IE 10 */
    -webkit-flex: 1;	    /* NEW - Chrome */
    flex: 1;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_2 {
    -webkit-box-flex: 2;	/* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 2;	    /* OLD - Firefox 19- */
    -ms-flex: 2;	        /* IE 10 */
    -webkit-flex: 2;	    /* NEW - Chrome */
    flex: 2;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_3 {
    -webkit-box-flex: 3;	/* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 3;	    /* OLD - Firefox 19- */
    -ms-flex: 3;	        /* IE 10 */
    -webkit-flex: 3;	    /* NEW - Chrome */
    flex: 3;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_4 {
    -webkit-box-flex: 4;	/* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 4;	    /* OLD - Firefox 19- */
    -ms-flex: 4;	        /* IE 10 */
    -webkit-flex: 4;	    /* NEW - Chrome */
    flex: 4;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_1_0_0 {
    -ms-flex: 1 0 0;	        /* IE 10 */
    -webkit-flex: 1 0 0;	    /* NEW - Chrome */
    flex: 1 0 0;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_2_0_0 {
    -ms-flex: 2 0 0;	        /* IE 10 */
    -webkit-flex: 2 0 0;	    /* NEW - Chrome */
    flex: 2 0 0;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_1_0_auto {
    -ms-flex: 1 0 auto;		    /* IE 10 */
    -webkit-flex: 1 0 auto;		/* NEW - Chrome */
    flex: 1 0 auto;		        /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flex_basis_100 {
    flex-basis: 100%;
}

.flex_grow {
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

.flex_nogrow {
    -webkit-flex-grow: 0 !important;
    flex-grow: 0 !important;
}

.flex_wrap {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex_nowrap {
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.space_between,
.justify_space_between {
    -webkit-justify-content: space-between !important;
    justify-content: space-between !important;
}

.space_around,
.justify_space_around {
    -webkit-justify-content: space-around !important;
    justify-content: space-around !important;
}

.justify_center {
    -webkit-justify-content: center !important;
    justify-content: center !important;
}

.flex_start,
.justify_flex_start {
    -webkit-justify-content: flex-start !important;
    justify-content: flex-start !important;
}

.flex_end,
.justify_flex_end {
    -webkit-justify-content: flex-end !important;
    justify-content: flex-end !important;
}

.align_center {
    -webkit-align-items: center !important;
    align-items: center !important;
}

.align_content_center {
    -webkit-align-content: center !important;
    align-content: center !important;
}

.align_flex_start {
    -webkit-align-items: flex-start !important;
    align-items: flex-start !important;
}

.align_flex_end {
    -webkit-align-items: flex-end !important;
    align-items: flex-end !important;
}

.align_self_start {
    -webkit-align-self: flex-start;
    align-self: flex-start;
}

.align_self_end {
    -webkit-align-self: flex-end;
    align-self: flex-end;
}

.align_stretch {
    -webkit-align-items: stretch;
    align-items: stretch;
}

/* ===== DISPLAY ===== */
.display_grid {
    display: -ms-grid;
    display: grid;
}

.display_block {
    display: block;
}

.display_inline_block {
    display: inline-block;
}

.display_inline {
    display: inline;
}

.display_none {
    display: none;
}

/* ===== GRID ===== */
.grid_auto_columns {
    grid-auto-columns: minmax(0, 1fr);
}

.grid_1column {
    grid-template-columns: 100%;
}

.grid_2columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid_3columns {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid_4columns {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid_auto_rows {
    grid-auto-rows: minmax(0, 1fr);
}

.grid_1row {
    grid-template-rows: 100%;
}

.grid_2rows {
    grid-template-rows: repeat(2, minmax(0, 1fr));
}

.grid_3rows {
    grid-template-rows: repeat(3, minmax(0, 1fr));
}

.grid_4rows {
    grid-template-rows: repeat(4, minmax(0, 1fr));
}

.grid_span1 {
    grid-column: span 1;
    grid-row: span 1;
}

.grid_span2rows {
    grid-row: auto / span 2;
}

.grid_span3rows {
    grid-row: auto / span 3;
}

.grid_span4rows {
    grid-row: auto / span 4;
}

.grid_span2columns {
    grid-column: auto / span 2;
}

.grid_span3columns {
    grid-column: auto / span 3;
}

.grid_span4columns {
    grid-column: auto / span 4;
}

/* ===== TABLE MOCK CLASSES ===== */
.table    { display: table }
.tr       { display: table-row }
.thead    { display: table-header-group }
.tbody    { display: table-row-group }
.tfoot    { display: table-footer-group }
.col      { display: table-column }
.colgroup { display: table-column-group }
.td, .th  { display: table-cell }
.caption  { display: table-caption }

table,
.table {
    border-collapse: collapse;
    margin-bottom: 1.25em;
}

table[border="0"] td,
table[border="0"] th {
    border: 0;
}

th, td,
.th, .td {
    padding: 0.625em;
    margin: 0;
}

/* ===== PADDINGS & MARGINS ===== */
.default_padding {
    padding: var(--default_padding_margin);
}

.default_padding_small {
    padding: calc(0.5 * var(--default_padding_margin));
}

.default_padding_ver {
    padding: var(--default_padding_margin) 0;
}

.default_padding_hor {
    padding: 0 var(--default_padding_margin);
}

.margin_0	{ margin: 0 !important; }
.margin_5	{ margin: 0.3rem !important; }
.margin_10	{ margin: 0.625rem !important; }
.margin_15	{ margin: 0.9rem !important; }
.margin_20	{ margin: 1.25rem !important; }
.margin_25	{ margin: 1.5rem !important; }

.margin_ver_5	{ margin: 0.3rem 0 !important; }
.margin_ver_10	{ margin: 0.625rem 0 !important; }
.margin_ver_15	{ margin: 0.9rem 0 !important; }
.margin_ver_20	{ margin: 1.25rem 0 !important; }
.margin_ver_25	{ margin: 1.5rem 0 !important; }
.margin_ver_30	{ margin: 1.8rem 0 !important; }
.margin_ver_35	{ margin: 2.2rem 0 !important; }
.margin_ver_40	{ margin: 2.5rem 0 !important; }

.margin_top_0	{ margin-top: 0 !important; }
.margin_top_5	{ margin-top: 0.3rem !important; }
.margin_top_10	{ margin-top: 0.625rem !important; }
.margin_top_15	{ margin-top: 0.9rem !important; }
.margin_top_20	{ margin-top: 1.25rem !important; }
.margin_top_25	{ margin-top: 1.5rem !important; }
.margin_top_30	{ margin-top: 1.8rem !important; }
.margin_top_35	{ margin-top: 2.2rem !important; }
.margin_top_40	{ margin-top: 2.5rem !important; }

.margin_bot_0	{ margin-bottom: 0 !important; }
.margin_bot_5	{ margin-bottom: 0.3rem !important; }
.margin_bot_10	{ margin-bottom: 0.625rem !important; }
.margin_bot_15	{ margin-bottom: 0.9rem !important; }
.margin_bot_20	{ margin-bottom: 1.25rem !important; }
.margin_bot_25	{ margin-bottom: 1.5rem !important; }
.margin_bot_30	{ margin-bottom: 1.8rem !important; }
.margin_bot_35	{ margin-bottom: 2.2rem !important; }
.margin_bot_40	{ margin-bottom: 2.5rem !important; }

.margin_hor_5	{ margin: 0 0.3rem !important; }
.margin_hor_10	{ margin: 0 0.625rem !important; }
.margin_hor_15	{ margin: 0 0.9rem !important; }
.margin_hor_20	{ margin: 0 1.25rem !important; }
.margin_hor_25	{ margin: 0 1.5rem !important; }
.margin_hor_30	{ margin: 0 1.8rem !important; }
.margin_hor_35	{ margin: 0 2.2rem !important; }
.margin_hor_40	{ margin: 0 2.5rem !important; }

.margin_right_5     { margin-right: 0.3rem !important; }
.margin_right_10    { margin-right: 0.625rem !important; }
.margin_right_15	{ margin-right: 0.9rem !important; }
.margin_right_20	{ margin-right: 1.25rem !important; }
.margin_right_25	{ margin-right: 1.5rem !important; }
.margin_right_30	{ margin-right: 1.8rem !important; }
.margin_right_35	{ margin-right: 2.2rem !important; }
.margin_right_40    { margin-right: 2.5rem !important; }

.margin_left_5     { margin-left: 0.3rem !important; }
.margin_left_10    { margin-left: 0.625rem !important; }
.margin_left_15	   { margin-left: 0.9rem !important; }
.margin_left_20    { margin-left: 1.25rem !important; }
.margin_left_25    { margin-left: 1.5rem !important; }
.margin_left_30    { margin-left: 1.8rem !important; }
.margin_left_35    { margin-left: 2.2rem !important; }
.margin_left_40    { margin-left: 2.5rem !important; }


.padding_0	{ padding: 0 !important; }
.padding_5	{ padding: 0.3em !important; }
.padding_10	{ padding: 0.625em !important; }
.padding_15	{ padding: 0.9em !important; }
.padding_20	{ padding: 1.25em !important; }
.padding_25	{ padding: 1.5em !important; }
.padding_30	{ padding: 1.8em !important; }
.padding_40	{ padding: 2.5em !important; }
.padding_50	{ padding: 3em !important; }

.padding_40_20	{ padding: 2.5em 1.25em !important; }

.padding_ver_5	{ padding: 0.3em 0 !important; }
.padding_ver_10	{ padding: 0.625em 0 !important; }
.padding_ver_15	{ padding: 0.9em 0 !important; }
.padding_ver_20	{ padding: 1.25em 0 !important; }
.padding_ver_25	{ padding: 1.5em 0 !important; }
.padding_ver_30	{ padding: 1.8em 0 !important; }
.padding_ver_40	{ padding: 2.5em 0 !important; }
.padding_ver_50	{ padding: 3em 0 !important; }

.padding_hor_5	{ padding: 0 0.3em !important; }
.padding_hor_10	{ padding: 0 0.625em !important; }
.padding_hor_15	{ padding: 0 0.9em !important; }
.padding_hor_20	{ padding: 0 1.25em !important; }
.padding_hor_25	{ padding: 0 1.5em !important; }
.padding_hor_30	{ padding: 0 1.8em !important; }
.padding_hor_40	{ padding: 0 2.5em !important; }
.padding_hor_50	{ padding: 0 3em !important; }

.padding_bot_0	{ padding-bottom: 0 !important; }
.padding_bot_5	{ padding: 0 0 0.3em 0 !important; }
.padding_bot_10	{ padding: 0 0 0.625em 0 !important; }
.padding_bot_15	{ padding: 0 0 0.9em 0 !important; }
.padding_bot_20	{ padding: 0 0 1.25em 0 !important; }
.padding_bot_25	{ padding: 0 0 1.5em 0 !important; }
.padding_bot_30	{ padding: 0 0 1.8em 0 !important; }
.padding_bot_40	{ padding: 0 0 2.5em 0 !important; }
.padding_bot_50	{ padding: 0 0 3em 0 !important; }
.padding_bot_80	{ padding: 0 0 5em 0 !important; }

.padding_top_0	{ padding-top: 0 !important; }
.padding_top_5	{ padding: 0.3em 0 0 0 !important; }
.padding_top_10	{ padding: 0.625em 0 0 0 !important; }
.padding_top_15	{ padding: 0.9em 0 0 0 !important; }
.padding_top_20	{ padding: 1.25em 0 0 0 !important; }
.padding_top_25	{ padding: 1.5em 0 0 0 !important; }
.padding_top_30	{ padding: 1.8em 0 0 0 !important; }
.padding_top_40	{ padding: 2.5em 0 0 0 !important; }
.padding_top_50	{ padding: 3em 0 0 0 !important; }
.padding_top_80	{ padding: 5em 0 0 0 !important; }

/* ===== COLORS ===== */
.text_hover_body:hover,
.text_body,
a.text_body {
	color: rgb(55,49,59);
}

.text_hover_a:hover,
.text_a,
a.text_a {
	color: rgb(101,45,145);
}

.text_hover_b:hover,
.text_b,
a.text_b {
	color: rgb(3,108,178);
}

.text_hover_c:hover,
.text_c,
a.text_c {
	color: rgb(130,166,14);
}

.text_hover_d:hover,
.text_d,
a.text_d {
	color: rgb(0,145,199);
}

.text_hover_e:hover,
.text_e,
a.text_e {
	color: rgb(174,167,179);
}

.text_hover_gray:hover,
.text_gray,
a.text_gray {
	color: rgb(224,227,230);
}

.text_hover_white:hover,
.text_white,
a.text_white {
	color: rgb(255,255,255);
}

.text_hover_black:hover,
.text_black,
a.text_black {
	color: rgb(55,49,59);
}

.bg_red {
    background-color: #ff0000;
}

.bg_hover_a:hover,
.bg_a {
	background-color: rgb(101,45,145);
}

.bg_hover_b:hover,
.bg_b {
	background-color: rgb(3,108,178);
}

.bg_hover_c:hover,
.bg_c {
	background-color: rgb(130,166,14);
}

.bg_hover_d:hover,
.bg_d {
	background-color: rgb(0,145,199);
}

.bg_hover_e:hover,
.bg_e {
	background-color: rgb(174,167,179);
}

.bg_hover_gray:hover,
.bg_gray {
	background-color: rgb(224,227,230);
}

.bg_hover_white:hover,
.bg_white {
	background-color: rgb(255,255,255);
}

.bg_hover_black:hover,
.bg_black {
	background-color: rgb(55,49,59);
}

.bg_hover_body:hover,
.bg_body {
	background-color: rgb(55,49,59);
}

.checkbox_border_a input[type="checkbox"] + span:before,
.checkbox_border_a input[type="radio"] + span:before {
    border: 2px solid rgb(101,45,145);
}

.checkbox_border_b input[type="checkbox"] + span:before,
.checkbox_border_b input[type="radio"] + span:before {
    border: 2px solid rgb(3,108,178);
}

.checkbox_border_c input[type="checkbox"] + span:before,
.checkbox_border_c input[type="radio"] + span:before {
    border: 2px solid rgb(130,166,14);
}

.checkbox_border_d input[type="checkbox"] + span:before,
.checkbox_border_d input[type="radio"] + span:before {
    border: 2px solid rgb(0,145,199);
}

.checkbox_border_e input[type="checkbox"] + span:before,
.checkbox_border_e input[type="radio"] + span:before {
    border: 2px solid rgb(174,167,179);
}
.checkbox_border_gray input[type="checkbox"] + span:before,
.checkbox_border_gray input[type="radio"] + span:before {
    border: 2px solid rgb(224,227,230);
}

.checkbox_border_white input[type="checkbox"] + span:before,
.checkbox_border_white input[type="radio"] + span:before {
    border: 2px solid rgb(255,255,255);
}

.checkbox_border_black input[type="checkbox"] + span:before,
.checkbox_border_black input[type="radio"] + span:before {
    border: 2px solid rgb(55,49,59);
}

.checkbox_border_body input[type="checkbox"] + span:before,
.checkbox_border_body input[type="radio"] + span:before {
    border: 2px solid rgb(55,49,59);
}

.checkbox_border_a input[type="radio"]:checked + span:before {
    background-color: rgb(101,45,145);
}

.checkbox_border_b input[type="radio"]:checked + span:before {
    background-color: rgb(3,108,178);
}

.checkbox_border_c input[type="radio"]:checked + span:before {
    background-color: rgb(130,166,14);
}

.checkbox_border_d input[type="radio"]:checked + span:before {
    background-color: rgb(0,145,199);
}

.checkbox_border_e input[type="radio"]:checked + span:before {
    background-color: rgb(174,167,179);
}

.checkbox_border_gray input[type="radio"]:checked + span:before {
    background-color: rgb(224,227,230);
}

.checkbox_border_white input[type="radio"]:checked + span:before {
    background-color: rgb(255,255,255);
}

.checkbox_border_black input[type="radio"]:checked + span:before {
    background-color: rgb(55,49,59);
}

.checkbox_border_body input[type="radio"]:checked + span:before {
    background-color: rgb(55,49,59);
}

.input_background_a {
    background-color: rgba(101,45,145,0.5);
}

.input_background_b {
    background-color: rgba(3,108,178,0.5);
}

.input_background_c {
    background-color: rgba(130,166,14,0.5);
}

.input_background_d {
    background-color: rgba(0,145,199,0.5);
}

.input_background_e {
    background-color: rgba(174,167,179,0.5);
}

.input_background_gray {
    background-color: rgba(224,227,230,0.5);
}

.input_background_white {
    background-color: rgba(255,255,255,0.8);
}

.input_background_black {
    background-color: rgba(55,49,59,0.5);
}

.input_background_body {
    background-color: rgba(55,49,59,0.5);
}

.input_border_a {
    border: 1px solid rgb(101,45,145, 0.8);
}

.input_border_b {
    border: 1px solid rgb(3,108,178);
}

.input_border_c {
    border: 1px solid rgb(130,166,14);
}

.input_border_d {
    border: 1px solid rgb(0,145,199);
}

.input_border_e {
    border: 1px solid rgb(174,167,179);
}

.input_border_gray {
    border: 1px solid rgb(224,227,230);
}

.input_border_white {
    border: 1px solid rgb(255,255,255);
}

.input_border_black {
    border: 1px solid rgb(55,49,59);
}

.input_border_body {
    border: 1px solid rgb(55,49,59);
}

.input_border_transparent {
    border: 1px solid transparent;
}

.input_color_a {
    color: rgba(101,45,145,0.8);
}

.input_color_b {
    color: rgba(3,108,178,0.8);
}

.input_color_c {
    color: rgba(130,166,14,0.8);
}

.input_color_d {
    color: rgba(0,145,199,0.8);
}

.input_color_e {
    color: rgba(174,167,179,0.8);
}

.input_color_gray {
    color: rgba(224,227,230,0.8);
}

.input_color_white {
    color: rgba(255,255,255,0.8);
}

.input_color_black {
    color: rgba(55,49,59,0.8);
}

.input_color_body {
    color: rgba(55,49,59,0.8);
}

.input_background_focused_a:focus {
    background-color: rgba(101,45,145,0.5);
}

.input_background_focused_b:focus {
    background-color: rgba(3,108,178,0.5);
}

.input_background_focused_c:focus {
    background-color: rgba(130,166,14,0.5);
}

.input_background_focused_d:focus {
    background-color: rgba(0,145,199,0.5);
}

.input_background_focused_e:focus {
    background-color: rgba(174,167,179,0.5);
}

.input_background_focused_gray:focus {
    background-color: rgba(224,227,230,0.5);
}

.input_background_focused_white:focus {
    background-color: rgba(255,255,255,1);
}

.input_background_focused_black:focus {
    background-color: rgba(55,49,59,0.5);
}

.input_background_focused_body:focus {
    background-color: rgba(55,49,59,0.5);
}

.input_border_focused_a:focus {
    border: 1px solid rgb(101,45,145);
}

.input_border_focused_b:focus {
    border: 1px solid rgb(3,108,178);
}

.input_border_focused_c:focus {
    border: 1px solid rgb(130,166,14);
}

.input_border_focused_d:focus {
    border: 1px solid rgb(0,145,199);
}

.input_border_focused_e:focus {
    border: 1px solid rgb(174,167,179);
}

.input_border_focused_gray:focus {
    border: 1px solid rgb(224,227,230);
}

.input_border_focused_white:focus {
    border: 1px solid rgb(255,255,255);
}

.input_border_focused_black:focus {
    border: 1px solid rgb(55,49,59);
}

.input_border_focused_body:focus {
    border: 1px solid rgb(55,49,59);
}

.input_color_focused_a:focus {
    color: rgba(101,45,145);
}

.input_color_focused_b:focus {
    color: rgba(3,108,178);
}

.input_color_focused_c:focus {
    color: rgba(130,166,14);
}

.input_color_focused_d:focus {
    color: rgba(0,145,199);
}

.input_color_focused_e:focus {
    color: rgba(174,167,179);
}

.input_color_focused_gray:focus {
    color: rgba(224,227,230);
}

.input_color_focused_white:focus {
    color: rgba(255,255,255);
}

.input_color_focused_black:focus {
    color: rgba(55,49,59);
}

.input_color_focused_body:focus {
    color: rgba(55,49,59);
}

.button_border_a {
    border: 1px solid rgb(101,45,145);
}

.button_border_b {
    border: 1px solid rgb(3,108,178);
}

.button_border_c {
    border: 1px solid rgb(130,166,14);
}

.button_border_d {
    border: 1px solid rgb(0,145,199);
}

.button_border_e {
    border: 1px solid rgb(174,167,179);
}

.button_border_gray {
    border: 1px solid rgb(224,227,230);
}

.button_border_white {
    border: 1px solid rgb(255,255,255);
}

.button_border_black {
    border: 1px solid rgb(55,49,59);
}

.button_border_body {
    border: 1px solid rgb(55,49,59);
}

.button_border_transparent {
    border: 1px solid transparent;
}

.button_border_hover_a:hover {
    border: 1px solid rgb(101,45,145);
}

.button_border_hover_b:hover {
    border: 1px solid rgb(3,108,178);
}

.button_border_hover_c:hover {
    border: 1px solid rgb(130,166,14);
}

.button_border_hover_d:hover {
    border: 1px solid rgb(0,145,199);
}

.button_border_hover_e:hover {
    border: 1px solid rgb(174,167,179);
}

.button_border_hover_gray:hover {
    border: 1px solid rgb(224,227,230);
}

.button_border_hover_white:hover {
    border: 1px solid rgb(255,255,255);
}

.button_border_hover_black:hover {
    border: 1px solid rgb(55,49,59);
}

.button_border_hover_body:hover {
    border: 1px solid rgb(55,49,59);
}

.button_border_hover_transparent:hover {
    border: 1px solid transparent;
}

[class*='text_hover_']:not(.text_hover_transparent) {
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
}

[class*='bg_hover_']:not(.bg_hover_transparent) {
    -webkit-transition: background-color 0.35s ease, border 0.35s ease;
    transition: background-color 0.35s ease, border 0.35s ease;
}

/* ===== IE11 FIX ===== */
.internet_explorer_trident .default_padding {
	box-sizing: border-box;
	padding: 1.25em;
}

.internet_explorer_trident .default_padding_small {
	box-sizing: border-box;
	padding: 0.625em;
}

.internet_explorer_trident .default_padding_ver {
	box-sizing: border-box;
	padding: 1.25em 0;
}

.internet_explorer_trident .default_padding_hor {
	box-sizing: border-box;
	padding: 0 1.25em;
}

.internet_explorer_trident .news_item_overview {
	display: inline-block;
}

.nosupport_overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    overflow: auto;
    height: 100%;
    background-color: rgba(255,255,255, 0.95);
    z-index: 9999;
}

.nosupport_overlay .nosupport_overlay_content {
    position: relative;
    top: 30%;
    margin: 0 auto;
    max-width: 50vw;
    text-align: center;
    transform: translateY(-50%);
}

.grecaptcha-badge {visibility: hidden;}
:root {
    --body_line_height: 1.7;
    --default_padding_margin: 2em;
    --animate-duration: 0.5s;
}

/* ANIMATIONS */
.animate__animated {
    -webkit-animation-duration: var(--animate-duration);
    animation-duration: var(--animate-duration);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate__fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.animate__fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate__fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}

@media print, (prefers-reduced-motion: reduce) {
    .animate__animated {
        -webkit-animation-duration: 1ms !important;
        animation-duration: 1ms !important;
        -webkit-transition-duration: 1ms !important;
        transition-duration: 1ms !important;
        -webkit-animation-iteration-count: 1 !important;
        animation-iteration-count: 1 !important;
    }

    .animate__animated[class*='Out'] {
        opacity: 0;
    }
}

/* SITE */
body {
    color: rgb(55,49,59);
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
}

section img {
    margin: 0 0.625em 0.625em 0;
    display: block;
    height: auto;
    max-width: inherit;
    width: 100%;
}

section * li  {
    margin: 0.3em 0;
}

.ul_in_content {
    margin: 1.25em 0;
    font-size: 0.9em;
    padding: var(--default_padding_margin);
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    background-color: rgba(224,227,230,0.25);
}

/* ===== HEADER NAVIGATION ===== */
.headernav li a.active {
    color: rgb(101,45,145);
}

.headernav li a.active:hover {
    color: rgb(255,255,255);
}

.headernav li a {
    padding: 0.3em 1.25em;
}

/*======= FOOTER =======*/
/* margin-top standaard op 0, indien gewenst hier aanpassen */
.site_footer { }

.site_footer section {
    max-width: 1350px;
}

.footer_copyright {
	font-size: 0.9em;
}

/* ===== HEADER NAVIGATION ===== */
.headernav ul {
    margin: 0;
    padding: 0 1.25em 0 0;
    text-align: left;
}

/* ===== MOBILE NAVIGATION ===== */
.hamburger {
    text-align: center;
    margin-left: var(--default_padding_margin);
}

.hamburger .icon,
.phone_numbers_container .icon {
    font-size: 1.5em;
}

.mobile_nav .h2 {
    font-size: 1.25em;
    font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
}

.mobile_nav li {
    border-top: 1px solid rgba(255,255,255,0.25);
}

.mobile_nav {
    border-bottom: 1px solid rgba(255,255,255,0.25);
}

.mobile_nav li a:hover {
    background-color: rgba(255,255,255,0.15);
}

.mobile_nav li a.active {
    background-color: rgba(255,255,255,0.15);
}

.mobile_nav li li a.active {
    background-color: rgba(255,255,255,0.25);
}

.mobile_nav .own_socialmedia {
    padding: var(--default_padding_margin);
}

.mobile_nav .own_socialmedia span {
    padding: var(--default_padding_margin)!important;
}
/* ===== LANGUAGE PICKER ===== */
.language_picker_menu {
    position: relative;
    margin: 0 1.15em;
    z-index: 9;
}

/* dropdown */
.language_picker_menu div:before {
    position: absolute;
    right: -15px;
    top: 5px;
    font-size: 13px;
}

.language-picker-dropdown {
    position: absolute;
    left: -20px;
    top: 30px;

    list-style-type: none;
    padding: 13px;
    text-align: right;
}

.language_picker_menu li {
    padding-bottom: 13px;
}

.language_picker_menu li:last-of-type {
    padding-bottom: 0;
}

.language_picker_menu li a {
    display: block;
    padding: 5px;
    border: 2px solid transparent;
}

.language_picker_menu li a:hover {
    padding: 5px;
    border-radius: 7px;
}

.language_picker_menu li a img {
    display: block;
}

/* ===== BREADCRUMBS ===== */
.breadcrumb {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    font-size: 0.85em;
}

.breadcrumb a:hover {
    opacity: 0.8;
}

/* ===== SITE SUBMENU ===== */
.site_submenu ul {
    padding: 1.25em 0.625em;
}

.site_submenu li {
    width: 100%;
}

/* ===== OTHER ===== */
.rounded {
    border-radius: 0.5em;
}

.bold, strong {
    font-family: 'robotomedium','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
    font-weight: normal;
}

.box_shadow {
    -webkit-box-shadow: 0 0 15px 0 rgba(55,49,59,0.9);
    -moz-box-shadow: 0 0 15px 0 rgba(55,49,59,0.9);
    box-shadow: 0 0 15px 0 rgba(55,49,59,0.9);
}

dt {
    width: 30%;
    font-weight: bold;
}

dd {
    width: 70%;
}

.icon:before {
    vertical-align: middle;
}

H1, H2, H3, H4, H5,
.h1, .h2, .h3, .h4, .h5 {
    font-family	: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
    font-weight: normal;
}

.h1, .h2, .h3, .h4, .h5 {
    display: block;
}

H1,
.h1 {
    line-height: 1;
}

H2, H3,
.h2 {
    line-height: 1.15;
}

H4, H5,
.h4, .h5 {
    line-height: var(--body_line_height);
}

P, P P,
.visual_subtitle {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    font-size: 1em;
    line-height: var(--body_line_height);
}

.fontsize_smaller {
    font-size: 90%;
}

.ui-datepicker a.ui-state-default {
    color: rgb(3,108,178);
}

/* ===== STANDARD FORM ===== */
form {
    padding: 0.625em 0;
    text-align: left;
}

form > div {
    margin: 0 0 0.3em 0;
    overflow: hidden;
}

form > div > fieldset > div > div {
    margin: 0 0 0.3em 0;
}

.inputrow_label,
legend {
    width: 25%;
    float: left;
    padding-right: 1.25em;
    padding-top: 0.625em;
}

.inputrow_input {
    width: 75%;
    float: right;
}

fieldset {
    border: 0;
    padding: 0;
}

label {
    margin: 0.625em 0;
    padding: 0;
}

.datatable-noclick {
    pointer-events: none;
    cursor: default;
}

.datatable-noclick input[type=checkbox],
.datatable-noclick a,
.datatable-noclick span {
    pointer-events: all;
    cursor: pointer;
    display: inline-block;
}

/* ===== STANDARD INPUTS ===== */
/* Removes all browser styles */
input[type=text]:not(:focus-visible),
input[type=search]:not(:focus-visible),
input[type=number]:not(:focus-visible),
input[type=email]:not(:focus-visible),
input[type=tel]:not(:focus-visible),
input[type=url]:not(:focus-visible),
input[type=file]:not(:focus-visible),
input[type=password]:not(:focus-visible),
input[type=reset]:not(:focus-visible),
input[type=submit]:not(:focus-visible),
input[type=button]:not(:focus-visible),
textarea:not(:focus-visible),
select,
button:not(:focus-visible),
.button:not(:focus-visible) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}

/* Removes IE select arrows */
select::-ms-expand {
    display: none;
}

input[type=text],
input[type=search],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=file],
input[type=password],
textarea {
    padding: 0.625em;
}

textarea,
input[type=file] {
    padding-top: 0.625em;
}

textarea {
    padding-top: 0.625em;
    height: 7.5em;
}

input[type=text],
input[type=search],
input[type=email],
input[type=tel],
input[type=url],
input[type=file],
input[type=password],
textarea,
select {
    width: 100%;
}

input[type=submit],
input[type=reset],
.button,
button,
input[type=button] {
    cursor: pointer;
    text-decoration: none;
}

input[type=text]:focus,
input[type=search]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
textarea:focus,
select:focus {
    outline: 0;
}

.inputrow {
    display: -webkit-box;		/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;			/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;		/* TWEEN - IE 10 */
    display: -webkit-flex;		/* NEW - Chrome */
    display: flex;				/* NEW, Spec - Opera 12.1, Firefox 20+ */

    -webkit-flex-direction: row;
    flex-direction: row;

    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-justify-content: flex-start;
    justify-content: flex-start;

    -webkit-align-items: stretch;
    align-items: stretch;
}

.inputrow_unit {
    width: auto;
    margin-left: 0.9em;
}

.inputrow_input {
    position: relative;
    -webkit-box-flex: 2;    /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 2;	    /* OLD - Firefox 19- */
    -ms-flex: 2;	        /* IE 10 */
    -webkit-flex: 2;	    /* NEW - Chrome */
    flex: 2;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.input_decimal .inputrow,
.input_date .inputrow,
.input_time .inputrow {
    display: inline-block;
    margin-bottom: 0;
}

.input_decimal input[type=number],
.input_date select,
.input_time select {
    width: auto;
}

input::-ms-clear {
    display: none;
}

/* FANCY CHECKBOXES AND RADIO */
div.fancy_input_container {
    margin: 0.3em 0;
    position: relative;
    line-height: var(--body_line_height);
}
/* hides the original input, but keeps the functionality */
.fancy_input_container input[type="checkbox"],
.fancy_input_container input[type="radio"] {
    position: absolute;
    visibility: hidden;
}
/* creates space for new input, moves label text to the right */
.fancy_input_container label {
    display: block;
    position: relative;

    padding-left: 25px;
    font-size: 0.9rem;
    margin: 0;

    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}
/* draws new input type */
.fancy_input_container input[type="checkbox"] + span:before,
.fancy_input_container input[type="radio"] + span:before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    position: absolute;
    left: 0;
    top: 0;
}

.fancy_input_container input[type="checkbox"] + span:before {
    -webkit-transition: all .12s, border-color .08s;
    transition: all .12s, border-color .08s;
}

.fancy_input_container input[type="radio"] + span:before {
    background-color: rgb(255,255,255);
    border-radius: 50%;
}
/* animates new input types on :checked state */
.fancy_input_container input[type="checkbox"]:checked + span:before {
    width: 7px;
    top: -4px;
    left: 4px;
    border-radius: 0;
    border-top-color: transparent;
    border-left-color: transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.fancy_input_container input[type="radio"]:checked + span:before {
    -webkit-transition: background-color 0.3s linear;
    -o-transition: background-color 0.3s linear;
    -moz-transition: background-color 0.3s linear;
    transition: background-color 0.3s linear;
}

/* ===== ICONS & ERROR MESSAGES ===== */
.icon-input-ok,
.icon-input-nok,
.icon-input-verplicht {
    position: absolute;
    right: 0.625em;
    top: calc(25% + 0.5em);
    font-size: 0.5em;
}

textarea ~ .icon-input-ok,
textarea ~ .icon-input-nok,
textarea ~ .icon-input-verplicht {
    top: 1.5em;
}

.icon-input-ok {
    color: green;
}

.icon-input-nok {
    color: red;
}

.icon-input-verplicht {
    color: rgb(101,45,145);
}

.icon-input-nok.button_with_icon,
.icon-input-verplicht.button_with_icon,
.icon-input-ok.button_with_icon {
    position: initial;
    top: initial;
    right: initial;
    font-size: initial;
}

/* IE11 FIX, if flex-direction: column, then we need flex-basis auto! */
.internet_explorer_trident .inputrow_input {
    -ms-flex: 2 0 auto;	    /* IE 10 */
    -webkit-flex: 2 0 auto;	/* NEW - Chrome */
    flex: 2 0 auto;	        /* NEW, Spec - Opera 12.1, Firefox 20+ */
    flex-basis: auto;
}

.internet_explorer_trident [class*=flex_] {
    flex-basis: auto;
}

/* ===== STANDARD FORM ===== */
form > div > label,
legend {
    font-size: 0.9em;
}

form > div > fieldset label {
    font-size: 0.8em;
}

/* ===== STANDARD INPUTS ===== */
input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=reset]):not([type=search]),
textarea,
select {
    font-family: Helvetica, Arial, sans-serif;
    font-size: 0.9em;
    min-height: 42px;
    min-width: 80px;
    margin: 0.15em 0;
}

.placeholder,
::placeholder {
    color: rgba(55,49,59,0.5);
}

/*
For now this seems to not be needed anymore, but the selection could be handle for future reference
input:focus:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]),
textarea:focus,
select:focus {

}*/

input[readonly]:disabled,
input[readonly]:focus,
input[readonly] {
    color: rgba(55,49,59,0.5);
    border: 1px solid rgb(224,227,230);
}

input[readonly]:hover {
    cursor: default;
}

.inputrow_unit {
    font-size: inherit;
}

.inputrow_label {
    font-size: inherit;
    max-width: 250px;
}

label {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    font-size: 0.9rem;
}

/* ===== INPUTS ===== */
/* Chrome autofill - Change the white to any color */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 2rem rgba(255,255,255,0.5) inset !important;
}

/* FANCY CHECKBOXES AND RADIO */
.inputrow_input input[type="checkbox"] + label {
    padding-left: 25px;
    font-size: 0.9rem;
}

.inputrow_input input[type="checkbox"] + label:before {
    width: 14px;
    height: 14px;
    border: 2px solid rgb(101,45,145);

    position: absolute;
    left: 0;
    top: 0;
}

/* rotate border */
.inputrow_input input[type="checkbox"]:checked + label:before {
    width: 7px;
    top: -4px;
    left: 4px;
}

.inputrow_input input[type="radio"] + label {
    padding-left: 25px;
    font-size: 0.9rem;
}

.inputrow_input input[type="radio"] + label:before {
    width: 14px;
    height: 14px;
    border: 2px solid rgb(101,45,145);
    background-color: rgb(255,255,255);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0;
}

.inputrow_input input[type="radio"]:checked + label:before {
    background-color: rgb(101,45,145);
}

/* CUSTOM BUTTONS */
:root {
    --button_padding: 0.5em;
    --button_font_size: 1em;
}

.button,
button,
input[type=button],
input[type=reset],
input[type=submit] {
    padding: var(--button_padding) calc(1.5 * var(--button_padding));
    border-radius: 0.5em;

    font-family: 'bakbak_oneregular','Helvetica','Arial','sans-serif';
    font-size: var(--button_font_size);
    font-weight: normal;
    text-align: center;

    -webkit-transition: background-color 0.35s ease, border 0.35s ease;
    transition: background-color 0.35s ease, border 0.35s ease;
}

.button.smaller,
button.smaller,
input[type=button].smaller,
input[type=reset].smaller,
input[type=submit].smaller {
    --button_padding: 0.25em;
    --button_font_size: 0.85em;
}

.button {
    display: inline-block;
}

/* Change --button_padding to same size (horizontal only) as custom button above */
.button.button_round,
button.button_round,
input[type=button].button_round,
input[type=reset].button_round,
input[type=submit].button_round {
    --button_font_size: 1em;
    border-radius: 50%;
    padding: var(--button_padding) 0;
    width: calc((var(--button_font_size) + (2 * var(--button_padding))) + 0.125em);
    height: calc((var(--button_font_size) + (2 * var(--button_padding))) + 0.125em);
}

.button_with_icon:before {
    margin-right: 0.3em;
}

.extra_margin_button {
    margin: 1em 0 0.3em 0;
}

/*
.button:not([class*="bg_"]),
button:not([class*="bg_"]),
input[type=button]:not([class*="bg_"]),
input[type=submit]:not([class*="bg_"]) {
    background-color: rgb(101,45,145);
}

.button:not([class*="text_"]),
button:not([class*="text_"]),
input[type=button]:not([class*="text_"]),
input[type=submit]:not([class*="text_"]) {
    color: rgb(255,255,255);
}

.button:hover:not([class*="bg_hover_"]),
button:hover:not([class*="bg_hover_"]),
input[type=button]:hover:not([class*="bg_hover_"]),
input[type=submit]:hover:not([class*="bg_hover_"]) {
    background-color: rgb(0,145,199);
}

.button:hover:not([class*="text_hover"]),
button:hover:not([class*="text_hover"]),
input[type=button]:hover:not([class*="text_hover"]),
input[type=submit]:hover:not([class*="text_hover"]) {
    color: rgb(255,255,255);
}
*/

/* CUSTOM SELECT */
select {
    height: 42px;
    padding: 0.2em 1.5em 0.2em 0.75em !important;
    border-radius: 0.5em;
    font-size: 1em;
    background-image: url("https://www.stadstochten.nl/resources_shared/img/custom-select-icon.png");
    background-position-x: 99%;
    background-position-y: 50%;
    background-repeat: no-repeat;}

/* ICONS & ERROR MESSAGES */
.error_message ul {
    padding: var(--default_padding_margin) calc(var(--default_padding_margin) * 2);
}


@media only screen and (min-device-width : 320px)
and (max-device-width : 480px)
and (orientation : landscape) {

    /* Prevent font scaling in landscape while allowing user zoom */
    html {
        -webkit-text-size-adjust: 100%;
    }
   
}

@media all and (max-width:800px) {

	.div8_12,
	.div9_12 {
        margin: 0.625em 2%;
		-ms-flex: 1 0 48%;	        /* IE 10 */
		-webkit-flex: 1 0 48%;	    /* NEW - Chrome */
		flex: 1 0 48%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
	}

}

@media all and (max-width: 600px) {
    
	.topbar {
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}

    .div1_12,
	.div2_12,
	.div3_12,
	.div4_12,
	.div5_12,
	.div6_12,
	.div7_12,
	.div8_12,
	.div9_12,
	.div10_12,
	.div11_12,
    .div12_12 {
        margin: 0.625em 2%;
		min-width: 96%;

		-ms-flex: 1 0 96%;	        /* IE 10 */
		-webkit-flex: 1 0 96%;	    /* NEW - Chrome */
		flex: 1 0 96%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
	}

	.footer_copyright {
		height: auto;
		-webkit-flex-direction: column;
		flex-direction: column;
		line-height: 1.75;
	}

}

/* ===== FORM SPECIFIC MEDIA QUERIES ===== */
@media (min-width: 1200px) {

    form > div > label,
    legend {
        text-align: right;
    }

}

@media (max-width: 600px) {
    form > div,
    .inputrow_label,
    legend {
        margin: 0 0 0.3em 0;
    }

    .inputrow_input,
    .inputrow_label,
    legend {
        float: none;
        width: 100%;
    }

    .inputrow {
        -webkit-flex-direction: column;
        flex-direction: column;
    }

    input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]),
    textarea,
    select {
        font-size: 1em;
    }

}


/* ===== HOMEPAGE ===== */
.homepage_block_container .homepage_block {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

/* ===== SITE ===== */
.forced_fullwidth section,
.site_content.content_with_submenu {
	max-width: 1350px;
    margin: auto;
}

.site_content section .menu_services ul,
.site_content section .menu_services ol,
.site_content section .submenu_block ul,
.site_content section .submenu_block ol {
    padding: 0.625em;
    margin: 0.625em 0;
	display: inline-block;
}

.site_content.content_with_submenu,
.menu_services_container {
	margin-top: 0.625em;
}

/* ===== NEWS / ARCHIVE ===== */
.news_item_text,
.archive_item_text {
	height: 100%;
}

.div12_12.news_item_overview > div a.button {
    -webkit-align-self: flex-start;
    align-self: flex-start;
}

/* ===== COOKIE WARNING ===== */
.cookiewarning_container {
	z-index: 999;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	
	opacity: 0.9;
}

.cookiewarning_text_container {
	min-width: 50%;
}

.cookiewarning_button_accept {
	width: fit-content;
}

/* ===== FOOTER ===== */
.site_footer a {
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
}

.site_footer_mysocialmedia a {
    padding: 0.625em;
}

.footer_copyright div {
    margin: 0 0.625em;
}

/* ===== HEADER VISUAL ===== */
.visual_slide_container {
	height: 100%;
}

.visual {
	position: relative;
	height: inherit;

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.header_visual,
.header_visual_home {
	position: relative;
    width: 100%;
	overflow: hidden;
	
	-webkit-transition: height 0.35s ease-in;
    transition: height 0.35s ease-in;
}

.header_visual {
	height: 250px;
}

.header_visual_home {
	height: 750px;
}

.visual_loader {
    background-size: 50px;
    background-repeat: no-repeat;
}

/* ===== HEADER VISUAL PAYOFF ===== */
.header_visual .payoff_header {
	height: 250px;
}

.header_visual_home .payoff_header {
	height: 750px;
}

.payoff_header {
	margin: 0 auto;
	overflow: hidden;

	width: 100%;
	width: -moz-fit-content;
	width: fit-content;
	
	max-width: calc(1350px - 1.25em);
}

.payoff_header h2 {
	width: 100%;
}

.highlight_white {
    background-color: rgba(255,255,255,0.6);
}

.highlight_gray {
    background-color: rgba(224,227,230,0.6);
}

.highlight_black {
    background-color: rgba(55,49,59,0.6);
}

.highlight_a {
    background-color: rgba(101,45,145,0.6);
}

.highlight_b {
    background-color: rgba(3,108,178,0.6);
}

.highlight_c {
    background-color: rgba(130,166,14,0.6);
}

.highlight_d {
    background-color: rgba(0,145,199,0.6);
}

.highlight_e {
    background-color: rgba(174,167,179,0.6);
}

/* ===== OTHER ===== */
section img {
    max-width: 100%;
}

table[border="0"] td,
table[border="0"] th {
	border: 0;
}

/* ===== SERVICES ===== */
.services,
.menu_services {
    position: relative;
    flex: 1 0 250px;
    min-width: 250px;
    max-width: 50%;
    height: auto;
    text-align: center;
}

.services_icon,
.menu_services_icon {
    display: inline-block;
    position: relative;
    margin-bottom: 1%;

    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}

.services_icon:before,
.menu_services_icon:before {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.services .button,
.menu_services .button {
    min-width: 75%;
    /*position: absolute;
    left: 10%;
    right: 10%;
    bottom: 0;*/
}

.services_text,
.menu_services_text {
    line-height: var(--body_line_height);
}

/* ===== PORTFOLIO ===== */
.portfolio_details_visual,
.portfolio_overview_item_img {
    height: 100%;
    object-fit: cover;
}

.portfolio_overview_item_img {
    margin: 0;
}

/* ===== TEAM ===== */
.team_members {
    width: 100%;
}

.team_member {
    text-align: center;
    padding: 0.6em 0.6em 2.5em 0.6em;
    margin-bottom: 1%;
}

.team_member_contactinfo a:before {
    padding: 0 0.3em;
}

.team_member_img {
    display: block;
    margin: 0 auto;
}

.team_member_details {
    margin: 0 auto;
}

/* ===== TEAM IN HOMEPAGE ROW ===== */
.homepage_row_container .team_member {
    padding: 1.25em;
    margin-bottom: 0;
}

/* ===== TEAM IN HOMEPAGE BLOCK ===== */
.homepage_block .team_member {
    flex: none;
    max-width: 100%;
    text-align: left;
    margin-bottom: 0.6em;
    padding: 0;
}

.homepage_block .team_member_img {
    margin-right: 0.6em;
}

.homepage_block .team_member_text {
    flex: 1;
}

/* (set fontsize in media queries!) */

/* ===== EXTRA CSS CLASSES (MANAGE IN WEBMAN - HOMEPAGE ROWS & BLOCKS) ===== */
section.bg_fullwidthcolor {
    max-width: 100%;
}

.bg_fullwidthcolor > div {
    max-width: 1350px;
    width: 100%;
    margin: auto!important;
}

.bg_fullwidthimage > div {
    max-width: 100%;
}

.bg_fullwidthimage div.homepage_block_content,
.bg_fullwidthimage div.homepage_block_button_container {
    max-width		: 1350px;
    width			: 100%;
    margin			: auto!important;
}

.bg_fullwidthimage img {
    padding: 0;
}

.bg_fullwidthimage {
    margin: 0;
}

/* ===== FOOTER ===== */
.site_footer p {
	line-height: 1.75;
}

/* ===== HEADER TOP NAVIGATION ===== */
.topbar {
	padding: 0.3em 1.25em;
    z-index: 999;
}

.logo_container img,
.logo_container svg  {
	width: 8em;
	height: auto;
    margin-right: var(--default_padding_margin);
}

/* ===== HEADER NAVIGATION ===== */
.headernav li {
	font-family: 'robotoregular','Helvetica','Arial','sans-serif';
	line-height: 1.25;
}

.headernav li a.active {
	color: rgb(101,45,145);
}

.headernav li a.active:hover {
	color: rgb(0,145,199);
}

/* ===== HEADER SUB NAVIGATION ===== */
.headernav li li {
	font-size: 0.85em;
	border-top: 1px solid rgb(224,227,230);
}

.headernav li li:first-child {
	border-top: 1px transparent;
}

/* ===== HEADER PRODUCT NAVIGATION ===== */
.headernav.productnav {
    margin-top: 0.5em;
    border-top: 1px solid rgba(55,49,59,0.25);
}

.headernav.productnav li {
    font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
    flex: 1;
}

.headernav.productnav li a {
    color: rgb(3,108,178);
}

.headernav.productnav li a:hover {
    color: rgb(0,145,199);
}

.headernav.productnav li a.active {
    color: rgb(101,45,145);
}

/* ===== VISUAL ===== */
.nav-bol-uit,
div#visual-nav ul li {
	background-color: rgb(3,108,178);
}

div#visual-nav ul li:hover,
.nav-bol-aan {
	background-color: rgb(101,45,145);
}

/* ===== VISUAL PAYOFF ===== */
.payoff_header {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
}

/* ===== SITE SUBMENU ===== */
.site_submenu {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    -webkit-align-self: flex-start;
    align-self: flex-start;
    z-index: 9;
    text-align: center;
}

.site_submenu li {
    padding: 0.625em 0;
    border-bottom: 2px solid rgb(3,108,178);
}

.site_submenu li a {
    color: rgb(3,108,178);
}

.site_submenu li a:hover {
    color: rgb(0,145,199);
}

.site_submenu li a.active {
    color: rgb(101,45,145);
}

.site_submenu.box_shadow li {
    border-bottom: none;
}

/* ===== SHARE ON SOCIAL MEDIA ===== */
.socialmedia {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    font-size: 0.8em;
    font-weight: normal;
    line-height: 1.5;
    padding: 0.9em;
}

.socialmedia span:before {
    color: rgb(101,45,145);
    font-size: 1.25em;
    line-height: 1.25;
}

.socialmedia span:hover:before {
    filter: brightness(0.9);
}

/* ===== LANGUAGE PICKER ===== */

/* change to same background color as topbar */
/*.language_picker_menu div,
.language-picker-dropdown {
    background-color: rgb(255,255,255);
}*/

.language_picker_menu div:before {
    color: rgba(55,49,59,0.8);
}

.language_picker_menu li a:hover {
    border: 2px solid rgb(3,108,178);
}

/* ===== SERVICES ===== */
.services_link,
.menu_services {
}

.services_image {
    width: 5em;
    height: 5em;
    margin: 0 auto 0.5em auto;
    border-radius: 50%;
    overflow: hidden;
}

.services_icon,
.menu_services_icon {
    width: 5em;
    height: 5em;
}

.services_icon:before,
.menu_services_icon:before {
    font-size: 3em;
    color: rgb(130,166,14);
}

.services:hover .services_icon,
.menu_services:hover .menu_services_icon {
    color: rgb(255,255,255);
}

.services:hover .button,
.menu_services:hover .menu_services_icon,
.menu_services:hover .button {
    background-color: rgb(0,145,199);
}

/* ===== NEWS / ARCHIVE ===== */
/* width img next to news item */
.archief-item-afbeelding-container.img_align_right,
.archief-item-afbeelding-container.img_align_left,
.news_item_img_container.img_align_right,
.news_item_img_container.img_align_left {
	width: 25%;
}

/* if 1 column, border (divider) between items + button left */
.div12_12.news_item_overview,
.div12_12.archief-item-overzicht {
    margin-top: 0;
	border-top: 1px solid rgba(224,227,230,0.5);
}

/* fallback-color border, change this if you change border color above */
.div12_12.news_item_overview.bg_gray,
.div12_12.archief-item-overzicht.bg_gray {
	border-top: 1px solid rgba(255,255,255,0.5);
}

.div12_12.news_item_overview:first-child,
.div12_12.bg_gray.news_item_overview:first-child,
.div12_12.archief-item-overzicht:first-child,
.div12_12.bg_gray.archief-item-overzicht:first-child {
	border-top: none;
}

/* ===== HOMEPAGE BLOCKS ===== */
.homepage_block_content_container,
.homepage_block_content,
.homepage_block_button_container,
.border_radius_inherit {
    border-radius: inherit;
}

/* ===== NEWS IN HOMEPAGE BLOCK ===== */
.homepage_block .news_item {
	text-align: left;
	margin-bottom: 0.6em;
	border-bottom: 1px solid rgba(255,255,255,0.5);
}

.homepage_block.bg_wit .news_item {
	border-bottom: 1px solid rgba(224,227,230,0.5);
}

.homepage_block .news_item:last-child,
.homepage_block.bg_wit .news_item:last-child {
	border-bottom: none;
}

.homepage_block .news_item_img {
	width: 150px;
	margin-right: 0.6em;
	min-width: 10%;
}

/* ===== PHOTO ALBUMS ===== */
img.photo_item_img,
img.movie_item_img {
    min-height: 100px;
    margin-bottom: 0.3em;
}

/* ===== PORTFOLIO ===== */
.portfolio_overview_item_img {
    max-height: 10em;
}

/* ===== TEAM OVERVIEW ===== */
.team_member_img {
	width: 75%;
}

.team_member_img img {
	border-radius: 50%;
}

.team_member_overview:hover img,
.homepage_row_container .team_member:hover img {
	filter: brightness(1.025);
}

/* ===== TEAM DETAIL ===== */
.team_member_details .team_member_img {
	width: 25%;
}

.team_member_details .team_member_job_title {
	font-weight: bold;
}

/* ===== TEAM IN HOMEPAGE ROW ===== */
.homepage_row_container .team_member_img {
	max-width: 15em;
}

/* ===== TEAM IN HOMEPAGE BLOCK ===== */
.homepage_block .team_member_img {
	min-width: 6em;
	width: 6em;
}

/* ===== OTHER ===== */

.downloads {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
    margin-bottom: 0.8em;
}

.downloads a {
    font-family: 'robotoregular','Helvetica','Arial','sans-serif';
}

.bestand-link:before {
    padding-right: 0.625em;
}

.grid-table {
    padding: 0.3em 0;
}

.grid-th {
    opacity: 0.8;
    font-weight: bold;
    padding-right: 0.3em;
}

.grid-td {
    padding-left: 0.3em;
}

.homepage_block_content {
    line-height: var(--body_line_height);
}

td, .td {
    border: 1px solid rgba(224,227,230,0.75);
}

.bold,
strong {
    font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
}

.keyvalue_row {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(13em,1fr) 1fr;
    grid-template-columns:  repeat(auto-fill, minmax(13em, 1fr));
    -webkit-align-items: center;
    align-items: center;
}

.keyvalue_row.col_2 {
    -ms-grid-columns: minmax(50%,1fr) 1fr;
    grid-template-columns:  repeat(auto-fill, minmax(50%, 1fr));
}

.keyvalue_row.col_2_withcolon {
    -ms-grid-columns: 1fr 12px 1fr;
    grid-template-columns: 1fr 12px 1fr;
}

.keyvalue_row.col_3 {
    -ms-grid-columns: minmax(33%,1fr) 1fr;
    grid-template-columns:  repeat(auto-fill, minmax(33%, 1fr));
}

.keyvalue_row.col_4 {
    -ms-grid-columns: minmax(25%,1fr) 1fr;
    grid-template-columns:  repeat(auto-fill, minmax(25%, 1fr));
}

.keyvalue_colon {
    text-align: center;
}

.keyvalue_row.col_downloads {
    -ms-grid-columns: 1fr 200px;
    grid-template-columns: 1fr 200px;
}

.keyvalue_row:nth-child(odd) {
    background-color: rgba(174,167,179,0.6);
}

.keyvalue_key {
    font-weight: bold;
}

.bootbox-close-button {
    --bootbox-close-icon: "\34";
}

q {
    font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
    font-size: 48px;
    line-height: 1.3;
    text-align: center;
}
/* ===== STANDARD FORM ===== */

/* SOCIAL MEDIA EMAIL FORM */
	.socialmedia-emailform-melding,
	.socialmedia-emailform-container {
		position: relative;
		margin: 0 auto;
		max-width: 500px;
	}
	.socialmedia-emailform-melding {
		margin: 20px auto;
	}

/* ===== FORM SPECIFIC MEDIA QUERIES ===== */
@media (max-width: 600px) {

	.socialmedia-emailform-melding,
	.socialmedia-emailform-container {
		max-width: 320px;
	}
}

/* ===== STANDARD INPUTS ===== */
.inputrow {
	font-size	: 0.9em;
}

label {
    line-height: 1.25;
}

/* ===== OVERRIDE STANDARD BUTTONS ===== */
.button,
button,
input[type=button],
input[type=reset],
input[type=submit] {

}

/* ===== CUSTOM BUTTONS ===== */


/* SOCIAL MEDIA EMAIL FORM */
.socialmedia-emailform-melding {
	background-color: rgba(101,45,145, 0.1);
}

/* ===== FORM SPECIFIC MEDIA QUERIES ===== */

@media (min-width: 1200px) {

}

@media (max-width: 900px) {

}

@media (max-width: 600px) {

}

/* ==== CUSTOM HEADER VISUAL ==== */
.header_visual_home {
    height: 100%;
    overflow: initial;
    background-color: rgb(101,45,145);
    margin-bottom: 2em;
}

.header_visual_home:after,
.swirl:after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    background: url("../../resources_shared/img/swirl.svg") no-repeat bottom center;
    background-size: contain;
}

.header_visual_home:after {
    height: 100%;
    min-height: calc(650px + 4em);
}

.header_visual_home .payoff_header {
    width: 100%;
    height: 100%;
}

.header_visual_home .visual_container {
    padding: 1em 2em;
    height: auto;
}

.header_visual_home .slider_rotated {
    height: 400px;
    width: 100%;
    min-width: 300px;
    transform: rotate(-2deg);
    background-color: rgba(255,255,255);
    border: 0.5em solid rgb(255,255,255);
}

.sy-controls li {
    width: 5%!important;
}

.sy-slides-crop {
    overflow: initial!important;
}

.swirl {
    position: relative;
    background: linear-gradient(180deg, rgb(101,45,145) 0%, rgb(101,45,145) 99%, rgb(255,255,255) 99%);
}

.swirl,
.swirl:after {
    height: 250px;
}


/* ==== ROTATED IMAGES WITH BORDER ==== */
.movie_item_img {
    border: 0.35rem solid rgb(255,255,255);
    background-color: rgba(255,255,255);
    -webkit-box-shadow: 0 0 10px 0 rgba(55,49,59,0.9);
    -moz-box-shadow: 0 0 10px 0 rgba(55,49,59,0.9);
    box-shadow: 0 0 10px 0 rgba(55,49,59,0.9);
}

.movie_overlay {
    position: relative;
    font-size: 5em;
}

.movie_overlay:before {
    display: -webkit-box;	/* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;		/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;	/* TWEEN - IE 10 */
    display: -webkit-flex;	/* NEW - Chrome */
    display: flex;			/* NEW, Spec - Opera 12.1, Firefox 20+ */
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-content: center;
    align-content: center;

    color: rgb(255,255,255);
    background-color: rgba(55,49,59,0.35);

    --border_movie_item: 0.35rem;
    position: absolute;
    top: var(--border_movie_item);
    left: var(--border_movie_item);
    right: var(--border_movie_item);
    bottom: var(--border_movie_item);

    -webkit-transition: background-color 0.35s ease;
    transition: background-color 0.35s ease;

    z-index: 2;
}

.movie_overlay:hover:before {
    background: transparent;
}

.homepage_block img,
.chapter_overview img,
.news_item img,
.product_group_overview_container img,
.product_item img,
.photoalbum_item_overview img,
.photos_item_overview img,
.rotated_img {
    transform: rotate(-2deg);
    border: 0.35rem solid rgb(255,255,255);
    background-color: rgba(255,255,255);
    -webkit-box-shadow: 0 0 10px 0 rgba(55,49,59,0.7);
    -moz-box-shadow: 0 0 10px 0 rgba(55,49,59,0.7);
    box-shadow: 0 0 10px 0 rgba(55,49,59,0.7);
}

.homepage_block:nth-child(odd) img,
.chapter_overview:nth-child(odd) img,
.product_group_overview_container:nth-child(odd) img,
.product_item:nth-child(odd) img,
.photoalbum_item_overview:nth-child(odd) img,
.photos_item_overview:nth-child(odd) img,
.news_item:nth-child(odd) img {
    transform: rotate(2deg);
}

.img_align_right {
    padding-left: 0;
    margin-left: var(--default_padding_margin);
}

.img_align_left {
    padding-right: 0;
    margin-right: var(--default_padding_margin);
}

.img_align_top {
    padding-bottom: 0;
    margin-bottom: calc(var(--default_padding_margin) * 0.5);
}

.img_align_bot {
    padding-top: 0;
    margin-top: calc(var(--default_padding_margin) * 0.5);
}

/* ==== PRODUCT GROUP OVERVIEW ==== */
.read_more_link {
    font-family: 'bakbak_oneregular','Arial Black','Arial Bold','Helvetica Bold','sans-serif';
}

.border_bottom_gray {
    border-bottom: 1px solid rgb(224,227,230);
}

.border_right_a {
    position: relative;
    padding-right: 2em;
}

.border_right_a:after {
    content: '';
    position: absolute;
    width: 2px;
    height: 95%;
    top: 0;
    right: 0;
    background-color: rgb(101,45,145);
}

/* ==== PRODUCT GROUP HOMEPAGE ROW ==== */
.product_item_img {
    position: relative;
}

.product_item_img_label {
    position: absolute;
    transform: rotate(-2deg);
    right: -0.35rem;
    bottom: 2.2rem;
    font-size: 0.7em;
    padding: 0.2rem 0.5rem;
    border-radius: 0.5em 0 0 0.5em;
}

.product_item:nth-child(odd) div.product_item_img_label {
    transform: rotate(2deg);
    right: 0.2rem;
    bottom: 1.5rem;
}

.product_item_text {
    height: 100%;
}

/* ==== OTHER ==== */
/*
.payoff_header div[class*='bg_'],
.site_content div[class*='bg_']:not(.product_item_img_label):not(.inputrow):not(.table):not(.td):not(.product_group_overview_container) {
    border-radius: 0.5em;
}
*/
.borderless {
    border: none;
}

/* ==================== PAYMENT PAY_NL ==========================*/

.payment-container {
    position				: relative;
    padding					: 0.6em;
    margin-top				: 0.6em;
}

.payment-container:after {
    position				: absolute;
    bottom					: -0.3em;
    left					: 0;
    right					: 0;
    content					: '';
    display					: block;
    width					: 100%;
    height					: 1px;
    background-color		: rgba(55,49,59,0.2);
}

.logo-payment-container {
    height					: 100px;
    width					: 170px;
    text-align				: center;
}

.logo-payment {
    display					: inline-block;
    background-repeat		: no-repeat;
    background-position		: center;
    background-size			: contain;
    height					: 100px;
    width					: 100%;
    max-width				: 150px;
}

.content-payment-container {
    padding-left			: 2em;
}
@media all and (max-width:1000px) {

	.content_with_submenu {
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-top: 0.6em;
	}

	.headernav li a {
		padding: 0.2em 0.6em;
	}

	.site_submenu {
		border: 0;
		margin: 0;
		padding: 0;
		width: 100%;
	}

	.site_submenu ul {
		padding: 0.3em;
		text-align: center;
	}

	.site_submenu li {
		margin-right: 0.6em;
		padding: 0.3em;
		width: inherit;
	}

    .site_submenu li:last-child {
        padding-bottom: 0.3em;
    }

	.site_submenu a {
		margin: 0;
		padding: 0;
	}

}

@media all and (max-width:900px) {
	
	.mobile_invisible {
		display: none;
		-webkit-transition: all 0.35s ease-in;
		transition: all 0.35s ease-in;
	}

	.mobile_visible {
		display: inherit;
		-webkit-transition: all 0.35s ease-in;
		transition: all 0.35s ease-in;
	}

}

@media all and (max-width:800px) {

}

@media all and (max-width: 600px) {

	.services,
	.menu_services {
	    min-width: 98%;

		-ms-flex: 1 0 98%;	        /* IE 10 */
		-webkit-flex: 1 0 98%;	    /* NEW - Chrome */
		flex: 1 0 98%;	            /* NEW, Spec - Opera 12.1, Firefox 20+ */
	}

	.cookiewarning_container {
		-webkit-justify-content: center!important;
		justify-content: center!important;
	}

}
/*=== min-max font-size for min-max viewports, scales everything in between: https://css-tricks.com/snippets/css/fluid-typography/ ===*/

/* SET MIN FONT_SIZES HERE   */

html 				{	font-size: 16px	}

.payoff_header h2	{	font-size: 32px;	}

H1, .h1 			{	font-size: 32px;	}

.h1-to-h2			{	font-size: 32px;	}

H2, .h2 			{	font-size: 26px;	}

H3, .h3 			{	font-size: 22px;	}

H4, .h4 			{	font-size: 20px;	}

H5, .h5				{	font-size: 18px;	}


@media screen and (min-width: 320px) {

/* CALCULATE (MIN_FONT + (MAX_FONT - MIN_FONT) X ((VIEWPORT_WIDTH - MIN_SCREEN) / (MAX_SCREEN - MIN_SCREEN))) */

	html 				{	font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));	}

	.payoff_header h2	{	font-size: calc(32px + (54 - 32) * ((100vw - 320px) / (1920 - 320)));	}

    H1, .h1  			{	font-size: calc(32px + (48 - 32) * ((100vw - 320px) / (1920 - 320)));	}

    .h1-to-h2			{	font-size: calc(32px + (48 - 32) * ((100vw - 320px) / (1920 - 320)));	}

    H2, .h2 			{	font-size: calc(26px + (32 - 26) * ((100vw - 320px) / (1920 - 320)));	}

    H3, .h3  			{	font-size: calc(22px + (26 - 22) * ((100vw - 320px) / (1920 - 320)));	}

    H4, .h4  			{	font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));	}

    H5, .h5 			{	font-size: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));	}
	
}

@media screen and (min-width: 1920px) {

/* SET MAX FONT_SIZES HERE (CHANGE MAX SCREEN SIZE IF YOU NEED) */

	html 				{	font-size: 18px;	}

	.payoff_header h2	{	font-size: 54px;	}

    H1, .h1  			{	font-size: 48px;	}
	
	.h1-to-h2			{	font-size: 48px;	}

    H2, .h2 			{	font-size: 32px;	}

    H3, .h3  			{	font-size: 26px;	}

    H4, .h4  			{	font-size: 24px;	}

    H5, .h5 			{	font-size: 20px;	}

}

/* ====== OTHER MEDIA QUERIES ===== */

@media all and (min-width:1560px) {

    .header_visual_home .visual_container {
        padding: 1em 5em;
    }

    .header_visual_home .payoff_header {
        min-height: 750px;
    }

    .header_visual_home .slider_rotated {
        height: 600px;
    }

    .swirl:after {
        background-size: cover;
    }

    .headernav.menunav ul li {
        margin-right: 8em;
    }

    .site_header + div#main_content,
    .site_header + div,
    .site_header + section {
        margin-top: -2em;
    }

}

@media all and (min-width:1000px) {

    .product_group_img {
        margin-top: -100px;
    }

}

@media all and (max-width:1000px) {

}

@media all and (max-width:800px) {

    .header_visual_home .slider_rotated {
        height: 350px;
    }

    .header_visual_home .div6_12.payoff_header,
    .header_visual_home .div6_12.slider_rotated {
        margin: 0.625em 2%;
        min-width: 96%;
        -ms-flex: 1 0 96%;
        -webkit-flex: 1 0 96%;
        flex: 1 0 96%;
    }

}

@media all and (max-width: 600px) {

    .header_visual_home .payoff_header {
        margin: 0.625em 0 0 0!important;
        padding: 0;
        min-height: 100%;
    }

    .header_visual_home .slider_rotated {
        height: 250px;
    }

    .header_visual_home:after {
        min-height: calc(350px + 4em);
    }

    .swirl,
    .swirl:after {
        height: calc(0.5 * 250px);
    }

    .logo_container img,
    .logo_container svg {
        width: 5em;
    }

    .border_right_a {
        padding-right: 0;
    }

    .border_right_a:after {
        width: 0;
    }





}
