/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */


:root {
	/*---- MASTER VALUES ----*/

	--master-font-size: 	 100px;
	--master-line-height: 	 1em;
	--master-letter-spacing: 0em;
	--master-section-pad: 	 10px;

	/*---- FRAME SIZES ----*/

	--frame-max-l: 1600px;
	--frame-max-m: 1400px;
	--frame-max-s: 1000px;
	--frame-pad:   320px;
	--frame-width: calc(100% - (var(--frame-pad) / 2));

	/*---- SPACING ----*/

	--column-gap: 10px;
	--row-gap: 10px;

	/*---- FONTS ----*/

	--font-main: 	 "montserrat", var(--font-default);
	--font-body:	 "montserrat", var(--font-default);
	--font-default:  "sans-serif";
	--font-fa: 		 FontAwesome;
	--font-fa-sharp: "Font Awesome 6 Sharp";

	/*---- FONT SIZING ----*/

	--size-1:  clamp(10px, 0.13rem, 13px);
	--size-2:  clamp(14px, 0.16rem, 16px);
	--size-3:  clamp(16px, 0.18rem, 18px);
	--size-4:  clamp(18px, 0.22rem, 22px);
	--size-5:  clamp(22px, 0.26rem, 26px);
	--size-6:  clamp(24px, 0.30rem, 30px);
	--size-7:  clamp(22px, 0.34rem, 34px);
	--size-8:  clamp(26px, 0.36rem, 36px);
	--size-9:  clamp(26px, 0.42rem, 42px);
	--size-10: clamp(30px, 0.46rem, 46px);
	--size-11: clamp(30px, 0.50rem, 50px);
	--size-12: clamp(34px, 0.54rem, 54px);
	--size-13: clamp(34px, 0.58rem, 58px);
	--size-14: clamp(34px, 0.62rem, 62px);
	--size-15: clamp(34px, 0.66rem, 66px);
	--size-16: clamp(34px, 0.70rem, 70px);

    --size-h1: var(--size-16);
    --size-h2: var(--size-11);
    --size-h3: var(--size-5);
    --size-h4: var(--size-4);
    --size-h5: var(--size-5);
    --size-h6: var(--size-4);

	/*---- PADDING ----*/

	--pad-1:25px;
	--pad-2:50px;
	--pad-3:75px;
	--pad-4:100px;
	--pad-5:125px;
	--pad-6:150px;
	--pad-7:175px;
	--pad-8:200px;


	/*---- COLOURS ----*/

	--colour-primary: 	  #258def;
	--colour-secondary:   #1353df;
	--colour-white: 	  #FFF;
	--colour-black: 	  #000;
	--colour-background: #E3E3DE;
	--colour-grey: #A2A2A2;;
	--colour-text:  #222;

	/*---- TRANSITIONS ----*/

	--transition: 	all 0.3s cubic-bezier(0,0,0.1,0.9);;
	--transition-fast: all 0.15s cubic-bezier(0,0,0.1,0.9);
	--transition-hover:   	all 0.1s ease-in-out 0s;
}

/*---- UNIVERSAL - FONT SIZE ADJUSTMENT ----*/

@media screen and (max-width:1600px) { :root { --master-font-size: 90px; }}
@media screen and (max-width:1400px) { :root { --master-font-size: 80px; }}
@media screen and (max-width:1200px) { :root { --master-font-size: 70px; }}
@media screen and (max-width:1000px) { :root { --master-font-size: 60px; }}
@media screen and (max-width:800px)  { :root { --master-font-size: 50px; }}
@media screen and (max-width:600px)  { :root { --master-font-size: 40px; }}
@media screen and (max-width:400px)  { :root { --master-font-size: 30px; }}


/*---- DEFAULT - TEXT FORMATTING CSS ----*/

