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


/***************** Globals ***********************/
:root {
    --primary: #E81C1D;
    --secondary: #131313;
    --accent: #F6F6F6;
    --black: #000;
    --white: #fff;
}

/* Spacing classes */
.padding-section {
    padding: 150px 30px;
}

.padding-top {
    padding: 150px 30px 0 30px;
}

.padding-bottom {
    padding: 0 30px 150px 30px;
}

@media screen and (max-width: 1024px) {
    .padding-section {
        padding: 100px 30px;
    }
    
    .padding-top {
        padding: 100px 30px 0 30px;
    }
    
    .padding-bottom {
        padding: 0 30px 100px 30px;
    }
}

@media screen and (max-width: 767px) {
    .padding-section {
        padding: 50px 10px;
    }
    
    .padding-top {
        padding: 50px 15px 0 10px;
    }
    
    .padding-bottom {
        padding: 0 10px 50px 10px;
    }
}

/* Bold red */
.bold-red b,
.bold-red strong {
    color: var(--primary);
}

/* Icon button */
.icon-button .elementor-button {
    padding: 0 !important;
    background: transparent !important;   
}

.icon-button .elementor-button .elementor-button-icon svg {
    width: 20px;
    height: 15px;
}

.icon-button .elementor-button .elementor-button-content-wrapper span {
    background: var(--primary) !important;
    color: var(--white) !important;
    border: solid 1px var(--primary) !important;
    padding: 15px;
    border-radius: 50px;
    margin: 0;
    transition: all ease .3s;
    display: inline-flex;
    align-items: center;
}

.icon-button .elementor-button .elementor-button-content-wrapper span.elementor-button-text {
    padding: 15px 40px;
}

.icon-button .elementor-button:hover .elementor-button-content-wrapper span {
    background: var(--white) !important;
    color: var(--primary) !important;
}

@media screen and (max-width: 767px) {
	.icon-button .elementor-button .elementor-button-content-wrapper span {
		height: fit-content;
		align-self: center;
	}
	
	.elementor-button .elementor-button-content-wrapper span.elementor-button-text {
    	padding: 10px 20px !important;
		font-size: 16px !important;
	}
	
	.elementor-button {
		padding: 0 !important;
	}
}

/***************** Header ************************/
header {
    transition: all ease .3s;
}

header .elementor-sticky--effects:has(.header-home) {
    padding-top: 0 !important;
}

header  .elementor-widget.elementor-widget-icon svg {
	width: auto !important;
}

header .elementor-widget-theme-site-logo img,
header .elementor-widget-image img,
.elementor-location-popup .elementor-widget-theme-site-logo img {
	object-position: left;
}

header .elementor-widget-theme-site-logo,
header .logo-sticky {
    transition: all ease .3s;
}

header .elementor-sticky--effects .elementor-widget-theme-site-logo {
    display: none !important;
}

header .logo-sticky {
    display: none !important;;
}

header .elementor-sticky--effects .logo-sticky {
    display: block !important;
}

header .elementor-sticky--effects > .e-con.header-home {
    border-radius: 0 0 30px 30px !important;
}

