/*
 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: #b88f2e;
  --secondary: #20203a;
  --grey: #434343;
  --lightgrey: #f2eee7;
  --font: "soleil", sans-serif;
  --subfont: "soleil", sans-serif;
}

html {scroll-behavior:smooth;}

* { font-family:var(--font); } /* Zelfde font overal */

.site-header hgroup, #main, .form-inner, .services-inner, .logos-inner, .follow-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; max-width: 100%; background:white!important; color: var(--secondary); }

/* Algemeen */
h1, .entry-title { font-family:var(--font); font-size:50px; color:white; line-height:1.2; font-weight:700;}
h2 { font-family:var(--font); font-size:35px; color:white; line-height:1.2; font-weight:700;}
h3 { font-family:var(--font); font-size:32px; color:var(--main); line-height:1.2; font-weight:700;}
h4 { }

.home h1{display:none;}

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

.button {
  background:var(--main);
  padding:5px 10px;
  box-sizing: border-box;
  font-family:var(--font);
  font-size:19px;
  color:white;
  display:inline-block;
  margin-top:15px;
  text-decoration:none;
	border:1px solid var(--main);
}
.button:hover {
  background:var(--secondary);
  color:white; border:1px solid white;
}
.button::before {
  content: " \f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900; /* afhankelijk van het icoon-type */
  margin-right: 10px;
  font-size: 20px;
}

.button2 {
  background:var(--secondary);
  padding:5px 10px;
  box-sizing: border-box;
  font-family:var(--font);
  font-size:19px;
  color:white;
  display:inline-block;
  margin-top:15px;
  text-decoration:none;
	border:1px solid var(--main);
}
.button2:hover {
  background:var(--main);
  color:white; border:1px solid white;
}
.button2::before {
  content: " \f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900; /* afhankelijk van het icoon-type */
  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:5px 10px;
  font-size:19px;
  margin-top:15px; border:1px solid var(--main);
}

.wp-block-button__link:hover {
  background-color: var(--secondary)!important; border:1px solid white;
}

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

/* Header */
.cta-top { position:absolute; left:2em; top:2em; z-index:9; }
.cta-right { position:absolute; right:2em; top:1.5em; z-index:9; }
.cta-right .button {margin-top:5px; border:1px solid var(--main);}
.cta-top a {
  font-family:var(--font);
  font-size:17px;
  color:var(--main);
  margin-right:1em;
  text-decoration:none; 
}
.cta-top a:last-child { margin-right:0; }
.cta-top a i { color:var(--main); }

.site-header { position:fixed; top:0; left:0; right:0; z-index:99; padding-top:6em; width:100%; transition:all .3s ease; }
.site-header.fixed { margin-top:0; padding-top:1em; background:var(--secondary); padding-bottom: 1em;}
.site-header.fixed .site-logo img { width: 200px; padding-top: 50px; }
.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; left: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:250px; transition:all .3s ease; }

/* Menu */
.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; }
.menu{font-size: 17px; margin-top: -20px;}

/* Content */
.balk {z-index: 9; position: relative; width: 100%; height: 20px; background: var(--main);}
#banner { width:100%;  position: relative;
  overflow: hidden; /* snijdt alles buiten de banner netjes af */}

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

.home #banner .banner-slide img { height:850px; }

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

.home #banner .grad {height:60%; }

.grad-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%; /* dit dekt het hele vlak, test even */
  background: linear-gradient(180deg, rgba(0,143,140,0) 5%, rgb(32, 32, 58) 90%);
  pointer-events: none; /* voorkomt blokkering van knoppen */
  z-index: 2;
}

.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; }

#mainContainer { background:var(--secondary); padding-bottom: 20px;}
#main { overflow:visible; }
#primary, #content { width:100%; margin:0; padding:0; }

.tekstvlakhome{padding:50px;}

.tekstvlak-inner{opacity: 0; transition: opacity 2s ease-in-out;}
.tekstvlak-inner.zichtbaar {opacity: 1;}
.home #tekstvlak{}
.home .tekstvlak-inner{position: absolute;
top: 55%;
z-index: 9;
width: 100%;
text-align: center;
font-family:var(--font);
}

#tekstvlak h1{color:white; font-size:50px; text-shadow:5px 5px 5px black; padding-bottom:30px; display:block;}

.arrow{background: var(--secondary); text-align: center; padding-top: 200px; margin-top: -170px;}
.arrow img{width:3%;}

.beeldmerk{text-align: center; margin-top:-75px;}
.beeldmerk img {width:7%;
  border: 2px solid white;
  border-radius: 50%;
  transition: border 0.3s ease;
  width: 100px; /* of je eigen vaste breedte */
  height: 100px; /* maak 'm vierkant */
  object-fit: cover; /* snijdt de afbeelding netjes bij */
}

/* 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(--font);
  font-size:19px;
  color:white;
}
.entry-content p:last-child { margin:0; }
.entry-content a{color:var(--main);}


/* Formulier*/
#form { position:relative; }
.form-inner h2 {color:var(--secondary); padding-bottom:50px;}

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(--font);
  font-size:19px;
  opacity:1;
  color:var(--secondary);
  font-weight:normal;
}

.gform_footer input {
  width:20% !important;
  background:var(--main);
  border:0;
  color:white !important;
  font-size:19px !important;
  padding:15px 15px !important; margin-left: auto;
  margin-right: auto; border:1px solid var(--main);} 

