/*
	Theme Name: Nieuwsblad Transport
	Description: Theme for NieuwsbladTransport.nl.
	Version: 2.0
	Author: Steven Don
	Author URI: http://www.shdon.com/
	Tags: white, two-columns
*/
@charset "utf-8";

@import url('//fonts.googleapis.com/css?family=Open+Sans:400,600|Prompt:400,600');
@import url('//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css?ver=4.7.0');

/* CSS reset */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Variables */

:root
{
	/* Fonts */
	--light-sans-serif: "Open Sans", sans-serif;
	--sans-serif: "Prompt", "Open Sans", sans-serif;
	--serif: "Freight Text", Georgia, serif;
	
	/* Colours */
	--dark-blue: #004171;
	--light-blue: #009FE4;
	--separator: #666;
}

/* Base rules */

html
{
	font-family: var(--light-sans-serif);
	font-size: 16px;
	height: 100%;
}

body
{
	background: #FFF;
	color: #000;
	line-height: 1.5;
	margin: 1rem 0;
}

a
{
	color: inherit;
	text-decoration: none;
}

.container,
.wrapper
{
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
	width: 100%;
}

h1, .h1
{
	font-size: 1.8rem;
	line-height: 1.25;
	margin-bottom: 0.5rem;
}

h2, .h2
{
	font-size: 1.4rem;
	line-height: 1.25;
	margin-bottom: 0.5rem;
}

h3, .h3
{
	font-size: 1.25rem;
	line-height: 1.25;
	margin-bottom: 0.5rem;
}

p
{
	margin-bottom: 1em;
}

table
{
	border-collapse: collapse;
	margin: 1px 0;
	table-layout: fixed;
	width: 100%;
}

th
{
	border-bottom: 1px solid #b7b7b7;
	font-weight: bold;
	padding: 1px 0;
	text-align: left;
}

td
{
	border-bottom: 1px solid #DDD;
	padding: 1px 0;
}

tr,td,th
{
	vertical-align: middle;
}

ol, ul
{
	margin: 0 0 1.25rem;
	padding-left: 1.25rem;
}

ol li, ul li
{
	margin-left: 0;
}

blockquote
{
	border-radius: 1ex;
	color: #333;
	font-family: serif;
	font-size: 24px;
	font-style: italic;
	margin: 0 auto;
	max-width: 450px;
	padding: 1em 4em;
	position: relative;
	quotes: "\201C" "\201D";
	text-align: center;
}
blockquote::before, blockquote::after
{
	color: #CCC;
	display: inline-block;
	font-family: "Times New Roman", serif;
	font-style: normal;
	font-size: 300%;
	font-weight: bold;
	line-height: 1ex;
	position: absolute;
}
blockquote::before
{
	content: open-quote;
	left: 1ex;
	top: 0.75ex;
}
blockquote::after
{
	bottom: 0;
	content: close-quote;
	right: 1ex;
}

figcaption
{
	font-size: 75%;
	margin-bottom: 1rem;
}

figcaption .image-copyright::before
{
	content: '\00A9\00A0';
	display: inline-block;
}

img.aligncenter
{
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: 100%;
}

img.fluid
{
	display: block;
	height: auto;
	max-width: 100%;
}

.content a
{
	text-decoration: underline;
}

.content ol
{
	list-style: decimal outside none;
}

.content ul
{
	list-style: disc outside none;
}

.content li
{
	display: list-item;
}

.content .highlight
{
	background: #DDD;
	margin: 1em 0;
	padding: 1ex 1em;
}

.clearfix:before,
.container:before,
.row:before
{
	content: '';
	display: table;
}

.clearfix:after,
.container:after,
.row:after
{
	clear: both;
	content: '';
	display: table;
}

.logo img
{
	height: auto;
	max-height: 2rem;
	width: auto;
}

/* Grid system */

.col-xs-3, .col-xs-4, .col-xs-6, .col-xs-8, .col-xs-9, .col-xs-12,
.col-sm-3, .col-sm-4, .col-sm-6, .col-sm-8, .col-sm-9, .col-sm-12,
.col-md-3, .col-md-4, .col-md-6, .col-md-8, .col-md-9, .col-md-12,
.col-lg-3, .col-lg-4, .col-lg-6, .col-lg-8, .col-lg-9, .col-lg-12
{
	box-sizing: border-box;
	flex-basis: 100%;
	flex-grow: 0;
	flex-shrink: 0;
	min-height: 1px;
	padding-inline: 1rem;
	padding-right: 15px;
	position: relative;
}

.col-xs-12 { flex-basis: 100%; }
.col-xs-9 { flex-basis: 75%; }
.col-xs-8 { flex-basis: 66.66666667%; }
.col-xs-6 { flex-basis: 50%; }
.col-xs-4 { flex-basis: 33.33333333%; }
.col-xs-3 { flex-basis: 25%; }

.row
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-inline: -1rem;
}

/* Scaffolding */