header .elementor-sticky--effects > .e-con {
    background: var(--white) !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

header .elementor-sticky--effects .elementor-item {
    color: var(--black) !important;
}

header .elementor-sticky--effects .elementor-item:hover {
    color: var(--primary) !important;
}

header .elementor-sticky--effects .sub-arrow svg {
    fill: var(--secondary) !important;
}

header .elementor-sticky--effects .elementor-icon:not(:hover) {
    background-color: var(--secondary) !important;
}

header .elementor-sticky--effects .elementor-icon:not(:hover) svg {
    fill: var(--white) !important;
}

header .elementor-nav-menu ul {
    padding: 20px !important;
    border-radius: 10px !important;
    background: var(--white);
}

header .elementor-nav-menu--dropdown li:not(:last-child) {
    margin-bottom: 10px;
}

header .elementor-nav-menu ul li a {
    border: none !important;
}

header .elementor-nav-menu ul.sub-menu {
    background: var(--white) !important;
}

@media screen and (max-width: 1024px) {
    header .elementor-widget-theme-site-logo,
    header .logo-sticky {
        margin-right: auto;
    }
}

@media screen and (max-width: 767px) {
    header .elementor-sticky--effects > .e-con.header-home {
        border-radius: 0 0 10px 10px !important;
    }
}

/***************** Footer ************************/
footer .elementor-widget-text-editor a {
    color: var(--white) !important;
    transition: all ease .3s;
}

footer .elementor-widget-text-editor a:hover {
    color: var(--primary) !important;
}

/***************** Cases section ******************/
@media screen and (min-width: 1024px) {
    .case-slider .elementor-swiper-button {
        display: none !important;
    }
}

.case-slider .elementor-widget-loop-carousel > .elementor-widget-container {
    border-radius: 30px;
    overflow: hidden;
}

.case-button .e-child {
    width: fit-content !important;
}

.case-button .e-child::before,
.case-button.e-child::before {
    content: ' ';
    border: 0;
    position: absolute;
    left: -60px;
    top: 17px;
    width: 60px;
    height: 60px;
    border-radius: 0px 0px 30px 0px;
    background: transparent;
    box-shadow: 0 30px 0 var(--secondary);
}

.case-button .e-child::after,
.case-button.e-child::after {
    content: ' ';
    border: 0;
    position: absolute;
    right: 0px;
    top: -60px;
    width: 40px;
    height: 60px;
    border-radius: 0px 0px 30px 0px;
    background: transparent;
    box-shadow: 0 30px 0 var(--secondary);
}

.case-button.case-white {
    width: fit-content !important;
}

.case-button.case-white.e-child::after {
    content: ' ';
    border: 0;
    position: absolute;
	z-index: 1;
    right: 0px;
    top: -60px;
    width: 40px;
    height: 60px;
    border-radius: 0px 0px 30px 0px;
    background: transparent;
    box-shadow: 0 30px 0 var(--accent);
}

.case-button.case-white.e-child::before {
    content: ' ';
    border: 0;
    position: absolute;
    left: -60px;
    top: 17px;
    width: 60px;
    height: 60px;
    border-radius: 0px 0px 30px 0px;
    background: transparent;
    box-shadow: 0 30px 0 var(--accent);
}

.case-button .elementor-widget-icon {
	z-index: 2;
}

.case-button a.elementor-icon {
    display: inline-block;
}

.case-slider .elementor-swiper-button svg path {
    fill: var(--white) !important;
    transition: all ease .3s;
}

.case-slider .elementor-swiper-button:hover svg path {
    fill: #707070 !important;
}

.elementor-widget-theme-post-featured-image img {
    max-height: 500px;
    object-fit: cover;
}

.case-slider .elementor-widget-loop-carousel .elementor-heading-title {
	padding-right: 80px !important;
} 

@media screen and (max-width: 767px) {
    .case-slider .elementor-widget-loop-carousel > .elementor-widget-container {
        overflow: visible;
        padding-right: 100px;
    }

    .case-slider .elementor-widget-loop-carousel .elementor-widget-container .elementor-loop-container {
        overflow: visible;
    }
	
	.case-slider .elementor-widget-loop-carousel .elementor-heading-title {
		padding-right: 40px !important;
	} 
}

/*** Case slider three qaurters ***/
.case-slider-overflow .elementor-widget-loop-carousel {
    border-radius: 30px 0 0 0;
    padding-right: 125px;
    overflow: hidden;
}

.case-slider-overflow .elementor-widget-container,
.case-slider-overflow .elementor-loop-container {
    overflow: visible !important;
}

.case-slider-overflow .case-button {
    width: fit-content !important;
}

/*** Case filter ***/
@media screen and (min-width: 1024px) {
    .case-filter .search-filter-label {
        display: none !important;
		font-size: 0px !important;
    }
}

.case-filter .search-filter-label {
    font-weight: 700;
	font-family: var(--e-global-typography-accent-font-family);
	font-size: var(--e-global-typography-accent-font-size);
	color: var(--black);
    padding-top: 0 !important;
    padding-bottom: 10px !important;
}

.case-filter .elementor-widget-search-filter-field {
    margin-top: 25px !important;
}

.case-filter .search-filter-field__input .search-filter-input-radio {
    padding: 0;
}

.case-filter .search-filter-field__input .search-filter-input-radio__control {
	display: none !important;
}

.case-filter .search-filter-field__input {
    padding: 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
	gap: 20px 50px;
	border-bottom: solid 2px #ECECEC;
}

.case-filter .search-filter-field__input div {
    padding: 0 0 10px 0 !important;
    position: relative;
}

.case-filter .search-filter-field__input .search-filter-input-radio__label {
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	color: var(--e-global-color-text);
    padding: 0 !important;
}

.case-filter .search-filter-field__input div::after {
    content: " ";
    position: absolute;
    bottom: -2px;
    left: 50%;
    background: var(--primary);
    height: 2px;
    width: 0%;
    transition: all ease .3s;
    margin: auto;
} 

.case-filter .search-filter-field__input .search-filter-input-radio--is-active::after,
.case-filter .search-filter-field__input div:hover::after {
    width: 100%;
    left: 0;
}


.case-filter .searchandfilter div input {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0px;
    margin: 0;
    opacity: 0;
}

@media screen and (max-width: 1024px) {
    .case-filter .search-filter-field__input {
        flex-direction: row;
    }
	
	.case-filter #search-filter-input-radio-1 {
		
	}

    .case-filter .search-filter-field__input div::before {
        content: " ";
        position: absolute;
        bottom: -2px;
        left: 50%;
        background: #ECECEC;
        height: 2px;
        width: calc(100vw - 30px);
        transition: all ease .3s;
        margin: auto;
    }
	
	.case-filter .search-filter-field__input div::after {
		content: " ";
		position: absolute;
		bottom: -2px;
		left: 50%;
		background: var(--primary);
		height: 2px;
		width: 0%;
		transition: all ease .3s;
		margin: auto;
	}
	
	.case-filter .search-filter-field__input .search-filter-input-radio--is-active::after {
		width: 100%;
		left: 0;
	}
}

