/*
 Theme Name:   Silvertheme Child
 Theme URI:    https://www.silverfish.nl/
 Description:  SilverTheme Child Theme
 Author:       Silverfish
 Author URI:   https://www.silverfish.nl
 Template:     silvertheme
 Version:      7.0
*/

:root {	
  --main: #68683a;
  --secondary: #bdb09d ;
  --grey: #636464;
  --lightgrey: #bdb09d;
  --font: "FontsFree-Net-Dream-Avenue", serif;
  --subfont: "dm-sans", sans-serif;
}

@font-face {
  font-family: FontsFree-Net-Dream-Avenue;
  src: url(/wp-content/fonts/FontsFree-Net-Dream-Avenue.otf” );
  
}

html {scroll-behavior:smooth;}
* { font-family:var(--subfont); } /* Zelfde font overal */

.site-header hgroup, #main, .form-inner, .services-inner, .footercols { max-width: 1440px; margin: 0 auto; }
body.mceContentBody { 
   background: #e3e3e3; 
   color:#000;
}

.wp-block-group.alignfull, 
  .wp-block-cover.alignfull {
    padding-left: 0;
    padding-right: 0;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(-50vw + 50%);
  }

.volledige-breedte {
  width: 100vw;
  background: var(--main);
  padding: 50px 120px;     
  color: white;
  font-size: 30px;
  box-sizing: border-box;
  text-align: center;
}

.volledige-breedte > * {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}

/* Algemeen */
h1, .entry-title { font-family:var(--font); font-size:40px; color:var(--main); line-height:1.2; font-weight:lighter; text-align:center;}
h2 { font-family:var(--font); font-size:36px; color:var(--main); line-height:1.2; font-weight:lighter;}
h3 { font-family:var(--font); font-size:36px; color:white; line-height:1.2; font-weight:lighter;}
h4 { }

.home .entry-title{display:none;}

a {color:var(--main); text-decoration:underline;}
a:hover {color:var(--zwart);}

.button {
  background:var(--main);
  padding:10px 20px;
  box-sizing: border-box;
  font-family:var(--subfont);
  font-size:21px;
  color:white;
  display:inline-block;
  margin-top:15px;
  border: 1px solid white;
  text-decoration:none;
}
.button:hover {
  background:var(--secondary);
  color:white;
}

.button::before {
  content: " \f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
  font-size: 20px;
}

/* Buttons Gutenberg */
.wp-block-button__link {
  color: white!important;
  background-color: var(--main)!important;
  border-radius: 0px;
  box-shadow: none;
  text-decoration: none;
  padding:10px 20px;
  font-size:21px;
  margin-top:15px; 
border: 1px solid white; font-family:var(--subfont);
}

.wp-block-button__link:hover {
  background-color: var(--secondary)!important;
}

.wp-block-button__link::before {
  content: " \f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
  font-size: 20px;
}

.slick-prev,
.slick-next {
  border: none;
  font-size: 30px;
  color: #2c3e50;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10; 
  background: rgba(255, 255, 255, 0.6);
}

.slick-prev {
  left: 15px; padding: 15px;
}

.slick-next {
  right: 15px; padding: 15px;
}

.slick-prev::before,
.slick-next::before {
  font-family: "Arial", sans-serif;
  font-size: 30px;
  color: #2c3e50;
}

.slick-prev::before {  
}

.slick-next::before { 
}

/* Header */
.balk{height:40px; background: var(--secondary);}
.cta-top { position:absolute; right:2em; top:0.4em; z-index:9; }
.cta-top a {
  font-family:var(--subfont);
  font-size:19px;
  color:white;
  margin-right:1em;
  text-decoration:none; font-weight:lighter;
}
.cta-top a:last-child { margin-right:0; }
.cta-top a i { color:white; }

