/***********************************
* BASE
**********************************/

/* Global header width */
.elementor .global-header {
	width: 100% !important;
	max-width: 96% !important;
}
/* Global heros */
.hero-section {
	max-width: 98% !important;
	margin: 20px auto 0 auto !important;
}
#popupBio {
	font-size: 16px;
	text-align: left;
	line-height: 1.25em;
	height: 221px;
	overflow-y: auto;
}
#popupBio p:last-of-type {
	margin: 0;
}
.single-resource ul, .single-resource ol {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}
/***********************************
* COMPONENTS
**********************************/
.hero-bubble .elementor-widget-container::before {
	content: '';
	width: 0%;
	background: linear-gradient(90deg, var(--e-global-color-de4c912) 25%, var(--e-global-color-6f6cb59) 100%);
	position: absolute;
	top: 0;
	left: 15px;
	height: 100%;
	border-radius: 0 100px 100px 0;
	z-index: 1;
	transition: all 0.3s ease-in-out;
}
.hero-bubble h3 {
	margin-left: 0px;
	transition: all 0.3s ease-in-out !important;
}
.hero-bubble .elementor-widget-container .elementor-image-box-wrapper {
	position: relative;
	z-index: 9;
}
@media screen and (min-width: 1025px) {
	.hero-bubble .elementor-widget-container:hover h3 {
		color: #1A1241 !important;
		margin-left: 5px !important;
	}
	.hero-bubble .elementor-widget-container:hover::before {
		width: 95%;
	}
	/* Home header */
	.home .elementor .global-header {
		top: 10px !important;
	}
	/* Home hero */
	.home .hero-section {
		margin-top: 86px !important;
	}
}
@media screen and (max-width: 1024px) {
	/* Global header */
	.elementor .global-header {
		margin-top: 10px !important;
	}
	.slider-sticky-wrapper .text-container .text-content p:nth-of-type(n+2){
/* 		display: none !important; */
	}
	
}
.info-box {
	background: rgba(255,255,255,.5) !important;
	box-shadow: 0px 2px 4px 0px rgba(26, 18, 65, 0.3);
	border-radius: 24px !important;
	padding: 24px !important;
}
.info-box .elementor-widget-image .elementor-widget-container {
	width: 40px;
	height: 40px !important;
	border: 1px solid #1A124133;
	border-radius: 100%;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.info-box .elementor-widget-container {
	transition: all 0.6s ease-in-out !important;
}
.info-box .elementor-widget-image .elementor-widget-container img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.4s ease-in-out !important;
}
.info-box .elementor-widget-image .elementor-widget-container::before {
	content: '';
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: 50%;
	background: url(/wp-content/uploads/2025/12/arrow-up-right.png);
	background-repeat: no-repeat;
	background-size: contain;
	transform: translate(-200%, 100%);
	transition: all 0.4s ease-in-out !important;
	filter: brightness(0) invert(1);
}
.info-box:hover .elementor-widget-image .elementor-widget-container {
	background: #1A1241;
}
.info-box:hover .elementor-widget-image .elementor-widget-container::before {
	transform: translate(-50%, -50%);
}
.info-box:hover .elementor-widget-image .elementor-widget-container img {
	transform: translate(100%, -200%) !important;
}
.hover-button a {
	position: relative;
	max-width: 300px;
	width: 100%;
	padding: 12px 34px !important;
}
.hover-button a::before {
	background: linear-gradient(90deg, var(--e-global-color-primary) 40%, var(--e-global-color-0bac71f) 100%) !important;
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 100px;
	display: inline-block;
	opacity: 0;
	z-index: 1;
	transition: all 0.3s ease-in-out;
}
.hover-button a span.elementor-button-icon {
	left: -25px;
	width: 0;
	transition: all 0.15s ease-in-out !important;
}
.hover-button a span {
	position: relative;
	z-index: 9;
	overflow: hidden;
}
.hover-button a:hover span {
	background: transparent;
}
.hover-button a:hover::before {
	opacity: 1;
}
.hover-button a:hover span.elementor-button-icon {
	left: 0px;
	width: 16px;
}
/* infinite slider */
.slider-section .e-con-inner {
	min-width: 100% !important;
}
.vhcs-slider {
	width: 100%;
	overflow: hidden;          /* hides the overflow so it looks infinite */
}
.vhcs-slider-track {
	display: flex;
	gap: 20px;                 /* replaces grid-gap, works with flex */
	width: max-content;        /* shrink to content width */
	animation: vhcs-scroll var(--vhcs-duration, 30s) linear infinite;
}

