/*
Theme Name: Haptotherapie Thema
Author: G. Velthuis
Version: 1.0
*/

/***************************
	Variabelen
****************************/

:root{

    --DarkGreen:#90B480;
    --Green:#ACCB9E;
    --Black:#333;
    --White:#fff;
    --CTA:#FF6F61;
	--BorderColor:#EAF7F4;

    --Title:'Montserrat', sans-serif;
    --Font:'Poppins', sans-serif;

    --Transition: all 0.3s ease-in-out;
    --TransitionFast: all 0.2s ease-in-out;

    --scrollBarWidth: 1.5rem;
	
}


/***************************
	Global
****************************/

html{
    font-size: 62.5%;
}

body{
	font-size:1.6rem;
	font-weight:300;
	padding-top:7.5rem;
}

a{
	color:var(--Green);
}

.container{
	padding:0 2rem;
}

.gv-onder-constructie h1{
	font-size:4.2rem;
	font-weight:500;
	margin-top:33.3333vh;
	text-align:center;
}

.gv-onder-constructie p{
	font-size:1.6rem;
	font-weight:400;
	text-align:center;
	font-family:var(--Font);
	color:var(--DarkGreen);
}

.gv-onder-constructie .gv-header-bg,
.gv-onder-constructie header,
.gv-onder-constructie footer{
	display:none;
}

.gv-homepagina .page-content{
	padding: 0 0 6rem 0;
}

@media (min-width:768px){
	
	.gv-onder-constructie h1{
		font-size:5.0rem;
	}
	
}

h1{
	font-family:var(--Title);
}

body{
	font-family:var(--Font);
}

/***************************
		EMBLA SLIDER
****************************/

.gv-hero__wrapper .embla {
	overflow: hidden;
}

.gv-hero__wrapper .embla__container {
	display: flex;
}

.gv-hero__wrapper .embla__slide {
	flex: 0 0 100%; /* elke USP één per slide */
}


/***************************
		Header
****************************/

header{
	border-top:solid 1rem var(--Green);
	box-shadow: rgba(99, 99, 99, 0.2) 0 0.2rem 0.8rem 0;
	position:fixed;
	top:0;
	background:#fff;
	z-index:99;
	width:100%;
}

.gv-header-bg{
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:100%;
	height:100%;
	background:rgb(0, 0, 0, 0.33);
	visibility:hidden;
	opacity:0;
	transition:var(--Transition);
}

.gv-header-bg.open{
	visibility:visible;
	opacity:1;
}

.gv-header__menu-trigger {
	padding: 2.5rem 0;
}

.gv-header__nav {
    position: fixed;
    top: 0;
    left: -100%;
    bottom: 0;
    height: 100%;
    width: calc(100% - 6rem);
    background: #fff;
    padding: 2rem;
	z-index:1;
	transition:var(--Transition);
}
.gv-header__nav.open{
	left:0;
}

.gv-header__nav-header {
    display: flex;
    align-items: center;
	margin: 0 0 0.5rem 0;
}

span.gv-header__nav-title{
	font-size:2.2rem;
	font-weight:600;
	font-family:var(--Title);
}

span.gv-header__nav-close {
    position: relative;
	margin-left:auto;
}

.gv-header__nav ul{
	list-style:none;
	padding:0;
	display:flex;
}

.gv-header__nav ul li a{
	color:var(--Black);
	text-decoration:none;
	transition:var(--TransitionFast);
	padding:0.5rem 0;
	display:block;
}

.gv-header__nav ul li a:hover{
	color:var(--Green);
	text-decoration:underline;
}

.gv-header__grid {
    display: grid;
    grid-template-columns: 3rem auto 3rem;
}

.gv-header__logo{
	position:relative;
}

.gv-header__logo img {
    width: 11rem;
    height: 11rem;
    object-fit: contain;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    background-color: #ffffff;
    border-radius: 10rem;
    margin: auto;
}

.gv-header__nav ul{
	display:flex;
    flex-direction: column;
}

@media (min-width:768px){
	
	.gv-header__logo img {
		width: 12.5rem;
		height: 12.5rem;
    	margin: 0;
	}
	
	.gv-header__menu-trigger,
	.gv-header__nav-header{
		display:none;
	}
	
	.gv-header__grid {
		display: grid;
		grid-template-columns: 20rem auto;
	}

	.gv-header__nav {
		position: relative;
		top: unset;
		left: unset;
		bottom: unset;
		height: 100%;
		width: 100%;
		padding: unset;
	}
	
	.gv-header__nav ul {
		justify-content: flex-end;
	    flex-direction: row;
		gap:3rem;
	}
	
	
	.gv-header__nav ul li a{
		padding:2rem 0;
	}	
	
}

/***************************
		BANNER
****************************/

.gv-hero__wrapper {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
}