.site-header { position:fixed; top:0; left:0; right:0; z-index:99; padding-top:4em; width:100%; transition:all .3s ease; }
.site-header.fixed { margin-top:0; padding-top:1em; background:var(--secondary); }
.site-header.fixed .site-logo img { width:150px; }
.site-header hgroup { position:relative; margin:0 auto; padding:0; background:0; display:flex; justify-content:space-between; align-items:center; }
.site-header hgroup.logo-left .site-logo { order:1; }
.site-header hgroup.logo-left .main-navigation { order:2; }
.site-header hgroup.logo-left .mobile-button { order:2; }
.site-header hgroup.logo-middle { display:block; }
.site-header hgroup.logo-middle .main-navigation { text-align:center; }
.site-header hgroup.logo-middle .mobile-button { position:absolute; right:0; top:0; }
.site-header hgroup.logo-middle .site-logo { text-align:center; }
.site-header hgroup.logo-right .site-logo { order:2; }
.site-header hgroup.logo-right .main-navigation { order:1; }
.site-header hgroup.logo-right .mobile-button { order:1; }

.site-logo img { width:200px; transition:all .3s ease; }

/* Menu */
.menu{font-size:18px; font-family:var(--subfont); margin-top: -20px; font-weight: lighter;}
.main-navigation { background:0; padding:0; }
.main-navigation li { background:0; padding:0; }
.main-navigation li a {
  background:none;
  color:var(--secondary);
  font-size:18px;
  padding:3px 15px 4px 15px;
  box-sizing:border-box;
  margin-right:0.5em;
  display:flex;
  align-items:center;
}
.main-navigation li a:hover {color:var(--main);}
.main-navigation a { font-size: 18px !important; padding: 0 15px !important; }
.main-navigation ul { width: 100%; line-height:2.5; }
.main-navigation li { background:#fff; padding: 0; margin:0; text-align: right; }
.main-navigation li.current_page_parent a,
.main-navigation li.current-menu-item a,
.main-navigation li.current-menu-parent a {  color:var(--main); }
.main-navigation ul ul { top: 36px; margin-top:9px; width:auto; min-width:210px; background:white; border: none; color:var(--secondary);}
.main-navigation ul ul li { width:100%; background:none; }
.main-navigation ul ul a { width:auto; text-align: left; padding:.5em 1em; color:var(--secondary);}
.main-navigation ul ul a:hover { text-decoration: underline; color:var(--main);}
.main-navigation ul ul li.current-menu-item a { text-decoration: underline; color:var(--main);}

.mobile-button { display:none; font-size:50px; cursor:pointer; }
.mobile-menu { display:none; }

#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block {margin-right: 2em;}

/* Content */
#banner { width:100%; }

.banner-inner { position:relative; }
#banner .banner-slide img { height:600px; object-fit:cover; object-position:center; width: 100%; }

.home #banner .banner-slide img { height:750px; display:block;}

#banner .grad { position:absolute; bottom:0; left:0; width:100%; height:100%; background: linear-gradient(180deg, rgba(255,255,255,1) 5%, rgba(255,255,255,0) 60%); }

.banner-slide video {width: 100%; height: auto; object-fit: cover; }


/* Geen bannerfoto */
.page-template-paginazonderbanner #mainContainer {margin-top: 200px;}
.page-template-paginazonderbanner #banner { display:none; }

.page-id-395 h1 {display:none;}
.page-id-399 h1 {display:none;}
.page-id-397 h1 {display:none;}

#mainContainer { background:#F2F2F2; padding-top: 40px;}
.home #mainContainer {padding-top: 0px;  background:var(--main);}
#main { overflow:visible; }
#primary, #content { width:100%; margin:0; padding:0; }

/* Detail tabel */
.responsive-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 30px;
  font-size: 14px;
}
.responsive-table thead {
  background-color: #f5f5f5;
}
.responsive-table th,
.responsive-table td {
  border: 1px solid #ccc;
  padding: 8px;
  text-align: center;
}
.responsive-table caption {
  text-align: left;
  font-weight: bold;
  margin-bottom: 10px;
}

#tekstvlak{}
.tekstvlak-inner{opacity: 0; transition: opacity 2s ease-in-out;}
.tekstvlak-inner.zichtbaar {opacity: 1;}

.home .tekstvlak-inner{margin: 0 auto;
position: relative;
  top: -100px;
z-index: 9;
width: 40%;
text-align: center;
color: white; 
font-family:var(--font);
font-size: 20px;
background:var(--main);
padding:20px;
}

#tekstvlak h1{color:white; font-size:35px;}