main
{
	display: flex;
	margin-top: 2rem;
}

.grid-container
{
	position: relative;
}

.content
{
	flex: none;
	width: 100%;
}

aside.sidebar
{
	display: none;
	flex: none;
	margin-left: 1.5rem;
	width: 336px;
}

.page-template-ptl-wide main
{
	display: block;
}

.page-template-ptl-wide .content
{
	flex: none;
}

.page-template-ptl-wide .sidebar
{
	display: none;
}

.page-template-ptl-subscribe .sidebar
{
	margin-left: 32px;
	margin-left: 2rem;
}

/* Header */

#header
{
	margin-top: 1rem;
}

.header-banner .adv > div
{
	margin-left: auto;
	margin-right: auto;
	max-width: 320px;
}

nav ul
{
	display: block;
	margin: 0;
	padding: 0;
}

nav li
{
	display: inline-block;
	position: relative;
}

.top-nav
{
	float: right;
	line-height: 2;
	margin-bottom: 0;
	text-align: right;
	text-transform: uppercase;
}

.top-nav li
{
	display: none;
	margin-left: 1em;
}

.top-nav li.menu-item-subscribe,
.top-nav li.btn-inline-toggle
{
	display: inline-block;
}

.top-nav a
{
	padding-left: 1.2ex;
	padding-right: 1.2ex;
}

.top-nav .menu-item-subscribe
{
	background-color: var(--sub-link-bg, transparent);
	color: var(--sub-link-fg, inherit);
}

.top-nav .btn-inline-toggle
{
	background-color: #ECE9DD;
}

.top-nav .active
{
	box-shadow: 2px 2px 2px rgba(0,0,0,0.5);
	color: #FFF;
	background-color: #0195E0;
}

.top-nav .btn-inline-toggle:not(.active) .fa-times
{
	display: none;
}

.top-nav .active .fa-user
{
	display: none;
}

.top-nav .inline-dropdown
{
	background: #ECE9DD;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.5);
	color: #000;
	display: none;
	opacity: 0;
	padding: 1rem;
	position: absolute;
	right: 0;
	text-align: left;
	text-transform: none;
	top: 100%;
	transition: opacity 0.25s;
	z-index: 2;
}

.top-nav .inline-login
{
	min-width: 200px;
}

.top-nav .active .inline-dropdown
{
	display: block;
	opacity: 1;
}

.main-nav
{
	background: #EEECE1;
	font-family: var(--serif);
	font-weight: bold;
	display: flex;
	line-height: 2;
	margin-top: 2.5rem;
	padding: 0.25rem;
	position: relative;
}

.main-nav a
{
	padding-left: 1ex;
	padding-right: 1ex;
}

.main-nav ul.menu
{
	display: none;
}

.main-nav .toggle-sub-nav
{
	border-right: 1px solid #AAA;
	font-family: var(--light-sans-serif);
	font-weight: normal;
	margin-right: 1ex;
	white-space: nowrap;
}

.main-nav .toggle-sub-nav .fa
{
	margin-left: 0.25rem;
	margin-right: 0.25rem;
}

.main-nav .toggle-sub-nav:not(.active) .fa-times
{
	display: none;
}

.main-nav .toggle-sub-nav.active .fa-bars
{
	display: none;
}

.main-nav .menu
{
	flex-grow: 1;
}

.main-nav .menu .menu-item-has-children
{
	position: relative;
}