@media screen and (max-width: 767px) {
    .case-filter .search-filter-field__input {
        flex-wrap: wrap;
    }

    .case-filter #search-filter-input-radio-1 div:nth-of-type(2n - 1) {
        margin-right: 35%;
    } 

    .case-filter #search-filter-input-radio-1 div:nth-of-type(2n) {
        margin-left: auto;
    } 
	
	.case-filter #search-filter-input-radio-1 div:nth-of-type(2n - 1)::before {
		content: " ";
        position: absolute;
        bottom: -2px;
        left: 0;
        background: #ECECEC;
        height: 2px;
        width: calc(100vw - 30px);
        transition: all ease .3s;
        margin: auto;
	}
}

@media screen and (max-width: 560px) {
    .case-filter #search-filter-input-radio-1 div:nth-of-type(2n - 1) {
        margin-right: 25%;
		min-width: 25%;
    }

}

@media screen and (max-width: 400px) {
    .case-filter #search-filter-input-radio-1 div:nth-of-type(2n - 1) {
        margin-right: 20px;
    } 
	
}

/***************** Counters with scroll cta *******/
.counter-scroll .elementor-widget-counter {
    padding-bottom: 20px;
}

.counter-scroll .elementor-widget-counter:first-of-type, 
.counter-scroll .elementor-widget-counter:nth-of-type(3) {
    margin-top: 80px;
}

.counter-scroll .elementor-widget-counter:first-of-type,
.counter-scroll .elementor-widget-counter:nth-of-type(4) {
    border-bottom: solid 2px #ECECEC;
    border-left: solid 2px #ECECEC;
    border-radius: 0 0 0 30px;
}

.counter-scroll .elementor-widget-counter:nth-of-type(3),
.counter-scroll .elementor-widget-counter:last-of-type {
    border-bottom: solid 2px #ECECEC;
    border-right: solid 2px #ECECEC;
    border-radius: 0 0 30px 0;
}

.counter-scroll .elementor-widget-counter:nth-of-type(3)::before {
    bottom: -60px;
    content: "";
    border: 0;
    position: absolute;
    left: -2px;
    width: 60px;
    height: 60px;
    display: block;
    border-radius: 30px 0 0 0;
    background: transparent;
    box-shadow: -20px -20px 0 0 #F6F6F6;
    z-index: 10;
    border-top: solid 2px #ECECEC;
    border-left: solid 2px #ECECEC;
}

.counter-scroll .elementor-widget-counter:first-of-type::after {
    bottom: -60px;
    content: "";
    border: 0;
    position: absolute;
    right: -2px;
    height: 60px;
    width: 60px;
    display: block;
    border-radius: 0 30px 0 0;
    background: transparent;
    box-shadow: 30px -30px 0 0 #F6F6F6;
    z-index: 10;
    border-top: solid 2px #ECECEC;
    border-right: solid 2px #ECECEC;
}

.counter-scroll .elementor-widget-counter:nth-of-type(4)::after {
    content: " ";
    width: 2px;
    height: 50px;
    background: #ECECEC;
    position: absolute;
    right: 1px;
    top: calc(50% - 25px);
}