/* Afbeelding en tekst */
#afbeelding-tekst{margin-top:-100px;}
.afbeelding-tekst-inner{display:grid; grid-template-columns:repeat(auto-fit, minmax(400px, 2fr)); grid-gap:2em;}
.afbeelding img{width:100%; height: 700px; object-fit: cover;}
.tekst{padding-top:150px; font-family:var(--subfont); font-size:19px; color:var(--grey); width: 90%;}

/* Afbeelding en tekst omgeving*/
#omgeving{margin-bottom: 120px; margin-top: 150px;}
.omgeving-inner{display:grid; grid-template-columns:repeat(auto-fit, minmax(400px, 2fr)); grid-gap:2em;}
.omgeving-afbeelding{width:100%;}
.omgeving-afbeelding img{width:100%; height: 500px; object-fit: cover; object-position: left;}
.omgeving-tekst{padding-top: 75px; font-family: var(--subfont); font-size: 19px; color: var(--grey); width: 80%; margin-left: 100px;}

.page-id-395 #omgeving{display:none;}
.page-id-395 .arrow-down {margin-top: 75px;}
.page-id-393 #omgeving{display:none;}
.page-id-393 .arrow-down {margin-top: 75px;}
.page-id-393 .footer-inner {display: none;}
.page-id-397 #omgeving{display:none;}
.page-id-397 .arrow-down {margin-top: 75px;}
.page-id-403 #omgeving{display:none;}
.page-id-403 .arrow-down {margin-top: 75px;}
.page-id-399 #omgeving{display:none;}
.page-id-399 .arrow-down {margin-top: 75px;}
.page-id-561 #omgeving{display:none;}
.page-id-561 .arrow-down {margin-top: 75px;}
.page-id-381 #omgeving{display:none;}
.page-id-381 .arrow-down {margin-top: 75px;}


.arrow-down{width:40px; margin-left: auto; margin-right: auto;}

/* Article */
.hentry { position:relative; border:0; padding:4em 0; }
.entry-title, .page-title { }

.entry-wrap { display:grid; grid-template-columns:repeat(auto-fit, minmax(400px, 2fr)); grid-gap:2em; }
.entry-content, .entry-summary {
  margin:0;
  font-family:var(--subfont);
  font-size:19px;
  color:var(--grey);
}
.entry-content p:last-child { margin:0; }
.entry-content a{color:var(--main);}


/* Formulier*/
#form { position:relative; margin:4em 0; }
.form-inner { }

body .gform_wrapper ul li.gfield { margin-top:14px !important; }
.gform_wrapper li.hidden_label input { margin:0 !important; }
body .gform_wrapper .top_label div.ginput_container { margin:0 !important; }
::placeholder {
  font-family:var(--subfont);
  font-size:21px;
  opacity:1;
  color:white;
  font-weight:lighter;
}

.gform_footer input {
  width:30% !important;
  background:var(--main);
  border:1px solid white;
  color:white !important;
  font-size:24px !important;
  padding:15px 15px !important;
}

.gform_wrapper.gravity-theme .gfield textarea.large {
  background: var(--main);}
.gform_wrapper.gravity-theme .gfield input.large, .gform_wrapper.gravity-theme .gfield select.large {
  background: var(--main);}
.gform_wrapper.gravity-theme input[type="text"]{font-size: 21px!important;}
.gform_wrapper.gravity-theme .gfield textarea.large {font-size: 21px;}

.gform_wrapper.gravity-theme .gfield_label {font-size: 21px!important; font-weight: 300!important;}
.gform_wrapper.gravity-theme .gfield select.large {color: white;}

/* Services*/
#services { width:100%; height:auto; margin:3em 0 7em 0; }
.services-inner { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 2fr)); grid-gap:1em;}

.services-inner a span {display: inline-block;
  text-align: center;
  padding:10px 20px;
  box-sizing: border-box;
  color: var(--main);
  font-size: 30px;}

.services-inner a:hover {
  border: 1px solid var(--main);
  padding: 20px;
}

.services-inner a {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid white;
  text-decoration: none;
}

.image-container {
  position: relative;
  width: 100%;
  height: 420px; /* Zorg dat de container net zo hoog is als de afbeelding */
  overflow: hidden;
}

