/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/*--------------------------------------------------------------
## Basics
--------------------------------------------------------------*/

body {
	overflow-x:hidden;
}

/*--------------------------------------------------------------
## Header and navigation
--------------------------------------------------------------*/

.wp-block-search > .wp-block-search__inside-wrapper {
	border-radius:60px;
	border-color:#BFBFBF;
	font-family: Museo Sans;
	padding:0;
	margin-left:24px;
}
.wp-block-search .wp-block-search__inside-wrapper input {
	border-radius:60px;
	font-size: 14px;
	font-weight: 300;
	line-height: 20px;
	letter-spacing: 0.07px;
	background:transparent;
	border:0;
	padding:7px 10px;
	width:200px;
}
.wp-block-search .wp-block-search__button {
	background:transparent url(https://toolkitverkeerseducatie.nl/wp-content/themes/generatepress_child/images/zoek.svg) no-repeat 10px;
}


.main-navigation .menu-bar-items {
	display:none;
}
.main-navigation .menu-item-29 {   
	position: absolute;
 	right: 0;
}
.search-trigger {
	display:none !important;
}
@media (max-width: 900px) {
	.inside-header {
    flex-direction: row;
		padding-top:13px;
		padding-bottom:12px;
		position:relative;
 }
.main-navigation {
	position:absolute;
	top:0;
	right:0;
}
.admin-bar .main-navigation {
	top:32px;
}
.wp-block-search,
.mobile-menu {
	display:none;
}
.main-navigation .inside-navigation.grid-container {
	padding:0px !important;
}
	.menu-toggle {
		width:56px;
		height:56px;
		line-height:56px;
	}
	.site-logo {
		width:120px;
	}
.search-trigger	 {
		display:block !important;
		position:absolute;
		top:0px;
		right:56px;
		padding:16px !important;
	}

}

@media (max-width: 768px) {
.admin-bar .main-navigation {
	top:46px;
}
}
.main-nav>ul {
	padding-top:19px;
	padding-bottom:19px;
}
.mobile-menu-open body:after {
	content:"";
	position:absolute;
	top:56px;
	bottom:0;
	left:0;
	right:0;
	background-color:#2E3B6Aaa;
}
.mobile-menu-open body.admin-bar:after {
	top:88px;
}
@media (max-width: 768px) {
	.mobile-menu-open body.admin-bar:after {
		top:102px;
	}
}

.mobile-menu-open .main-nav > ul {
	width:100%;
	margin-right:0;
	margin-left:auto;
	max-width:420px;
	position:relative;
	padding-left:16px;
	padding-right:0px;
}

.mobile-menu-open .main-navigation.toggled .main-nav>ul {
	padding-bottom:60px;
}

.mobile-menu-open .main-navigation .inside-navigation {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.mobile-menu-open .main-navigation {
	background:transparent;
	width:100%
}
.mobile-menu-open .menu-toggle {
	background:var(--global-color-15) !important;
}
.mobile-menu-open .main-navigation ul {
	background:var(--global-color-15) !important;
}
.mobile-menu-open .main-navigation .menu-item-29 {
  right:auto;
}
.main-navigation .main-nav ul li > a {
	border-bottom:2px solid transparent;
}
.main-navigation .main-nav ul li > a:hover,
.main-navigation .main-nav ul li[class*="current-menu-"] > a{
	border-bottom:2px solid #fff;
}
.main-navigation .main-nav ul li {
	margin-left:0px;
	margin-right:16px;
}
.main-navigation .main-nav ul.sub-menu > li {
	margin-left:16px;
}

.main-navigation.toggled .main-nav li {
    width: calc(100% - 16px);
}
.main-navigation ul ul {
	margin-top:-2px;
}
.main-navigation ul ul li {
    width: calc(100% - 32px);
}
.main-navigation.toggled .main-nav > ul > li > a {
	margin-top:0px;
	margin-bottom:24px;
}
.main-navigation .sub-menu {
	padding-bottom:10px;
	margin-bottom:20px;
}



/*--------------------------------------------------------------
## Banner image and breadcrumbs
--------------------------------------------------------------*/

.banner {
	height:280px;
	background-size:cover;
	background-position:center center;
}
.banner .innerwrap {
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	padding-left:36px;
	padding-right:36px;
}
.banner .breadcrumbs {
	height:64px;
	background: var(--gradient-overlay-dark-0-deg, linear-gradient(180deg, rgba(48, 48, 48, 0.85) 1.22%, rgba(48, 48, 48, 0.00) 100%));
	padding-top:16px;
	color:#fff;
	font-weight:300;
}
.banner .breadcrumbs span,
.banner .breadcrumbs a {
	font-family: "Museo Sans";
	font-size: .75rem;
	font-weight: 600;
	line-height: 1.33;
	letter-spacing: 0.06px;
	color:#fff;
}
.banner .breadcrumbs a {
	text-decoration:none;
}
.banner .breadcrumbs a > span {
	font-weight: 300;
}
.banner.empty {
	height:64px;
}
.banner.empty + .site.grid-container .inside-article {
	margin-top:0;
	padding-top:0;
}
.banner.empty .breadcrumbs {
	padding-top:8px;
	height:40px;
	background: var(--base);
}
.banner.empty + .site.grid-container .inside-article .entry-header {
	margin-left:0;
}

/*--------------------------------------------------------------
## Site footer
--------------------------------------------------------------*/

.site-footer a {
	color:#fff;
	text-decoration:none;
}
.site-footer a:not(.gb-button):hover {
	color:#fff;
	text-decoration:underline;
}
.site-footer a.gb-button.footer-button:hover {
	color:#2E3B6A;
	background-color:#fff;
}
.site-footer .footer-copyright {
	font-size: 14px;
	font-weight: 300;
	line-height: 1.42;
}
.site-footer .footer-copyright span,
.site-footer .footer-copyright a {
	margin-right:24px;
}




/*--------------------------------------------------------------
## Page template
--------------------------------------------------------------*/

.site.grid-container .inside-article {
	margin-top:-60px;
	border-radius:8px;
	padding-left:0;
	padding-right:0;
	margin-left:36px;
	margin-right:36px;
}
@media (max-width: 768px) {
	.site.grid-container .inside-article {
		margin-left:16px;
		margin-right:16px;
	}
}
.site.grid-container .inside-article .entry-header {
	margin-left:36px;
}
.site-content strong {
	font-weight:600;
}

.page-template-default .site.grid-container .inside-article .entry-header,
.page-template-default .site.grid-container .inside-article .entry-content {
	max-width:740px;
	margin-left:auto;
	margin-right:auto;
}
.page-template-default .banner.empty + .site.grid-container .inside-article .entry-header {
	margin-left:auto;
}

/*--------------------------------------------------------------
## Publicatie single template
--------------------------------------------------------------*/

.single-publicatie .entry-header {
	margin-bottom:48px;
}

.single-publicatie h3.subtitel {
 	max-width:668px;
 }
.single-publicatie .flex-columns {
	display: flex;
  align-items: flex-start;
  justify-content:flex-start; 
  gap:40px 120px;
}
.single-publicatie .flex-columns .entry-content {
  flex: 1 1 80%;
  padding:0;
}
.single-publicatie .flex-columns .pub-info {
  flex: 0 0 264px;
  min-width:264px;
  padding:0;
}
@media (max-width: 1024px) {
.single-publicatie .flex-columns {
	flex-direction:column;
}
.single-publicatie .flex-columns .entry-content {
  flex: 1 1 100%;
}
.single-publicatie .flex-columns .pub-info {
  flex: 1 1 100%;
  width:100%;
}
	
}
.pub-info-header {
	font-weight:600;
	font-size:14px;
	padding:8px 8px 28px 8px;
	border-top:1px solid #D9D9D9;
}
.pub-info-details {
	font-weight:500;
	font-size:14px;
	padding:8px;
	background:#F4F4F4;
	border-bottom:1px solid #fff;
}
.pub-info-label {
	color:#282D34;
}
.pub-info-content {
	color:#595959;
}
.related {
	padding:48px 36px 48px 36px;
	background-color:#F4F4F4;
}
@media (max-width: 768px) {
	.related {
		padding:48px 24px 48px 24px;
	}
}

.related .bladspiegel {
	max-width:1138px;
	margin-left:auto;
	margin-right:auto;
}


/*--------------------------------------------------------------
## Kenniscatalogus filter publicaties
--------------------------------------------------------------*/
.searchfilter-wrap {
	max-width:1280px;
	padding:0 40px;
	margin:0 auto;
}
 .searchandfilter ul {
    margin: 32px 0 24px 0;
    padding: 0;
    max-width:100%;
}
.searchandfilter ul li {
    display: inline-block;
    margin: 0 0 5px 0;
    padding: 0;
    text-align: left;
}
.searchandfilter select.sf-input-select {
	width:180px;
}
.searchandfilter .chosen-container {
	font-size:15px;
	font-weight:400;
}
.searchandfilter .chosen-container .chosen-single {
	border-radius:0;
	border:0;
	background:#fff;
	color:var(--accent);
	border-bottom:1px solid #f4f4f4;
	padding:5px;
	box-shadow:none;
	font-weight:600;
}
.searchandfilter .chosen-container-single .chosen-single div b {
	background-position:0 6px;
}
.searchandfilter .chosen-container-single.chosen-container-active.chosen-with-drop .chosen-single div b {
	background-position:-18px 6px;
}
.searchandfilter .chosen-container .chosen-drop {
	border-radius:0;
	border:0;
	background:#f4f4f4;
	padding:8px;
	box-shadow:none;
	font-size:14px;
	width:218px;
}
.searchandfilter  .chosen-container-single .chosen-search {
	display:none;
}
.searchandfilter .sf-field-search {
	display:block;
	margin:0px auto 20px auto;
}
.searchandfilter .sf-field-search input {
  background-color:#fff;
  color: #a6a6a6;
  padding:10px 16px;
  border-radius:60px;
  border: 2px solid #f4f4f4;
}
.searchandfilter .sf-field-search input:focus {
  box-shadow:none;
  border:1px solid var(--accent); !important;
  outline:none !important;
}
.searchandfilter .sf-field-search input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #a6a6a6;
}
.searchandfilter .sf-field-search input::-moz-placeholder { /* Firefox 19+ */
 color: #a6a6a6;
}
.searchandfilter .sf-field-search input:-ms-input-placeholder { /* IE 10+ */
  color: #a6a6a6;
}
.searchandfilter .sf-field-search input:-moz-placeholder { /* Firefox 18- */
  color: #a6a6a6;
}


.publicatie-list {
  display: flex;
  flex-wrap:wrap;
  align-items: stretch; 
  justify-content:left;
  margin:0 -12px;
}
.publicatie-list a {
	display:block;
	position:relative;
	flex: 1 1 26%;
  padding:0 0 0 0;
  margin:24px 12px;
  overflow:hidden;
  background-color:#fff;
  border:1px solid #d9d9d9;
  border-radius:8px;
	color:#282D34;
	font-size:16px;
	line-height:1.5;
	font-weight:300;
	text-decoration:none;
}
@media (max-width: 1024px) {
	.publicatie-list a {
		flex: 1 1 34%;
	}
}
@media (max-width: 768px) {
	.publicatie-list a {
		flex: 1 1 100%;
	}
}
.publicatie-list a .pub-image {
  padding:0;
  margin:0;
  position:relative;
}
.publicatie-list a:hover .pub-image:after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
  background-color:var(--accent);
  mix-blend-mode:multiply;
}
.publicatie-list a .pub-image img {
  display:block;
}
.publicatie-list a .pub-text {
  margin:0;
  padding:24px 24px 0 24px;
}
.publicatie-list a .pub-text .meta {
	color:#595959;
	font-size:12px;
	line-height:1.333;
	font-weight:500;
	letter-spacing: 0.06px;
}
.publicatie-list a .pub-text .meta.uitgever {
	min-height:32px;
}
.publicatie-list a .pub-text .meta span {
	color:#282D34;
}