@media screen and (max-width: 1024px) {
    .counter-scroll .elementor-widget-counter:first-of-type,
    .counter-scroll .elementor-widget-counter:nth-of-type(4),
    .counter-scroll .elementor-widget-counter:nth-of-type(3),
    .counter-scroll .elementor-widget-counter:last-of-type {
        border: none !important;
    }

    .counter-scroll .elementor-widget-counter:first-of-type::after {
        width: 2px;
        height: 50px;
        border: none;
        box-shadow: none;
        right: 1px;
        top: calc(50% - 25px);
        background: #ECECEC;
    }

    .counter-scroll .elementor-widget-counter:nth-of-type(3)::before {
        display: none;
    }

    .counter-scroll .elementor-widget-counter:nth-of-type(3)::after {
        content: " ";
        position: absolute;
        display: block;
        height: 2px;
        width: 50px;
        left: calc(50% - 25px);
        bottom: 0;
        background: #ECECEC;
    }

    .counter-scroll .elementor-widget-counter:nth-of-type(4)::before {
        content: " ";
        position: absolute;
        display: block;
        height: 2px;
        width: 50px;
        left: calc(50% - 25px);
        top: 0;
        background: #ECECEC;
    }
}

@media screen and (max-width: 767px) {
    .counter-scroll .elementor-widget-counter:first-of-type, 
    .counter-scroll .elementor-widget-counter:nth-of-type(3) {
        margin-top: 50px;
    }

    .counter-scroll .elementor-widget-counter {
        border-radius: 0 !important;
        padding: 20px;
    }
}

/*** Simple counters ***/
.counter-section .elementor-widget-counter {
    padding-left: 10px;
    padding-right: 10px;
}

.counter-section .elementor-widget-counter:first-of-type,
.counter-section .elementor-widget-counter:nth-of-type(2) {
    padding-bottom: 25px;
}

.counter-section .elementor-widget-counter:last-of-type,
.counter-section .elementor-widget-counter:nth-of-type(3) {
    padding-top: 25px;
}

.counter-section .elementor-widget-counter:first-of-type::after,
.counter-section .elementor-widget-counter:nth-of-type(2)::after {
    content: " ";
    width: 50px;
    height: 2px;
    background: #ECECEC;
    position: absolute;
    bottom: 0;
    left: calc(50% - 25px);
}

.counter-section .elementor-widget-counter:first-of-type .elementor-widget-container::after,
.counter-section .elementor-widget-counter:nth-of-type(3) .elementor-widget-container::after {
    content: " ";
    width: 2px;
    height: 50px;
    background: #ECECEC;
    position: absolute;
    bottom: calc(50% - 25px);
    right: -1px;
}

/*** Scroll icon ***/
@keyframes scroll-button {
    0% {
        translate: 0 0;
    }
    25% {
        translate: 0 50px;
    }
    50% {
        translate: 0 0;
    }
    75%{
        translate: 0 -50px;
    }
    100% {
        translate: 0 0;
    }
}

.counter-scroll .scroll-icon svg g {
    animation: scroll-button 3s infinite;
}

/***************** Service packet section *********/
.service-section .elementor-widget-icon-list {
    margin-bottom: auto !important;
}

.service-section .elementor-icon-list-item {
    justify-content: space-between !important;
}

.service-section .elementor-icon-list-item .elementor-icon-list-icon {
    order: 2;
}

.service-section .elementor-icon-list-items .elementor-icon-list-item .elementor-icon-list-text {
    padding-left: 0 !important;
}

.service-section .elementor-icon-list-items .elementor-icon-list-item:has(:not(.elementor-icon-list-icon)) .elementor-icon-list-text {
    line-height: 45px;
} 

/***************** Review slider section *********/
.review-block .elementor-widget-theme-post-featured-image::before {
    content: ' ';
    border: 0;
    position: absolute;
    left: 0;
    bottom: 30px;
    width: 60px;
    height: 60px;
    border-radius: 0 0 0 30px;
    background: transparent;
    box-shadow: 0 30px 0 #fff;
}

.review-slider .elementor-loop-container {
    border-radius: 30px;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .review-slider .e-child {
        background: transparent !important;
    }

    .review-slider > .e-con-inner > .e-child:last-of-type::after {
        content: " ";
        width: 100%;
        height: calc(100% - 80px);
        background: var(--secondary);
        position: absolute;
        left: 0px;
        top: 90px;
        border-radius: 10px;    
    }

    .review-slider .elementor-loop-container {
        border-radius: 10px;
    }
}

