/*
Theme Name: ExtraVert
Theme URI: https://extravert.pixdev.nl
Author: Pixel Creation
Author URI: https://www.pixelcreation.nl/
Description: Een thema op maat, ontwikkeld door Pixel Creation.
Version: 1.0
Text Domain: extravert
*/
/* This file is made for all your variables, think of colors you will use, basic spacing etc. */
@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("webfonts/PlusJakartaSans-Regular.woff2") format("woff2"), url("webfonts/PlusJakartaSans-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body {
  font-size: 1rem;
  font-family: "Plus Jakarta Sans", sans-serif;
  color: #000000;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ACCESSIBILITY */
.skip-links a {
  position: absolute;
  top: -100vh;
  left: -100vw;
  z-index: 9999;
  padding: 1.2rem 2rem;
  color: white;
  border-top: 2px solid white;
  border-right: 2px solid white;
  border-bottom: 2px solid white;
  background-color: #1d1d1d;
}
.skip-links a:focus {
  top: 8rem;
  left: 0;
}

/* Colors */
.first-color {
  color: #8CC550;
}

.second-color {
  color: #084A38;
}

.third-color {
  color: #EDF1F5;
}

.fourth-color {
  color: #90AFA6;
}

.text-color {
  color: #000000;
}

.white-color {
  color: #ffffff;
}

.black-color {
  color: #000000;
}

.first-bg {
  background-color: #8CC550 !important;
}

.second-bg {
  background-color: #084A38 !important;
}

.third-bg {
  background-color: #EDF1F5 !important;
}

.fourth-bg {
  background-color: #90AFA6 !important;
}

.white-bg {
  background-color: #ffffff !important;
}

.black-bg {
  background-color: #000000 !important;
}

::selection {
  background-color: #084A38;
  color: white;
}

/* TYPOGRAPHY */
h1, .h1 {
  font-size: 3rem;
  line-height: 3.75rem;
  font-weight: 700;
  font-family: "Plus Jakarta Sans", sans-serif;
  word-break: break-word;
  margin-bottom: 1.5rem;
}

h2, .h2 {
  font-size: 2.5rem;
  line-height: 3.25rem;
  font-weight: 400;
  font-family: "Plus Jakarta Sans", sans-serif;
  word-break: break-word;
  margin-bottom: 1.5rem;
}

h3, .h3 {
  font-size: 1.75rem;
  line-height: 2.5rem;
  font-weight: 400;
  font-family: "Plus Jakarta Sans", sans-serif;
  margin-bottom: 1.5rem;
}

h4, .h4 {
  font-size: 1.4375rem;
  line-height: 2.1625rem;
  font-weight: 400;
  font-family: "Plus Jakarta Sans", sans-serif;
  margin-bottom: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 400;
  font-family: "Plus Jakarta Sans", sans-serif;
  margin-bottom: 1.5rem;
}

h6, .h6 {
  font-size: 1.125rem;
  line-height: 1.825rem;
  font-weight: 400;
  font-family: "Plus Jakarta Sans", sans-serif;
  margin-bottom: 1.5rem;
}

p, ul li, ol li {
  font-size: 1rem;
  line-height: 1.75rem;
}

.p-lg {
  font-size: 1.25rem;
  line-height: 2rem;
}
.p-lg p, .p-lg ul li, .p-lg ol li {
  font-size: 1.25rem;
  line-height: 2rem;
}

small {
  font-size: 0.875rem;
}

a {
  color: #8CC550;
  text-decoration: none;
  transition: 0.3s;
}
a:hover {
  color: #8CC550;
  text-decoration: underline;
}
a.a-no-hover-text-decoration:hover {
  text-decoration: none;
}
a.a-color-inherit {
  color: inherit;
}
a.a-hover-text-decoration:hover {
  text-decoration: underline !important;
}
a.a-hover-color:hover {
  color: #8CC550 !important;
}

strong {
  font-weight: 900;
}

.p-last-child p:last-child {
  margin-bottom: 0;
}
.p-last-child ul {
  margin-bottom: 0;
  padding-left: 23px;
}
.p-last-child ul li {
  padding-left: 5px;
}
.p-last-child ul li::marker {
  color: #000000;
  font-size: 22px;
}

/* SECTIONS */
section {
  padding: 150px 0;
}
section.section-lg {
  padding: 200px 0;
}
section.section-sm {
  padding: 100px 0;
}
section.section-dark {
  color: #fff;
  background-color: #333;
}
section.section-grey {
  background-color: #f9f9f9;
}

/* CONTAINER */
.container {
  padding: 0 20px;
  max-width: 1460px !important;
}

@media screen and (max-width: 1460px) {
  .container-left {
    width: 100%;
    padding-right: unset;
    margin-left: auto;
    margin-right: unset;
  }
}
@media screen and (max-width: 1460px) {
  .container-left {
    max-width: calc(50% + 570px);
  }
}

/* BUTTONS */
.btn, .button, input[type=submit], .wp-element-button {
  background-color: transparent !important;
  padding: 15px 20px !important;
  border: 0 !important;
  border-radius: 20px !important;
  font-weight: 700 !important;
  font-size: 0.875rem !important;
  height: unset !important;
  text-decoration: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  opacity: 1 !important;
  transition: 0.3s !important;
}
.btn:hover, .button:hover, input[type=submit]:hover, .wp-element-button:hover {
  text-decoration: none !important;
}
.btn.btn-primary, .button.btn-primary, input[type=submit].btn-primary, .wp-element-button.btn-primary {
  background-color: #084A38 !important;
  color: white !important;
  position: relative !important;
  margin-left: 48px !important;
}
.btn.btn-primary:before, .button.btn-primary:before, input[type=submit].btn-primary:before, .wp-element-button.btn-primary:before {
  content: "\f178" !important;
  font-family: "Font Awesome 6 Pro" !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  display: inline-block !important;
  padding: 13px 16px !important;
  background-color: #084A38 !important;
  color: white !important;
  border-radius: 20px !important;
  position: absolute !important;
  left: -48px !important;
  top: 0 !important;
  transition: 0.3s !important;
}
.btn.btn-primary:hover, .button.btn-primary:hover, input[type=submit].btn-primary:hover, .wp-element-button.btn-primary:hover {
  background-color: #90AFA6 !important;
  color: white !important;
  margin-left: unset !important;
  margin-right: 48px !important;
}
.btn.btn-primary:hover:before, .button.btn-primary:hover:before, input[type=submit].btn-primary:hover:before, .wp-element-button.btn-primary:hover:before {
  background-color: #90AFA6 !important;
  left: 100% !important;
}
.btn.btn-primary.btn-primary-secondary, .button.btn-primary.btn-primary-secondary, input[type=submit].btn-primary.btn-primary-secondary, .wp-element-button.btn-primary.btn-primary-secondary {
  background-color: #8CC550 !important;
}
.btn.btn-primary.btn-primary-secondary:before, .button.btn-primary.btn-primary-secondary:before, input[type=submit].btn-primary.btn-primary-secondary:before, .wp-element-button.btn-primary.btn-primary-secondary:before {
  background-color: #8CC550 !important;
}
.btn.btn-primary.btn-primary-secondary:hover, .button.btn-primary.btn-primary-secondary:hover, input[type=submit].btn-primary.btn-primary-secondary:hover, .wp-element-button.btn-primary.btn-primary-secondary:hover {
  background-color: #90AFA6 !important;
}
.btn.btn-primary.btn-primary-secondary:hover:before, .button.btn-primary.btn-primary-secondary:hover:before, input[type=submit].btn-primary.btn-primary-secondary:hover:before, .wp-element-button.btn-primary.btn-primary-secondary:hover:before {
  background-color: #90AFA6 !important;
}
.btn.btn-primary.btn-primary-simple, .button.btn-primary.btn-primary-simple, input[type=submit].btn-primary.btn-primary-simple, .wp-element-button.btn-primary.btn-primary-simple {
  margin-left: unset !important;
}
.btn.btn-primary.btn-primary-simple:hover, .button.btn-primary.btn-primary-simple:hover, input[type=submit].btn-primary.btn-primary-simple:hover, .wp-element-button.btn-primary.btn-primary-simple:hover {
  margin-right: unset !important;
  margin-left: unset !important;
}
.btn.btn-primary.btn-primary-simple:before, .button.btn-primary.btn-primary-simple:before, input[type=submit].btn-primary.btn-primary-simple:before, .wp-element-button.btn-primary.btn-primary-simple:before {
  content: unset !important;
}
.btn.btn-default, .button.btn-default, input[type=submit].btn-default, .wp-element-button.btn-default {
  background-color: transparent !important;
  color: white !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}
.btn.btn-default:hover, .button.btn-default:hover, input[type=submit].btn-default:hover, .wp-element-button.btn-default:hover {
  background-color: black !important;
  color: white !important;
}

.wp-element-button {
  background-color: #084A38 !important;
  color: white !important;
  position: relative !important;
  margin-left: 48px !important;
}
.wp-element-button:before {
  content: "\f178" !important;
  font-family: "Font Awesome 6 Pro" !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  display: inline-block !important;
  padding: 13px 16px !important;
  background-color: #084A38 !important;
  color: white !important;
  border-radius: 20px !important;
  position: absolute !important;
  left: -48px !important;
  top: 0 !important;
  transition: 0.3s !important;
}
.wp-element-button:hover {
  background-color: #8CC550 !important;
  color: white !important;
  margin-left: unset !important;
  margin-right: 48px !important;
}
.wp-element-button:hover:before {
  background-color: #8CC550 !important;
  left: 100% !important;
}

/* HEADER */
@keyframes slideIn {
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0rem);
    opacity: 1;
  }
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
}
@-webkit-keyframes slideIn {
  0% {
    -webkit-transform: transform;
    -webkit-opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    -webkit-opacity: 1;
  }
  0% {
    -webkit-transform: translateY(1rem);
    -webkit-opacity: 0;
  }
}
.animate {
  animation-duration: 0.3s;
  -webkit-animation-duration: 0.3s;
  animation-fill-mode: both;
  -webkit-animation-fill-mode: both;
}