.team-more-info {
	cursor: pointer;
}
/* distance is set via a CSS variable from JS */
@keyframes vhcs-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(calc(-1 * var(--vhcs-translate, 0px)));
	}
}
.slider-container {
	background: rgba(255,255,255,.30);
	min-width: 500px;
	box-shadow: 0px 8px 20px -8px rgba(26, 18, 65, 0.16);
	border-radius: 32px;
	padding: 25px 30px;
	display: flex;
	align-items: center;
	gap: 30px;
}
.slider-img {
	background: #fff;
	width: 80px;
	height: 80px;
	position: relative;
	border-radius: 100%;
}
.slider-img img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.vhcs-title {
	font-size: 20px;
	font-weight: 700;
}
.vhcs-content {
	font-size: 16px;
	font-weight: 400;
}
/* Accordions with bounce - homepage */

.vhcs-accordion-container {
	background: #fff;
	padding: 50px;
	border-radius: 32px;
	position: relative;
	overflow: hidden;
	transform-origin: top center; /* anchor at the top */
	transition:
		box-shadow 0.35s ease,
		margin-bottom 0.35s ease;
}
.vhcs-accordion-container::before {
	content: '';
	background: #438CD01A;
	background: linear-gradient(135deg, rgba(67, 140, 208, .3) 0%, rgba(255, 255, 255, 0) 50%);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 1;
	transition: all 0.3s ease-in-out !important;
}
.vhcs-accordion-container > div {
	position: relative;
	z-index: 9;
}
.vhcs-accordion-container:hover::before {
	opacity: 1;
}
.accor-content {
	transition: max-height 0.4s cubic-bezier(0.25, 0.8, 0.5, 1.2), opacity 0.3s ease-out, transform 0.4s cubic-bezier(0.25, 0.8, 0.5, 1.2) !important;
}
.accor-step {
	top: 0;
	transform: none;
	position: relative;
	left: 0;
}
.services-acc .accor-right {
	padding-left: 23px;
}
.services-acc .accor-right .accor-right-content p {
	font-size: 28px;
	line-height: 1.3em;
	font-weight: 800;
}
.services-acc .accor-right .accor-content {
	padding-left: 45px;
}
/* space between cards */
.vhcs-accordion-container + .vhcs-accordion-container {
	margin-top: 12px;
}
.vhcs-wrapper,
.accor-right-content {
	width: 100%;
	display: flex;
	align-items: flex-start;
}
.accor-right {
	padding-left: 40%;
}
.accor-step {
	color: #438CD0;
	font-size: 32px;
	font-weight: 300;
}
.accor-right p {
	font-size: 32px;
	font-weight: 600;
	margin: 0 0 0 45px;
}
.accor-content ul {
	padding: 1em 0 0 0;
	list-style-type: none;
}
.accor-content ul li {
	position: relative;
	padding-left: 1.5em;
	padding-bottom: 0.5em;
}
.accor-content ul li::before {
	content: '';
	background-image: url(/wp-content/uploads/2026/01/check.png);
	width: 20px;
	height: 15px;
	position: absolute;
	display: block;
	background-size: contain;
	left: 0;
	background-position: center;
	top: 5px;
	background-repeat: no-repeat;
}
/* content panel – animated */
.accor-content {
	max-height: 0;               /* collapsed */
	padding-left: 81px;
	overflow: hidden;
	opacity: 0;
	transform: translateY(-4px); /* small upward offset */
	transition:
		max-height 0.4s cubic-bezier(0.25, 0.8, 0.5, 1.2),
		opacity 0.3s ease-out,
		transform 0.4s cubic-bezier(0.25, 0.8, 0.5, 1.2);
}
/* when open (JS adds .is-open) */
.vhcs-accordion-container.is-open {
	margin-bottom: 12px;
	padding-bottom: 70px;
	box-shadow: 0 14px 32px rgba(26, 18, 65, 0.14);
	animation: accordionBounceIn 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.vhcs-accordion-container.is-open .accor-content {
	opacity: 1;
	transform: translateY(20px);
}
/* stronger bounce on open */
@keyframes accordionBounceIn {
	0%   { transform: scaleY(1); }
	55%  { transform: scaleY(1.06); }  /* bigger bounce */
	100% { transform: scaleY(1); }
}
/* bounce when closing */
.vhcs-accordion-container.bounce-out {
	animation: accordionBounceOut 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
/* bounce-out animation when closing */
@keyframes accordionBounceOut {
	0%   { transform: scaleY(1); }
	45%  { transform: scaleY(0.96); }  /* slight “dip” */
	100% { transform: scaleY(1); }
}
@media screen and (max-width: 1024px) { 
	.vhcs-accordion-container.is-open {
		padding-bottom: 40px !important;
	}
}
/* Underline text */
.vhcs-underscore-link {
	display:inline-flex;
	align-items:center;
	position:relative;
	gap:6px;
}
.vhcs-underscore-link svg pth {
	position:relative;
	z-index:2;
}
.vhcs-underscore-link svg path{
	transition:all .3s linear !important;
}
.vhcs-underscore-link:hover svg path {
	fill:#73AD8F;
	transform:translateX(5px);
}
/* link + underline */
.vhcs-underscore-link a {
	color:#fff;
	font-size:20px;
	font-weight:600;
	text-decoration:none;
	position:relative;
	display:inline-block;   /* so ::after hugs the text width */
	z-index:1;              /* below arrow, above underline */
}
/* underline only under the text */
.vhcs-underscore-link a::after {
	content:"";
	position:absolute;
	left:0;
	right:0;                /* line width = text width */
	bottom:4px;
	height:.13rem;
	background:#73AD8F;
	opacity:.7;
	transform-origin:top;
	transform:scaleY(1);
	transition:transform .25s cubic-bezier(.33,1.43,.42,1),opacity .25s ease;
	z-index:-1;             /* behind text and arrow */
}
.vhcs-underscore-link:hover a::after {
	transform:scaleY(1.2);  /* grows downward */
	opacity:1;
}

/* Testimonial Slider */
.testimonials-slider .elementor-main-swiper {
	max-width: 100%;
	width: 100% !important;
}
.testimonials-slider .elementor-testimonial {
	display: flex;
}
.testimonials-slider .elementor-testimonial .elementor-testimonial__header {
	width: 40%;
	padding: 0 !important;
}
.testimonials-slider .elementor-testimonial .elementor-testimonial__content {
	width: 60%;
	display: flex;
	gap: 23px;
}
.testimonials-slider .elementor-testimonial .elementor-testimonial__content::before {
	content: '';
	width: 31px;
	height: 23px;
	position: relative;
	background: url(/wp-content/uploads/2025/12/unnamed-file.png);
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
}
.testimonials-slider .elementor-testimonial .elementor-testimonial__content > div {
	width: 100%;
}
.testimonials-slider .elementor-swiper-button {
	width: 54px;
	height: 54px;
	right: auto;
	left: 0;
	border: 1px solid #FFFFFF47;
	border-radius: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all 0.3s ease-in-out !important;
}

.testimonials-slider .elementor-swiper-button:hover {
	background: #73AD8F;
}
.testimonials-slider .elementor-swiper-button.elementor-swiper-button-next {
	right: auto;
	left: 60px;
}
.testimonials-slider .elementor-swiper-button.elementor-swiper-button-prev {
	left: 0 !important;
}
.testimonials-slider .swiper-pagination {
	position: absolute !important;
	bottom: 100px !important;
	text-align: left;
}
.testimonials-slider .swiper-pagination span {
	width: 23px !important;
	border-radius: 100px;
	transition: all 0.3s ease-in-out !important;
}
.testimonials-slider .swiper-pagination span.swiper-pagination-bullet-active {
	width: 54px !important;
}

/***********************************
* HEADER
**********************************/

.elementor .global-header {
	position: absolute;
	top: 30px;
	left: 2%;
	z-index: 9;
}

#sm-mobile-menu .menu-item a {
	text-align: center;
	justify-content: center;
}

#sm-mobile-menu .menu-item .sub-menu li a {
  font-size: 18px;
}