.main-nav .menu .menu-item-has-children::after
{
	content: '\f0d7';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.main-nav .menu .sub-menu
{
	background-color: #EEECE1;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.5);
	display: none;
	position: absolute;
	top: 100%;
	z-index: 3;
}

.main-nav .menu .sub-menu .menu-item
{
	white-space: nowrap;
}

.main-nav .menu .menu-item-has-children:hover .sub-menu
{
	display: block;
}

.main-nav .social-nav
{
	bottom: 100%;
	margin-bottom: 0.5rem;
	position: absolute;
	right: 0;
}

.main-nav .social-nav a
{
	background: #000;
	border-radius: 50%;
	color: #FFF;
	font-size: 0.75rem;
	height: 1rem;
	line-height: 1rem;
	padding: 0.25rem;
	width: 1rem;
}

.main-nav .search-box .search-form
{
	align-items: center;
	background-color: #E0DAC5;
	border: 1px solid #888;
	bottom: auto;
	display: none;
	left: 0;
	line-height: 2;
	position: absolute;
	right: 0;
	top: 100%;
	z-index: 1;
}

.main-nav .search-box.active .search-form
{
	display: flex;
}

.main-nav .search-form .fa
{
	padding: 0 0.75ex;
}

.main-nav .search-form button
{
	background-color: transparent;
	border-color: #888;
	border-style: none solid none none;
	border-width: 2px;
	padding: 0 1ex;
}

.main-nav .search-form input
{
	background-color: transparent;
	border: none;
	display: inline-block;
	flex: 1 0 auto;
	line-height: 2rem;
	padding: 0 0.5rem;
	min-width: 200px;
	vertical-align: top;
	width: auto;
}

.sub-nav
{
	background-color: #A8AA7D;
	color: #FFF;
	display: none;
	left: 0;
	padding: 1rem;
	position: absolute;
	right: 0;
	top: 100%;
	z-index: 2;
}

.sub-nav .has-sub > a
{
	font-weight: bold;
	text-transform: uppercase;
}

.sub-nav-mobile.active
{
	display: block;
}

.sub-nav-mobile a
{
	font-family: var(--serif);
	display: block;
	line-height: 2;
}

.sub-nav-mobile li
{
	display: block;
}

.sub-nav-mobile .has-sub > a
{
	font-family: var(--sans-serif);
}

.sub-nav-desktop .menu
{
	display: flex;
	flex-grow: 1;
	flex-wrap: wrap;
	justify-content: space-around;
	line-height: 2;
	margin-left: auto;
	margin-right: auto;
}

.sub-nav-desktop .has-sub
{
	flex: 0 1 auto;
}

.sub-nav-desktop .has-sub .dropdown-menu
{
	font-family: var(--serif);
	font-weight: normal;
}

.sub-nav-desktop .has-sub .dropdown-menu > li
{
	display: block;
}

#main-menu .link-home a::before
{
	content: '\f015';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#main-menu .link-home span
{
	display: none;
}

/* Footer */

#footer
{
	background: #F4F4F4;
	color: #464646;
	margin: 1rem 0;
	padding: 1rem 0;
}

#footer .social-nav a
{
	background: #464646;
	border-radius: 50%;
	color: #F4F4F4;
	height: 1rem;
	line-height: 1rem;
	padding: 0.25rem;
	width: 1rem;
}

#footer .copyright
{
	font-size: small;
	margin-top: 1rem;
}

#footer .logo
{
	flex: 1;
}

#footer .menu
{
	flex-grow: 1;
	line-height: 2;
}

#footer .has-sub
{
	display: block;
	flex: 1;
}

#footer .has-sub > a
{
	font-weight: bold;
	text-transform: uppercase;
}

#footer .dropdown-menu
{
	font-family: var(--serif);
}

#footer .dropdown-menu > li
{
	display: block;
}

#sub-footer
{
	color: #4A4A4A;
	font-size: small;
	text-align: center;
}

#sub-footer a
{
	text-decoration: underline;
}

/* Advertisements */

.adv
{
	text-align: center;
}

/* Interstitials */

.interstitial-banner
{
	border-top: 1px solid var(--separator);
	flex: 1 0 100%;
	margin-bottom: 1rem;
	padding-top: 1rem;
	text-align: center;
}

/* Sidebar */

.widget
{
	margin-bottom: 1rem;
}

/* Main loop */

.loop a
{
	text-decoration: none;
}

.loop > article
{
	position: relative;
}

.loop .article-image
{
	width: 100%;
}

.loop .article-image img
{
	display: block;
	height: auto;
	margin-bottom: 0.5rem;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.loop .article-info time
{
	display: none;
}

.loop > article.premium::before
{
	background: #F0C000;
	color: black;
	content: 'Premium';
	font-size: 75%;
	font-weight: bold;
	padding: 1ex 1em;
	position: absolute;
	text-transform: uppercase;
	z-index: 1;
}

#loop-main.loop-from-menu article.premium:nth-child(1)::before,
#loop-main.loop-from-menu article.premium:nth-child(2)::before,
#loop-main.loop-from-menu article.premium:nth-child(3)::before
{
	font-size: 100%;
}

/* Default (list) format */

.loop article
{
	border-top: 1px solid var(--separator);
	margin-bottom: 1rem;
	padding-top: 1rem;
}

.loop article:first-child
{
	border-top: none;
	padding-top: 0;
}

.loop article a
{
	display: flex;
}

.loop time,
.loop .zapfline
{
	display: inline-block;
	font-size: 0.9rem;
	margin-right: 0.5rem;
}

.loop .article-image
{
	flex: none;
	margin-right: 1rem;
	max-width: 10rem;
	width: 35%;
}

.loop .article-content
{
	flex: 1 1 auto;
	overflow: hidden;
}

.loop .article-excerpt
{
	display: none;
}

/* Block format */

.loop-block time
{
	display: none;
}

/* Dossier loop */

.loop-dossiers .loop
{
	display: grid;
	grid-column-gap: 1rem;
	grid-row-gap: 1rem;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	position: relative;
	margin-top: 1rem;
}

.loop-dossiers .dossier-item
{
	border-color: silver;
	border-color: var(--separator);
	border-style: solid;
	border-width: 1px;
	height: 0;
	margin: 0;
	padding: 0 0 145.4545% 0;
	position: relative;
}

.loop-dossiers .dossier-image
{
	display: block;
	height: auto;
	position: relative;
	width: 100%;
	z-index: -1;
}

.loop-dossiers .dossier-link
{
	bottom: 0;
	display: block;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	text-decoration: none;
	top: 0;
}

.loop-dossiers .dossier-title
{
	background: rgba(0,0,0,0.75);
	bottom: 0;
	box-shadow: 0 0 0.5ex 1ex rgba(0,0,0,0.75);
	color: #FFF;
	left: 0;
	opacity: 0;
	padding: 0.5ex 1ex 1ex;
	position: absolute;
	right: 0;
	top: auto;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.75);
	transition: opacity 0.5s ease-in-out;
	z-index: 1;
}

.loop-dossiers .dossier-item:hover .dossier-title
{
	opacity: 1;
}

@media (max-width: 480px)
{
	.loop-dossiers .loop
	{
		grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
	}
}

/* Paging */

.pager
{
	display: block;
	font-weight: bold;
	margin-bottom: 1rem;
	text-align: center;
}

.pager .page-numbers
{
	display: inline-block;
	line-height: 2rem;
	margin: 0 0.25rem;
	text-decoration: none;
}

.pager .current
{
	color: var(--light-blue);
	display: inline-block;
	line-height: 2rem;
	margin: 0 0.25rem;
}

.pager .disabled
{
	color: #CCC;
}

/* Article metadata */

.article-title
{
	font-family: var(--serif);
	font-weight: bold;
}

.article-excerpt
{
	font-family: var(--serif);
}

.zapfline
{
	color: var(--light-blue);
	font-family: var(--sans-serif);
	font-size: 0.9rem;
	font-weight: bold;
	text-transform: uppercase;
}

/* Article and page content */

.article-body
{
	font-family: var(--serif);
}

.article-body h1,
.article-body h2,
.article-body h3,
.article-body h4,
.page .content h1,
.page .content h2,
.page .content h3,
.page .content h4
{
	font-family: var(--sans-serif);
	margin-top: 1ex;
}

.article-body img,
.page .content img
{
	height: auto;
	max-width: 100%;
}

.article-body strong,
.article-body b,
.page .content strong,
.page .content b
{
	font-weight: bold;
}

.article-body em,
.article-body i,
.page .content em,
.page .content i
{
	font-style: italic;
}

.article-big .article-intro
{
	font-family: var(--serif);
	font-weight: bold;
	margin: 1em 0;
}

.article-big .article-info
{
	display: inline-block;
	margin-bottom: 1rem;
}

.article-big .author-name
{
	display: inline-block;
	font-weight: bold;
	text-decoration: underline;
	text-transform: uppercase;
}

.article-big .author-email .fa
{
	color: var(--light-blue);
	margin-left: 1ex;
}

.article-big .article-info time
{
	margin-left: 1em;
}

.article-big .article-image img
{
	display: block;
	height: auto;
	margin-bottom: 1rem;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.article-header .article-share
{
	float: right;
}

.article-image figcaption
{
	margin-top: -1em;
}

.article-share
{
	text-align: right;
}

.article-share a.socialmedia
{
	background: #464646;
	border-radius: 50%;
	color: #F4F4F4;
	display: inline-block;
	height: 1rem;
	line-height: 1rem;
	margin-left: 0.5rem;
	padding: 0.25rem;
	text-align: center;
	width: 1rem;
}

.article-footer
{
	display: flex;
	margin: 2rem 0;
}

.article-footer .article-tags-label
{
	flex: 0 0 auto;
}

.article-footer .article-tags
{
	flex: 1 1 auto;
}

.article-footer .article-share
{
	flex: 0 0 auto;
}

.article-tags a
{
	display: inline-block;
	margin-left: 1ex;
	text-decoration: none;
	white-space: nowrap;
}

.article-tags a:hover
{
	text-decoration: underline;
}

.article-tags a::before
{
	content: '\f02b';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	padding-right: 4px;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Comments */

.panel-comment-form-header,
.panel-comments-header
{
	border-bottom: 1px solid #000;
	margin-bottom: 1rem;
}

.panel-comments-body .comment
{
	border-top: 2px solid #CCC;
	margin-bottom: 1rem;
	padding-top: 1rem;
}

.panel-comments-body .comment:first-child
{
	border-top: none;
}

.panel-comments-body .comment-footer
{
	color: #AAA;
	font-size: 0.75rem;
}

/* Alerts and notifications */

.alert
{
	border: 1px solid transparent;
	border-radius: 4px;
	margin-bottom: 20px;
	padding: 15px;
}

.alert-success { background-color: #DFF0D8; border-color: #D6E9C6; color: #3C763D; }
.alert-info { background-color: #D9EDF7; border-color: #BCE8F1; color: #31708F; }
.alert-warning { background-color: #FCF8E3; border-color: #FAEBCC; color: #8A6D3B; }
.alert-danger { background-color: #F2DEDE; border-color: #EBCCD1; color: #A94442; }

/* Forms */

input[type=text], input[type=email], input[type=password], input[type=tel], select, textarea
{
	background: #F3F3F3;
	border: 1px solid #CCC;
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
	box-sizing: border-box;
	color: #000;
	display: block;
	font-size: 1.2rem;
	line-height: 1.4287143;
	padding: 0.5rem 0.75rem;
	transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
	width: 100%;
}

input[type=text]:hover, input[type=email]:hover, input[type=password]:hover, input[type=tel]:hover, select:hover, textarea:hover
{
	border-color: #CCC;
}
input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, input[type=tel]:focus, select:focus, textarea:focus
{
	border-color: #66AFE9;
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(102,175,233,0.6);
	outline: 0;
}

button, input[type=submit], .button, .content .button
{
	--ba-co: #FFF;
	--bo-co: #000;
	--te-co: #000;
	--ba-co-2: #F2F2F2;
	--bo-co-2: transparent;
	background-color: var(--ba-co);
	border: 1px solid var(--bo-co);
	color: var(--te-co);
	cursor: pointer;
	display: inline-block;
	font-size: 0.9rem;
	line-height: 2em;
	padding: 0.5em 2em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 0.25s, border-color 0.25s, color 0.25s;
}

button:active, input[type=submit]:active, .button:active,
button:hover, input[type=submit]:hover, .button:hover
{
	background-color: var(--ba-co-2);
	border-color: var(--bo-co-2);
}

button.button-primary, input[type=submit].button-primary, .button-primary
{
	--ba-co: #0195E0;
	--bo-co: transparent;
	--te-co: #FFF;
	--ba-co-2: #15B1FF;
	--bo-co-2: transparent;
}
button.button-secondary, input[type=submit].button-secondary, .button-secondary
{
	--ba-co: #40AF5E;
	--bo-co: transparent;
	--te-co: #FFF;
	--ba-co-2: #59CA78;
	--bo-co-2: transparent;
}

.form-group
{
	margin-bottom: 1rem;
}

.control-label
{
	padding-top: 8px;
	margin-bottom: 0;
}

.help-block
{
	color: #737373;
	display: block;
	font-size: 80%;
	margin-top: 5px;
	margin-bottom: 10px;
}

.has-error .control-label, .has-error .help-block, .has-error label.checkbox, .has-error label.radio { color: #A94442; }
.has-error .form-control { border-color: #A94442; box-shadow: inset 0 1px 1px rgba(0,0,0,0.075); }

/* Comment form */

.comment-form-commenter
{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.comment-form-commenter .form-group
{
	flex: none;
	margin-bottom: 1rem;
	width: 100%;
}

.comment-form label
{
	font-size: 0.75rem;
}

.comment-form input,
.comment-form textarea
{
	display: block;
	width: 100%;
}

.comment-form textarea
{
	min-height: 8rem;
}

.comment-form-message .status
{
	color: #999;
}

.comment-form-submit
{
	margin-bottom: 1rem;
	margin-top: 1rem;
	text-align: right;
}

/* Login form */

.inline-login form
{
	overflow: hidden;
}

.inline-login p
{
	margin-bottom: 0.4rem;
}

.inline-login label[for]
{
	display: block;
	font-size: x-small;
}

.inline-login input[type=text],
.inline-login input[type=password]
{
	font-size: 1rem;
	display: block;
	width: 100%;
}

.inline-login .login-remember
{
	font-size: small;
}

.inline-login .login-submit
{
	float: left;
	margin-bottom: 0;
}

.inline-login .forgot-pw
{
	color: #666;
	float: right;
	font-size: small;
	line-height: 2.5rem;
	text-align: right;
}

/* Newsletter form */

.widget_ymlp
{
	background-color: var(--main-menu-bg);
	padding: 1rem;
}

.widget_ymlp .mnl-field-email
{
	margin-top: 0;
}

.widget_ymlp .mnl-signup-full
{
	margin-bottom: 0;
}

.mnl-field
{
	margin: 1em 0;
}

/* Panels etc */

.panel-header
{
	font-family: var(--sans-serif);
	font-size: 1.2rem;
	font-weight: bold;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
	text-transform: uppercase;
}

/* Related dossiers */

.related-dossier
{
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
}

.related-dossier a
{
	align-items: center;
	display: flex;
	text-decoration: none;
}

.related-dossier .related-dossier-image
{
	flex: none;
	padding-right: 1rem;
	width: 6rem;
}

.related-dossier .related-dossier-image img
{
	display: block;
	height: 100%;
	object-fit: contain;
	object-position: center;
	width: 100%;
}

.related-dossier .related-dossier-info
{
	flex: 0 1 auto;
	overflow: hidden;
	line-height: 1.5;
}

.related-dossier strong
{
	display: block;
	text-decoration: none;
	color: #333;
	font-size: 16px;
}

.related-dossier+.related-dossier
{
	border-top: 1px solid #AAA;
}

/* Read more */

.readmore
{
	background-color: var(--main-menu-bg);
	margin-block: 1rem;
	padding: 1rem;
}

.readmore .readmore-heading
{
	margin-block: 0 0.5rem;
}

.readmore-item
{
	align-items: center;
	display: flex;
	gap: 1rem;
}

.readmore-thumbnail
{
	display: block;
	height: auto;
	max-width: 20vw;
	width: 171px;
}

.readmore-info h4
{
	font-size: 1.25rem;
	margin: 0;
}

.readmore-info a
{
	display: block;
	font-size: 1rem;
	margin-top: 0.5rem;
	text-decoration: none;
}

/* Related articles */

.loop-related
{
	margin-top: 1rem;
}

.most-read a
{
	border-top: 1px solid var(--separator);
	display: flex;
	padding: 0.5rem 0;
}

.most-read .post-title
{
	flex: 1 1 auto;
	font-family: var(--serif);
	font-weight: bold;
}

.most-read .post-thumbnail
{
	flex: none;
	padding-left: 1rem;
	width: 6rem;
}

.most-read .post-thumbnail img
{
	display: block;
	height: 100%;
	object-fit: contain;
	object-position: center;
	width: 100%;
}

.recent-posts a.recent-post
{
	border-top: 1px solid var(--separator);
	display: block;
	font-family: var(--serif);
	font-weight: bold;
	padding: 0.5rem 0;
}

.recent-posts .article-info
{
	align-items: center;
	display: flex;
}

.recent-posts .post-time
{
	color: #AAA;
	flex: 0 1 auto;
	font-family: var(--light-sans-serif);
	font-weight: normal;
	padding-left: 1rem;
	text-align: right;
	white-space: nowrap;
}

.recent-posts .post-title
{
	flex: 1 1 auto;
}

.recent-posts .recent-posts-link
{
	margin-top: 1rem;
	text-align: center;
}

.recent-posts .zapfline
{
	font-weight: normal;
}

/* Polls */

.poll-answer
{
	position: relative;
}

.poll-answer label
{
	font-weight: normal;
}

.poll-answers.poll-open
{
	list-style-type: none;
	margin-left: 0;
	padding-left: 30px;
}

.poll-answers.poll-open .poll-answer input[type=radio]
{
	left: -30px;
	position: absolute;
	top: 0.5ex;
} 

.poll-results small
{
	float: right;
	height: 0;
	margin-top: 5px;
	overflow: visible;
}

.poll-result
{
	margin-top: 1ex;
}

.poll-result-progress[value]
{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: #EEE;
	border: none;
	border-radius: 2px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.25) inset;
	box-sizing: border-box;
	color: #000;
	display: block;
	height: 18px;
	padding: 2px;
	width: 100%;
}

.poll-result-progress[value]::-webkit-progress-bar
{
	background: transparent;
}

.poll-result-progress[value]::-moz-progress-bar
{
	background-color: #000;
	background-image: linear-gradient(to bottom, #666, #000, #333);
	border-radius: 2px;
}
.poll-result-progress[value]::-webkit-progress-value
{
	background-color: #000;
	background-image: linear-gradient(to bottom, #666, #000, #333);
	border-radius: 2px;
}

/* Quote of the day */

.qotd { font-size: 1.25rem; line-height: 1.25; max-width: none; padding: 1em 2em; text-align: left; }
.qotd::after { right: 0; }
.qotd::before { left: 0; }
.qotd-attribution { text-align: right; }

/* Home page */

.home .loop-header
{
	border-top: 2px solid #666;
	font-family: var(--sans-serif);
	font-weight: bold;
	line-height: 2;
	margin-bottom: 0.25rem;
	margin-top: 1rem;
	text-transform: uppercase;
}

.home .section-link
{
	margin-bottom: 1em;
	text-align: center;
	width: 100%;
}

body:not(.paged) .home .loop-from-menu article:first-child .article-image,
body:not(.paged) .home .loop-section article:first-child .article-image
{
	margin-right: 0;
	max-width: none;
	width: 100%;
}

body:not(.paged) .home .loop-from-menu article:first-child a,
body:not(.paged) .home .loop-section article:first-child a
{
	display: block;
}

/* Archive pages */

.archive-header
{
	font-family: var(--sans-serif);
	font-weight: bold;
	margin-bottom: 0.5rem;
	margin-top: 0;
	text-transform: uppercase;
}

/* Colofon */

.page-colofon .content
{
	flex-shrink: 0 !important;
}

.page-colofon .colofon-section
{
	margin-bottom: 1.25rem;
	padding-block-start: 1rem;
}

.page-colofon .accent-1 { background: #F2F9FC; }
.page-colofon .accent-2 { background: #D9EEF7; }
.page-colofon .accent-3 { background: #BFE1F1; }

.page-colofon .colofon-item
{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding-inline: 1rem;
	padding-block-end: 1rem;
}

.page-colofon .colofon-avatar
{
	aspect-ratio: 1;
	height: auto;
	object-fit: cover;
	max-width: 128px;
	width: 100%;
}

.page-colofon .colofon-info
{
	color: black;
	flex-direction: column;
	gap: 0.5rem;
	min-height: 7.6rem;
}

.page-colofon .colofon-item p
{
	margin: 0;
}

.page-colofon .colofon-naam
{
	font-weight: 600;
}

.page-colofon .colofon-functie
{
	font-size: 0.8rem;
	font-style: italic;
}

.page-colofon .colofon-email
{
	font-size: 0.8rem;
}

.page-colofon .colofon-email > a
{
	text-decoration: none;
}

@media (min-width: 992px)
{
	.page-colofon .colofon-avatar { max-width: 100%; }
}

/* Widgets */

.widget_countdown
{
	border: 1px solid #DDD;
}

.widget_countdown a
{
	color: inherit;
	outline: none;
	text-decoration: none;
}

.widget_countdown .logo
{
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: 100%;
	position: static;
}

.widget_countdown .countdown-timer
{
	display: table;
	font-size: 300%;
	line-height: 1.5;
	margin-block: 0.5rem;
	padding-bottom: 0.25em;
	text-align: center;
	width: 100%;
}

.widget_countdown .countdown-timer > span
{
	display: table-cell;
	vertical-align: middle;
}

.widget_countdown .countdown-timer .sep
{
	background-color: currentColor;
	width: 2px;
}

.widget_countdown .countdown-timer > span::after
{
	display: block;
	font-size: 25%;
	line-height: 1em;
	margin-bottom: -1em;
	text-transform: uppercase;
}

.widget_countdown .countdown-timer > span.days::after
{
	content: 'days';
}

.widget_countdown .countdown-timer > span.hrs::after
{
	content: 'hours';
}

.widget_countdown .countdown-timer > span.min::after
{
	content: 'min';
}

.widget_countdown .countdown-timer > span.sec::after
{
	content: 'sec';
}

.widget_nlpartners
{
	background-color: #F1F1F1;
	padding: 0 16px 16px;
}

.widget_nlpartners .partners
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: -1rem;
}

.widget_nlpartners .advertisement
{
	background-color: white;
	box-sizing: border-box;
	flex: 0 0 120px;
	margin-top: 1rem;
	padding: 12px;
}

.widget_nlpartners .advertisement .adv
{
	display: block;
	height: 60px;
	margin: 0 auto;
	max-width: none;
	width: 120px;
}

.widget_text img
{
	height: auto;
	max-width: 100%;
}

.widget_text .dossiers
{
	max-height: 500px;
	overflow: auto;
}

.widget_text .dossiers a
{
	display: flex;
	font-family: var(--serif);
	font-weight: bold;
	padding: 0.25rem 0;
	text-decoration: none;
}

.widget_text .dossiers .fa-archive
{
	color: #A8AA7D;
	flex: 0 0 auto;
	line-height: 1.5rem;
	margin-right: 1ex;
}

/* Secondary content: overlay styles */

#overlay-container
{
	background-color: rgba(0,0,0,0.5);
	bottom: 0;
	display: none;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 99;
}

.overlay
{
	background: #FFF;
	box-shadow: 5px 5px 20px rgba(0,0,0,0.75);
	left: 50%;
	line-height: 1.2;
	max-width: 350px;
	overflow: hidden;
	padding: 1em;
	position: fixed;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 80%;
}

.overlay-title::after
{
	clear: both;
	content: '';
	display: table;
}

.overlay-title .btn-close
{
	color: #808080;
	cursor: pointer;
	float: right;
	font-size: 32px;
	line-height: 1;
}

.overlay-content p
{
	margin: 1em 0;
}

/* Secondary content: newsletter overlay */

.nb-heading
{
	font-size: 100%;
	font-weight: bold;
}

.nb-site-logo
{
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	height: 0;
	margin: 1em auto;
	max-width: 336px;
	padding-bottom: 40%;
	width: 80%;
}

.nb-copyright
{
	color: #808080;
	font-size: 75%;
}

#nb-controls
{
	margin-top: 20px;
}

#nb-controls input
{
	border: 2px solid #808080;
	box-sizing: border-box;
	color: #808080;
	display: block;
	font-size: 12px;
	margin: 0 auto;
	padding: 10px;
	width: 70%;
}

#nb-controls input:focus
{
	outline: none;
}

#nb-controls label
{
	display: block;
	margin: 20px 0;
	position: relative;
}

#nb-controls .animated-label
{
	color: #000;
	left: 53px;
	opacity: 0.5;
	padding: 10px;
	pointer-events: none;
	position: absolute;
	transition: 0.2s ease;
	transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
	top: -2px;
}

#nb-controls input:focus + .animated-label,
#nb-controls input:not(:placeholder-shown) + .animated-label
{
	transform: scale(0.9) translateY(-84%) translateX(-15px);
    opacity: 1;
}

#nb-controls button
{
	border: none;
	font-size: 140%;
	line-height: normal;
	padding: 0.5ex 1em;
	text-transform: uppercase;
	width: 70%;
}

/* Responsiveness */

@media (min-width: 576px)
{
	h1, .h1 { font-size: 2.5rem; }
	h2, .h2 { font-size: 1.5rem; }
	
	.wrapper { max-width: 540px; }

	.top-nav .inline-login
	{
		min-width: 300px;
	}

	.main-nav .search-box .search-form
	{
		bottom: 0;
		left: auto;
		position: absolute;
		top: 0;
	}

	#footer .menu
	{
		display: flex;
	}
}

@media (min-width: 768px)
{
	.col-sm-12 { flex-basis: 100%; }
	.col-sm-9 { flex-basis: 75%; }
	.col-sm-8 { flex-basis: 66.66666667%; }
	.col-sm-6 { flex-basis: 50%; }
	.col-sm-4 { flex-basis: 33.33333333%; }
	.col-sm-3 { flex-basis: 25%; }
	
	.logo img { max-height: 3rem; }
	.wrapper { max-width: 720px; }

	.header-banner .adv > div
	{
		max-width: 728px;
	}
	
	.main-nav
	{
		margin-top: 1rem;
	}
	
	.main-nav ul.menu
	{
		display: block;
	}
	
	.interstitial-banner
	{
		border-top: none;
		margin-bottom: 0;
		padding-top: 0;
	}

	.loop-block
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.loop-block > article
	{
		border-top: none;
		flex: none;
		margin-bottom: 1rem;
		margin-top: 1rem;
		padding-top: 0;
		width: calc(50% - 1rem);
	}

	.loop .article-excerpt
	{
		display: block;
	}

	.loop-block .article-image
	{
		max-width: none;
		width: 100%;
	}

	.loop-block article a
	{
		display: inline;
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(1)
	{
		margin-bottom: 1.5rem;
		margin-top: 0;
		width: 100%;
	}
	
	.loop-container.loop-from-menu .loop-block > article:nth-child(1) img
	{
		margin-bottom: 0;
	}
	
	.loop-container.loop-from-menu .loop-block > article:nth-child(1) .article-title,
	.loop-container.loop-from-menu .loop-block > article:nth-child(1) .zapfline
	{
		color: #FFF;
		text-shadow: 0 0 1ex black;
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(1) .article-title
	{
		font-size: 3rem;
		line-height: 1.25;
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(1) .article-content
	{
		bottom: 0;
		left: 0;
		padding: 1rem;
		position: absolute;
		right: 0;
		top: 0;
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(1) .article-excerpt
	{
		display: none;
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(2) .article-title,
	.loop-container.loop-from-menu .loop-block > article:nth-child(3) .article-title
	{
		font-size: 1.5rem;
		line-height: 1.35;
		margin: 0.5rem 0;
	}
	
	.article-intro, .article-body
	{
		font-size: 1.25rem;
	}

	.comment-form-commenter .form-group
	{
		width: calc(50% - 1rem);
	}
	
	#footer .footer-nav
	{
		display: flex;
	}

	#footer .logo
	{
		flex: 1;
	}
}

@media (min-width: 992px)
{
	.col-md-12 { flex-basis: 100%; }
	.col-md-9 { flex-basis: 75%; }
	.col-md-8 { flex-basis: 66.66666667%; }
	.col-md-6 { flex-basis: 50%; }
	.col-md-4 { flex-basis: 33.33333333%; }
	.col-md-3 { flex-basis: 25%; }
	
	.logo img { max-height: 4rem; }
	.wrapper { max-width: 960px; }
	.content { flex-shrink: 1; }
	aside.sidebar { display: block; }
	
	.top-nav li
	{
		display: inline-block;
	}
	
	.sub-nav-mobile.active
	{
		display: none;
	}
	
	.sub-nav-desktop.active
	{
		display: block;
	}
	
	.loop-block article
	{
		flex: none;
		margin-bottom: 1rem;
		margin-top: 1rem;
		width: calc(33.3333333% - 1rem);
	}

	.home .loop-section article
	{
		margin-top: 0;
		width: calc(25% - 1rem);
	}

	.loop-container.loop-from-menu .loop-block > article:nth-child(2),
	.loop-container.loop-from-menu .loop-block > article:nth-child(3)
	{
		margin-top: 0;
		width: calc(50% - 1rem);
	}
	
	.home .loop-section article
	{
		margin-top: 0;
		width: calc(25% - 1rem);
	}

}

@media (min-width: 1200px)
{
	.col-lg-12 { flex-basis: 100%; }
	.col-lg-9 { flex-basis: 75%; }
	.col-lg-8 { flex-basis: 66.66666667%; }
	.col-lg-6 { flex-basis: 50%; }
	.col-lg-4 { flex-basis: 33.33333333%; }
	.col-lg-3 { flex-basis: 25%; }
	.wrapper { max-width: 1140px; }
}