.slideIn {
  -webkit-animation-name: slideIn;
  animation-name: slideIn;
}

.navbar {
  background-color: white;
  width: 100%;
  padding: 20px 0;
}
.navbar .nav-link {
  padding: 0 !important;
  margin-left: 20px;
  margin-right: 20px;
  font-size: 1rem;
  font-weight: 400;
  color: #000000;
  transition: 0.3s;
}
@media screen and (max-width: 1199px) {
  .navbar .nav-link {
    margin-left: 0;
    margin-right: 0;
    width: fit-content;
  }
}
.navbar .nav-link:hover {
  color: #8CC550;
  text-decoration: none;
}
.navbar .nav-link.active {
  color: #8CC550;
  text-decoration: none;
}
.navbar .nav-item:last-child .nav-link {
  margin-right: 0;
}
@media screen and (max-width: 1199px) {
  .navbar .btn-nav {
    position: absolute;
    right: 75px;
    top: 15px;
  }
}
.navbar .navbar-nav {
  align-items: center;
}
@media screen and (max-width: 1199px) {
  .navbar .navbar-nav {
    padding-top: 25px;
    align-items: start;
  }
}
.navbar .dropdown-toggle:after {
  content: "\f078";
  font-weight: 400;
  margin-left: 10px;
  vertical-align: unset;
  border: none;
  font-family: "Font Awesome 6 Pro";
  transition: 0.3s;
}
.navbar .dropdown-toggle.show:after {
  transform: scaleY(-1);
}
.navbar .nav-item:last-child .dropdown-menu {
  left: unset;
  right: 0;
}
.navbar .dropdown-menu {
  padding: 0;
  box-shadow: unset;
  border: none;
  border-radius: 0;
  min-width: 240px;
}
@media screen and (max-width: 1199px) {
  .navbar .dropdown-menu {
    padding: 0;
    background-color: transparent;
    box-shadow: unset;
    margin-bottom: 10px;
  }
}
.navbar .dropdown-menu .dropdown-item {
  padding: 10px 15px;
  font-size: 1rem;
  font-weight: 400;
  color: #000000;
  background-color: white;
  transition: 0.3s;
}
@media screen and (max-width: 1199px) {
  .navbar .dropdown-menu .dropdown-item {
    padding: 0 15px;
  }
}
.navbar .dropdown-menu .dropdown-item.active {
  background-color: #EDF1F5;
  color: #8CC550;
  text-decoration: none;
}
.navbar .dropdown-menu .dropdown-item.active:before {
  content: none;
}
.navbar .dropdown-menu .dropdown-item:hover {
  background-color: #EDF1F5;
  color: #8CC550;
  text-decoration: none;
}
@media screen and (max-width: 1199px) {
  .navbar .dropdown-menu .dropdown-item:hover {
    background-color: transparent;
  }
}
.navbar .navbar-brand img {
  width: 190px;
}
.navbar .bar1, .navbar .bar2, .navbar .bar3 {
  width: 30px;
  height: 2px;
  margin: 6px 0;
  transition: 0.3s;
  border: none;
  border-radius: 30px;
  background-color: #000000;
}
.navbar .change .bar1 {
  -webkit-transform: rotate(-45deg) translate(-4px, 3px);
  transform: rotate(-45deg) translate(-3px, 3px);
}
.navbar .change .bar2 {
  opacity: 0;
}
.navbar .change .bar3 {
  -webkit-transform: rotate(45deg) translate(-8px, -8px);
  transform: rotate(45deg) translate(-8px, -8px);
}
.navbar .close-button {
  line-height: 0;
}
.navbar .close-button .navbar-toggler {
  border: unset;
  padding: 0;
}
.navbar .close-button .navbar-toggler:focus {
  box-shadow: unset;
}