/***********************************
* RESOURCES FILTER
**********************************/
.resource-container {
	max-width: 100%;
	width: 100%;
	margin: auto;
	padding: 35px 40px;
	background: #fff;
}
.resource-container > * {
	max-width: 1440px;
	width: 100%;
	margin: auto;
	margin-left: auto !important;
	margin-right: auto !important;
}
form#resourceForm {
	margin-top: 8px;
}
form#resourceForm, .resource-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
form#resourceForm select, form#resourceForm input {
	border-color: #1A12413D;
	outline: none;
	border-radius: 8px;
}
.clear-filters {
	width: 100%;
	text-align: right;
	order: 4;
}
.clear-filters a {
	color: #438CD0;
	font-size: 16px;
	font-weight: 700;
	transition: all 0.3s ease-in-out !important;
}
.resource-search {
	margin: 0 0 0 auto;
	max-width: 428px;
	width: 100%;
}
.filter-submit button {
	background: #438CD0;
	border-color: #438CD0;
	color: #fff;
	border-radius: 8px;
	transition: all 0.3s ease-in-out !important;
}
.filter-submit button:hover {
	background: #1A1241;
	border-color: #1A1241;
}
.resources-container, .resource-contents {
	margin: 60px 0 0; 
}
.resource-contents {
	display: flex;
	gap: 60px;
	align-items: center;
}