.gv-hero__img {
    order: -1;
	width:auto;
	margin-left:-2rem;
	margin-right:-2rem;
	height:25rem;
}

.gv-hero__img img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.gv-hero__txt{
	padding:2rem 0;
}

.gv-hero__txt h1{
	font-size:3rem;
	font-weight:400;
	color:var(--Black);
	font-family:var(--Title);
	margin:0 0 0.5rem 0;
	padding:0;
}

.gv-hero__txt h1 strong{
	font-weight:600;
	display:block;	
}

.gv-hero__txt .gv-hero__subtitle{
	font-size:2rem;
	font-weight:300;
	color:var(--Black);
	font-family:var(--Font);
	margin:0;
	padding:0;
}

.gv-hero__txt .gv-hero__button{
	padding:1.1rem 2rem;
	font-size:1.6rem;
	text-decoration:none;
	color:var(--White);
	background:var(--CTA);
	border-radius:10rem;
	display:block;
	width:fit-content;
	margin:2rem 0 0 0;
}

.gv-hero__usp{
	padding:2rem 0;
}

.gv-hero__usp--icon{
	background:var(--Green);
	width:4rem;
	height:4rem;
    display: flex;
    align-items: center;
    justify-content: center;
	border-radius:10rem;
}

.gv-hero__usp--icon svg{
	width:2rem;
	height:2rem;
}

.gv-hero__usp--item {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: center;
}

@media (min-width:768px){
	
	.gv-hero__wrapper {
		margin:4rem 0 0 0;
	}
	
	.gv-hero__img {
		order: unset;
		margin-left:unset;
		margin-right:unset;
		height:50rem;
		position:relative;
		border-radius: 0 2rem 2rem 0;
		overflow:hidden;
	}
	
	.gv-hero__img:before{
		content:'';
		position:absolute;
		left:0;
		top:0;
		bottom:0;
		width:100%;
		height:100%;
		background: #ffffff;
		background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.85) 25%, rgba(255, 255, 255, 0) 75%);
		z-index:0;
	}
	
	.gv-hero__wrapper {
        display: grid;
        grid-template-columns: calc(100% / 12 * 3) auto;
        align-items: center;
	}

	.gv-hero__txt{
		z-index:1;
	}
	
	.gv-hero__txt h1{
		font-size:5rem;
		white-space:nowrap;
	}

	.gv-hero__txt .gv-hero__subtitle{
		font-size:3.2rem;
		font-weight:300;
		color:var(--DarkGreen);
		white-space:nowrap;
	}

	.gv-hero__txt .gv-hero__button{
		margin:3rem 0 0 0;
	}
	
	.embla.gv-hero__usp{
		grid-column: 1 / -1;	
	}
	
	.embla__container{
		display: flex;
		gap:4rem;
	}
	
	.embla__slide.gv-hero__usp--item{
		flex: 0 0 auto;
	}

}

/***************************
		Text Element
****************************/

.gv-text-element__wrapper{
	margin:2rem 0;
    display: inline-block;
    width: 100%;
}

.gv-text-element__img img {
    width: 100%;
    height: 27rem;
    object-fit: cover;
	border-radius:2rem;
}

.gv-text-element__content{
    margin-top: 3rem;
    margin-bottom: 3rem;
}

.gv-text-element__subtitle{
	font-size:2.2rem;
	font-weight:400;
	color:var(--DarkGreen);
}

.gv-text-element__title{
	padding:0;
	margin:0 0 1rem 0;
	font-size:3.2rem;
	font-weight:600;
	font-family:var(--Title);
}

.gv-text-element__txt,
.gv-text-element__txt p{
	font-size:1.6rem;
	font-weight:300;
	line-height:2.8rem;
}

.gv-text-element__link{
	margin:2rem 0 0 0;
	font-size:1.4rem;
	text-decoration:underline;
	display:flex;
    align-items: center;
	gap:1rem;
	color:var(--Black);
}