.overlay-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; /* Volledige hoogte */
  background: rgba(255, 255, 255, 0.6); /* Witte overlay met transparantie */
  color: var(--main);
  font-size: 30px;
  font-family: var(--font);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  text-align: center;
  padding: 20px;
  box-sizing: border-box;
  z-index: 2;
}

.services-inner a:hover .overlay-text {
  opacity: 1;
}

.services-inner a:hover img {
  transform: scale(1.05);
}


.services-inner img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

/* Logos*/
#logos { width:100%; height:auto; margin:4em 0;}
.logos-inner { display:flex; justify-content:space-between; align-items:center; width:40%;}
.logos-inner img { max-width:150px; width:80%; height:auto; object-fit:contain; margin-right:4em; }
.logos-inner img:last-child { margin-right:0; }


/* Footer */
.footer-inner {width:100%; margin-left:auto; margin-right:auto; margin-top:50px; z-index: 9; position: relative;}
.footer-inner img{width:100%; height: 650px; object-fit: cover; object-position: center;}

.site-footer {
  width: 100%;
  height: auto;
  background: transparent; /* geen kleur op de volledige footer */
  position: relative; margin-top: -100px;
}

.footer-background {
  width: 60%;
  margin: 0 auto;
  background: var(--main);
  padding: 20px; left: 0;
  position: absolute; 
}


.footercols { padding:5em 0; display:flex; justify-content:space-between; padding-top: 200px;}
.footercol {
  font-family:var(--subfont);
  font-size:21px;
  color:var(--grey);
}
.footercol:first-child {  }
.footercol:first-child p:first-child img { position:relative; left:-4em; }
.footercol a { color:white; text-decoration:none;}
.footercol a:hover { text-decoration:none; }

#realisatie{margin-top: 150px; width: 40%; margin-left: auto; z-index: 9; position: relative;}
.realisatie-inner {margin-right: 0; background: var(--lightgrey); padding:50px; font-family:var(--subfont); font-size:21px; color:white;}

.realisatie-inner a{ color:white; text-decoration:none;}

.site-info {
  font-family:var(--subfont);
  font-size:19px;
  padding:1em 0;
  margin-bottom: 70px;
	margin-top:300px;
}
.site-info a { color:black; }
.site-info a:hover { text-decoration:underline; }

/* 404 page */
.entry-title-404{text-align:center;}

#mobile-social { display:none; }

/* Responsive */
@media all and (max-width:5000px) {
 .site-header hgroup { display:flex; align-items:flex-start; }
  .main-navigation { display:none; }
  .home .mobile-button {color:white;}
	.mobile-button {display: block; color: white;}
  .mobile-menu { position:absolute; width:30%; right:0; top:110px; }
  .site-header.fixed .mobile-menu { top:127px; }
  .mobile-menu ul { list-style:none; padding:0; margin:0; }
  .mobile-menu ul li { position:relative; }
  .mobile-menu ul li a {
    font-family:var(--subfont);
    color:white;
    font-size:22px;
    background:var(--main);
    padding:15px 30px;
    box-sizing: border-box;
    display:block;
	text-decoration: none;
  }
  .mobile-menu ul ul { display:none; }
  .mobile-menu li.menu-item-has-children span.subitem,
  .mobile-menu li.menu-item-has-children span.subsubitem { position: absolute; top:12px; right:0; color:white; font-family:var(--font); font-size:20px; font-weight:bold; cursor:pointer; padding:5px 10px; box-sizing: border-box; }
  .mobile-menu li.menu-item-has-children span.active { background:var(--grey); }
  .site-header.fixed .mobile-button { color:white; padding-top: 30px;}
}

@media all and (max-width:1463px) {
  .site-header,
  #content,
  #form,
  #services,
  .site-info { padding-left:2em; padding-right:2em; box-sizing: border-box; }
  .footercols { padding-left:4em; padding-right:2em; box-sizing: border-box; flex-wrap:wrap; }
  .footercol { margin-right:2em; }
  .footercol:last-child { margin-right:0; }
}

@media all and (max-width:1100px) {
  .site-header hgroup { display:block; }
  .entry-wrap { flex-wrap:wrap; }
}