/* Text - Headers */
/* -------------- */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: 	var(--font-main);
	text-transform: none;
	padding-bottom: 0px;
}
h1, .h1 {
	font-weight: 	900;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h2, .h2 {
	font-weight: 	900;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h3, .h3 {
	font-weight: 	600;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h4, .h4 {
	font-weight: 	600;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h5, .h5 {
	font-weight: 	600;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h6, .h6 {
	font-weight: 	600;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}

h1, .h1 { font-size: var(--size-h1); line-height: calc(var(--master-line-height) * 1.2); }
h2, .h2 { font-size: var(--size-h2);  line-height: calc(var(--master-line-height) * 1.2); }
h3, .h3 { font-size: var(--size-h3);  line-height: calc(var(--master-line-height) * 1.5); }
h4, .h4 { font-size: var(--size-h4);  line-height: calc(var(--master-line-height) * 1.2); }
h5, .h5 { font-size: var(--size-h5);  line-height: calc(var(--master-line-height) * 1.2); }
h6, .h6 { font-size: var(--size-h6);  line-height: calc(var(--master-line-height) * 1.2); }


/*---- Text - Inline Tags ----*/

strong, b {
	font-weight: 900;
}
strong, span, em, a, i, b, strike {
	font-size: inherit;
	color: inherit;
	line-height: inherit;
}
p span, p , li, .footer .foot-menu > li a, label {
	font-weight: 400;
	color: inherit;
	font-family: var(--font-body);
	letter-spacing: 0px;
	line-height: calc(var(--master-line-height) * 1.7);
	font-size: 16px;
}
a {
	transition: var(--transition);
}
a:hover {
	color: var(--colour-primary);
	transition: var(--transition);
}

hr {
	border: 0;
	border-top: 1px solid rgba(0,0,0,0.15);
	margin: 20px 0;
}

.font-large p,
.font-large p span {
	font-size: clamp(20px, 0.30rem ,26px);
	line-height: calc(var(--master-line-height) * 1.7);
}


/*---- Text - Lists ----*/

li { list-style-position: inside; }

/*---- Ordered Lists ----*/

.et_pb_section ol {
	counter-reset: list-counter;
	padding-left: 30px;
}
.et_pb_section ol li {
	counter-increment: list-counter;
	list-style: none;
}
.et_pb_section ol li::before {
	content: counter(list-counter)".";
	margin: 0px 15px 0px -30px;
	min-width: 10px;
	display: inline-flex;
	font-weight: 500;
}

/*---- Text Size Overrides ----*/
.et_pb_column_1_3 h1,
.et_pb_column_1_4 h1,
.et_pb_column_1_5 h1,
.et_pb_column_1_6 h1,
.et_pb_column_2_5 h1 {
	font-size: var(--size-h1);
}
.et_pb_column_1_3 h2,
.et_pb_column_1_4 h2,
.et_pb_column_1_5 h2,
.et_pb_column_1_6 h2,
.et_pb_column_2_5 h2 {
	font-size: var(--size-h2);
}
.et_pb_column_1_3 h3,
.et_pb_column_1_4 h3,
.et_pb_column_1_5 h3,
.et_pb_column_1_6 h3,
.et_pb_column_2_5 h3 {
	font-size: var(--size-h3);
}
.et_pb_column_1_3 h4,
.et_pb_column_1_4 h4,
.et_pb_column_1_5 h4,
.et_pb_column_1_6 h4,
.et_pb_column_2_5 h4 {
	font-size: var(--size-h4);
}
.et_pb_column_1_3 h5,
.et_pb_column_1_4 h5,
.et_pb_column_1_5 h5,
.et_pb_column_1_6 h5,
.et_pb_column_2_5 h5 {
	font-size: var(--size-h5);
}
.et_pb_column_1_3 h6,
.et_pb_column_1_4 h6,
.et_pb_column_1_5 h6,
.et_pb_column_1_6 h6,
.et_pb_column_2_5 h6 {
	font-size: var(--size-h6);
}

/*---- DEFAULT - DOCUMENT STRUCTURE CSS ----*/

html {
	font-size: 		var(--master-font-size);
	line-height: 	var(--master-line-height);
	letter-spacing: var(--master-letter-spacing);
	font-family: 	var(--font-main);
}
html body.frame-full-width .body .frame { padding: 0px; }
body, html, .et_pb_section 				{ background-color: var(--colour-background); }
html *::selection 						{ background-color: var(--colour-primary); color: var(--colour-white); }

body {
	color: var(--colour-text);
}

*, *::before, *::after {
	box-sizing: border-box;
}

@media screen and (max-width:1600px) { :root { --frame-pad: 160px; } }
@media screen and (max-width:1400px) { }
@media screen and (max-width:1200px) { :root { --frame-pad: 140px; } }
@media screen and (max-width:1000px) { }
@media screen and (max-width:800px)  { }
@media screen and (max-width:600px)  { :root{ --frame-pad: 120px; } }
@media screen and (max-width:400px)  { }

/*---- DEFAULT - POST BUILDER STRUCTURE CSS ----*/

.et_pb_section .et_pb_module {
	margin: 0px;
	margin-bottom: 0px !important;
}
.et_pb_section .et_pb_row {
	display: 	flex;
	flex-wrap: 	nowrap;
	row-gap: 	clamp(30px, calc(var(--row-gap) * 6), 60px);
	column-gap: clamp(30px, calc(var(--column-gap) * 6), 60px);
	max-width:  var(--frame-max-m);
	width: 		var(--frame-width);
	padding: 	0px;
}
.et_pb_section .et_pb_column {
	display: 		flex;
	flex-direction: column;
	max-width: 		unset;
	column-gap: 	clamp(30px, calc(var(--column-gap) * 4), 40px);
	margin: 		0px !important;
	width:			100%;
	float:			none;
}
.et_pb_row::after {
	display: none;
}
.et_pb_section:has(.et_pb_row_2) .et_pb_row {
	padding-bottom: 30px;
}
.et_pb_section:has(.et_pb_row_2) .et_pb_row:last-child {
	padding-bottom: 0px;
}

.et_pb_section .et_pb_column.et_pb_column_1_6  	{ flex: 1 1 12%; }
.et_pb_section .et_pb_column.et_pb_column_1_5  	{ flex: 1 1 15%; }
.et_pb_section .et_pb_column.et_pb_column_1_4  	{ flex: 1 1 25%; }
.et_pb_section .et_pb_column.et_pb_column_1_3   { flex: 1 1 33%; }
.et_pb_section .et_pb_column.et_pb_column_1_2   { flex: 1 1 45%; }

@media screen and (max-width:1600px){}
@media screen and (max-width:1400px){
	.et_pb_section .et_pb_row:has(.et_pb_column.et_pb_column_1_4, .et_pb_column.et_pb_column_1_5, .et_pb_column.et_pb_column_1_6) { flex-wrap: wrap; }
	.et_pb_section .et_pb_column.et_pb_column_1_4 { flex: 1 1 45%; }
	.et_pb_section .et_pb_column.et_pb_column_1_5 { flex: 1 1 25%; }
	.et_pb_section .et_pb_column.et_pb_column_1_6 { flex: 1 1 25%; }
}
@media screen and (max-width:1200px){}
@media screen and (max-width:1000px){
	:root { --row-gap: 8px; --column-gap: 8px; }

	.et_pb_section .et_pb_row:has(.et_pb_column.et_pb_column_1_2) { flex-wrap: wrap; }
	.et_pb_section .et_pb_column.et_pb_column_1_2 { flex: 1 1 100%; }
	.et_pb_section .et_pb_column.et_pb_column_1_5 { flex: 1 1 45%; }
	.et_pb_section .et_pb_column.et_pb_column_1_6 { flex: 1 1 45%; }
}
@media screen and (max-width:800px) {
	.et_pb_section .et_pb_column.et_pb_column_1_4 { flex: 1 1 100%; }
	.et_pb_section .et_pb_column {
		row-gap: 	clamp(30px, calc(var(--row-gap) * 6), 60px);
	}
}
@media screen and (max-width:600px) {
	:root { --row-gap: 4px; --column-gap: 4px; }

	.et_pb_section .et_pb_column.et_pb_column_1_5 { flex: 1 1 100%; }
	.et_pb_section .et_pb_column.et_pb_column_1_6 { flex: 1 1 100%; }
}
@media screen and (max-width:400px) {}

/*---- DEFAULT - SECTION CSS ----*/

.et_pb_section.colour-1 { background-color: var(--colour-primary); 	}
.et_pb_section.colour-2 { background-color: var(--colour-secondary); }
.et_pb_section.colour-white { background-color: var(--colour-white); }
.et_pb_section.colour-black { background-color: var(--colour-black); }


#main-content .et_pb_section { padding: clamp(60px, calc(var(--master-section-pad) * 15), 150px); }
#main-content .et_pb_section.section-pad-0 { padding: clamp(0px,  calc(var(--master-section-pad) * 0), 0px);    }
#main-content .et_pb_section.section-pad-1 { padding: clamp(60px, calc(var(--master-section-pad) * 4), 40px);   }
#main-content .et_pb_section.section-pad-2 { padding: clamp(60px, calc(var(--master-section-pad) * 6), 60px);   }
#main-content .et_pb_section.section-pad-3 { padding: clamp(60px, calc(var(--master-section-pad) * 8), 80px);   }
#main-content .et_pb_section.section-pad-4 { padding: clamp(60px, calc(var(--master-section-pad) * 10), 100px); }
#main-content .et_pb_section.section-pad-5 { padding: clamp(60px, calc(var(--master-section-pad) * 12), 120px); }
#main-content .et_pb_section.section-pad-6 { padding: clamp(60px, calc(var(--master-section-pad) * 18), 180px); }


#main-content .et_pb_section.pad-top-none { padding-top: 0px; }
#main-content .et_pb_section.pad-bot-none { padding-bottom: 0px; }

#main-content .et_pb_section { padding-left: 0px !important; padding-right: 0px !important; }

body .et_pb_section:where(.colour-1, .colour-2, .overlay-1, .overlay-2, .overlay-3) .et_pb_text *,
body .et_pb_section:where(.colour-1, .colour-2, .colour-black, .overlay-1, .overlay-2, .overlay-3) .et_pb_module_heading { color: var(--colour-white); }
body .et_pb_section:where(.overlay-1, .overlay-2, .overlay-3) .et_pb_image_wrap {
	position: relative;
	z-index: 1;
}
body .et_pb_section:where(.overlay-1, .overlay-2, .overlay-3) .et_pb_image_wrap::before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: var(--colour-black);
	opacity: 0.5;
	z-index: 1;
}

@media screen and (max-width: 1400px) { :root { --master-section-pad: 8px; } }
@media screen and (max-width: 1000px) { :root { --master-section-pad: 6px; } }
@media screen and (max-width: 600px)  { :root { --master-section-pad: 4px; } }

/*---- DEFAULT - BUTTON CSS ----*/

body .et_pb_section button.et_pb_button,
body .et_pb_section a.et_pb_button {
    position: relative;
    padding: 15px 25px !important;
    background: none !important;
    border: none !important;
	width: fit-content;
    z-index: 2;
	opacity: 1;

    display: flex;
	align-items: center;
	justify-content: center;
    column-gap: 0px;

	font-weight: 500;
	font-size: var(--size-1);
	font-family: var(--font-main);
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1.95px;
	white-space: nowrap;
	color: var(--colour-white);
	line-height: calc(var(--master-line-height) * 1.5);

	transition: var(--transition);
}


body .et_pb_section button.et_pb_button:hover,
body .et_pb_section a.et_pb_button:hover {
	color: var(--colour-primary);
}

body .et_pb_section button.et_pb_button::before,
body .et_pb_section a.et_pb_button::before {
    content: "";
    width: 100%;
    height: 100%;
	background-color: var(--colour-primary);
    display: flex;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    opacity: 1;
    transition: var(--transition);
	margin-left: 0 !important;
}
body .et_pb_section button.et_pb_button:hover::before,
body .et_pb_section a.et_pb_button:hover::before {
    background-color: var(--colour-white) !important;
}

/**
 * Button Arrow
 * -------------
 * Enable comment text to add an chevron icon to the button.
 * The arrow is positioned after the button text.
**/
body .et_pb_section button.et_pb_button::after,
body .et_pb_section a.et_pb_button::after {
	display: none;
}

/* body .et_pb_section button.et_pb_button::after,
body .et_pb_section a.et_pb_button::after {
    content: "\f054";
    position: unset;
    opacity: 1;
    font-family: var(--font-fa) !important;
    color: inherit;
    font-size: 14px;
    margin-left: 20px;
    display: flex;
    align-items: center;
    transition: var(--transition);
    z-index: 3;
}

body .et_pb_section button.et_pb_button:hover::after,
body .et_pb_section a.et_pb_button:hover::after {
	color: var(--colour-primary);
} */

.et_pb_button i, button i,
.et_pb_button span, button span,
.et_pb_button em, button em {
	font-weight: 300;
	font-size: 1.2em;
	color: inherit;
}

/*----  BUTTON VARIANTS ----*/
body .et_pb_section button.et_pb_button.clear-btn,
body .et_pb_section a.et_pb_button.clear-btn {
    color: var(--colour-white);
}
body .et_pb_section button.et_pb_button.clear-btn::after,
body .et_pb_section a.et_pb_button.clear-btn::after {
    color: var(--colour-white);
}

/*---- SCROLL BUTTON ----*/
body .et_pb_section .et_pb_row:has(.scroll-btn),
body .et_pb_section .et_pb_column:has(.scroll-btn),
body .et_pb_section .et_pb_button_module_wrapper:has(.scroll-btn),
body .et_pb_section a.et_pb_button.scroll-btn {
	position: unset;
}
body .et_pb_section a.et_pb_button.scroll-btn {
	position: absolute;
	bottom: 30px;
	left: 50%;
	padding: 0px !important;
}
body .et_pb_section a.et_pb_button.scroll-btn::before {
	display: none;
}
body .et_pb_section a.et_pb_button.scroll-btn::after {
	content: '\f322';
	color: var(--colour-white);
	margin: 0;
	font-size: 18px;
}

@media screen and (max-width:1600px){}
@media screen and (max-width:1400px){}
@media screen and (max-width:1200px){}
@media screen and (max-width:1000px){}
@media screen and (max-width:800px) {}
@media screen and (max-width:600px) {}
@media screen and (max-width:400px) {}

/*---- DEFAULT - PB BLOCK CSS ----*/


/* Block - Image */
/* --------------- */
.et_pb_image .et_pb_image_wrap {
	width: 100%;
}

@media screen and (max-width: 1000px) {
body .et_pb_module .et_pb_image_wrap img {
		width: 100%;
	}
}
/* Block - Content */
/* --------------- */

.center.et_pb_text * {
	text-align: center;
}

#left-area ul, .entry-content ul, .et-l--body ul, .et-l--footer ul, .et-l--header ul {
    padding: 0px;
    line-height: 26px;
}

.et_pb_section .et_pb_divider:before {
    border-top-color: var(--colour-grey);
}

/* Negative Margin */

.nm-200 {
	margin-top: -200px !important;
}

/* Block - FAQ */
/* -------------- */

.et_pb_row:has(.et_pb_toggle) .et_pb_column {
	row-gap: 0px;
}
.et_pb_row:has(.et_pb_toggle) .et_pb_module_heading {
	text-align: center;
}
.et_pb_accordion {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}
.et_pb_toggle_close,
.et_pb_toggle_open {
	transition: var(--transition);
    background-color: var(--colour-white);
	border-radius: 20px;
    padding: 30px;
}
.et_pb_toggle_close .et_pb_toggle_title,
.et_pb_toggle_open .et_pb_toggle_title,
.et_pb_toggle_item h5 {
    color: var(--colour-black) !important;
	margin: 0px;
	font-family: var(--font-main);
	font-size: .22rem;
	font-weight: 600;
	line-height: 30px;
	text-transform: none;
	letter-spacing: normal;
}
.et_pb_module.et_pb_toggle_item:not(:last-child) {
	border-bottom: 1px solid #2222222e;
}
.et_pb_toggle .et_pb_toggle_title:before {
	content: '\2b';
	font-family: var(--font-fa) !important;
    right: 0px;
    font-size: 25px;
    color: var(--colour-secondary);
}
.et_pb_toggle.et_pb_toggle_open .et_pb_toggle_title:before {
	content: '\f068';
	display: block;
	visibility: visible;
    color: var(--colour-secondary);
}
.et_pb_toggle_close {
	outline: 1px solid var(--colour-grey);
}
.et_pb_toggle_close:hover {
	outline: 3px solid var(--colour-secondary);
	background-color: var(--colour-white);
}
.et_pb_toggle_open {
    box-shadow:
	0px 112px 31px 0px rgba(15, 0, 0, 0.00),
	0px 72px 29px 0px rgba(15, 0, 0, 0.02),
	0px 40px 24px 0px rgba(15, 0, 0, 0.04),
	0px 18px 18px 0px rgba(15, 0, 0, 0.06),
	0px 4px 10px 0px rgba(15, 0, 0, 0.08);
}
.et_pb_toggle_open h5.et_pb_toggle_title {
    color: var(--colour-secondary) !important;
}
.et_pb_column .et_pb_module.et_pb_toggle {
	margin: 0px;
}
.et_pb_toggle {
    border: 0px solid;
}
.et_pb_toggle_content {
	padding-top: 10px;
}


@media screen and (max-width: 800px) {
	.et_pb_toggle_close .et_pb_toggle_title, .et_pb_toggle_item h5 {
	    padding-right: 0 !important;
	}
	.et_pb_toggle .et_pb_toggle_title:before {
	    left: auto;
	    right: -50px;
	}
	.et_pb_toggle_close, .et_pb_toggle_open {
		padding-left: 0px;
	}
	.et_pb_toggle_close .et_pb_toggle_title, .et_pb_toggle_item h5 {
	    font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.et_pb_toggle_close .et_pb_toggle_title, .et_pb_toggle_item h5 {
	    font-size: 16px;
	}
}



/* Block - Slider */
/* -------------- */

.et_pb_section .et_pb_module .swiper-button-prev,
.et_pb_section .et_pb_module .swiper-button-next {
	background-color: var(--colour-primary) !important;
	background-image: none !important;
	border-radius: 0px;
	transition: var(--transition);
}
.et_pb_section .et_pb_module .swiper-button-next:hover,
.et_pb_section .et_pb_module .swiper-button-prev:hover {
	background-color: var(--colour-white) !important;
	transition: var(--transition);
}
.et_pb_section .et_pb_module .swiper-button-next:hover i,
.et_pb_section .et_pb_module .swiper-button-prev:hover i {
	color: var(--colour-primary);
	transition: var(--transition);
}
.divi8-testi-icon-left, .divi8-testi-icon-right {
    font-size: var(--size-5) !important;
}


@media screen and (max-width:1600px){}
@media screen and (max-width:1400px){}
@media screen and (max-width:1200px){}
@media screen and (max-width:1000px){}
@media screen and (max-width:800px) {

}
@media screen and (max-width:600px) {}
@media screen and (max-width:400px) {

}

/*---- 404 ----*/
.section-404 .et_pb_text h1 {
    font-size: 2rem;
    line-height: 1em;
}
.section-404 .et_pb_button_module_wrapper,
.section-404 .et_pb_button_module_wrappers {
    justify-content: center;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: 15px;
    column-gap: 15px;
}
.section-404 .et_pb_text_inner {
	text-align: center;
	margin-bottom: 40px;
}
.section-404 .et_pb_text_inner h1 {
	margin-bottom: 10px;
}

@media screen and (max-width:1600px) { }
@media screen and (max-width:1400px) { }
@media screen and (max-width:1200px) { }
@media screen and (max-width:1000px) { }
@media screen and (max-width:800px) { }


/* Default CSS END */


/*---- HEADER ----*/

header {
	padding: 0;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 101;
	/* position: fixed; */
	position: relative;
	background-color: var(--colour-white);
	/** Enable for transparent header **/
	/* position: absolute; */
	/* background-color: transparent; */
}
header .et_pb_section {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    background: transparent;
}
header .et_pb_section .et_pb_row {
    max-width: 100%;
	width: 100%;
	padding: 40px 50px;
    margin: 0 auto;
    display: flex;
    align-items: center;
	justify-content: space-between;
}
header .et_pb_section .menu-item {
	display: flex;
	align-items: center;
}
header .et_pb_section .et_pb_column {
	flex-direction: row;
}
header .et_pb_section .et_pb_column.et_pb_column_1_3:has(img),
header .et_pb_section .et_pb_column.et_pb_column_1_3:has(.et_pb_button) {
	flex: 1 1 5%;
}
header .et_pb_section .et_pb_column:has(.et_pb_menu) {
    width: 100%;
	justify-content: flex-end;
}
header .et_section_regular {
    display: flex;
	align-items: center;
	padding: 0px;
	max-width: 100%;
	width: 100%;
}
header .et_pb_section .et_pb_icon_wrap .et-pb-icon {
    font-size: 20px !important;
    color: var(--colour-secondary) !important;
    font-weight: 300 !important;
    padding: 10px;
    transition: var(--transition);
}
header .et-pb-icon:hover {
    background-color: var(--colour-white);
    color: var(--colour-primary) !important;
    transition: var(--transition);
    padding-top: 12px;
}
header img {
    min-width: 170px;
	max-width: 170px;
    object-fit: contain;
}
header .et_pb_column:has(.et_pb_button_module_wrapper),
header .et_pb_column:has(.et_pb_icon) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    column-gap: 20px;
}
header .et_pb_section .et_pb_button_module_wrapper.et_pb_module,
header .et_pb_section .et_pb_icon.et_pb_module {
    margin-bottom: 0px;
}
header .et_pb_section .et_pb_module {
    background-color: transparent;
}
header .et_pb_section .et_pb_module.et_pb_menu {
	display: flex;
	align-items: center;
}
header .et_pb_menu .et-menu {
    margin-left: 0px;
    margin-right: 0px;
}
header .et-menu a {
    display: flex;
    justify-content: center;
	font-size: 13px;
    font-weight: 400;
    color: var(--colour-black);
    font-family: var(--font-main);
    border: none;
    position: relative;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    transition: var(--transition);
}

/* Header Dropdown */
header .et-menu > li ul.sub-menu,
header .et_pb_menu_0_tb_header.et_pb_menu .nav li ul {
	background-color: var(--colour-secondary) !important;
	border-radius: 0;
	width: 300px;
	border: none;
	padding: 5px 0;
	transition: var(--transition);
	top: calc(100% - -15px) !important;
}
header .et-menu > li.et-hover ul.sub-menu,
header .et_pb_menu_0_tb_header.et_pb_menu .nav li.et-hover ul {
	background-color: var(--colour-secondary) !important;
	border-radius: 0;
	border: none;
	padding: 15px 0;
}
header .et-menu > li ul.sub-menu li,
header .et_pb_menu_0_tb_header.et_pb_menu .nav li ul li {
	padding: 0px;
}
header .et-menu > li ul.sub-menu li a,
header .et_pb_menu_0_tb_header.et_pb_menu .nav li ul li a {
	width: 100%;
	padding: 10px 25px;
	font-size: 0.15rem;
	font-weight: 600;
	text-transform: none;
	line-height: 1.2em;
	font-family: var(--font-body);
	justify-content: flex-start;
	color: var(--colour-white);
}
header .et-menu > li ul.sub-menu li a:hover,
header .et_pb_menu_0_tb_header.et_pb_menu .nav li ul li a:hover {
	background-color: transparent;
	color: var(--colour-white);
	box-shadow: inset 5px 0 0 var(--colour-primary);
	opacity: 1;
	transition: var(--transition);
}

/*Header Responsive Override*/
@media screen and (max-width:1600px) {

}
@media screen and (max-width:1500px) {

}
@media screen and (max-width:1300px) {

}
@media screen and (max-width:1200px) {

}
@media screen and (max-width:1100px) {

}
@media screen and (max-width:1000px) {
	header {
		position: unset;
	}
	header .et_mobile_menu li a {
		padding: 10px 22px !important;
		font-size: 20px;
	}
	header .et_mobile_menu .menu-item-has-children>a {
		background-color: transparent;
	}
	header .et_pb_menu .et_mobile_menu ul {
		padding-left: 0px !important;
	}
	header .et_pb_section .menu-item {
		flex-direction: column;
		align-items: flex-start;
	}
	header .et_pb_section .et_pb_column.et_pb_column_1_2:has(img) {
		z-index: 10;
	}
	header .et_pb_section .et_pb_row:has(.et_pb_column.et_pb_column_1_2) {
		flex-wrap: nowrap;
	}
	header .menu-item a:hover {
	    text-decoration: none;
	    background: none !important;
	    color: var(--colour-secondary);
	    transition: var(--transition);
	}
	header .menu-item {
		width: 100%;
		border-top: 1px solid rgba(242, 247, 249, 0.1);
		padding: 0px 40px;
	}
	header .et_pb_menu .et_pb_menu__menu {
		display: none;
	}
	header .et_pb_menu .et_mobile_nav_menu {
		display: flex;
	}
	header .et_pb_section .et_pb_column:has(.et_pb_menu) {
		order: unset;
		flex: 1 1 45%;
		justify-content: flex-end;
		position: unset;
	}
	header .et_pb_section .et_pb_module,
	header .et_pb_menu_inner_container {
		position: unset;
	}
	header .et_pb_section .et_pb_column.et_pb_column_1_3:has(.et_pb_button) {
		display: none;
	}
	header .et_pb_section .et_pb_menu .et_mobile_menu ul {
		background-color: transparent !important;
	}
	header .et_pb_section .et_pb_menu .et_mobile_menu {
		display: none;
		position: absolute;
		top: 0;
		left: 0 !important;
		right: 0 !important;
		bottom: 0;
		width: 100% !important;
		overflow-y: scroll;
		border-radius: 0;
		background-color: var(--colour-primary) !important;
		backdrop-filter: unset;
		border: none !important;
		min-height: 100vh;
		padding: 135px 0px 119px !important;
		left: 0 !important;
		clip: unset !important;
		transition: var(--transition);
		pointer-events: none;
		opacity: 0;
		z-index: 1;
	}

	header .mobile_nav.opened .et_mobile_menu {
		pointer-events: all;
		opacity: 1;
		transition: var(--transition);
	}

}
/*---- HEADER SCROLL BEHAVIOR ----*/
/* Header scroll visibility animation - DESKTOP ONLY (above 1000px) */
@media screen and (min-width: 1001px) {
    header {
        transition: transform 0.3s ease-in-out;
        transform: translateY(0);
    }
    header.header--hidden {
        transform: translateY(-100%);
    }
}
@media screen and (min-width:1001px) {}
@media screen and (max-width:1200px) and (min-width:1000px) {}
@media screen and (max-width:700px){
	.header-contact {
		display: none;
	}
	header .et_pb_section .et_pb_column:has(.et_pb_menu) {
		justify-content: flex-end;
	}
	header .et_pb_section .et_pb_column.et_pb_column_1_2:has(img) {
        flex: 1 1;
		justify-content: flex-start;
	}
}
@media screen and (max-width:600px) {
	header img {
	    min-width: 150px;
	    max-width: 150px;
	    object-fit: contain;
	}
	header .et_pb_section .et_pb_row {
        flex-wrap: nowrap;
    }
}
@media screen and (max-width:450px) {}


/*---- FOOTER ----*/
footer .et_pb_section, 
footer {
	background: var(--colour-primary);
	position: relative;
	overflow: hidden;
}
footer .et_builder_inner_content {
	z-index: unset;
}
footer li,
footer li a,
footer li a span,
footer a,
footer p,
footer p span {
	color: var(--colour-white);
	font-size: 16px;
}
footer h4 {
	color: var(--colour-white);
}
footer .et_pb_section {
	padding: 100px 0;
}
footer .et_pb_row {
	padding: 0;
	max-width: var(--frame-max-m) !important;
	color: var(--colour-primary);
}
footer .et_pb_row .et_pb_column {
	flex-direction: row;
	flex-wrap: wrap;
	column-gap:0;
	row-gap:0;
}
/*Footer Menu / Elements*/
footer .et_pb_image {
	width: 100%;
}
footer .et_pb_image img {
	max-width: 250px;
	min-width: 250px;
	margin-bottom: 100px;
}

footer .footer-menus {
	padding: 50px 0 100px;
}
footer .dsm_menu {
	display: flex;
}
footer .et_pb_column_3_5 {
	padding-top: 40px;
}
footer .dsm_menu,
footer .et_pb_text {
	flex: 33% 1 1;
}
footer .dsm_menu ul li {
	font-size: 16px;
	list-style: none;
	line-height: 1.5em;
	margin: 0 0 8px !important;
}
footer .dsm_menu ul li:last-child {
	margin: 0 !important;
}
footer .dsm_menu ul li a:hover {
	color: var(--colour-primary);
}
footer .dsm_menu ul li ul.sub-menu {
	padding-left: 0 !important;
}
footer .dsm_menu .dsm-menu-title {
	padding-bottom: 0 !important;
}

footer .footer-menus.et_pb_row {
	row-gap: clamp(30px, calc(var(--row-gap) * 6), 60px);
  	column-gap: clamp(30px, calc(var(--column-gap) * 6), 60px);
}
footer .footer-menus .et_pb_column {
	max-width: 300px;
}

footer .footer-menus .dsm_menu h4,
footer .footer-menus .et_pb_text h4 {
	color: var(--colour-white);
	font-weight: 600;
}

footer .footer-menus .et_pb_column:last-child {
	margin-left: auto !important;
}
footer .footer-menus .et_pb_text {
	text-align: right;
}
footer .footer-menus .et_pb_text p {
	line-height: 1.5em;
}

footer .et_pb_text p {
	font-size: 16px;
}
footer .et_pb_text p a,
footer .et_pb_text p i,
footer .et_pb_text p em {
	font-style: normal;
	color: var(--colour-white);
}
footer .et_pb_text p a {
	text-decoration: underline;
}
footer .et_pb_text p a:hover {
	color: var(--colour-primary);
}

footer .dsm_embed_google_map {
	width: 100%;
}
footer .dsm_embed_google_map iframe {
	border-radius: 40px;
}

footer .et_pb_column:has(.contact-info) {
	column-gap: 40px;
}
footer .et_pb_column:has(.contact-info) .et_pb_module {
	flex: 1 1 30%;
}
/*Social*/
footer .social-links {
	display: flex;
	align-items: center;
	column-gap: 20px;
	justify-content: flex-end;
	padding-top: 20px;
}
footer .social-links a {
	position: relative;
	color: var(--colour-primary);
	font-size: .25rem;
	line-height: 1;
}
footer .social-links a:not(.et_pb_button) i {
	color: var(--colour-secondary);
	background-color: var(--colour-white);
	width: 53px;
	height: 53px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
}
footer .social-links a:hover i {
	color: var(--colour-secondary);
}
footer .social-links a:hover {
	text-decoration: none;
}
footer .social-links a:not(.et_pb_button):hover::before {
    background-color: transparent !important;
    border: 3px solid var(--colour-white);
    top: -7px;
    left: -7px;
    right: -7px;
    bottom: -7px;
}
footer .social-links a:not(.et_pb_button)::before {
	content: "";
    position: absolute;
    display: block !important;
    opacity: 1;
    z-index: -1;
    margin: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 35px;
    border: 0px solid;
    background-color: var(--colour-primary);
    transition: var(--transition-fast);
}
/*Footer Copy*/
.footer-copy {
	text-align: center !important;
}
.footer-copy a b {
    font-weight: 800;
	text-decoration: underline !important;
}
footer .footer-copy.et_pb_text p,
footer .footer-copy.et_pb_text p a {
	color: var(--colour-white);
	text-decoration: none;
	font-size: 16px;
	text-align: right;
}
footer .footer-copy.et_pb_text p a:hover {
	color: var(--colour-primary);
}

footer .contact-info p a {
	text-decoration: underline;
}
footer .contact-info .white-btn i {
	margin-right: 0;
	margin-left: 10px;
	position: relative;
    top: 0px;
}
footer .contact-info i {
	margin-right: 5px;
}

.bottom-footer {
	margin-top: 100px;
}
.bottom-footer .et_pb_column:first-child .et_pb_text_inner {
	display: flex;
	column-gap: 40px;
}
.bottom-footer .et_pb_column:last-child {
	align-items: flex-end;
}

footer .et_pb_button.btn-none {
	display: none !important;
}
@media screen and (max-width:1200px) {
	footer .et_pb_section {
		padding: 80px 0;
	}
	.footer-copy {
  		padding-top: 100px;
	}
}
@media screen and (max-width:980px) {
	footer .et_pb_section .et_pb_row {
		flex-wrap: nowrap !important;
	}
	footer .et_pb_column_0_tb_footer {
		column-gap: 30px !important;
		row-gap: 40px !important;
	}
	footer .dsm_menu,
	footer .et_pb_text {
		flex: calc(50% - 30px) 1 1;
	}
	footer .et_pb_image {
		padding-bottom: 0px;
	}
}
@media screen and (max-width:900px) {
	footer .et_pb_section .et_pb_row {
		flex-wrap: wrap !important;
	}
	footer .dsm_embed_google_map .et_pb_module_inner iframe {
		min-height: 300px;
	}
	footer .et_pb_row .et_pb_column_0_tb_footer {
		max-width: 500px;
	}
}
@media screen and (max-width:700px) {
	footer::before {
		display: none;
	}
	footer .et_pb_image img {
		max-width: 220px;
	}
	.footer-copy {
		padding-top: 60px;
	}
	footer .et_pb_section {
		padding: 60px 0;
	}
	footer .dsm_menu,
	footer .et_pb_text {
		flex: 100% 1 1;
	}
	footer .et_pb_section .et_pb_row {
		justify-content: center;
	}
	footer .et_pb_row .et_pb_column {
		row-gap: 40px;
	}
	footer .et_pb_row .et_pb_column .et_pb_text_inner {
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: center;
	}
	footer .dsm_menu {
		justify-content: center;
		order: 1;
	}
	footer .social-links a.et_pb_button {
		display: none;
	}
	footer .et_pb_button.btn-none {
		display: block !important;
		/* margin-top: 20px; */
	}
	footer .dsm_menu ul li,
	footer .dsm_menu .dsm-menu-title,
	footer .et_pb_text p {
		text-align: center;
	}
	footer .et_pb_image .et_pb_image_wrap {
		display: flex;
		justify-content: center;
	}
	footer .et_pb_image img {
		max-width: 150px;
		min-width: 150px;
		margin-bottom: 0px;
	}
	footer .bottom-footer {
		margin-top: 40px;
	}
	footer .footer-copy.et_pb_text p{
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	footer .et_pb_column:has(.contact-info) .et_pb_module {
		flex: 1 1 100%;
	}
	footer .social-links {
		row-gap: 20px;
        flex-wrap: wrap;
        justify-content: center;
		margin-top: 40px;
	}
	
}
@media screen and (max-width:600px) {
	footer .menus {
		order: -1;
	}
}
@media screen and (max-width:400px) {
	footer .et_pb_image {
		text-align: center;
	}
	/* footer .et_pb_image img {
		max-width: 200px;
	} */
	footer .dsm_menu,
	footer .et_pb_text {
		flex: 100% 1 1;
		text-align: center !important;
	}
	footer .dsm_menu h4,
	footer .dsm_menu ul li {
		text-align: center;
	}
}



/*----- MOBILE DROPDOWN -----*/
@media screen and (max-width:1000px) {

	.et_pb_menu .mobile_nav .mobile_menu_bar {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		transform: none;
		margin-bottom: -2px;
		z-index: 10;
	}

	header .et_pb_section .et_pb_column.et_pb_column_1_3:has(img) {
		z-index: 10;
	}

	.et_pb_menu .mobile_nav .mobile_menu_bar:before {
		z-index: 9999;
		font-size: 50px;
		color: var(--colour-primary);
		padding: 0 !important;
		display: flex;
		cursor: pointer;
		flex-direction: column;
		justify-content: center;
		align-items: flex-end;
		height: 30px;
	}

	.et_pb_menu .mobile_nav .mobile_menu_bar::before,
	.et_pb_menu .mobile_nav .mobile_menu_bar::after {
		content: "";
		width: 45px;
		height: 4px;
		top: 0px;
		position: relative;
		background-color: var(--colour-text);
		transition: all 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0.3s, transform 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0s, background-color 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0s;
	}
	.et_pb_menu .mobile_nav .mobile_menu_bar::before,
	.et_pb_menu .mobile_nav .mobile_menu_bar::after {
		background-color: var(--colour-primary);
	}
	.et_pb_menu .mobile_nav .mobile_menu_bar::after {
		background-color: var(--colour-primary);
		box-shadow: 0px 22px 0 var(--colour-primary);
	}

	.et_pb_menu .mobile_nav .mobile_menu_bar::after {
		top: -15px;
		width: 45px;
	}

	.header-overlay:not(.header-floating-dark) .header .col.logo-wrap .mobile-menu-trigger i.fa-bars::before,
	.header-overlay:not(.header-floating-dark) .header .col.logo-wrap .mobile-menu-trigger i.fa-bars::after {
		background-color: var(--colour-white);
	}

	.header-overlay:not(.header-floating-dark) .header .col.logo-wrap .mobile-menu-trigger:not(.open) i.fa-bars::after {
		box-shadow: 0px 22px 0 var(--colour-white);
		background-color: var(--colour-white);
	}

	.et_pb_menu .mobile_nav.opened .mobile_menu_bar::before {
		top: 2px;
		width: 35px;
		background-color: var(--colour-white);
		transform: rotate(45deg);
		transition: all 0.2s cubic-bezier(0, 0, 0.1, 0.9), transform 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0.3s, background-color 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0s;
	}

	.et_pb_menu .mobile_nav.opened .mobile_menu_bar::after {
		top: -2px;
		width: 35px;
		background-color: var(--colour-white);
		box-shadow: 0 0px 0 var(--colour-white);
		transform: rotate(-45deg);
		transition: all 0.2s cubic-bezier(0, 0, 0.1, 0.9), transform 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0.3s, background-color 0.2s cubic-bezier(0, 0, 0.1, 0.9) 0s;
	}
	header .et_pb_section .menu-item a {
		color: var(--colour-white);
	}
}

/*---- DEFAULT - FORM CSS ----*/
form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 30px;
  background-color: #fff;
  font-size: 16px;
}

label {
  margin-bottom: 0px;
  color: var(--colour-black);
  font-size: 16px;
  text-transform: normal;
}
label br {
	display: none;
}
body .dsm_contact_form_7 input[type="text"],
body .dsm_contact_form_7 input[type="email"],
body .dsm_contact_form_7 input[type="password"],
body .dsm_contact_form_7 textarea {
  width: 100%;
  padding: 12px;
  margin-bottom: 0px;
  border: 1px solid #eee;
  border-radius: 0px;
  font-size: 16px;
  color: var(--colour-black);
  background-color: #eee;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  box-sizing: border-box;
}

body .dsm_contact_form_7 input[type="text"]:focus,
body .dsm_contact_form_7 input[type="email"]:focus,
body .dsm_contact_form_7 input[type="password"]:focus,
body .dsm_contact_form_7 textarea:focus {
  border-color: var(--colour-primary);
  outline: none;
}

body .dsm_contact_form_7 input[disabled],
body .dsm_contact_form_7 textarea[disabled] {
  background-color: #e9e9e9;
  border-color: #ddd;
  color: #aaa;
  cursor: not-allowed;
}

body .dsm_contact_form_7 textarea {
  min-height: 120px;
  resize: vertical;
}

body .dsm_contact_form_7 select {
  width: 100%;
  padding: 12px;
  margin-bottom: 20px;
  border: 1px solid #eee;
  border-radius: 0px;
  background-color: #eee;
  font-size: 16px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

body .dsm_contact_form_7 select:focus {
  border-color: var(--colour-primary);
  outline: none;
}

body .dsm_contact_form_7 button[type="submit"],
body .dsm_contact_form_7 input[type="submit"] {
  padding: 15px 25px !important;
  font-size: 16px;
  color: #fff !important;
  background-color: var(--colour-primary);
  border: none;
  cursor: pointer;
  transition: var(--transition);
  text-transform: uppercase;
}

body .dsm_contact_form_7 button[type="submit"]:hover,
body .dsm_contact_form_7 input[type="submit"]:hover {
  color: var(--colour-primary) !important;
}

/* Validation Styles */
.wpcf7 form .wpcf7-response-output {
    padding: 10px 15px;
    background-color: #fff;
    font-family: var(--font-body);
    text-align: center;
}

input:valid,
textarea:valid {
  border-color: #28a745;
}

input:invalid,
textarea:invalid {
  border-color: #dc3545;
}

/* Success Message */
input:valid + .valid-feedback,
textarea:valid + .valid-feedback {
  display: block;
  color: #28a745;
  font-size: 16px;
}

/* Error Message */
input:invalid + .invalid-feedback,
textarea:invalid + .invalid-feedback {
  display: block;
  color: #dc3545;
  font-size: 16px;
}

.form-group {
  margin-bottom: 20px;
}

.form-group label {
  margin-bottom: 5px;
}

input[type="checkbox"],
input[type="radio"] {
  margin-right: 10px;
}


@media (max-width: 600px) {
  form {
    padding: 20px;
  }

  button[type="submit"],
  input[type="submit"] {
    width: 100%;
  }
}

/*---- SLIDER - TESTIMONIAL ----*/
.testimonial-swiper {
	margin-bottom: 40px;
	margin-top: 15px;
	display: flex;
}
.testimonial-swiper .swiper-wrapper .swiper-slide {
	height: auto;
	align-items: flex-start;
}
.testimonial-swiper .carousel_content {
	display: flex;
	height: 100%;
	background: transparent;
	flex-direction: column;
	padding: 20px 40px;
	border-left: 1px solid var(--colour-grey);
}
.testimonial-swiper .carousel_content > img {
	display: none;
}

.testimonial-swiper .carousel_content .social-media-container {
	display: none;
	padding: 0;
	order: 0;
}
.testimonial-swiper .carousel_content .social-media {
	height: auto;
	max-width: unset;
	justify-content: flex-start !important;
}
.testimonial-swiper .carousel_content .social-media li {
	padding: 0 6px 0 0;
	font-size: 22px;
	line-height: 1em;
}
.testimonial-swiper .carousel_content .social-media li span,
.testimonial-swiper .carousel_content .social-media li span::before {
	font-size: 22px;
	color: #ffbf00 !important;
}
.testimonial-swiper .carousel_content span.name_design,
.testimonial-swiper .carousel_content span.position_design {
	font-size: var(--size-3);
	font-family: var(--font-main);
	font-weight: 600;
	order: 2;
	padding: 30px 0 0;
}
.testimonial-swiper .carousel_content span.position_design {
	order: 3;
	padding: 0;
}
.testimonial-swiper .carousel_content > p {
	padding: 0;
	/* margin: 25px 0 0; */
	font-size: 20px;
	font-family: var(--font-body);
	font-style: italic;
	color: var(--colour-text);
}
.testimonial-swiper .swiper-navi-container {
	top: 100%;
    justify-content: flex-end;
    align-items: flex-end;
}
@media screen and (max-width:1000px) {
	.section-testimonial-slider .floating-icon {
		width: 100px;
		max-width: 100px;
	}
}
@media screen and (max-width:700px) {
	.section-testimonial-slider .floating-icon {
		position: static;
		width: 100%;
		max-width: 100%;
		text-align: center;
		padding-bottom: 15px;
		margin-top: -15px;
	}
	.section-testimonial-slider .floating-icon img {
		max-width: 90px;
	}
}
@media screen and (max-width:700px) {
	.section-testimonial-slider .et_pb_row:has(.divi8_testimonial_carousel_lite) {
		padding-top: 10px !important;
		padding-bottom: 0 !important;
	}
}

/** News Slider **/
.dsm-blog-carousel-wrapper.swiper-wrapper {
	display: flex;
}
.dsm-blog-carousel article.dsm-blog-carousel-item {
	background: none;
}
.dsm-blog-carousel article .dsm-grid-post-holder-inner {
	width: 100%;
	height: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.dsm-blog-carousel article .dsm-entry-image {
	position: relative;
}
.dsm-entry-thumbnail img {
	max-height: 185px;
}
.dsm-entry-image {
	max-height: 185px;
}
.dsm-blog-carousel article .dsm-entry-wrapper {
	padding: 40px 20px 20px;
	flex: auto 1 1;
	display: flex;
	flex-direction: column;
}
.dsm-blog-carousel article .dsm-entry-wrapper h2 {
	margin-bottom: 12px;
	font-size: 16px;
	text-align: left;
}
.dsm-entry-header {
	position: unset;
	text-align: left;
	font-size: 16px;
	padding: 0px;
	background-color: transparent;
}
.dsm-blog-carousel article .dsm-entry-wrapper .dsm-entry-meta {
	position: absolute;
	top: 15px;
	left: 15px;
	background-color: rgba(255,255,255,0.9);
	border-radius: 20px;
	padding: 9px 12px 8px;
	display: flex;
	align-items: center;
	justify-content: center;

	font-size: 10px;
	line-height: 1em;
	font-weight: 400;
	font-family: var(--font-body);
}
.dsm-blog-carousel .dsm-meta-seperator {
	display: none;
}
.dsm-blog-carousel article .dsm-entry-wrapper .dsm-entry-meta .dsm-posted-on::before {
	content: "\f017";
	font-family: var(--font-fa-sharp);
	font-weight: 500;
	margin-right: 8px;
}
.dsm-blog-carousel article .dsm-entry-content p {
	font-size: 14px;
	line-height: 1.6em;
	text-align: left;
	opacity: 0.8;
}
.dsm-blog-carousel article .dsm-readmore-wrap {
	margin-top: auto;
	display: flex;
	justify-content: flex-start;
}
.dsm-blog-carousel article a.dsm-readmore-btn {
	width: fit-content;
	background-color: var(--colour-primary);
	color: var(--colour-white);
	padding: 8px 15px 9px 15px;
	text-align: center;
	font-size: 13px;
	font-family: var(--font-body);
	font-weight: 400;
	margin-top: 30px !important;
	transition: var(--transition-fast);
}
.dsm-blog-carousel article a.dsm-readmore-btn:hover {
	background-color: var(--colour-secondary);
	color: var(--colour-primary);
}
.dsm-blog-carousel article a.dsm-readmore-btn::after {
	content: "\f06e";
	font-family: var(--font-fa);
	font-size: 13px;
	color: var(--colour-white);
	margin-left: 10px;
}
.dsm-blog-carousel article a.dsm-readmore-btn:hover::after {
	color: var(--colour-primary);
}
body #page-container .et_pb_section .dsm-blog-carousel article .dsm-readmore-wrap a.dsm-readmore-btn {
	margin-top: 30px !important;
}

/** News Page **/
#main-content:has(.post-type-content) {
	background-color: transparent;
}
#main-content .et_pb_section.post-type-content .et_pb_title_featured_container img {
	max-height: 400px;
	width: 100%;
	border-radius: 15px;
	object-fit: cover;
}
#main-content .et_pb_section.post-type-content {
	margin-bottom: 0;
}
#main-content .et_pb_section.post-type-content .et_pb_row {
	padding: 60px;
	max-width: 1200px;
	background-color: var(--colour-white);
	border-radius: 20px;
}
#main-content .et_pb_section.post-type-content .et_pb_title_container {
	padding-bottom: 30px;
}
#main-content .et_pb_section.post-type-content .et_pb_post_title {
	padding-bottom: 50px;
}
#main-content .et_pb_section.post-type-content h2,
#main-content .et_pb_section.post-type-content h3,
#main-content .et_pb_section.post-type-content h4,
#main-content .et_pb_section.post-type-content h5 {
	margin-top: 60px;
}
#main-content .et_pb_section.post-type-content .entry-title {
	margin-bottom: 20px;
}
.et_pb_title_meta_container span {
	color: var(--colour-black);
	font-size: 12px;
	font-weight: 500;
	display: flex;
	align-items: baseline;
}
.et_pb_title_meta_container span::before {
	content: '\f017';
	font-family: var(--font-fa);
	color: var(--colour-grey);
	font-size: 11px;
	margin-right: 15px;
}
.et_pb_button_module_wrapper:has(.news-button) {
	margin-top: 50px !important;
}
body:has(.post-type-content) header {
	background-color: var(--colour-primary);
    position: unset;
}
.breadcrumb {
	background-color: var(--colour-primary);
}
.breadcrumb .et_pb_row {
	padding: 0px 0px 20px;
	max-width: 1720px;
}
.breadcrumb .et_pb_column {
	display: flex;
    flex-direction: row;
	column-gap: 18px;
    align-items: center;
}
.breadcrumb h1 {
	font-size: 14px;
	font-weight: 400;
	padding-bottom: 0px;
	margin-bottom: 0px;
	color: var(--colour-white);
	font-family: var(--font-body);
}
.breadcrumb p {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0px;
	padding-bottom: 0px;
	color: var(--colour-white);
	line-height: 1;
}
.breadcrumb .et_pb_text_inner {
	display: flex;
	align-items: center;
	column-gap: 18px;
}
.breadcrumb .et_pb_post_title {
	height: fit-content;
}
@media screen and (max-width: 800px) {
	#main-content .et_pb_section.post-type-content .et_pb_row {
	    padding: 40px 50px;
	}
	#main-content .et_pb_section.post-type-content > .et_pb_row {
	    margin-top: 0px;
	}
	#main-content .et_pb_section.post-type-banner {
	    min-height: 35vh;
	}
}