@media (min-width:992px){
	
	.gv-text-element__wrapper{
		padding:0 10.5rem;
		padding:6rem 0;
		display:grid;
        align-items: center;
		gap:9rem;
	}
	
	.gv-text-element__wrapper:nth-child(odd){
		grid-template-columns:4fr 5fr;
	}
	
	.gv-text-element__wrapper:nth-child(even){
		grid-template-columns:5fr 4fr;
	}
	
	.gv-text-element__wrapper:nth-child(even) .gv-text-element__content{
		order:-1;
	}
	
	.gv-text-element__img img {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        border-radius: 2rem;
        max-width: 400px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
	
	.gv-text-element__img {
		position: relative;
		display:flex;
        align-items: center;
        justify-content: center;
	}
	
    .gv-text-element__wrapper:nth-child(even) .gv-text-element__img:before {
        content: '';
        position: absolute;
		bottom: -12rem;
        right: -6rem;
        background: var(--Green);
        width: 34.5rem;
        height: 34.5rem;
        border-radius: 100%;
		z-index:-1;
		opacity:0.75;
    }
	
    .gv-text-element__wrapper:nth-child(odd) .gv-text-element__img:before {
        content: '';
        position: absolute;
        top: -7rem;
        left: -2rem;
        background: var(--Green);
        width: 24.5rem;
        height: 24.5rem;
        border-radius: 100%;
        z-index: -1;
        opacity: 0.75;
    }	
		
}

/***************************
		Faq Element
****************************/

section.gv-faq-element__wrapper {
    position: relative;
	margin:2rem 0;
	padding-bottom:3rem;
    display: inline-block;
    width: 100%;
}

section.gv-faq-element__wrapper .gv-text-element__content{
	margin:unset;
}

section.gv-faq-element__wrapper:before {
	content: '';
	display: block;
	position: absolute;
	background: var(--Green);
	left: -2rem;
	right: -2rem;
	bottom: 0;
	height: 50%;
	width: auto;
	z-index:-1;
}

section.gv-faq-element__wrapper .gv-text-element__title{
    margin: 0 0 3rem 0;
}

.gv-text-element__card h3{
	padding: 0;
	margin: 0 0 1.5rem 0;
	font-size: 2.8rem;
	font-weight: 600;
	font-family: var(--Title);
}

a.gv-text-element__link{
	width:fit-content;
	transition:var(--TransitionFast);
}

a.gv-text-element__link svg path{
	transition:var(--TransitionFast);
}

@media (max-width:767px){
	
	.gv-text-element__cards{
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 2rem;
		margin:0 -2rem;
		padding:0 2rem;
		display: flex;
		gap: 2rem;
	}

	.gv-text-element__card{
		display: inline-block;
		background:#fff;
		flex-shrink: 0;
		vertical-align: top;
		width: calc(100% - 4rem);
		margin-bottom:1.5rem;
		padding:3rem 2rem;
		aspect-ratio: 1 / 1;
		float: none;
		white-space: normal;
		scroll-snap-align: start;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
		border-radius:2rem;
	}
	
}


@media (min-width:992px){
	
	section.gv-faq-element__wrapper .gv-text-element__subtitle{
		text-align:center;
	}
	
	section.gv-faq-element__wrapper .gv-text-element__title{
		text-align:center;
	}
	
	section.gv-faq-element__wrapper .gv-text-element__cards {
		display: grid;
		grid-template-columns: 50% 50%;
		gap:3rem;
	}
	
	section.gv-faq-element__wrapper .gv-text-element__card {
		background: #fff;
		padding: 6rem;
		border-radius:2rem;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
	}
	
	section.gv-faq-element__wrapper:before {
		content: '';
		position: absolute;
		display: block;
		left: 0;
		bottom:0;
		width: calc(100vw - var(--scrollBarWidth));
		height: 30rem;
		z-index: -1;
		margin-left: calc(50% - (50vw - (var(--scrollBarWidth) / 2)));
		margin-right: calc(50% - (50vw - (var(--scrollBarWidth) / 2)));
		background: var(--Green);
		opacity:0.75;
	}
	
	section.gv-faq-element__wrapper {
		padding-bottom:8rem;
	}
	
	a.gv-text-element__link:hover{
		color:var(--Green);
	}
	
	
	a.gv-text-element__link:hover svg path{
		stroke:var(--Green);
	}

}

/***************************
		Review Element
****************************/

section.gv-review-element__wrapper {
    position: relative;
	margin:2rem 0;
	padding-bottom:3rem;
    display: inline-block;
    width: 100%;
}

section.gv-review-element__wrapper .gv-text-element__content{
	margin:unset;
}

.gv-review-element__txt,
.gv-review-element__txt p{
	font-size:1.6rem;
	font-weight:300;
}

section.gv-review-element__wrapper:before {
	content: '';
	display: block;
	position: absolute;
	background: var(--Green);
	left: -2rem;
	right: -2rem;
	bottom: 0;
	height: 50%;
	width: auto;
	z-index:-1;
	opacity:0.75;
}

.gv-review-element__subtitle{
	font-size:2.2rem;
	font-weight:400;
	color:var(--DarkGreen);
}

.gv-review-element__title{
	padding:0;
	margin:0 0 1rem 0;
	font-size:3.2rem;
	font-weight:600;
	font-family:var(--Title);
}

.gv-review-element__card h3{
	padding: 0;
	margin: 0 0 1.5rem 0;
	font-size: 1.8rem;
	font-weight: 600;
	font-family: var(--Title);
}

.gv-review-element__name{
	font-size:1.5rem;
}

.gv-review-element__extra{
	font-size:1.5rem;
	color:var(--Green);
}

.gv-review-element__button{
	color:var(--White);
	display:block;
	width:fit-content;
	margin:2rem auto;
}

.gv-review-element__button svg path{
	stroke:	var(--White);
}

@media (max-width:767px){
	
	.gv-review-element__cards{
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 2rem;
		margin:0 -2rem;
		padding:0 2rem;
		display: flex;
		gap: 2rem;
	}

	.gv-review-element__cards .gv-review-element__card{
		display: inline-block;
		background:#fff;
		flex-shrink: 0;
		vertical-align: top;
		width: calc(100% - 4rem);
		margin-bottom:1.5rem;
		padding:3rem 2rem;
		aspect-ratio: 1 / 1;
		float: none;
		white-space: normal;
		scroll-snap-align: start;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
		border-radius:2rem;
	}

}

@media (min-width:992px){

	section.gv-review-element__wrapper{
		padding:8rem 0;
		margin:0;
	}
	
	.gv-review__header{
		text-align:center;
		margin:0 0 6rem 0;
	}

	.gv-review-element__cards {
		display: grid;
    	justify-content: center;
		gap:3rem;
		position:relative;
	}
	
	.gv-review-element__card{
		background: #fff;
		padding: 4rem;
		border-radius:2rem;
		width: 103.5rem;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
	}
	
	section.gv-review-element__wrapper:before{
		display:none;
	}
	
	section.gv-review-element__wrapper .gv-review-element__cards:before {
		content: '';
		position: absolute;
		display: block;
		top:0;
		left: 0;
		bottom:0;
		width: calc(100vw - var(--scrollBarWidth));
		height: 30rem;
		z-index: -1;
		margin:auto calc(50% - (50vw - (var(--scrollBarWidth) / 2)));
		background: var(--Green);
		opacity:0.75;
	}
	

	.gv-review-element__button svg path{
		stroke:	var(--Black);
	}

	.gv-review-element__button{
		color:var(--Black);
	}
	
	.gv-review-element__button,
	.gv-review-element__button svg path{
		transition:var(--TransitionFast);
	}
	
	.gv-review-element__button:hover{
		color:var(--Green);
	}

	.gv-review-element__button:hover svg path{
		stroke:var(--Green);
	}
	
}	

/***************************
	Contact element
****************************/

section.gv-contact-element__wrapper {
    padding: 6rem 0;
}

.gv-contact-element__maps iframe{
    width: 100%;
    height: 27rem;
    object-fit: cover;
    border-radius: 2rem;
}

.gv-contact-element__subtitle{
	font-size:2.2rem;
	font-weight:400;
	color:var(--DarkGreen);
}

.gv-contact-element__title{
	padding:0;
	margin:0 0 1rem 0;
	font-size:3.2rem;
	font-weight:600;
	font-family:var(--Title);
}

.gv-contact-element__txt,
.gv-contact-element__txt p{
	font-size:1.6rem;
	font-weight:300;
}

.gv-contact-element__links{
	margin:3rem 0 0 0;
	display:flex;
	flex-direction:column;
	gap:1rem;
}

.gv-contact-element__phone,
.gv-contact-element__mail{
	display:flex;
    align-items: center;
	gap:1rem;
	color:var(--Black);
}

.gv-contact-element__phone--icon,
.gv-contact-element__mail--icon{
	background:var(--Green);
	width: 4rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10rem;
}

.gv-contact-element__phone--icon svg,
.gv-contact-element__mail--icon svg {
    width: 2rem;
    height: 2rem;
}

a.gv-contact-element__button{
	margin:3rem 0 0 0;
	display:flex;
    align-items: center;
	gap:1rem;
	font-size:1.4rem;
	color:var(--Black);
}

a.gv-contact-element__button,
.gv-contact-element__links a{
	width:fit-content;
	transition:var(--TransitionFast);
}

a.gv-contact-element__button svg path{
	transition:var(--TransitionFast);
}

.gv-contact-element__txt a{
	color:var(--DarkGreen);
}

.gv-contact-element__maps iframe{
	display:none;
}

.gv-contact-element__img {
	width:100%;
    aspect-ratio: 7 / 5;
    object-fit: cover;
    border-radius: 20px;
	margin:0 0 2rem 0;
}

@media (min-width:992px){
	
	section.gv-contact-element__wrapper {
		padding: 8rem 0;
	}
	
	.gv-contact-element__content{
		order:-1;
	}
	
	section.gv-contact-element__wrapper {
		display:grid;
		grid-template-columns:4fr 5fr;
		gap:12rem;
		padding:9rem 10.5rem;
	}
	
	.gv-contact-element__maps iframe{
		width: 100%;
		height: 40rem;
		object-fit: cover;
		border-radius: 2rem;
	}
	
	section.gv-contact-element__wrapper .gv-contact-element__maps{
		position:relative;
	}
	
	section.gv-contact-element__wrapper .gv-contact-element__maps:before {
		content: '';
		position: absolute;
        bottom: -8rem;
        left: -11rem;
		background: var(--Green);
		width: 27.5rem;
		height: 27.5rem;
		border-radius: 100%;
		z-index:-1;
		opacity:0.75;
	}
	
	a.gv-contact-element__button:hover,
	.gv-contact-element__links a:hover{
		color:var(--Green);
	}
	
	a.gv-contact-element__button:hover svg path{
		stroke:var(--Green);
	}
	
}

/*******************
		Footer
*******************/

footer{
	background:var(--Green);
	padding:6rem 0 3rem 0;
}

.gv-footer__column--head{
    display: flex;
    align-items: center;
	font-size:2.2rem;
	padding:2rem 0;
	color:var(--White);
}

.gv-footer__column {
    border-bottom: solid 0.1rem var(--BorderColor);
}

span.gv-footer__column--arrow {
    width: fit-content;
    display: inline-block;
    margin-left: auto;
}

.gv-footer__column--content ul {
    list-style: none;
    padding: 0;
}

.gv-footer__column--content{
    padding-bottom: 3rem;
	display:none;
}
	
.gv-footer__column--content,
.gv-footer__column--content a{
	color:var(--White);
}

.gv-footer__column--content ul li a{
	color:var(--White);	
	font-size:1.6rem;
	line-height:2.8rem;
	text-decoration:none;
	padding: 0.5rem 0;
}

.gv-footer__column--arrow {
  display: inline-block;
  transition: var(--Transition);
}

.gv-footer__column--arrow.flipped {
    transform: rotateX(180deg);
}

.gv-footer__bottom{
	margin:3rem 0 0 0;
}

.gv-footer__bottom,
.gv-footer__bottom a{
    color: var(--White);
    font-size: 1.2rem;
	display:block;
}

.gv-footer__column--content img:nth-child(1) {
	height: 75px;
	margin: 0 0 3rem 0;
}

.gv-footer__column--content img:nth-child(2){
	height: 100px;
	margin: 0 0 3rem 0;
}

.gv-footer__column--content {
    line-height: 2.8rem;
}

@media (min-width:768px){
	
	.gv-footer__column {
		border:none;
	}
	
	.gv-footer__column--content{
		display:block;
		padding:0;
	}
	
	.gv-footer__column--head{
		pointer-events:none;
	}
	
	.gv-footer__column--head .gv-footer__column--arrow{
		display:none;
	}
	
	footer > .container {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
	
    .gv-footer__bottom {
        display: flex;
        grid-column: 1 / -1;
        justify-content: space-between;
    }
	
}

/*******************
	Text Page
*******************/
.gv-textpage__wrapper {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
}

.gv-textpage__wrapper-noimg{
	margin:4rem 0 0 0;
}

.gv-textpage__img {
    order: -1;
	width:auto;
	margin-left:-2rem;
	margin-right:-2rem;
	height:25rem;
}

.gv-textpage__img img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.gv-textpage__txt{
	padding:2rem 0;
}

.gv-textpage__txt h1{
	font-size:3.2rem;
	font-weight:500;
	color:var(--Black);
	font-family:var(--Title);
	margin:0;
	padding:0;
}

.gv-textpage__txt h1 strong{
	font-weight:600;
	display:block;	
}

.gv-textpage__txt .gv-textpage__subtitle{
	font-size:2.2rem;
	font-weight:400;
	color:var(--DarkGreen);
	font-family:var(--Font);
	margin:0;
	padding:0;
}

.gv-page__content{
	font-size:1.6rem;
	font-weight:300;
	line-height:2.8rem;
	margin:0 0 6rem 0;
}

.gv-page__content h1,
.gv-page__content h2,
.gv-page__content h3,
.gv-page__content h4,
.gv-page__content h5,
.gv-page__content h6{
	color:var(--Black);
	font-weight:500;
}
	
.gv-page__content h1{
	font-size:3.6rem;
	margin:1.5rem 0 1rem 0;
}

.gv-page__content h2{
	font-size:2.4rem;
	margin:1.5rem 0 1rem 0;
}

.gv-page__content h3{
	font-size:2.4rem;
	margin:1.5rem 0 1rem 0;
}

.gv-page__content h4{
	font-size:2.4rem;
	margin:1.5rem 0 1rem 0;
}

.gv-page__content h5{
	font-size:1.8rem;
	margin:1.5rem 0 0.5rem 0;
}

.gv-page__content h6{
	font-size:1.6rem;
	margin:1.5rem 0 0.5rem 0;
}

.gv-page__content iframe{
	width:100%;
	height:auto;
	aspect-ratio:16/9;
}

.gv-page__content a{
	color:var(--DarkGreen);
	text-decoration:underline;
}

.gv-custom-txt__wrapper{
	position:relative;
}

.gv-custom-txt__wrapper img {
    width: 100%;
    height: auto;
}


@media (max-width:767px){

	body.gv-vergoeding-en-tarieven .gv-textpage__img img {
		object-position: 70%;
	}
	
}

@media (min-width:768px){

	.gv-custom-txt__wrapper {
		position: relative;
	}
	
	.gv-wanneer__column-two{
		column-count:2;
		column-gap:6rem;
		margin:2rem 0 4rem 0;
	}
	
	.gv-custom-txt__wrapper img{		
		width: 260px;
        position: absolute;
        top: 0;
        right: -70%;
        bottom: 0;
        margin: auto;
	}
	
	.gv-page__content{
		max-width:65%;
		margin:3rem 0;
	}
	
	.gv-textpage__wrapper {
		margin:4rem 0 0 0;
	}
	
	.gv-textpage__img {
		order: unset;
		margin-left:unset;
		margin-right:unset;
		height:30rem;
		position:relative;
		border-radius: 0 2rem 2rem 0;
		overflow:hidden;
	}
	
	.gv-textpage__img:before{
		content:'';
		position:absolute;
		left:0;
		top:0;
		bottom:0;
		width:100%;
		height:100%;
		background: #ffffff;
		background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.85) 25%, rgba(255, 255, 255, 0) 75%);
		z-index:0;
	}
	
	.gv-ervaringen-van-cliënten .gv-textpage__img:before,
	.gv-vergoeding-en-tarieven .gv-textpage__img:before,
	.gv-contact .gv-textpage__img:before{
		content:'';
		position:absolute;
		left:0;
		top:0;
		bottom:0;
		width:100%;
		height:100%;
		background: #ffffff;
		background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.85) 20%, rgba(255, 255, 255, 0) 50%);
		z-index:0;
	}
	
	.gv-textpage__wrapper {
        display: grid;
        grid-template-columns: calc(100% / 12 * 3) auto;
        align-items: center;
	}

	.gv-textpage__txt{
		z-index:1;
	}
	
	.gv-textpage__txt h1{
		font-size:5rem;
		white-space:nowrap;
	}

	.gv-textpage__txt .gv-textpage__subtitle{
		font-size:3.2rem;
		font-weight:300;
		color:var(--DarkGreen);
		white-space:nowrap;
	}
	
	.gv-page__content iframe{
		max-width:550px;
	}

}