@media all and (max-width:1000px) {
	.home .tekstvlak-inner {width: 80%;}
	.site-header hgroup.logo-middle .site-logo {padding-top: 30px;}
}

@media all and (max-width:900px) {
.omgeving-tekst {width: 90%; margin-left: 50px; padding-top: 25px;}
	.omgeving-afbeelding img {height: 400px;}
}

@media (max-width: 832px) {
    .afbeelding-tekst-inner {display: block;}
	.afbeelding img {height: 100%;}
	.tekst {padding-top:50px; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
	.footer-inner img {height: auto;}
	.footer-background {width: 100%; position: relative; padding: 0px;}
	#realisatie {width: 100%; margin-top: 0px;}
	.realisatie-inner{ text-align: center;}
	.site-info {margin-top: 0px;}
}

@media (max-width: 800px) {
 .mobile-menu { width:100%; top:170px; }
.site-header.fixed .mobile-menu {top: 186px;}
}

@media screen and (max-width: 768px) {
	.banner-slide video {
        max-height: 250px; 
    }
	.gform_footer input {width:100% !important;}
	
  .responsive-table, .responsive-table thead, .responsive-table tbody, .responsive-table th, .responsive-table td, .responsive-table tr {
    display: block;
  }
  .responsive-table thead {
    display: none;
  }
  .responsive-table tr {
    margin-bottom: 15px;
    border: 1px solid #ddd;
    padding: 10px;
  }
  .responsive-table td {
    text-align: right;
    padding-left: 50%;
    position: relative;
  }
  .responsive-table td::before {
    content: attr(data-label);
    position: absolute;
    left: 10px;
    top: 8px;
    font-weight: bold;
    text-align: left;
  }
}

@media all and (max-width:650px) {
  #gform_fields_1 { display:block; }
  #gform_fields_1 .item-wrap,
  #gform_fields_1 li#field_1_5 { width:100%; }
  #gform_fields_2 li { width:100% !important; }
}

@media all and (max-width:550px) {
	  .site-header hgroup.logo-middle .site-logo {padding-top: 10px;}
	.home #banner .banner-slide img {height: 500px;}
	.cta-top {display: none;}
	.menu {margin-top: 0px; padding-left: 10px;}
	#tekstvlak h1 {font-size: 25px;}
	.balk {display: none;}
	 .site-header.fixed .mobile-button {padding-top: 0px;}
	.afbeelding-tekst-inner {display: block;}
	.afbeelding img {height: auto;}
	.tekst {padding:20px;}
	.omgeving-inner {display: block;}
	  .omgeving-tekst {width: 100%;margin-left: 0px; padding-left: 20px; padding-right: 20px; box-sizing: border-box;}
	  .omgeving-afbeelding img {height: auto;}
	#omgeving {margin-top: 0px; margin-bottom: 40px;}
	  .site-logo { padding-top:5em; }
	.site-logo img {width: 120px;}
	.site-header.fixed .site-logo img {width: 120px; padding-top:40px;}
	#services {margin: 0em 0 7em 0;}
	 .home .tekstvlak-inner {width: 90%;}
	.home .tekstvlak-inner {padding: 10px;}
	.realisatie-inner {padding: 10px;}
	 .footercol {margin-right: 0em;}
  h1, .entry-title { font-size:30px; }
  .site-header { margin-top:0; transition:none; }
  .site-header hgroup { display:block; text-align:center; }
  .main-navigation li a { margin-right:0; }
  .mobile-button { position:fixed !important; left:0; top:0; width:100%; height:60px; background:var(--main); color:white; font-size:36px; display:flex; justify-content:center; align-items:center; }
  .mobile-menu { top:0px; }
  .site-header.fixed .mobile-menu { top:44px; }
  .entry-wrap { display:block; }
  .footercol:first-child { padding-left:0; }
  .footercol:first-child p:first-child img { left:0; }
  .footercols { padding-left:2em; }
	 #mobile-social {
    display:flex;
    justify-content:flex-start;
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    z-index:9999;
    overflow:hidden;
  }
  #mobile-social a {
    background:var(--main);
    padding:15px;
    box-sizing: border-box;
    color:white;
    flex:1 auto;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:32px;
	  text-decoration:none;
  }
}