.publicatie-list a h2 {
	color:#282D34;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.27;
	padding:16px 0 0 0;
	border-top: 1px solid #d9d9d9;
	margin:8px 0 16px 0;
}
.publicatie-list a:hover h2 {
	color:var(--accent);
}


.publicatie-list a.hidden {
	visibility:hidden;
	height:0;
	border:0;
	padding:0;
	margin-top:0;
	margin-bottom:0;
}



.wp-pagenavi {
	clear: both;
	text-align:center;
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	padding: 3px 5px;
	margin: 2px 10px;
	font-size:18px;
	line-height:1.3em;
	font-weight:600;
	border:0;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
	color: #47d2fb;
}





/*--------------------------------------------------------------
## Homepage
--------------------------------------------------------------*/

.home .site.grid-container .inside-article {
    margin-top: 0;
    padding-top:0;
    background-color:transparent;
}
.home .home-intro {
	margin-top:-100px;
}


.publicatie-raster .gb-grid-column > .gb-container .gb-block-image {
  padding:0;
  margin:0;
  position:relative;
}
.publicatie-raster .gb-grid-column > .gb-container:hover .gb-block-image:after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
  background-color:var(--accent);
  mix-blend-mode:multiply;
}

.publicatie-raster .gb-grid-column > .gb-container:hover h2 {
	color:var(--accent);
}