@media (min-width:992px){

	.gv-custom-txt__wrapper img{
		width:350px;
		position:absolute;
		top:0;
		right:-65%;
		bottom:0;
		margin:auto;
	}
	
}

@media (min-width:1200px){

	.gv-custom-txt__wrapper img{
		right:-50%;
	}
	
}

/*******************
	About Page
*******************/

/*** Slider ***/

.gv-about__slider img{
	width:100%;
}


.gv-about__slide--mobile img {
    width: 100%;
	height:auto;
	aspect-ratio: 6 / 4;
	object-fit:cover;
	border-radius:2rem;
}

@media (max-width:767px){
	
	.gv-about__slider--static{
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 2rem;
		margin:0 -2rem 2rem -2rem;
		padding:0 2rem;
		display: flex;
    	justify-content: flex-start;
		gap: 2rem;
	}

	.gv-about__slider--static .gv-about__slide--mobile{
		display: inline-block;
		background:#fff;
		flex-shrink: 0;
		width: calc(100% - 4rem);
		margin-bottom:1rem;
		padding:0;
        aspect-ratio: 6 / 4;
		float: none;
		white-space: normal;
		scroll-snap-align: start;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
		border-radius:2rem;
	}
	
}


@media (min-width:768px){

	.gv-about__slider.embla {
	  position: relative;
	}

	.gv-about__slider .embla__viewport {
	  overflow: hidden;
	  width: 100%;
	}

	.gv-about__slider .embla__container {
		display: flex;
		transition: transform 0.1s ease;
		will-change: transform;
		gap:0;
	}

	.gv-about__slider .gv-about__slide--desktop {
		flex: 0 0 20%;
		min-width: 0;
		padding: 1rem;
	}


	.gv-about__slider .gv-about__slide--desktop img{
		width:100%;
		height:100%;
        aspect-ratio: 6 / 4;
		object-fit:cover;
		border-radius:2rem;
	}
	
	

	.gv-about__slider .embla__prev,
	.gv-about__slider .embla__next {
		position: relative;
		border: none;
		font-size: 2rem;
		cursor: pointer;
		width:5rem;
		height:5rem;
        display: flex;
        align-items: center;
        justify-content: center;
		background:#fff;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
		border-radius:1rem;
	}
	
	.gv-about__slider--buttons{
		margin:3rem 1rem 3rem auto;
        width: fit-content;
		display:flex;
		gap:1rem;
	}
	
	button.embla__prev.disabled,
	button.embla__next.disabled{
		opacity:0.4;
	}
	
}

