/*
Theme Name: Grow Wise
Template: Impreza
Version: 1.0
Author:Grow Wise
Theme URI: http://impreza.us-themes.com/
Author URI: https://grow-wise.be/
*/

/*Add your own styles here:*/
/* ==========================================================================
   VARIABLES
   ========================================================================== */
:root {
  --Gradient-Green-Purple: linear-gradient(94deg, #8DFFB7 -11.4%, #F3AAFF 108.41%);
}

/* ==========================================================================
   GLOBAL STYLES
   ========================================================================== */
* {
    -webkit-font-smoothing: antialiased;
}

@media (max-width: 900px) {
	
}

/* States
   ========================================================================== */

.nowrap {
	white-space: nowrap;
}

.overflow-hidden {
	overflow: hidden;
}

.unset-max-width,
.unset-max-width * {
	  max-width: unset;
}

@media (max-width: 768px) {
.mobile-text-break .vc_column-inner {
	overflow: hidden;
  word-break: break-word;
}
}


/* Typography
   ========================================================================== */

.home h1 {
	
}

h1.heading-alt {
	
}

@media (max-width: 600px) {
	h3 .h3-mobile {
	font-size: 1.3rem !important;
}
}


/* HTML Elements
   ========================================================================== */
ul {

}

ul li {

}

ol {

}

small {
	
}

strong,
b {
	font-weight: 700;
}

.font-size-bold strong {
	font-size: 1.8rem;
}

sup {
    
}

blockquote {
	
}

blockquote + p {
	
}

.labels {
	width: fit-content;
    background: #1e459f;
    color: #fffcf1;
	border-radius: 3rem;
    padding-right: 1rem;
    padding-left: 1rem;
}

.labels ul {
	margin-left: 1.5rem;
}

@media (max-width: 768px) {
.w-iconbox-icon {
	width: 0.3em !important;
}
}

/* Forms
   ========================================================================== */
input[type=checkbox]  {
	
}
input[type=checkbox]:checked  {
	
}

input[type=checkbox]:checked::before  {
	
}


/* ============================================
   GROW WISE — Gravity Forms Global Styling
   Van toepassing op ALLE Gravity Forms
   ============================================ */

/* --- OVERRIDE ORBITAL THEME VARIABLES --- */
.gform-theme,
.gform-theme--orbital {
  --gf-color-primary: #182635 !important;
  --gf-color-in-ctrl-primary: #182635 !important;
  --gf-ctrl-border-color: transparent !important;
  --gf-color-in-ctrl: transparent !important;
  --gf-radius: 0px !important;
}

/* --- VERBERG "INDICATES REQUIRED FIELDS" --- */
.gform_required_legend,
.gform_validation_container {
  display: none !important;
}

/* --- STEP NAVIGATIE --- */
.gf_page_steps {
  display: flex !important;
  justify-content: center !important;
  gap: 0 !important;
  padding: 0 0 24px 0 !important;
  margin-bottom: 32px !important;
  border: none !important;
}

.gf_step {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 16px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: #a2a19f !important;
}

.gf_step_active {
  color: #182635 !important;
}

.gf_step .gf_step_number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  border-radius: 50% !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
  background: transparent !important;
  border: 2px solid #e1e1e1 !important;
  color: #a2a19f !important;
  padding: 0 !important;
}

.gf_step_active .gf_step_number,
.gf_step_completed .gf_step_number {
  background: #182635 !important;
  border-color: #182635 !important;
  color: #fff !important;
}

/* Laat Orbital het vinkje doen voor voltooide stappen */
.gf_step_completed .gf_step_number {
  background: transparent !important;
  border-color: transparent !important;
  color: transparent !important;
}