.gform_footer input:hover {
  background:var(--secondary);
  color:white;
}
.gform_footer input::before {
  content: " \f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900; /* afhankelijk van het icoon-type */
  margin-right: 10px;
  font-size: 20px;
}

.gform_wrapper.gravity-theme .gfield textarea.large {
  background: var(--lightgrey); border: none;}
.gform_wrapper.gravity-theme .gfield input.large, .gform_wrapper.gravity-theme .gfield select.large {
  background: var(--lightgrey); border: none;}
.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;}


/* Services*/
#services { width:100%; height:auto; z-index: 9; position: relative; text-align: center; margin-top:-150px;}
.services-inner { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 2fr)); grid-gap:1em; }
.services-inner h2 {
  font-family:var(--font);
  font-size:25px;
  color:white;
  text-align:center;
}

.service img {
  border: 2px solid transparent; padding: 6px;
  border-radius: 50%;
  transition: border 0.3s ease;
  width: 200px; /* of je eigen vaste breedte */
  height: 200px; /* maak 'm vierkant */
  object-fit: cover; /* snijdt de afbeelding netjes bij */
	border: 2px solid var(--main);
}

.service img:hover {
  border: 2px solid white;
}

.services-inner h2 a{color:white; text-decoration:none;}
.services-inner h2 a:hover{color:var(--main);}

.wp-block-separator {
  border-top: 0px solid;
}
hr {
  background-color: var(--main);
  height: 2px;
  margin-bottom: .0em;
}

/* Logos*/
#logos {text-align: center; background:var(--lightgrey); padding-top:50px; padding-bottom:100px;}
.logos-inner { margin-top: 20px;}
.logos-inner img { max-width:150px; width:80%; height:auto; object-fit:contain; margin-right:4em; }
#logos h2{color:var(--main); text-align:center; padding-bottom: 50px;}
.logo-slide {padding: 0 15px;}
.logo-slide img {width: auto; margin: 0 auto;}

/* Follow*/
#follow {text-align: center; background:var(--secondary); padding-top:50px; padding-bottom:150px;}
.follow-inner { margin-top: 20px; font-family: var(--font);}
#follow h2{color:var(--main); padding-bottom: 50px;}

/* Afbeelding en tekst*/
#afb-tekst-footer{}
.afb-tekst-footer-inner{display:grid; grid-template-columns:repeat(auto-fit, minmax(400px, 2fr)); }
.afb-footer{background: var(--secondary);}
.afb-footer img{width: 100%; height: 500px; object-fit: cover; margin-top: 50px;}
.tekst-footer {
  background: var(--main);
  text-align: center;
  padding: 50px;
  height: 600px;
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  justify-content: center; /* centreert inhoud verticaal */
  overflow: hidden;        /* voorkomt vertical scroll */
}

.tekst-footer h2{font-size:35px;}

.afbfooter{  margin-bottom: 70px;}

/* Footer */
.site-footer {
  width:100%;
  height:auto;
  background:var(--secondary);
}

.footercols { padding:5em 0; display:flex; justify-content:space-between; }
.footercol {
  font-family:var(--font);
  font-size:19px;
  color:white;
}
.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; }

.site-info {
  font-family:var(--font);
  font-size:19px;
  padding:1em 0;

}
.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; }
  .mobile-button { display:block; color:var(--main); text-align:center;}
  .mobile-menu { position:absolute; width:100%; right:0; top:90px; }
  .site-header.fixed .mobile-menu { top:160px; }
  .site-header.fixed .mobile-button {color: white;}
  .mobile-menu ul { list-style:none; padding:0; margin:0; }
  .mobile-menu ul li { position:relative; }
  .mobile-menu ul li a {
    font-family:var(--font);
    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:var(--main); padding-top:60px; text-align:center;}	
}

@media all and (max-width:1463px) {
  .site-header,
  #content,
  #form,
  #services,
	#logos,
	#follow,
  .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:900px) {
	.cta-top{display:none;}
	 #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;
  }
}

@media (max-width: 860px) {
#banner .grad {height: 90%;}
	.tekst-foto {text-align: left!important; display: block !important;}
	.arrow img {width: 5%;}
.gform_footer input {width:100% !important;}
	.tekstvlakhome {padding-top: 50px; padding-bottom: 50px; padding-left: 0px; padding-right: 0px;}
}

@media (max-width: 800px) {
.afb-tekst-footer-inner {display: block;}
}

@media (max-width: 768px) {
    .banner-slide video {height: 450px; }
}

@media (max-width: 715px) {
    .services-inner {display: block;}
	.home #banner .banner-slide img {height: 550px;}
	#services {margin-top: 0px; background: var(--secondary);}
	
}

@media all and (max-width:660px) {
  .site-header {padding-top: 6em;}

}

@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) {
	.home #banner .banner-slide img {height: 650px;}
  h1, .entry-title { font-size:30px; }
  .site-header { margin-top:0; transition:none; }
  .site-header hgroup { display:block; text-align:left; }
  .site-header.fixed .site-logo {padding-top: 1em;}
  .site-logo { padding-top: 2em; }
	 .site-header {padding-top: 3em;}
  .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; }
	.menu {margin-top: 0px; padding-left: 10px;}
	.site-header.fixed .mobile-button {padding-top: 0px; color: white;}
  .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; }
	.cta-right {display:none;}
	  .site-header hgroup.logo-middle .site-logo {text-align: center;}
	.banner-slide video {height: 600px; }
	 .arrow img {width: 8%;}
}