.image-col img {
	border-radius: 20px;
	opacity: 0.7;
}
.image-col {
	max-width: 415px;
	width: 100%;
}
.resource-notes {
	font-size: 16px;

}
.resource-tax p:nth-child(2) {
	background: #438CD04D;
}
.resource-tax p {
	font-size: 14px;
	display: inline-block;
	padding: 8px 12px;
	border-radius: 100px;
	background: #C3E3AE80;
	font-weight: 700;
	color: #1A1241;
}
.content-col h2 {
	font-size: 28px;
	font-weight: 800;
	margin: 0 0 10px 0;
	line-height: 38px;
}
.resource-content {
	font-size: 16px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	margin-bottom: 20px;
}
a.read-more {
	font-size: 16px;
	font-weight: 700;
	color: rgba(26, 18, 65, .5);
	transition: all 0.3s ease-in-out !important;
}

a.read-more:hover, .clear-filters a:hover {
	color: #1A1241;
}
.resource-meta {
	margin-bottom: 20px;
	font-size: 16px;
	line-height: 26px;
	color: rgba(26, 18, 65, 0.6);
	font-style: italic;
}
@media screen and (max-width: 1024px) {
	.resource-contents > div {
		max-width: 100%;
	}
	.resource-contents {
		gap: 30px;
		flex-direction: column-reverse;
	}
	form#resourceForm > div, .resource-filters > div {
		width: 100%;
		max-width: 100%;
	}
	.resource-search {
		order: 1;
	}
	.resource-filters {
		order: 2;
	}
	.filter-submit {
		order: 3;
	}
	.resource-container {
		padding-left: 10px;
		padding-right: 10px;
	}
}
/***********************************
* POP UP VIDEO
**********************************/ 
#sm-popup-video, .sm-popup-video-play {
	cursor: pointer;
}

#sm-popup-video-container
{
	display:none;
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 99999;
	background: #ffffff90;
	top: 0;
}

#sm-popup-video-inner
{
	display:flex;
	margin: auto;
	width: 870px;
	margin-top: 10%;
	border:10px solid #B0575C;
	position:relative;
}