.cta1 {
	background-image: linear-gradient(180deg, var(--global-color-16) 144px, var(--base-3) 144px);
}

/*--------------------------------------------------------------
## Block tweaks
--------------------------------------------------------------*/

.has-medium-font-size {
	font-size:18px;
	line-height:1.55;
	font-weight:300;
}

/*--------------------------------------------------------------
## Nieuwsbrief formulier tweaks
--------------------------------------------------------------*/

.mpFormTable {
	margin:0;
	padding:0;
	list-style:none;
}
.mpFormTable li {
	margin:0 0 30px 0;
	padding:0;
}
.mpFormTable input[type=text] {
  border: 1px solid;
  border-radius: 8px;
  padding: 5px 15px;
  width:300px;
  max-width: 100%;
  margin-top:6px;
  background-color:#fff;
}


/*--------------------------------------------------------------
## Search template
--------------------------------------------------------------*/

.search-results .site.grid-container .site-content {
	margin-top:-60px;
	border-radius:8px;
	padding-left:0;
	padding-right:0;
	margin-left:36px;
	margin-right:36px;
	background-color:#fff;
	padding-bottom:60px;
}
.search-results .site.grid-container .site-content .content-area {
	max-width:740px;
	margin-left:auto;
	margin-right:auto;
}
@media (max-width: 768px) {
	.search-results .site.grid-container .site-content .content-area {
		margin-left:16px;
		margin-right:16px;
	}
}
.search-results .site.grid-container .site-content .entry-header {
    margin-left: 0px;
}
.search-results .site.grid-container .site-content .entry-summary {
    margin-top: 0px;
}