/* MAIN */
.object-position-center {
  object-position: center;
}

.object-position-top {
  object-position: top;
}

.object-position-bottom {
  object-position: bottom;
}

.w-fit {
  width: fit-content;
}

.white-space-nowrap {
  white-space: nowrap;
}

.color-inherit {
  color: inherit;
}

.main-header {
  position: relative;
}
.main-header.main-header-bg-img {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 575px) {
  .main-header.main-header-bg-img {
    aspect-ratio: 1/1;
  }
}
.main-header .video-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
@media screen and (max-width: 575px) {
  .main-header .video-wrapper {
    aspect-ratio: 1/1;
  }
}
.main-header .video-wrapper .main-header-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.main-header .video-wrapper .video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(12, 105, 80, 0.2) 0%, rgba(12, 105, 80, 0.2) 100%);
  pointer-events: none;
}
.main-header .main-header-content {
  text-align: center;
  color: white;
  max-width: 575px;
  width: calc(100% - 50px);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 450px) {
  .main-header .main-header-content .main-header-title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}

.home-services {
  background-color: #EDF1F5;
}
.home-services .home-services-img {
  width: 100%;
  max-width: 500px;
  aspect-ratio: 16/12;
  border-radius: 10px;
  object-fit: cover;
}

.projects-slider .projects-slider-btn i {
  transition: 0.3s;
}
.projects-slider .projects-slider-btn:hover i {
  transform: rotate(180deg);
}