/***************** Logo slider section ************/
@media screen and (min-width: 1640px) {
    .logo-slider-section .elementor-swiper-button.elementor-swiper-button-next {
        right: calc((100vw - 1640px) / 2) !important;
    }

    .logo-slider-section .elementor-swiper-button.elementor-swiper-button-prev {
        right: calc((100vw - 1640px) / 2 + 120px) !important;
    }
}

.logo-slider-section {
    padding-left: 30px;
}

.logo-slider-section .elementor-swiper {
    overflow: hidden !important;
}

.logo-slider-section .elementor-main-swiper {
    margin-left: 0 !important;
    overflow: visible !important;
    margin-top: 80px;
    margin-bottom: 70px !important;
}

.logo-slider-section .swiper-slide {
    border-radius: 30px;
    border: solid 1px #ececec;
    padding: 30px;
	filter: grayscale(100%);
	transition: all ease .3s;
	will-change: auto;
}

.logo-slider-section .swiper-slide:hover {
	filter: grayscale(0%);
}

.logo-slider-section .swiper-pagination-bullet {
    height: 10px;
    width: 10px;
    border-radius: 10px;
    background-color: #ECECEC;
    transition: all ease .3s;
    opacity: 1 !important;
}

.logo-slider-section .swiper-pagination-bullet-active {
    width: 55px;
    background-color: var(--black);
}

.logo-slider-section .swiper-pagination-bullet:hover {
    background-color: var(--black);
}

.logo-slider-section .elementor-swiper-button {
    top: 30px !important;
    width: 60px;
    height: 25px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.logo-slider-section .elementor-swiper-button svg {
    display: none !important;
}

.logo-slider-section .elementor-swiper-button.elementor-swiper-button-prev {
    right: 120px;
    left: auto !important;
    transition: all ease .3s;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619' style='&%2310; rotate: 180deg;&%2310;'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23131313'/%3E%3C/svg%3E") !important;
}

.logo-slider-section .elementor-swiper-button.elementor-swiper-button-prev:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619' style='&%2310; rotate: 180deg;&%2310;'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23ECECEC'/%3E%3C/svg%3E") !important;
}

.logo-slider-section .elementor-swiper-button.elementor-swiper-button-next {
    transition: all ease .3s;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23131313'/%3E%3C/svg%3E") !important;
}

.logo-slider-section .elementor-swiper-button.elementor-swiper-button-next:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23ECECEC'/%3E%3C/svg%3E") !important;
}

.logo-slider-section .swiper-pagination {
    padding-right: 30px;
} 

/***************** Forms **************************/

/* .elementor-form input:not([type='submit']),
.elementor-form textarea, 
.elementor-form select {
    background-color: #F6F6F6 !important;
    border: solid 2px #F6F6F6 !important;
    border-radius: 30px !important;
}

.elementor-form input[type=radio] {
	width: 20px !important;
	height: 20px !important;
} */

.elementor-form input[type=radio] {
    accent-color: var(--e-global-color-primary);
}

.elementor-form textarea {
    padding: 20px;
}

/*** Accordion section ***/
.accordion-section .elementor-widget-n-accordion .e-n-accordion-item {
    overflow: hidden;
}

.accordion-section .e-n-accordion-item-title-header {
    padding: 20px 30px;
    border: solid 1px #ececec;
    border-radius: 30px;
    transition: all ease .3s;
}

.accordion-section summary {
	align-items: flex-start !important;
}

.accordion-section summary:not([aria-expanded="true"]) .e-n-accordion-item-title-header {
    width: 100%;
}

.accordion-section summary[aria-expanded="true"] .e-n-accordion-item-title-header {
    border: transparent;
}

.accordion-section .e-n-accordion-item-title-icon span {
    border-radius: 50px;
    z-index: 10;
    width: auto;
    height: auto;
    padding: 20px;
}

.accordion-section .e-n-accordion-item-title-icon span.e-opened {
    background: var(--primary);
}

.accordion-section .e-n-accordion-item-title-icon span.e-closed {
    z-index: 10;
    border: solid 1px #ECECEC;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon::before {
    content: " ";
    width: 0;
    height: calc(100% + 15px);
    position: absolute;
    background: #fff;
    top: 0;
    right: 0;
    z-index: 1;
    display: block;
    border-radius: 0 0 0 30px;
    transition: all ease .3s;
    opacity: 0;
}

.elementor-widget-n-accordion summary[aria-expanded="true"] .e-n-accordion-item-title-icon::before {
    opacity: 1;
    width: calc(100% + 30px);
}

