/************************************************************************* Defaults */
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;	
}
.fill-white svg path {
	fill: currentColor;
}
.invert img {
	filter: invert(1) brightness(200%);
}


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


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

header {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 9;
    transition: transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
}
header.header-hidden {
	position: fixed;
    display: none;
}
header.header-visible {
	position: fixed;
}

/* Transparent White */
body.dt-transparent-white header {
	color: #fff;
} 
body.dt-transparent-white header .logo a,
body.dt-transparent-white header #hamburger .elementor-icon {
	color: inherit !important;
}
body.dt-transparent-white header svg path {
	fill: currentColor;
}
body.dt-transparent-white header .payment a,
body.dt-transparent-white header .admissions a {
	border: 0;
}
body.dt-transparent-white header .payment a {
	background-color: rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(10.600000381469727px);
    color: #fff !important;
}

/* White Colour */
body.dt-white-colour header {
	background-color: #ffffff;
}
body.dt-white-colour header ul.mainmenu {
	color: #1C2E5B;
}
body.dt-white-colour header svg path {
	fill: revert-layer;	
}

/* Transparent Colour */
body.dt-transparent-color header .payment a {
	background-color: transparent !important;
}
body.dt-transparent-color header .payment a:hover {
	background-color: var(--e-global-color-accent) !important;
	color: #ffffff !important;
}

/* Open */
body header.open,
body header.active {
	background-color: #ffffff !important;
	position: fixed;
}
body header.open ul.mainmenu,
body header.active ul.mainmenu {
	color: #1C2E5B;
}
body header.open svg path,
body header.active svg path {
	fill: revert-layer !important;
}
body header.open .payment a,
body header.active .payment a {
	color: #1C2E5B !important;
	border: 1px solid #1C2E5B;
}





/* ------------------
- Main Menu
-------------------	*/

ul.mainmenu {
	margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 35px;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: -0.16px;  
}
ul.mainmenu > li > a {
	display: flex;
    align-items: center;
    gap: 8px;	
}
.megamenu {
	position: fixed;
    top: var(--header-height);
    left: 0;
    width: 100%;
    background-color: #fff;
    padding: 93px 20px 120px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: 0.5s;
    transform: translateY(-50px);
}
.megamenu.active {
	visibility: visible;
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
}
ul.submenu {
	padding: 0;
    margin: auto;
    list-style: none;
    font-family: var(--e-global-typography-primary-font-family);
    font-size: 24px;
    font-weight: 500;
    color: #000;
    text-transform: none;
    padding-right: 865px;
    position: relative;
    max-width: 1300px;
}
ul.submenu li:not(.heading):not(.image) {
	border-top: 1px solid #B1C1D2;
}
ul.submenu li a {
	display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 28px 0;
    transition: 0.3s;
}
ul.submenu li a:hover {
	opacity: 0.3;
}
ul.submenu li:not(.image) img {
	border-radius: 0;
}
ul.submenu li.heading {
	margin-bottom: 60px;
}
ul.submenu li.image {
	position: absolute;
    right: 0;
    top: 0;
    width: 50%;
}
ul.submenu li:not(.heading) span {
	display: none;
}


/* ------------------
- Split Lines
-------------------	*/

.split-lines {
	overflow: hidden;
}
.split-lines .elementor-heading-title > div {
	overflow: hidden;
	will-change: transform, opacity;
}


/* ------------------
- Vertical Lines
-------------------	*/
.line.vertical {
	height: unset !important;
}
.line.vertical .elementor-divider {
	background-color: var(--e-global-color-68a878b);
}
.line.vertical .elementor-spacer-inner {
	background-color: var(--e-global-color-68a878b);
}
body.elementor-editor-active .line.vertical .elementor-divider {
	height: 100%;
}


/* ------------------
- Fade In Up
-------------------	*/

.fade-in-up {
	opacity: 0;
	transform: translateY(50px);
	will-change: transform, opacity;
}


/* ------------------
- Autoflow
-------------------	*/

.autoflow {
	overflow: hidden;
}
.autoflow .swiper {
	overflow: visible;
}


/* ------------------
- Wipe In
-------------------	*/

.wipe-in .elementor-widget-spacer {
	height: 100%;
}


/* ------------------
- Doctors
-------------------	*/