.owl-projects .owl-projects-link:hover .owl-projects-img {
  transform: scale(1.05);
}
.owl-projects .owl-projects-link .owl-projects-image-wrapper {
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.owl-projects .owl-projects-link .owl-projects-image-wrapper .owl-projects-img {
  width: 100%;
  aspect-ratio: 16/12;
  border-radius: 10px;
  object-fit: cover;
  transition: 0.3s;
}

.extra-info {
  background-color: #EDF1F5;
}
.extra-info .extra-info-row {
  margin-bottom: 100px;
}
.extra-info .extra-info-row:last-child {
  margin-bottom: 0;
}
.extra-info .extra-info-row .extra-info-img {
  width: 100%;
  max-width: 500px;
  aspect-ratio: 16/12;
  border-radius: 10px;
  object-fit: cover;
}

.breadcrumb {
  margin-bottom: 0;
  padding: 0;
  font-size: 0.75rem;
  font-weight: 300;
  color: #000000;
  display: flex;
  overflow-x: auto;
  flex-wrap: nowrap;
}
.breadcrumb .breadcrumb-item {
  white-space: nowrap;
  display: inline-flex;
  font-size: 0.75rem;
}
.breadcrumb .breadcrumb-item a {
  color: #000000;
  font-size: 0.75rem;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item:before {
  content: "\f054";
  font-family: "Font Awesome 6 Pro";
  padding-left: 2px;
  padding-right: 10px;
  font-weight: 400;
  font-size: 0.75rem;
}

.page-thumbnail {
  width: 100%;
  aspect-ratio: 16/3;
  object-fit: cover;
}

.archive .archive-link:hover .archive-img {
  transform: scale(1.05);
}
.archive .archive-link .archive-image-wrapper {
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.archive .archive-link .archive-image-wrapper .archive-img {
  width: 100%;
  aspect-ratio: 16/12;
  border-radius: 10px;
  object-fit: cover;
  transition: 0.3s;
}

.single-thumbnail {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}

.single-info {
  background-color: #EDF1F5;
}

.other-posts .other-posts-btn i {
  transition: 0.3s;
}
.other-posts .other-posts-btn:hover i {
  transform: rotate(180deg);
}
.other-posts .other-posts-link:hover .other-posts-img {
  transform: scale(1.05);
}
.other-posts .other-posts-link .other-posts-image-wrapper {
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.other-posts .other-posts-link .other-posts-image-wrapper .other-posts-img {
  width: 100%;
  aspect-ratio: 16/12;
  border-radius: 10px;
  object-fit: cover;
  transition: 0.3s;
}

.contact-p-fw {
  min-width: 50px;
}

.contact-block {
  background-color: #EDF1F5;
  padding: 35px 40px;
}

.nf-form-fields-required, .nf-form-title {
  display: none;
}

.nf-form-content .nf-field-label {
  margin-bottom: 10px !important;
}
.nf-form-content .nf-field-label label {
  font-size: 1rem;
  font-weight: 400;
}
.nf-form-content .nf-field-label .ninja-forms-req-symbol {
  display: none;
}
.nf-form-content input:not([type=submit]), .nf-form-content textarea {
  border: 0 !important;
  border-radius: 5px !important;
  background-color: white !important;
  font-size: 1rem !important;
  color: #000000 !important;
}
.nf-form-content input:not([type=submit])::placeholder, .nf-form-content textarea::placeholder {
  color: lightgray !important;
  font-size: 0.875rem !important;
}
.nf-form-content input:not([type=submit]):focus-visible, .nf-form-content textarea:focus-visible {
  border: 1px solid gray !important;
  outline: none;
}

/* FOOTER */
footer {
  padding: 80px 0;
  background-color: #0C6950;
  color: white;
}
footer .navbar-brand img {
  width: 180px;
}

.socials {
  display: flex;
  gap: 10px;
}
.socials a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: white;
  color: #25504E;
}
.socials a:hover {
  text-decoration: none;
  background-color: #90AFA6;
  color: white;
}

@media screen and (max-width: 767px) {
  section {
    padding: 125px 0;
  }
  section.section-lg {
    padding: 175px 0;
  }
  section.section-sm {
    padding: 75px 0;
  }

  h1, .h1 {
    font-size: 2.5rem;
    line-height: 3.25rem;
  }

  h2, .h2 {
    font-size: 2rem;
    line-height: 2.75rem;
  }

  h3, .h3 {
    font-size: 1.5rem;
    line-height: 2.25rem;
  }

  h4, .h4 {
    font-size: 1.375rem;
    line-height: 2.125rem;
  }
}

/*# sourceMappingURL=style.css.map */
