/*
Theme Name:     Pagecraft Child
Description:    Custom WordPress Child theme for theme "PageCraft"
Author:         Pagecraft
Author URI: 	https://pagecraft.nl
Tested up to:   6.2
Requires PHP:   8.2
Template:       pagecraft
Text Domain:    pagecraft-child
Version:        1.0.1
*/


/****************************************** GLOBAL ******************************************/

/* Variables */

:root {
	--pc-black: #000;
	--pc-white: #fff;
	--pc-transparent: #FFFFFF00;
	--light-gray: #F5F5F5;
	
	/* 	Legacy colors */
	--do-black: #000;
	--do-white: #fff;
	
	--spacing-desktop: 40px;
	--spacing-laptop: 30px;
	--spacing-tablet: 20px;
	--spacing-mobile: 20px;
	
	--gform-asterix-color: #3f3f3f;
	--gform-error-color: #ff0000;
	--gform-placeholder-color: #3f3f3f;
	--gform-border-color: #c5c5c5;
	--gform-active-border-color: #000;
	--gform-font-size: var(--e-global-typography-text-font-size);

}

/*  Variable COLORS - globals form Elementor page builder
	var(--e-global-color-primary);
	var(--e-global-color-secondary);
	var(--e-global-color-accent);
	var(--e-global-color-text);
	var(--e-global-color-584f52f) // Globale kleur 'Zwart'
	var(--e-global-color-43f9ea8) // Globale kleur 'Wit'
*/

/*  Variable Fonts - globals form Elementor page builder
	var(--e-global-typography-primary-font-family);
	var(--e-global-typography-secondary-font-family);
*/
/*  Default Elementor colors from plugin
	var(--e-a-color-black);
	var(--e-a-color-white);
*/