.doctors .elementor-widget-image-box figure a {
	border-radius: 8px;
    overflow: hidden;
    position: relative;
    display: block;
}
.doctors .elementor-widget-image-box figure a:before {
	content: '';
    background: rgba(6, 17, 28, 0.20);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    transition: 0.5s;
}
.doctors .elementor-widget-image-box figure a img {
	transform: scale(1);
	transition: 1s;
}
.doctors .elementor-widget-image-box figure a:after {
	content: 'View Website';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: underline;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 500;
    opacity: 0;
    transition: 0.5s;
}
.doctors .elementor-widget-image-box figure a:hover:before {
	opacity: 1;
}
.doctors .elementor-widget-image-box figure a:hover img {
	transform: scale(1.2);
}
.doctors .elementor-widget-image-box figure a:hover:after {
	opacity: 1;
}



/* ------------------
- Profiles
-------------------	*/

.profiles > .e-con-inner > [data-element_type="container"]:not(.heading):before {
	content: '';
	background-color: rgba(30, 168, 124, 0.10);
    width: auto;
    left: 10px;
    right: 10px;
    top: 0;
    bottom: 0;
    opacity: 0;
    height: auto;
    transition: 0.5s;
}
.profiles > .e-con-inner > [data-element_type="container"]:not(.heading):hover:before {
	opacity: 1;
}



.profiles > .e-con-inner > [data-element_type="container"] .elementor-widget-image img {
	opacity: 0;
	visibility: hidden;
	transition: 0.5s;
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 9;
}
.profiles > .e-con-inner > [data-element_type="container"].active .elementor-widget-image img {
	opacity: 1;
	visibility: visible;
}


/* ------------------
- Hide Icones
-------------------	*/

.hide-icon .elementor-icon-box-icon {
	visibility: hidden;
}


/* ------------------
- Education Colours
-------------------	*/

.term_9 .duration .elementor-heading-title {
	color: var(--e-global-color-3a078d0) !important;
}
.term_9 .area .elementor-widget-container {
	background-color: rgba(29, 191, 214, 0.15);
}
.term_9 .area .elementor-heading-title {
	color: var(--e-global-color-3a078d0);
}
.term_10 .duration .elementor-heading-title {
	color: var(--e-global-color-22bf9e8);
}
.term_10 .area .elementor-widget-container {
	background-color: rgba(30, 168, 124, 0.1);
}
.term_10 .area .elementor-heading-title {
	color: var(--e-global-color-22bf9e8);
}
.term_11 .duration .elementor-heading-title {
	color: var(--e-global-color-accent);
}
.term_11 .area .elementor-widget-container {
	background-color: var(--e-global-color-d818bcb);
}
.term_11 .area .elementor-heading-title {
	color: var(--e-global-color-accent);
}


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

	/* ------------------
	- Main Menu
	-------------------	*/
	
	ul.mainmenu {
	    gap: 20px;
	}
	
}


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

	/* ------------------
	- Main Menu
	-------------------	*/

	ul.mainmenu {
		flex-direction: column;
		font-size: 24px;
		color: #1C2E5B;
		padding: 27px 0;
	}
	ul.mainmenu > li > a {
	    justify-content: space-between;
	}
	ul.mainmenu > li svg {
		width: 17px;
		height: auto;	
	}
	.megamenu {
		display: none;
	    position: relative;
	    top: 0;
	    left: 0;
	    padding: 0;
	    visibility: visible;
	    opacity: 1;
	    pointer-events: all;
	}
	ul.submenu {
	    padding: 10px 0 30px;
        font-size: 18px;
        font-weight: 400;
        color: #1C2E5B;
	}
	ul.submenu li {
		border: 0 !important;
	}
	ul.submenu li a {
		padding: 10px 0;
	}
	ul.submenu li:not(.heading) span {
	    display: block;
	}
	ul.submenu li img,
	ul.submenu li svg {
		display: none;
	}
	ul.submenu li.heading,
	ul.submenu li.image {
		display: none;
	}
	.megamenu.active {
		display: block;
	}
	

	/* ------------------
	- Autoflow
	-------------------	*/

	.autoflow-tablet {
		overflow: hidden;
	}
	.autoflow-tablet .swiper {
		overflow: visible;
	}
	
	
	/* ------------------
	- Profiles
	-------------------	*/
	
	.profiles > .e-con-inner > [data-element_type="container"] .elementor-widget-image img {
		opacity: 1;
		visibility: visible;
		position: relative;
	    left: 0;
	    top: 0;
	    transform: none;
	}

}


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

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

	body.m-transparent-white header {
		color: #fff;
		background-color: transparent;
	}
	body.m-transparent-white header .logo a,
	body.m-transparent-white header #hamburger .elementor-icon {
		color: inherit !important;
	}
	body.m-transparent-white header svg path {
		fill: currentColor;
	}
	body.m-white-colour header {
	    background-color: #fff;
	}

	body.m-white-colour header svg path {
	    fill: revert-layer;
	}

}