/*** Banner ***/

.gv-about__banner{
	margin:0 -2rem 2rem -2rem;
}

.gv-about__banner img{
	width:100%;
	height:25rem;
	object-fit:cover;
}

@media (min-width:768px){
	
	.gv-about__banner{
		margin:4rem 0;
	}
	
	.gv-about__banner img{
		height:35rem;
		border-radius:2rem;
	}
	
}


/*** Text ***/

.gv-about__h1{
	font-size:3.2rem;
	font-weight:600;
	margin: 0 0 1.5rem 0;
	color:var(--Black);
}

.gv-about__h2,
.gv-about__content h2{
	font-size:2.4rem;
	font-weight:600;
	margin: 0 0 1rem 0;
	color:var(--Black);
}

.gv-about__txt{
	line-height: 2.8rem;
}

.gv-about__txt .gv-custom-txt__wrapper img {
    width: 50%;
    height: auto;
    margin: auto;
    display: flex;
}

.gv-custom-txt__wrapper a {
    color: var(--DarkGreen);
	text-decoration:underline;
}

.gv-custom-txt__wrapper{
	margin-bottom:3rem;
}

.gv-about__txt .gv-custom-txt__wrapper a{
	display: inline;
}

@media (min-width:768px){

	.gv-about__h1,
	.gv-about__h2{
		max-width:	75%;
        margin: 0 auto 1.5rem auto;
	}
	
	.gv-about__txt{
		max-width:	75%;
		margin:auto;
	}
	
	.gv-about__txt .gv-custom-txt__wrapper {
        display: grid;        
		align-items: center;
        gap: 2rem;
        grid-template-columns: 175px 1fr;
    }
	
	.gv-about__txt .gv-custom-txt__wrapper img{
		position:relative;
		right:unset;
        width: 175px;
		margin:1.5rem 0;
	}

	.gv-custom-txt__right > p {
		margin: 0;
	}

	
}

