/* ------------------
- Default
-------------------	*/

body {
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
}
a {
	color: inherit;
}
strong {
	font-weight: 600;	
}


/* ------------------
- Text Editor
-------------------	*/

.elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}


/* ------------------
- Buttons with Arrow
-------------------	*/
.elementor-button .elementor-button-icon,
.w-special-arrows .elementor-icon-wrapper {
	position: relative;
	display: inline-flex;
	overflow: hidden;
	width: 30px;
	height: 15px;
}
.elementor-button .elementor-button-icon svg,
.w-special-arrows .elementor-icon-wrapper svg {
	position: absolute;
	top: 50%;
	left: 0;
	width: 15px;
	height: 15px;
	transform: translateY(-50%);
	transition: transform 0.8s ease;
}
.elementor-button .elementor-button-icon svg:first-child,
.w-special-arrows .elementor-icon-wrapper svg:first-child {
	transform: translate(50%, -50%);
}
.elementor-button .elementor-button-icon svg:last-child,
.w-special-arrows .elementor-icon-wrapper svg:last-child {
	transform: translate(-35px, -50%);
}
.elementor-button:hover .elementor-button-icon svg:first-child,
.w-special-arrows .jet-listing-grid__item:hover .elementor-icon-wrapper svg:first-child {
	transform: translate(35px, -50%);
}
.elementor-button:hover .elementor-button-icon svg:last-child,
.w-special-arrows .jet-listing-grid__item:hover .elementor-icon-wrapper svg:last-child {
	transform: translate(50%, -50%);
}







.banner-arrow {
	animation: floatArrow 1s ease-in-out infinite;
}
.banner-arrow .elementor-icon {
	position: relative;
	display: inline-flex;
	overflow: hidden;
	width: 1em;
	height: 1.4em;
}
.banner-arrow .elementor-icon svg {
	position: absolute;
	left: 50%;
	top: 0;
	width: 1em;
	height: 1em;
	transform: translateX(-50%);
	transition: transform 0.35s ease;
}
.banner-arrow .elementor-icon svg:first-child {
	transform: translate(-50%, 0);
}
.banner-arrow .elementor-icon svg:last-child {
	transform: translate(-50%, -35px);
}

.banner-arrow:hover .elementor-icon svg:first-child {
	transform: translate(-50%, 35px);
}
.banner-arrow:hover .elementor-icon svg:last-child {
	transform: translate(-50%, 0);
}

@keyframes floatArrow {
	0% {
		transform: translateY(0);
	}
	25% {
		transform: translateY(-6px);
	}
	75% {
		transform: translateY(6px);
	}
	100% {
		transform: translateY(0);
	}
}


/* ------------------
- Autoflowed
-------------------	*/

body:not(.elementor-editor-active) .autoflowed {
	overflow: hidden;
}
.autoflow .swiper {
	overflow: visible;
}


/* ------------------
- Header
-------------------	*/

header {
    position: fixed;
    top: 0;
    z-index: 9;
    width: 100%;
/*     transition-delay: 1s; */
}


body.home header .logo {
	display: none;
}
header .logo-holder .circle {
	width: 54px;
    position: absolute;
    left: -13px;
    top: -8px;
}
header .logo-holder circle {
	fill: none;
	stroke: #000;
	stroke-width: 2px;	
	stroke-dasharray: 283;
	stroke-dashoffset: 283;
	transition: stroke-dashoffset 1.5s ease;
}
header #hamburger {
	display: none;
	cursor: pointer;
}

header.active {
	filter: invert(0) !important;
	background-color: #fff;
}
header.active .light {
	filter: unset;
}

body.home header.active .logo {
	display: block;
}
header.active svg.logo * {
	transform: translateX(calc(-10px * var(--i)));
	opacity: 0;
}
header.active svg.logo *:nth-child(1),
header.active svg.logo *:nth-child(2) {
	transform: none !important;
	opacity: 1 !important;
}
header.active .logo-holder circle {
	stroke-dashoffset: 0;
}
header.active .menu {
	display: none;
}
header.active #hamburger {
	display: block;
}

header .light {
	filter: invert(1);
}