/**********    Disable default styling    ***************/
ol, ul {
	padding-left: 20px;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* 
img {
	object-fit: cover;
} */

.elementor-message.elementor-message-danger:before {
	display: none !important;
}

/****************************************** Spacing classes *****************************************/
.padding-section {
	padding-top: var(--spacing-desktop);
	padding-bottom: var(--spacing-desktop);
}

.padding-top {
	padding-top: var(--spacing-desktop);
}

.padding-bottom {
	padding-bottom: var(--spacing-desktop);
}

@media screen and (min-width: 1160px) {
	.padding-left {
		padding-left: calc((100vw - var(--content-width)) / 2);
	}
	
	.padding-right {
		padding-right: calc((100vw - var(--content-width)) / 2);
	}
}

@media screen and (max-width: 1024px) {
	.padding-section {
		padding-top: var(--spacing-laptop);
		padding-bottom: var(--spacing-laptop);
	}

	.padding-top {
		padding-top: var(--spacing-laptop);
	}

	.padding-bottom {
		padding-bottom: var(--spacing-laptop);
	}
}


@media screen and (max-width: 767px) {
	.padding-section {
		padding-top: var(--spacing-tablet);
		padding-bottom: var(--spacing-tablet);
	}

	.padding-top {
		padding-top: var(--spacing-tablet);
	}

	.padding-bottom {
		padding-bottom: var(--spacing-tablet);
	}
}

@media screen and (max-width: 500px) {
	.padding-section {
		padding-top: var(--spacing-mobile);
		padding-bottom: var(--spacing-mobile);
	}

	.padding-top {
		padding-top: var(--spacing-mobile);
	}

	.padding-bottom {
		padding-bottom: var(--spacing-mobile);
	}
}

/****************************************** HEADER styles  ******************************************/

header.elementor-element.elementor-sticky.elementor-sticky--active {
	backdrop-filter: blur(15px);
}

.header-menu-contact-btn .header-menu-contact-scrolled {
	background-color: #33364D;
}

.elementor-nav-menu .menu-item .elementor-item:hover {
	color: var(--e-global-color-accent) !important;
}

/****************************************** FOOTER styles  ******************************************/

.elementor-location-footer .tel-container a,
.elementor-location-footer .mail-container a {
	color: var(--e-global-color-accent);
}

/****************************************** Gravity form style ******************************************/

.gfield input:not([type='submit']),
.gfield textarea,
.gform-theme--foundation .gfield select {
    border: 1px solid #33364D !important;
    border-radius: 28px !important;
	min-height: 56px;
}

.gfield.gfield--type-textarea.gfield--input-type-textarea .ginput_container.ginput_container_textarea textarea {
	min-height: 150px;
}

.gfield input:not([type='submit']):focus,
.gfield textarea:focus,
.gform-theme--foundation .gfield select:focus {
    box-shadow: none !important;
    border: solid 2px #707070 !important;
}

.gform-theme--framework input[type=radio]::before {
	background-color: var(--e-global-color-primary) !important;
}
body .gform_wrapper .gform-body.gform_body .gform_fields.top_label .gfield_required,
body .gform_wrapper .gform_heading .gform_required_legend,
body .gform_wrapper .gform_footer.top_label .gform-loader {
	display: none;
}

body .gform_wrapper .gform-body.gform_body .gform_fields.top_label {
	gap: 20px;
}

body .gform_wrapper .gform-body.gform_body .gfield .ginput_complex.ginput_container.ginput_container--name {
	gap: 8px;
}

body .gform_wrapper .gform_body .gform_fields .gfield_label.gform-field-label {
	font-family: "Fredoka";
	font-size: 20px;
	line-height: 34px;
	color: #109E92;
}

body .gform_wrapper .gform_body .gform_fields .gform-field-label.gform-field-label--type-sub {
	font-family: "DM Sans";
	font-size: 16px;
	line-height: 24px;
	color: #545859;
} 

body .gform_wrapper .gform_body .gform_fields .gfield_description {
	font-family: "DM Sans";
	font-size: 16px;
	color: #545859;
}

body .gform_wrapper .gform_body .gfield .gfield_description.validation_message.gfield_validation_message {
	color: red;
}

body .gform_wrapper .gform_body .gfield .ginput_container label.error {
	top: 10px;
    position: relative;
	color: red;
}

body .gform_wrapper .gform_footer.top_label .gform_button.button {
	font-family: "DM Sans";
	font-size: 20px !important;
	line-height: 24px !important;
	color: #FFFFFF;	
	background-color: #109E92 !important;
	border-radius: 28px !important;
	padding: 15px 40px !important;
	margin-top: 6px !important;
}

body .gform_wrapper .gform_footer.top_label .gform_button.button:hover {
	background-color: #33364D !important;
}


/*   Homepage hero container   */

.underline-subelement-gezondheidszorg .elementor-heading-title strong {
	font-weight: 400;
	position: relative;
}

.underline-subelement-gezondheidszorg .elementor-heading-title strong::after {
	content: '';
	display: inline-block;
	background-image: url("../../uploads/2024/06/Path-2146.png");
    width: 98%;
    height: 28px;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -25px;
    right: 0px;
}

.underline-subelement-container .elementor-heading-title strong {
	font-weight: 600;
	position: relative;
}

.underline-subelement-container .elementor-heading-title strong::after {
	content: '';
	display: inline-block;
	background-image: url("../../uploads/2024/06/Path-2146.svg");
	width: 100%;
	height: 20px;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -8px;
    right: -5px;
}

.underline-subelement-contact .elementor-heading-title strong {
	font-weight: 400;
	position: relative;
}

.underline-subelement-our-services .elementor-heading-title strong {
	font-weight: 600;
	position: relative;
}

.underline-subelement-contact .elementor-heading-title strong::after,
.underline-subelement-our-services .elementor-heading-title strong::after {
	content: '';
	display: inline-block;
	background-image: url("../../uploads/2024/06/Path-2146.svg");
	width: 100%;
	height: 20px;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -20px;
    right: 0px;
	background-size: contain;
}


/* Homepage - Dedicated business sectors ( image carousel ) */

.dedicated-business-sectors .overlay-inner {
	position: relative;
	transition: ease all 0.3s;
}

.dedicated-business-sectors .img-accordion-title {
	opacity: 1 !important;
	visibility: visible;
	position: absolute;
	bottom: 125px;
    left: -80px;
	transform: rotate(-90deg) !important;
	transition: ease all 0.3s;
    white-space: nowrap;
    width: 250px;
}

.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item.overlay-active .img-accordion-title {
	bottom: 40px;
    left: 80px;
}

.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item {
	transition: ease all 0.3s;
}

.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item::before {
	background-image: linear-gradient(to left, transparent, transparent, transparent, black);
	transition: ease all 0.3s;
}

.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item.overlay-active::before {
	background-image: linear-gradient(to bottom, transparent, transparent, black);
	transition: ease all 0.3s;
}

.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item.overlay-active::after {
	content: "";
 	background-image: url("../../uploads/2024/07/link-arrow.svg");
	background-size: 60px 60px;
	background-repeat: no-repeat;
	display: inline-block;
	position: absolute;
	height: 60px;
	width: 60px;
	border-radius: 50px;
	bottom: 50px;
	right: 80px;
}

@media only screen and (min-width: 768px) {
	.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item {
		max-width: 50%;
	}
}

@media only screen and (max-width: 768px) {
	.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item.overlay-active .img-accordion-title {
		bottom: 40px;
		left: 40px;
	}
	
	.dedicated-business-sectors .eael-image-accordion-hover.eael-image-accordion-item.overlay-active::after {
		top: 50px;
		right: 50px;
	}
}


/* Swiper center align*/
.swiper-slide {
	display: flex !important;
	justify-content: center !important;
}

/* Elementor Cart Button*/
.elementor-menu-cart__toggle_button {
	background-color: var(--pc-transparent) !important;
	padding: 0 !important;
}