/*** Blocks ***/

.gv-about__img-blocks{
	padding:4rem 0 2rem 0;
	position:relative;
}

.gv-about__img-blocks--wrapper{
	position:relative;
	margin: 0 0 4rem 0;
	padding: 0 0 1rem 0;
}

.gv-about__img-blocks--wrapper:before{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:25rem;
	width:auto;
	background:var(--Green);
	opacity:0.75;
	z-index:-1;
}
	
.gv-about__img-block{
	border-radius:2rem;
	overflow:hidden;
}

.gv-about__img-block img{
	height:100%;
	width:auto;
	aspect-ratio:1/1;
	object-fit:cover;
}

.gv-about__img-blocks {
    display: flex;
    gap: 3rem;
    justify-content: center;
}

@media (max-width:767px){
	
	.gv-about__img-blocks{
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 2rem;
		margin:0 0 2rem 0;
		padding:4rem 2rem 0rem 2rem;
		display: flex;
    	justify-content: flex-start;
		gap: 2rem;
	}

	.gv-about__img-block{
		display: inline-block;
		background:#fff;
		flex-shrink: 0;
		width: calc(100% - 4rem);
		margin-bottom:1rem;
		padding:0;
		aspect-ratio: 1 / 1;
		float: none;
		white-space: normal;
		scroll-snap-align: start;
		box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
		border-radius:2rem;
	}
	
}