#sm-popup-video-close
{
	color: #fff;
	background: #B0575C;
	font-size: 16px;
	display: block;
	width: 25px;
	height: 25px;
	line-height: 20px;
	text-align: center;
	border-radius: 50%;
	border: 0px solid #000;
	position: absolute;
	right: 5px;
  	top: 5px;
	padding: 2px;
	font-weight: 600;
}

#sm-popup-video-close i::before
{
	font-size: 20px;
	padding: 5px;
	line-height: 21px;
}

/***********************************
* COPY TIP
**********************************/ 
#copytip {
	color: #fff;
	background-color: #161616;
	position: absolute;
	top: -16px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 13px;
	padding: 5px 15px;
	border-radius: 15px;
	opacity: 0;
	transition: all .5s;
}

#copytip.show {
	opacity: 1;
	top: -26px;
}

/***********************************
* STICKY HEADER EFFECT
**********************************/ 
#sm-home-sticky-header, #sm-page-sticky-header {
	top: 0;
}
#home-header-wapper img, #page-header-wapper img {
	transition: all .5s ease-in;
}
#home-header-wapper.scrolled, #page-header-wapper.scrolled {
	transition: all .5s ease-in;
	height:0px;
	overflow: hidden;
}
#home-header-wapper.scrolled-up, #home-header-wapper.scrolled-up-retainer {
	position: fixed;
	background: #000;
	z-index: 99999;
	height:156px;
	transition: all .5s ease-out;
	opacity: 1;
	overflow: hidden;
}
#page-header-wapper.scrolled-up, #page-header-wapper.scrolled-up-retainer {
	position: fixed;
	z-index: 99999;
	box-shadow: 0 1px 8px #00000050;
	height:156px;
	transition: all .5s ease-out;
	opacity: 1;
	/* 	overflow: hidden; */
}
#home-header-wapper.scrolled-down, #page-header-wapper.scrolled-down {
	transition: all .5s ease-in;
	height:0px;
	overflow: hidden;
}

#page-header-wapper.scrolled img, #page-header-wapper.scrolled-up-retainer img {
	max-width: 90px;
}

.testimonials-slider .elementor-swiper-button {
	border: 1px solid #1A124147;
}
.testimonials-slider.home .elementor-swiper-button {
	border: 1px solid #ffffff;
}
.testimonials-slider .elementor-swiper-button:hover {
	color:#ffffff !important;
	background: #1A1241;
}

/***********************************
* SCROLL BLUR EFFECT
**********************************/ 
/* Initial state */
/* div[data-elementor-type="wp-page"] .elementor-element * {    
filter: blur(14px);
transition:
filter 1.6s cubic-bezier(0.22, 1, 0.36, 1),
transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
will-change: opacity, filter, transform;
} */

/* Visible state */
/* div[data-elementor-type="wp-page"] .elementor-element.visible * {
filter: blur(0);
} */

@media (max-width: 768px){
	.hero-section {
		margin: 0 !important;
		width: 100vw !important;
		max-width: 200% !important;
	}
	.testimonials-slider .elementor-testimonial {
		flex-direction: column-reverse;
	}
	.testimonials-slider .elementor-testimonial .elementor-testimonial__header,
	.testimonials-slider .elementor-testimonial .elementor-testimonial__content {
		width: 100%;
		flex-direction: column;
		padding: 0;
	}
	.testimonials-slider .elementor-main-swiper {
		padding-bottom: 100px !important;
	}
	.elementor-49 .elementor-element.elementor-element-749b9b5.elementor-arrows-yes .elementor-main-swiper {
		padding-bottom: 100px;
	}
	.testimonials-slider .elementor-testimonial .elementor-testimonial__header {
		margin-top: 20px;
	}
	.testimonials-slider .elementor-swiper-button.elementor-swiper-button {
		top: calc(100% - 50px) !important;
	}
	.elementor-49 .elementor-element.elementor-element-749b9b5 .elementor-swiper-button {
		top: calc(100% - 50px);
	}
	.testimonials-slider .swiper-pagination {
		top: calc(100% - 20px);
	}
}