/* ------------------
- Mega Menu
-------------------	*/
.menumenu {
/* 	overflow: auto; */
	overflow: visible;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.menumenu::-webkit-scrollbar {
	display: none;
}
.menumenu .sub-menu {
	display: none !important;
	min-width: 300px !important;
    width: 100% !important;
    overflow: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.menumenu .sub-menu::-webkit-scrollbar {
	display: none;
}
.menumenu li.is-open .sub-menu {
	display: block !important;
	padding-top: 30px !important;
}
.hidden {
	display: none;
}
.menumenu li a:hover,
.menumenu li a.is-active {
	text-decoration: underline;
}
.menumenu li a.is-dimmed {
	opacity: 0.15;
} 

/* ------------------
- Banner Video
-------------------	*/

.greyscale .elementor-background-video-container {
	filter: grayscale(1);
}

/* ------------------
- Counter
-------------------	*/

.counter {
	counter-reset: count;
}
.counter .elementor-icon-box-icon .elementor-icon {
	position: relative;
}
.counter .elementor-icon-box-icon .elementor-icon svg {
	visibility: hidden;
}
.counter .elementor-icon-box-icon .elementor-icon::before {
	counter-increment: count;
	content: counter(count, decimal-leading-zero);
	font-family: "DM Mono";
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.42px;
	position: absolute;
	left: 0;
	top: 7px;
}

/* Count Counter */
.counter .count-me .elementor-widget-image {
	position: relative;
}
.counter .count-me .elementor-widget-image::before {
	counter-increment: count;
	content: counter(count, decimal-leading-zero);
	font-family: "DM Mono";
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.42px;
	position: absolute;
	left: calc((var(--padding-left) * -1) + 10px);
	top: 3px;
}

/* Accordion Counter */
.elementor-widget-n-accordion.counter .e-n-accordion-item-title-text {
	position: relative;
}
.elementor-widget-n-accordion.counter .e-n-accordion-item-title-text::before {
	counter-increment: count;
	content: counter(count, decimal-leading-zero);
	font-family: "DM Mono";
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.42px;
	position: absolute;
    left: -140px;
}

.with-lines .e-n-accordion details .line {
	content: '';
	position: absolute;
    background: #C9D2D1;
    height: 1px;
    top: 0;
    left: 0;
}


.cycle-colours .elementor-icon-box-title {
	transition: color 0.4s ease;
}
   

/* ------------------
- Team - Caption
-------------------	*/

.team figure {
	position: relative;
}
.team figcaption {
	position: absolute;
    top: 20px;
    right: 20px;
    border-radius: 100px;
    border: 1px solid rgba(235, 238, 238, 0.53);
    background: linear-gradient(87deg, rgba(201, 210, 209, 0.35) 11.93%, rgba(235, 238, 238, 0.41) 81.62%);
    backdrop-filter: blur(1.3px);
    padding: 5px 10px;
}



.contact-details table tr td:first-child {
	width: 50px;
}


/* ------------------
- Seperate Me
-------------------	*/

.separate-me .jet-listing-grid__item:nth-child(4n+2) {
	position: relative;
}
.separate-me .jet-listing-grid__item:nth-child(4n+2):before {
	content: '';
    background-color: #c9d2d1;
    position: absolute;
    left: 0;
    top: 25px;
    bottom: 25px;
    width: 1px;
}
.separate-me .jet-listing-grid__item:nth-child(4n+2):after {
	content: '';
    background-color: #c9d2d1;
    position: absolute;
    right: 0;
    top: 25px;
    bottom: 25px;
    width: 1px;
}


/* ------------------
- single Post
-------------------	*/

.wp-block-columns {
	display: flex;
	gap: 20px;
}
.wp-block-columns figure {
	margin: 0;
}

/* Headings */
.elementor-widget-theme-post-content p:first-of-type {
	font-size: 20px;
	line-height: 28px;
}
.elementor-widget-theme-post-content h2,
.default-content h1 {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
    margin-top: 55px;
    margin-bottom: 15px;
}
.elementor-widget-theme-post-content h3,
.default-content h2 {
	font-family: var(--e-global-typography-c0f49e8-font-family), Sans-serif;
    font-size: var(--e-global-typography-c0f49e8-font-size);
    line-height: var(--e-global-typography-c0f49e8-line-height);
    margin-top: 55px;
    margin-bottom: 15px;
}
.elementor-widget-theme-post-content h4,
.default-content h3 {
	font-family: var(--e-global-typography-48cb6f4-font-family), Sans-serif;
    font-size: var(--e-global-typography-48cb6f4-font-size);
    font-weight: var(--e-global-typography-48cb6f4-font-weight);
    line-height: var(--e-global-typography-48cb6f4-line-height);
    margin-top: 55px;
    margin-bottom: 15px;
}
.elementor-widget-theme-post-content h5,
.default-content h4 {
	font-family: var(--e-global-typography-75d285e-font-family), Sans-serif;
    font-size: var(--e-global-typography-75d285e-font-size);
    font-weight: var(--e-global-typography-75d285e-font-weight);
    margin-top: 55px;
    margin-bottom: 15px;
}
.elementor-widget-theme-post-content h6,
.default-content h5 {
	font-family: var(--e-global-typography-2ce727f-font-family), Sans-serif;
    font-size: var(--e-global-typography-2ce727f-font-size);
    font-weight: var(--e-global-typography-2ce727f-font-weight);
    text-transform: var(--e-global-typography-2ce727f-text-transform);
    letter-spacing: var(--e-global-typography-2ce727f-letter-spacing);
    margin-top: 55px;
    margin-bottom: 15px;
}
.elementor-widget-theme-post-content ul,
.default-content ul {
	padding-left: 15px;
	margin-bottom: 55px;
}
.elementor-widget-theme-post-content figure {
	margin: 45px 0;
}

	
.default-content .elementor-widget-container h2:first-of-type {
	margin-top: 0;
}

/* Blockquote */
blockquote {
	border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-left: 0;
    margin-right: 0;
    position: relative;
    padding: 70px 0 55px 70px;
}
blockquote:before {
	content: '“';
    color: #000;
    font-family: "DM Sans";
    font-size: 100.982px;
    font-style: italic;
    font-weight: 400;
    line-height: 85px;
    position: absolute;
    left: 5px;
    top: 64px;
}
blockquote em {
	font-size: 20px;
}


/* #CCC3BB */


/* ------------------
- Form
-------------------	*/

.elementor-form label {
	position: absolute;
    right: 7px;
    bottom: 9px;
}
.elementor-form input,
.elementor-form textarea {
	padding-left: 0 !important;
	box-shadow: none !important;
}
.elementor-form input::placeholder,
.elementor-form textarea::placeholder {
	opacity: 0.5;
}

.elementor-form textarea {
	height: 47px;	
}
.elementor-form textarea:focus,
.elementor-form textarea:not(:placeholder-shown) {
	height: 147px;	
}



.ue_info {
	width: 100%;
}
.ue_main {
	width: 100%;
    justify-content: space-between !important;
    display: flex;
}
.ue_option:not(.active) .ue_main::after {
	content: '+';
}


@media screen and (max-width: 1024px) {

	header #hamburger {
		display: block;
	}

}

@media screen and (max-width: 767px) {
	
	/* ------------------
	- Mega Menu
	-------------------	*/

	.menumenu .sub-menu {
	    min-width: 0 !important;
	    width: 100% !important;
	    margin-left: 0 !important;
	    position: relative !important;
	    margin-top: 0 !important;
	}
	.menumenu li.is-open .sub-menu {
		padding-top: 0 !important;
	}
	.menumenu .sub-menu li a {
		font-size: 18px !important;
		margin-left: 0 !important;
		padding-left: 0 !important;
		border-inline-start: none;
	}
	.contacts.hidden {
		display: flex !important;
	}


	/* ------------------
	- Seperate Me
	-------------------	*/

	.separate-me .jet-listing-grid__item:nth-child(4n) {
		display: none;
	}
	
	.separate-me .jet-listing-grid__item:nth-child(4n+2):before,
	.separate-me .jet-listing-grid__item:nth-child(4n+2):after {
		display: none;
	}
	
	
	/* ------------------
	- Counter
	-------------------	*/
	
	/* Accordion Counter */
	.elementor-widget-n-accordion.counter .e-n-accordion-item-title-text::before {
	    left: -40px;
	}
	
	
	/* ------------------
	- Single Post
	-------------------	*/
	
	blockquote {
	    padding: 45px 0 32px 50px;
	}
	
	blockquote:before {
	    font-size: 69px;
	    left: 0px;
	    top: 34px;
	}

}