/*
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;
	
	--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;
}

.elementor-widget-text-editor p:first-of-type {
    margin-top: 0;
}

img {
	object-fit: cover;
}

/****************************************** 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);
	}
}

.elementor-heading-title:hover {
	text-decoration: none !important;
}

main a:hover {
	text-decoration: none !important;
}


/* HEADER */

header .elementor-sticky.elementor-sticky--active,
header .elementor-sticky.elementor-sticky--active .elementor-widget-theme-site-logo.elementor-widget-image a img {
	transition: all 0.3s ease-in-out;
}

header .elementor-sticky.elementor-sticky--active.elementor-sticky--effects {
	min-height: 75px;
}

header .elementor-sticky.elementor-sticky--active.elementor-sticky--effects .elementor-widget-theme-site-logo.elementor-widget-image a img {
	max-width: 151px;	
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active::after,
header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item::after {
	transition: all 0.2s;
	opacity: 0;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active::after,
header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a:hover::after {
	content: "";
	height: 2px;
	width: 100%;
	background-color: #323335;
	position: absolute;
	bottom: -5px;
	left: 0;
	transition: all 0.2s;
	opacity: 1;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active.has-submenu::after,
header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu:hover::after {
	width: calc(100% - 21px);	
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown::before {
	background-color: white;
	content: "";
	position: absolute;
	top: -10px;
	height: 10px;
	width: 10px;
	clip-path: polygon(50% 50%, 0% 100%, 100% 100%);
	right: 35px;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown li a {
	border-left: 0;
	border-right: 20px solid white;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown {
    margin-left: -75px !important;
	width: 200px !important;
    right: 0 !important;
    left: unset !important;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown li a.elementor-sub-item::after {
	transition: all 0.2s;
	opacity: 0;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown li:hover a.elementor-sub-item::after {
	content: "";
	height: 2px;
	background-color: #323335;
	position: absolute;
	bottom: 10px;
	left: 20px;
	transition: all 0.2s;
	opacity: 1;
	width: calc(100% - 40px);
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown li:hover a.elementor-sub-item {
	width: fit-content;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown li a.elementor-sub-item {
	font-size: 16px;
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu span.sub-arrow svg {
	height: 13px;
    width: 14px;	
}

header nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu span.sub-arrow {
	padding-left: 7px;
}


/* Mobile menu */
.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item.menu-item-object-page {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;	
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item {
	width: fit-content;
	font-size: 16px;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item.menu-item-has-children ul.sub-menu {
	margin-left: unset !important; 
    margin-top: unset !important;
	width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	height: 60px;
	background-color: #e7e1cc;
	font-size: 16px;
	position: relative;
	width: 100% !important;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item.menu-item-has-children ul.sub-menu li.menu-item {
	margin-top: 7px;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item.menu-item-has-children ul.sub-menu li.menu-item a.elementor-sub-item {
	border-left: none;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu span.sub-arrow {
	padding-left: 26px !important;
	transition: all 0.3 ease-in-out;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu {
	margin-right: -40px;	
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu span.sub-arrow svg {
	height: 18px;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.has-submenu.highlighted span.sub-arrow svg {
	transform: rotate(180deg);
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active::after {
	content: "";
	height: 2px;
	width: 100%;
	background-color: #323335;
	position: absolute;
	bottom: 16px;
	left: 0px;
	transition: all 0.2s;
	opacity: 1;
	width: 100%;
}

.mobile-menu.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active.has-submenu::after {
	width: calc(100% - 40px);
}

.dialog-widget.dialog-lightbox-widget.dialog-type-lightbox.elementor-popup-modal .dialog-widget-content.dialog-lightbox-widget-content .elementor-location-popup > .elementor-element {
	padding-left: 0;
	padding-right: 0;
}



/* Mobile menu styles */
/* @media screen and (max-width: 646px) {
	.mobile-menu-neem-contact-button {
		display: none !important;
	}
} */

@media screen and (min-width: 646px) {
	.mobile-menu-logo-item {
		display: none !important;
	}
}

@media screen and (max-width: 646px) {
	.mobile-menu-logo-item {
		display: block !important;
	}
}

/* Loop item */

.elementor-grid > div:nth-child(even) {
	background-color: var(--e-global-color-accent);
}