@media screen and (max-width: 400px) {
	.breadcrumb .et_pb_column {
		justify-content: center;
	}
	.breadcrumb h1 {
		font-size: 12px;
	}
	.breadcrumb p {
		font-size: 12px;
	}
	#main-content .et_pb_section.post-type-content .et_pb_post_title {
	    padding-bottom: 30px;
	    margin-bottom: 30px;
	}
	#main-content .et_pb_section.post-type-content .et_pb_row {
	    padding: 40px 30px;
	}
	#main-content .et_pb_section.post-type-banner {
	    min-height: 30vh;
	}
	.post-template-default.single-post #main-content .et_pb_section.post-type-banner .et_pb_row {
	    max-width: 100%;
	}
}

/*---- SECTION - BANNER ----*/
.section-banner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 40vh;
    padding: 0 !important;
    background-color: var(--colour-primary);
	overflow: hidden;
}
.section-banner.home {
	min-height: 80vh;
}
.section-banner .et_pb_row:has(img) {
    padding: 0px;
    max-width: 100%;
    width: 100%;
	height: 100%;
    overflow: hidden;
}
.section-banner .et_pb_row:has(.et_pb_image) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}
.section-banner .et_pb_row:has(.et_pb_heading),
.section-banner .et_pb_row:has(h1) {
    display: flex;
    justify-content: center;
	padding: 100px 0px;
}
.section-banner .et_pb_row:has(.et_pb_heading) .et_pb_text_inner,
.section-banner .et_pb_row:has(.et_pb_heading) .et_pb_module_heading,
.section-banner .et_pb_row h1,
.section-banner .et_pb_row p {
    color: var(--colour-white);
}
.section-banner .et_pb_row h5 {
	margin: 0px;
}
.section-banner .et_pb_text_inner * {
	color: var(--colour-white);
}
.section-banner .et_pb_image_wrap {
	position: relative;
	z-index: 1;
}
.section-banner .et_pb_image_wrap::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--colour-black);
	opacity: 0.3;
	z-index: 2;
}
.section-banner img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}


/** Section Image Text **/
.section-image-text .et_pb_column {
	justify-content: center;
}
.section-image-text .et_pb_column:has(.et_pb_text) {
	padding: 40px 0px;
}
.section-image-text img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	object-fit: cover;
}
.section-image-text .et_pb_image,
.section-image-text .et_pb_image_wrap,
.section-image-text img {
	height: 100%;
}
.section-image-text p:has(i) {
	opacity: 1;
	display: flex;
    column-gap: 8px;
}
.section-image-text a:has(i) {
	text-decoration: none;
}
@media screen and (max-width:980px) {
	.section-image-text .reverse {
		flex-direction: column-reverse;
	}
	.section-image-text .et_pb_text {
		padding: 0px;
	}
}