@media (min-width:768px){
	
	.gv-about__img-block img{
		height:30rem;
	}
	
}

/********************************
	Verhalen uit de praktijk
********************************/

.gv-post__wrapper{
	display:flex;
	flex-direction:column;
	gap:3rem;
	margin:0 0 3rem 0;
}

.gv-post__wrapper article {
    background: #fff;
	padding:3rem;
	box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.16);
	border-radius:2rem;
}


.gv-post__wrapper article strong{
	color:var(--Green);
	font-weight:400;
}
	
@media (min-width:768px){
	
	.gv-post__wrapper article:nth-child(6) .gv-post__content{
		position:relative;
	}	
	
	.gv-post__wrapper article:nth-child(6) .gv-post__content:before {
		content: '';
        position: absolute;
        right: -12rem;
        bottom: -12rem;
        background: var(--Green);
        width: 25rem;
        height: 25rem;
        border-radius: 100%;
        z-index: -1;
        opacity: 0.75;
	}
	
	.gv-post__wrapper{
		margin:6rem 0;
		position:relative;
	}
	
	.gv-post__wrapper article {	
		max-width: 65%;
	}
	
	.gv-post__wrapper:before {
		content: '';
		position: absolute;
		background: red;
		height: 25%;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		width: calc(100vw - var(--scrollBarWidth));
		z-index: -1;
		margin-left: calc(50% - (50vw - (var(--scrollBarWidth) / 2)));
		margin-right: calc(50% - (50vw - (var(--scrollBarWidth) / 2)));
		background: var(--Green);
		opacity:0.75;
	}
	
	.gv-verhalen-uit-de-praktijk .gv-textpage__wrapper{
		position:relative;
	}
	
	.gv-verhalen-uit-de-praktijk .gv-textpage__wrapper:before{
		content:'';
		position:absolute;
		width:27.5rem;
		height:27.5rem;
		background:var(--Green);
		border-radius:100%;
		bottom:-9rem;
		right:-9rem;
		opacity:0.75;
	}
	
}