.accordion-section  .e-n-accordion-item-title-icon::after {
    content: ' ';
    border: 0;
    position: absolute;
    right: 0px;
    top: calc(100% + 15px);
    width: 60px;
    height: 60px;
    border-radius: 0px 30px 0px 0px;
    background: transparent;
    box-shadow: 0 -30px 0 var(--white);
    z-index: 1;
    opacity: 0;
    transition: all ease .3s;
}

.accordion-section summary[aria-expanded="true"] .e-n-accordion-item-title-icon::after {
    opacity: 1;
}

.accordion-section .e-n-accordion-item-title-icon span.e-opened::before {
    content: ' ';
    border: 0;
    position: absolute;
    left: 0px;
    top: 0;
    width: 60px;
    height: 60px;
    border-radius: 0 30px 0 0;
    background: transparent;
    box-shadow: 0 -30px 0 var(--white);
    transition: all ease .3s;
}

.accordion-section summary[aria-expanded="true"]  .e-n-accordion-item-title-icon span.e-opened::before {
    left: -90px;
}

@media screen and (max-width: 767px) {
    .accordion-section .e-n-accordion-item-title-header {
        padding: 10px;
        border-radius: 10px;
    }

    .elementor-widget-n-accordion .e-n-accordion-item-title-icon::before {
        border-radius: 0 0 0 10px;
        height: 100%;
    }

    .accordion-section .e-n-accordion-item-title-icon::after,
    .accordion-section .e-n-accordion-item-title-icon span.e-opened::before {
        border-radius: 0 10px 0 0;
    }

    .accordion-section .e-n-accordion-item-title-icon::after {
        top: 100%;
        width: 20px;
        height: 20px;
        box-shadow: 0 -10px 0 var(--white);
    }

    .accordion-section .e-n-accordion-item-title-icon span {
        padding: 10px;
    }
	
	.icon-button .elementor-button .elementor-button-content-wrapper span
    .accordion-section .e-n-accordion-item-title-icon span svg {
        width: 13px !important;
        height: 13px !important;
    }

    .elementor-widget-n-accordion summary[aria-expanded="true"] .e-n-accordion-item-title-icon::before {
        width: calc(100% + 10px);
    }

    .accordion-section summary[aria-expanded="true"] .e-n-accordion-item-title-icon span.e-opened::before {
        left: -70px;
    }

    .elementor-widget-n-accordion .e-n-accordion-item-title-icon {
        padding: 5px;
    }
}

/*** Team slider ***/
.team-slider .elementor-widget-testimonial-carousel .elementor-main-swiper {
    width: 100% !important;
    margin-top: 60px;
    border-radius: 30px;
}

.team-slider .elementor-swiper-button {
    top: -50px !important;
    width: 60px;
    height: 25px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.team-slider .elementor-swiper-button svg {
    display: none !important;
}

.team-slider .elementor-swiper-button.elementor-swiper-button-prev {
    right: 70px !important;
    left: auto !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619' style='&%2310; rotate: 180deg;&%2310;'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23131313'/%3E%3C/svg%3E") !important;
}

.team-slider .elementor-swiper-button.elementor-swiper-button-next {
    right: 0 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='59.138' height='23.619' viewBox='0 0 59.138 23.619'%3E%3Cpath id='Union_15' data-name='Union 15' d='M-859.87-4386.874a1.682,1.682,0,0,1,0-2.384l7.438-7.432H-904.5a1.5,1.5,0,0,1-1.5-1.5,1.5,1.5,0,0,1,1.5-1.5h52.064l-7.427-7.433a1.679,1.679,0,0,1,0-2.384,1.683,1.683,0,0,1,1.2-.493,1.687,1.687,0,0,1,1.2.493l10.167,10.188a1.686,1.686,0,0,1-.049,2.328l-10.126,10.118a1.7,1.7,0,0,1-1.2.493A1.683,1.683,0,0,1-859.87-4386.874Z' transform='translate(906 4410)' fill='%23131313'/%3E%3C/svg%3E") !important;
}

.team-slider .elementor-testimonial--layout-image_stacked .elementor-testimonial__image {
    margin-top: 0 !important;
}

@media screen and (max-width: 767px) {
    .team-slider .elementor-testimonial--layout-image_stacked .elementor-testimonial__image img {
        border-radius: 10px !important;
    }
}

.elementor-carousel-image {
   background-size: contain;
   width: 100%;
}

.elementor-form h3 {
	margin: 25px 0;
}