/*--------------------------------------------------------------
## Nieuws block
--------------------------------------------------------------*/

.gb-query-loop-item.category-nieuws:hover h3 {
	text-decoration:none;
	color:var(--accent);
}
.gb-query-loop-item.category-nieuws:hover .gb-block-image {
	position:relative;
}
.gb-query-loop-item.category-nieuws:hover .gb-block-image:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--accent);
    mix-blend-mode: multiply;
    border-radius:8px 8px 0 0;
}

/*--------------------------------------------------------------
## Single post
--------------------------------------------------------------*/

.single-post .site.grid-container .inside-article .entry-header,
.single-post .site.grid-container .inside-article .entry-content {
	max-width:740px;
	margin-left:auto;
	margin-right:auto;
}


/*--------------------------------------------------------------
## Agenda block
--------------------------------------------------------------*/

.gb-query-loop-item.type-event:hover h3 {
	text-decoration:none;
	color:var(--accent);
}
.gb-query-loop-item.type-event:hover .gb-block-image {
	position:relative;
}
.gb-query-loop-item.type-event:hover .gb-block-image:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--accent);
    mix-blend-mode: multiply;
    border-radius:8px 8px 0 0;
}
@media (max-width: 900px) {
	.gb-grid-wrapper > .gb-query-loop-item.type-event {
		width:100%;
	}
}
@media (max-width: 450px) {
	.gb-grid-wrapper > .gb-query-loop-item.type-event .gb-grid-column {
		width:100%;
	}
}

/*--------------------------------------------------------------
## Single event
--------------------------------------------------------------*/

.single-event .site.grid-container .inside-article .entry-header,
.single-event .site.grid-container .inside-article .entry-content {
	max-width:740px;
	margin-left:auto;
	margin-right:auto;
}

.date-location {
	display:inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  background-color: var(--contrast);
  color:#fff;
  margin-bottom:10px;
}


/*--------------------------------------------------------------
## Related news
--------------------------------------------------------------*/


.news-list {
  display: flex;
  flex-wrap:wrap;
  align-items: stretch; 
  justify-content:left;
  margin:0 -12px;
}
.news-list a {
	display:block;
	position:relative;
	flex: 1 1 26%;
  padding:0 0 0 0;
  margin:24px 12px;
  overflow:hidden;
  background-color:#fff;
  border:1px solid #d9d9d9;
  border-radius:8px;
	color:#282D34;
	font-size:16px;
	line-height:1.5;
	font-weight:300;
	text-decoration:none;
}
@media (max-width: 1024px) {
	.news-list a {
		flex: 1 1 34%;
	}
}
@media (max-width: 768px) {
	.news-list a {
		flex: 1 1 100%;
	}
}
.news-list a .news-image {
  padding:0;
  margin:0;
  position:relative;
}
.news-list a:hover .news-image:after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
  background-color:var(--accent);
  mix-blend-mode:multiply;
}
.news-list a .news-image img {
  display:block;
}
.news-list a .news-text {
  margin:0;
  padding:24px 24px 0 24px;
}
.news-list a .news-text .meta {
	color:#595959;
	font-size:12px;
	line-height:1.333;
	font-weight:500;
	letter-spacing: 0.06px;
}
.news-list a .news-text .meta.datum {
	min-height:32px;
}
.news-list a .news-text .meta span {
	color:#282D34;
}

.news-list a h2 {
	color:#282D34;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.27;
	margin:0 0 16px 0;
}
.news-list a:hover h2 {
	color:var(--accent);
}


.news-list a.hidden {
	visibility:hidden;
	height:0;
	border:0;
	padding:0;
	margin-top:0;
	margin-bottom:0;
}


/*--------------------------------------------------------------
## Publication grid
--------------------------------------------------------------*/

.publication-grid .gb-loop-item .image-wrap {
  padding:0;
  margin:0;
  position:relative;
}
.publication-grid .gb-loop-item:hover .image-wrap:after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
  background-color:var(--accent);
  mix-blend-mode:multiply;
}

.publication-grid .gb-loop-item:hover h2 {
	color:var(--accent);
}