/*************
	Contact
**************/


form p{
	font-weight:500;
	margin: 1rem 0;
}

form input{
	height:4.4rem;
	border:solid 0.1rem #dedede;
	border-radius:0.5rem;
	padding:0 1.5rem;
	font-size:1.6rem;
	width:100%;
}

form textarea{
	border:solid 0.1rem #dedede;
	border-radius:0.5rem;
	padding:1.5rem;
	font-size:1.6rem;
	width:100%;
}

form input:focus,
form textarea:focus{
	outline:solid 0.1rem var(--Green);
}
	
.gv-contact__button{
	border:none;
    padding: 1.1rem 2rem;
    font-size: 1.6rem;
    text-decoration: none;
    color: var(--White);
    background: var(--CTA);
    border-radius: 10rem;
    display: block;
    width: fit-content;
    margin: 0;
}

.gv-contact .page-content{
	padding: 0 0 6rem 0;
}

.gv-contact__succes{
	color:var(--DarkGreen);
	font-size:1.6rem;
	margin: 0 0 1rem 0;
}

.gv-contact__tel-and-mail {
	display: flex;
	flex-direction:column;
	gap: 1rem;
	margin:2rem 0 0 0;
}

.gv-contact__tel a,
.gv-contact__mail a{
    display: flex;
    align-items: center;
    gap: 1rem;
	color:var(--Black);
	transition:var(--TransitionFast);
}

.gv-contact__tel a:hover,
.gv-contact__mail a:hover{
	color:var(--Green);
}

.gv-contact__grid {
	display: grid;
	grid-template-columns: 100%;
	gap: 4rem;
}
.gv-contact__grid iframe{
	width:100%;	
	height: 40rem;
	border-radius:2rem;
}

.gv-contact .gv-page__content {
    margin: 1rem 0;
}

.gv-contact__form .gv-page__content{
	max-width:100%;
	margin:0;
}

.gv-contact__maps--alert {
    font-size: 12px;
    font-weight: 400;
}

.gv-contact__photo--wrapper {
	display: flex;
	gap: 0.5rem;
	margin:1rem 0;
	flex-direction: column;
}

.gv-contact-txt_form a{
	color:var(--Green);
}
	
@media (min-width:768px){
	
	.gv-contact__grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 12rem;
		padding: 0 9rem 0 0;
		margin:8rem 0;
	}
	
	.gv-contact .page-content{
		padding: 0 0 9rem 0;
	}

	.gv-contact__tel-and-mail {
		margin:1.5rem 0 0 0;
		flex-direction:row;
		white-space: nowrap;
		gap: 4rem;
	}
	
	.gv-contact .gv-contact__maps{
		position:relative;	
		height:fit-content;
	}
	
	.gv-contact .gv-contact__maps:before {
        content: '';
        position: absolute;
        top: -7rem;
        right: -7rem;
        background: var(--Green);
        width: 25rem;
        height: 25rem;
        border-radius: 100%;
        z-index: -1;
        opacity: 0.75;
    }
	
	.gv-contact__photo--wrapper {
		display: flex;
		gap: 3rem;
		align-items: center;
		margin:2rem 0;
		flex-direction: row;
	}
	
	.gv-contact__photo--wrapper picture{
		display:block !important;	
	}
	
}

.g-recaptcha iframe {
	border-radius: 0 !important;
}

/*** RECAPTCHA ***/

form input.gv-contact-form__btn{
    padding: 1.1rem 2rem;
    font-size: 1.6rem;
    text-decoration: none;
    color: var(--White);
    background: var(--CTA);
    border-radius: 10rem;
	border:none;
    display: block;
    width: fit-content;
    line-height: 100%;
	outline:none;
	transition:var(--Transition);
}

.gv-hero__button:hover,
form input.gv-contact-form__btn:hover{
	background:#e95d50;
}
	
.gv-recaptcha__error {
    background: #fff3f3;
    color: red;
    padding: 10px;
    margin-top: 40px;
	border-radius:5px;
}

.gv-recaptcha__succes {
	background: #eaffee;
    color: #459353;
    padding: 10px;
    margin-top: 40px;
	border-radius:5px;
}