/* --- LABELS --- */
.gfield_label,
.gform-field-label,
legend.gfield_label {
  font-size: 14px !important;
  color: #182635 !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

/* --- VELD SPACING --- */
.gform_fields {
  gap: 24px !important;
}

/* --- CONTAINER RESETS (voorkomt dubbele lijnen) --- */
.ginput_container,
.ginput_container_text,
.ginput_container_email,
.ginput_container_website,
.ginput_container_phone,
.ginput_container_textarea {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  background: transparent !important;
}

.ginput_container::before,
.ginput_container::after {
  display: none !important;
  content: none !important;
}

.gfield,
.gfield * {
  box-shadow: none !important;
}

/* --- SELECT / DROPDOWN --- */
.ginput_container_select {
  position: relative !important;
  width: 100% !important;
}

.gform-theme select,
.ginput_container_select select,
select.large {
  /* Reset native styling */
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;

  /* Match andere input velden */
  width: 100% !important;
  border: none !important;
  border-bottom: 1px solid #ccc !important;
  border-radius: 0 !important;
  background: transparent !important;
  outline: none !important;
  font-size: 16px !important;
  height: 36px !important;
  padding: 0 32px 0 0 !important; /* ruimte voor chevron rechts */
  margin: 0 !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  color: #182635 !important;
  cursor: pointer !important;

  /* Chevron icoon als background */
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23182635' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 4px center !important;
  background-size: 12px 8px !important;
}

.gform-theme select:hover,
.ginput_container_select select:hover {
  border-bottom-color: #182635 !important;
}

.gform-theme select:focus,
.ginput_container_select select:focus,
select.large:focus {
  border-bottom-color: #FABD32 !important;
  outline: none !important;
  box-shadow: none !important;
  background-color: transparent !important;
}

/* Placeholder-achtige eerste optie (als value leeg is) */
.gform-theme select:invalid,
.ginput_container_select select:has(option[value=""]:checked) {
  color: #aaa !important;
}

/* Options zelf (browser-afhankelijk, maar helpt in de meeste browsers) */
.gform-theme select option {
  color: #182635 !important;
  background: #fff !important;
  padding: 8px !important;
}

/* --- TEXT, EMAIL, URL, TEL INPUTS --- */
.gform-theme input[type="text"],
.gform-theme input[type="email"],
.gform-theme input[type="url"],
.gform-theme input[type="tel"],
.ginput_container input.large {
  border: none !important;
  border-bottom: 1px solid #ccc !important;
  border-radius: 0 !important;
  background: transparent !important;
  width: 100% !important;
  outline: none !important;
  font-size: 16px !important;
  height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

.gform-theme input[type="text"]:focus,
.gform-theme input[type="email"]:focus,
.gform-theme input[type="url"]:focus,
.gform-theme input[type="tel"]:focus,
.ginput_container input.large:focus {
  border-bottom-color: #FABD32 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* --- TEXTAREA --- */
.gform-theme textarea {
  border: none !important;
  border-bottom: 1px solid #ccc !important;
  border-radius: 0 !important;
  background: transparent !important;
  width: 100% !important;
  outline: none !important;
  font-size: 16px !important;
  padding: 8px 0 !important;
  resize: vertical !important;
  min-height: 80px !important;
  box-shadow: none !important;
}

.gform-theme textarea:focus {
  border-bottom-color: #FABD32 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.gform-theme textarea::placeholder {
  font-size: 14px !important;
  color: #aaa !important;
}

/* --- RADIO BUTTONS & CHECKBOXES (gedeelde stijlen) --- */
.gfield_radio,
.gfield_checkbox {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-top: 4px !important;
}

.gfield_radio .gchoice,
.gfield_checkbox .gchoice,
.ginput_container_consent {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
}

.gfield_radio .gchoice input[type="radio"],
.gfield_checkbox .gchoice input[type="checkbox"],
.gfield_radio .gchoice input.gfield-choice-input,
.gfield_checkbox .gchoice input.gfield-choice-input,
.ginput_container_consent input[type="checkbox"] {
  position: relative !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  accent-color: #182635 !important;
  cursor: pointer !important;
  -webkit-appearance: auto !important;
  appearance: auto !important;
  opacity: 1 !important;
  background: none !important;
  background-image: none !important;
  border: none !important;
}

.gfield_radio .gchoice label,
.gfield_checkbox .gchoice label,
.gfield_radio .gchoice .gform-field-label--type-inline,
.gfield_checkbox .gchoice .gform-field-label--type-inline,
.ginput_container_consent .gform-field-label--type-inline {
  display: inline !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  color: #182635 !important;
  cursor: pointer !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* --- Orbital theme custom radio/checkbox override --- */
.gfield-choice-input + label::before,
.gfield-choice-input + label::after,
.gfield-choice-input::before,
.gfield-choice-input::after,
.ginput_container_consent input[type="checkbox"]::before,
.ginput_container_consent input[type="checkbox"]::after {
  display: none !important;
  content: none !important;
}

/* --- Consent-veld: extra ruimte boven --- */
.ginput_container.ginput_container_consent {
	margin-top: 2rem !important;
}


/* --- PAGE FOOTER (buttons container) --- */
/* flex-direction: column-reverse zorgt dat Volgende boven Vorige staat,
   zonder de HTML-volgorde aan te passen (belangrijk voor screenreaders) */
.gform_page_footer,
.gform-page-footer {
  display: flex !important;
  flex-direction: column-reverse !important;
  gap: 12px !important;
  margin-top: 32px !important;
  padding-top: 24px !important;
  border: none !important;
}

/* --- NEXT BUTTON --- */
.gform_next_button,
input.gform_next_button {
  display: block !important;
  width: 100% !important;
  background: #FABD32 !important;
  color: #182635 !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 40px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin: 0 !important;
  transition: all 0.2s ease !important;
}

.gform_next_button:hover,
input.gform_next_button:hover {
  background: #182635 !important;
  color: #fffcf1 !important;
}

/* --- PREVIOUS BUTTON (kleine tekstlink stijl) --- */
/* Extra hoge specificiteit door klasse-chaining en attribute selector,
   zodat theme CSS en Orbital defaults worden overschreven */
input.gform_previous_button.gform-theme-button.gform-theme-button--secondary,
input.gform_previous_button.gform-theme-button--secondary.button,
input.gform_previous_button.button,
.gform_previous_button[data-submission-type="previous"],
input[data-submission-type="previous"].gform_previous_button,
.gform_previous_button,
input.gform_previous_button {
  --gf-ctrl-btn-bg-color-secondary: transparent !important;
  --gf-ctrl-btn-bg-color-hover-secondary: transparent !important;
  --gf-ctrl-btn-border-color-secondary: transparent !important;
  --gf-ctrl-btn-border-color-hover-secondary: transparent !important;
  --gf-ctrl-btn-color-secondary: #6b7280 !important;

  display: inline-block !important;
  width: auto !important;
  align-self: flex-start !important;
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #6b7280 !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  cursor: pointer !important;
  margin: 0 !important;
  transition: color 0.2s ease !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

input.gform_previous_button.gform-theme-button.gform-theme-button--secondary:hover,
input.gform_previous_button.gform-theme-button--secondary.button:hover,
input.gform_previous_button.button:hover,
.gform_previous_button[data-submission-type="previous"]:hover,
input[data-submission-type="previous"].gform_previous_button:hover,
.gform_previous_button:hover,
input.gform_previous_button:hover {
  color: #182635 !important;
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
}

/* --- SUBMIT BUTTON --- */
.gform_button,
input.gform_button,
button.gform_button,
.gform-theme .gform_button,
.gform-theme input[type="submit"] {
  display: block !important;
  width: 100% !important;
  background: #FABD32 !important;
  background-color: #FABD32 !important;
  color: #182635 !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 40px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-top: 0 !important;
  transition: all 0.2s ease !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.gform_button:hover,
input.gform_button:hover,
button.gform_button:hover,
.gform-theme .gform_button:hover,
.gform-theme input[type="submit"]:hover {
  background: #182635 !important;
  background-color: #182635 !important;
  color: #fffcf1 !important;
}

/* --- REQUIRED ASTERISK --- */
.gfield_required_asterisk {
  color: #e74c3c !important;
}

/* --- VALIDATIE --- */
.gfield_error input,
.gfield_error textarea {
  border-bottom-color: #e74c3c !important;
}

.gfield_error .gfield_label {
  color: #e74c3c !important;
}

.validation_message {
  font-size: 13px !important;
  color: #e74c3c !important;
  padding: 4px 0 0 0 !important;
  background: transparent !important;
  border: none !important;
}

/* --- MOBILE --- */
@media (max-width: 768px) {
  .gf_step .gf_step_label {
    display: none !important;
  }

  .gf_page_steps {
    justify-content: center !important;
    gap: 12px !important;
  }

  .gf_step {
    padding: 0 !important;
  }

  .gfield--width-half {
    width: 100% !important;
    flex-basis: 100% !important;
  }
}




/* ==========================================================================
   PAGE BUILDER BLOCKS
   ========================================================================== */

/* Buttons
   ========================================================================== */
.w-btn {
    white-space: nowrap;
}

.w-btn.us-btn-style_1 {
	
}

/* Text
   ========================================================================== */


/* Lists
   ========================================================================== */

.custom-list ul {

}


/* Images
   ========================================================================== */
.w-image img {
	
}

/* De kaart zelf — afronding terug */
.team-card .vc_column-inner {
  position: relative;
  padding: 0 !important;
  border-radius: 12px;     /* pas aan naar jouw oorspronkelijke radius */
  overflow: hidden;
  height: 100%;
}

/* Afbeelding vult de kaart */
.team-card .wpb_wrapper {
  position: relative;
  height: 100%;
}

.team-card .w-image,
.team-card .w-image-h {
  height: 100%;
}

.team-card .w-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Tekst absoluut onderaan */
.team-card .w-vwrapper {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 !important;
  padding: 1.5rem;
  z-index: 2;
}

/* Gradient als losse laag die hoger doorloopt dan de tekst */
.team-card .w-vwrapper::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: -4rem;
  background: linear-gradient(to top,
    rgba(0,0,0,0.85) 0%,
    rgba(0,0,0,0.55) 45%,
    rgba(0,0,0,0) 100%);
  z-index: -1;
  pointer-events: none;
}

/* Achtergrond van het tekstblok weg → gradient wordt zichtbaar.
   Geen kleur-override, jouw ingestelde kleur blijft behouden. */
.team-card .w-vwrapper .wpb_text_column {
  background: transparent !important;
}

.mockup-wrap {
  overflow: hidden;
  line-height: 0; /* haalt de inline-gap onder img weg */
}
.mockup-wrap img {
  display: block;
  margin-bottom: -5px; /* trek de onderste 12px weg */
}


/* Video
   ========================================================================== */
.w-video {
   
}

/* Containers
   ========================================================================== */

.w-hwrapper {
	gap: var(--hwrapper-gap);
}

.w-hwrapper>:not(:last-child) {
	margin-right: 0!important;
}

	
/* Caroussel
   ========================================================================== */


/* Pop-up
   ========================================================================== */


/* Social lists
   ========================================================================== */
.w-socials-list {
	
}

/* Custom classes
   ========================================================================== */


/* ==========================================================================
   GRIDS
   ========================================================================== */

/* General
   ========================================================================== */
.w-grid .w-grid-list {
	
}

.w-grid .no-results {
	
}

.w-grid-preloader {
	
}

/* ===== Grow Wise FAQ accordion ===== */

/* 1. Titel — normale dikte, altijd leesbaar (ook open) */
.w-tabs.accordion .w-tabs-section-title {
  color: #14213d;
  font-weight: 500;          /* 400 als je hem nog dunner wil */
  transition: color 0.25s ease;
}
.w-tabs.accordion .w-tabs-section-header.active .w-tabs-section-title,
.w-tabs.accordion .w-tabs-section-header[aria-expanded="true"] .w-tabs-section-title {
  color: #14213d !important;
  font-weight: 500 !important;
}
.w-tabs.accordion .w-tabs-section-header:hover .w-tabs-section-title {
  color: #3d5a80;
}

/* 3. Header uitlijnen */
.w-tabs.accordion .w-tabs-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.w-tabs-section.active:not(.has_text_color)>.w-tabs-section-header {
	color: #182635 !important;
}


/* Grid layout: {name}
   ========================================================================== */
.w-grid.layout_644 {
	
}



/* ==========================================================================
   HEADER
   ========================================================================== */

@media (max-width: 1030px) {
  .desktop-only-menu { display: none !important; }
}
@media (min-width: 1031px) {
  .mobile-only-menu { display: none !important; }
}

.l-subheader.at_middle {
	margin-top: 1.5rem;
	border-radius: 3rem;
	max-width: var(--site-content-width, 1180px);
	width: calc(100% - 5rem);
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 768px) {
	.l-subheader.at_middle {
		width: calc(100% - 3rem);
	}
	.l-subheader.at_middle .groeianalsye-button-nav {
		display: none;
	}
}

.l-subheader.at_middle .w-dropdown-list, .l-subheader.at_middle .type_mobile .w-nav-list.level_1 {
	background: #182635 !important;
	color: #fffcf1 !important;
}

.w-nav.mobile-only-menu .w-nav-list .w-nav-anchor.level_1:not(.w-btn):hover {
  color: #fffcf1 !important;
}

.w-nav.mobile-only-menu .w-nav-list .w-nav-anchor.level_1:not(.w-btn):hover {
  color: #fffcf1 !important;
  text-decoration: none;
}

.w-nav.mobile-only-menu .w-nav-list .w-nav-anchor.level_1.w-btn:hover {
  text-decoration: none !important;
}

.w-nav-close {
	color: #fabd32;
}

.l-subheader.at_middle > .l-subheader-h {
  justify-content: space-between;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  max-width: 100%;
}

.l-subheader.at_middle .l-subheader-cell.at_left,
.l-subheader.at_middle .l-subheader-cell.at_right {
  flex: 1;
}

.l-subheader.at_middle .l-subheader-cell.at_right {
  justify-content: flex-end;
}

.l-subheader.at_middle .l-subheader-cell.at_center {
  flex: 0 0 auto;
}

.l-header.id_66.pos_fixed.bg_transparent.shadow_none.sticky .l-subheader.at_middle {
	background: #182635;
	color: #fffcf1;
}

.w-nav.desktop-only-menu .w-nav-anchor.level_1:hover .w-nav-title,
.w-nav.desktop-only-menu .w-nav-item.current-menu-item > .w-nav-anchor.level_1 .w-nav-title {
  border-bottom: 3px solid #fabd32;
  padding-bottom: 4px;
}

.l-header.id_66.pos_fixed.bg_transparent.shadow_none.sticky .l-subheader.at_middle .w-nav-anchor.level_1:hover,
.l-header.id_66.pos_fixed.bg_transparent.shadow_none.sticky .l-subheader.at_middle .w-nav-item.current-menu-item > .w-nav-anchor.level_1 .w-nav-title{
	color: #fffcf1 !important;
}

/* ==========================================================================
   NIEUWE BLAUWE HEADER (id_295) – nav hover/current zichtbaar
   ========================================================================== */
.l-header.id_295 .w-nav.desktop-only-menu .w-nav-anchor.level_1:hover .w-nav-title,
.l-header.id_295 .w-nav.desktop-only-menu .w-nav-anchor.level_1:hover,
.l-header.id_295 .w-nav.desktop-only-menu .w-nav-item.current-menu-item > .w-nav-anchor.level_1 .w-nav-title {
  color: #fffcf1 !important;
}

/* mobiel menu op de nieuwe header */
.l-header.id_295 .w-nav.mobile-only-menu .w-nav-anchor.level_1:not(.w-btn):hover .w-nav-title,
.l-header.id_295 .w-nav.mobile-only-menu .w-nav-anchor.level_1:not(.w-btn):hover {
  color: #fffcf1 !important;
}

#page-header {
	
}

@media (max-width: 900px) {
	
}

/* Header: Search 
   ========================================================================== */


/* Header: Language switcher
   ========================================================================== */


/* Header: Sticky styles
   ========================================================================== */
#page-header.sticky {
	
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */


/* Mobile navigation
   ========================================================================== */
/* Nav default */

/* Nav open */
html.w-nav-open body {
	overflow: hidden;	
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
#page-footer {
    
}


/* ==========================================================================
   SHORTCODES
   ========================================================================== */

/* {shortcode_name}
   ========================================================================== */



/* ==========================================================================
    PAGE TEMPLATES:  ARCHIVES
   ========================================================================== */

/* Grids
   ========================================================================== */

/* Filters
   ========================================================================== */
.w-filter {
	
}

/* Sorting
   ========================================================================== */

/* Archive {post_type_name}
   ========================================================================== */

	
/* Archive search
   ========================================================================== */




/* Pagination
   ========================================================================== */
.pagination .nav-links {
	
}
.pagination .nav-links .page-numbers {
    
}
.pagination .nav-links .page-numbers.current,
.pagination .nav-links .page-numbers:not(.next):not(.prev):hover {
	
}
.pagination .next,
.pagination .prev {
    
}



/* ==========================================================================
   PAGE TEMPLATES: DETAIL
   ========================================================================== */

/* Detail {post_type_name}
   ========================================================================== */


/* ==========================================================================
   PAGE SPECIFIC STYLES
   ========================================================================== */

/* PAGE {page_name}
   ========================================================================== */


/* ==========================================================================
   WORDPRESS PAGES
   ========================================================================== */

/* PAGE {page_name}
   ========================================================================== */

/* ==========================================================================
   ANIMATIONS
   ========================================================================== */

/* ====== GROW WISE SCROLL SECTION ====== */
.l-section.gw-scroll-section {
  min-height: 300vh !important;
  height: 300vh !important;
  position: relative !important;
}

.l-section.gw-scroll-section > .l-section-h {
  min-height: 300vh !important;
  height: 300vh !important;
  position: relative !important;
}

.gw-sticky-wrapper {
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 100;
  margin: 0 !important;
  padding: 0 !important;
}

/* Logo */
.gw-logo-container {
  position: absolute !important;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  margin: 0 !important;
}

.gw-logo-container img {
  display: block !important;
  max-width: none !important;
  width: auto !important;
  height: auto !important;
}

/* Diensten */
.gw-service {
  position: absolute !important;
  z-index: 5;
  left: 50%;
  top: 50%;
  margin: 0 !important;
  padding: 0 !important;
}

.gw-service .wpb_wrapper {
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
}

.gw-service p {
  display: inline-flex !important;
  align-items: center !important;
  background: #fff;
  color: #1a1a2e;
  font-size: 14px;
  font-weight: 500;
  padding: 12px 24px !important;
  border-radius: 50px;
  box-shadow: 0 2px 16px rgba(0,0,0,0.06);
  white-space: nowrap;
  margin: 0 !important;
}

/* Reveal */
.gw-reveal-logo,
.gw-reveal-heading,
.gw-reveal-sub {
  position: absolute !important;
  z-index: 20;
  opacity: 0;
  left: 50%;
  transform: translate(-50%, 30px);
  text-align: center !important;
  margin: 0 !important;
  pointer-events: none;
}

.gw-reveal-logo {
  top: calc(50% - 100px);
}

.gw-reveal-logo img {
  display: block !important;
  max-width: none !important;
  width: auto !important;
  height: auto !important;
}

.gw-reveal-heading {
  top: calc(50% - 10px);
  width: 600px;
  max-width: 90vw;
}

.gw-reveal-heading h2 {
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #1a1a2e !important;
}

.gw-reveal-sub {
  top: calc(50% + 50px);
  width: 600px;
  max-width: 90vw;
}

.gw-reveal-sub p {
  font-size: 16px !important;
  color: #555 !important;
  line-height: 1.6 !important;
}

.gw-sticky-wrapper.g-cols {
  margin: 0 !important;
}

/* Statische eindstaat (onderaan de sectie) */
.gw-end-state {
  position: absolute !important;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  visibility: hidden;
}

.gw-end-state .gw-end-logo {
  position: absolute;
  left: 50%;
  top: calc(50% - 100px);
  transform: translate(-50%, 0);
}

.gw-end-state .gw-end-logo img {
  display: block !important;
  max-width: none !important;
  width: auto !important;
  height: auto !important;
}

.gw-end-state .gw-end-heading {
  position: absolute;
  left: 50%;
  top: calc(50% - 10px);
  transform: translate(-50%, 0);
  text-align: center;
  width: 600px;
  max-width: 90vw;
}

.gw-end-state .gw-end-heading h2 {
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #1a1a2e !important;
}

.gw-end-state .gw-end-sub {
  position: absolute;
  left: 50%;
  top: calc(50% + 50px);
  transform: translate(-50%, 0);
  text-align: center;
  width: 600px;
  max-width: 90vw;
}

.gw-end-state .gw-end-sub p {
  font-size: 16px !important;
  color: #555 !important;
  line-height: 1.6 !important;
}

@media (max-width: 768px) {
  /* Section normaal laten vloeien */
  .l-section.gw-scroll-section,
  .l-section.gw-scroll-section > .l-section-h {
    min-height: auto !important;
    height: auto !important;
	  padding: 80px 0 !important;
  overflow: visible !important;
  }

  /* Wrapper wordt gewone flex-container */
  .gw-sticky-wrapper {
  display: grid !important;
  grid-template-columns: 1fr;
  justify-items: center;
  align-items: center;
  row-gap: 12px !important;
  column-gap: 10px !important;
  margin: 60px auto !important;
  padding: 40px 20px !important;
}

  /* Logo bovenaan, centraal */
  .gw-logo-container {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  opacity: 1 !important;
  margin: 0 auto 30px !important;
  grid-column: 1 / -1;
  text-align: center;
}

  /* Diensten als grid */
  .gw-service {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  opacity: 1 !important;
  margin: 6px auto !important;
  width: 100%;
  text-align: center;
}
	
.gw-service .wpb_wrapper {
  justify-content: center !important;
}

  /* 2-kolom grid via de wrapper */
  .gw-sticky-wrapper {
    display: grid !important;
    grid-template-columns: 1fr;
    justify-items: center;
    row-gap: 12px !important;
    column-gap: 10px !important;
  }

  /* Logo over volle breedte */
  .gw-logo-container {
    grid-column: 1 / -1;
  }

  .gw-service p {
    font-size: 13px !important;
    padding: 10px 16px !important;
    text-align: center;
  }
	
.gw-logo-container .w-image-h {
  display: flex !important;
  justify-content: center !important;
}

  /* Reveal elementen verbergen — content zit al zichtbaar */
  .gw-reveal-logo,
  .gw-reveal-heading,
  .gw-reveal-sub {
    display: none !important;
  }

  /* End state niet nodig */
  .gw-end-state {
    display: none !important;
  }
}

/* Animation classes
   ========================================================================== */
.fade-down,
.fade-down-fast {
	opacity: 0;
	animation-duration: 1.5s;
    animation-name: fade-down;
	animation-delay: .25s;
	animation-direction: normal;
	animation-fill-mode: forwards;
	animation-timing-function: cubic-bezier(.215,.61,.355,1);
}

.fade-down-fast {
	animation-duration: 1s;
	animation-delay: 0;
}


/* Animation types
   ========================================================================== */
@keyframes fade-down {
	from {
		opacity: 0;
		transform: translate3d(0, -40px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
