/*
 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: 0.03em;
	--master-section-pad: 	 10px;

	/*---- FRAME SIZES ----*/

	--frame-max-xl: 1600px;
	--frame-max-l: 1500px;
	--frame-max-m: 1400px;
	--frame-max-s: 1300px;
	--frame-max-xs: 1200px;
	--frame-footer: 1220px;
	--frame-pad:   320px;
	--frame-width: calc(100% - (var(--frame-pad) / 2));

	/*---- SPACING ----*/

	--column-gap: 10px;
	--row-gap: 10px;

	/*---- FONTS ----*/

	--font-body:	 "Readex Pro", var(--font-default);
	--font-main: var(--font-body);
	--font-default:  "sans-serif";
	--font-fa: 		 FontAwesome;
	--font-fa-sharp: "Font Awesome 6 Sharp";
	--font-headings: "futura-pt";
	--font-buttons-alt: "futura-pt";
	--font-alt: "montserrat", sans-serif;
	--font-primary: "Helvetica Neue";

	/*---- FONT SIZING ----*/

	--size-1:  clamp(13px, 0.13rem, 13px);
	--size-2:  clamp(14px, 0.16rem, 16px);
	--size-3:  clamp(16px, 0.18rem, 18px);
	--size-4:  clamp(18px, 0.22rem, 20px);
	--size-5:  clamp(22px, 0.26rem, 28px);
	--size-6:  clamp(24px, 0.30rem, 28px);
	--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);

	/*---- COLOURS ----*/

	--colour-primary: 	  #124CA2;
	--colour-secondary:   #E73222;
	--colour-tertiary: 	  #073368;
	--colour-dark-primary: #191C5B;
	--colour-dark-tertiary: #083469;
	--colour-white: 	  #FFF;
	--colour-black: 	  #000;
	--colour-footer: #1A1A1A;
	--colour-background: #E3E3DE;
	--colour-grey: #D9D9D9;;

	--colour-text:  #3C587F;

	/*---- 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-headings);
	color: 			var(--colour-primary);
	padding-bottom: 0px;
	/*margin-bottom: 30px;*/
	letter-spacing: -0.8px;
	font-weight: 	700;
	font-style: italic;
}
h6, .h6{
	letter-spacing: 0px;
}
h1, .h1 { font-size: var(--size-16) !important; line-height: calc(var(--master-line-height) * 1.1); text-transform: uppercase;font-weight: 400;}
h2, .h2 { font-size: var(--size-9);  line-height: calc(var(--master-line-height) * 1.2); }
h3, .h3 { font-size: var(--size-8);  line-height: calc(var(--master-line-height) * 1.5); }
h4, .h4 { font-size: var(--size-6);  line-height: calc(var(--master-line-height) * 1.2); }
h5, .h5 { font-size: var(--size-4);  line-height: calc(var(--master-line-height) * 1.2); font-weight: 500;}
h6, .h6 { font-size: var(--size-3) !important;  line-height: calc(var(--master-line-height) * 1.2); }

.small-header{
	color: var(--colour-secondary) !important;
	text-transform: uppercase;
}

/* Text - Inline Tags */
/* ------------------ */

strong, b {
	font-weight: 700;
}
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 {
	color: inherit;
	letter-spacing: 0px;
	line-height: calc(var(--master-line-height) * 1.6);
	font-size: 18px;
	font-family: var(--font-body);
	font-weight: 300;
}
a {
	transition: var(--transition);
}
a:hover {
	color: var(--colour-primary);
	transition: var(--transition);
}
/* 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;
}


/*---- 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);
}

@media screen and (max-width:1600px) { }
@media screen and (max-width:1400px) { }
@media screen and (max-width:1200px) { :root{ --frame-pad: 120px; } }
@media screen and (max-width:1000px) { }
@media screen and (max-width:800px)  { :root{ --frame-pad: 80px; } }
@media screen and (max-width:600px)  { :root{ --frame-pad: 60px; } }
@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-l);
	width: 		var(--frame-width);
}
.et_pb_section .et_pb_column:not(.flex-box) {
	display: 		flex;
	flex-direction: column;
	max-width: 		unset;
	row-gap: 		clamp(30px, calc(var(--row-gap) * 4), 40px); 
	column-gap: 	clamp(30px, calc(var(--column-gap) * 4), 40px);
	margin: 		0px !important;
	width:			100%;
	float:			none;
}
.et_pb_row{
	padding: 30px 0;
}
.et_pb_row::after {
	display: none;
}

.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.3%;  }
.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) { flex-wrap: wrap; }
	.et_pb_section .et_pb_column.et_pb_column_1_4 { flex: 1 1 45%; }
}
@media screen and (max-width:1100px){
	.et_pb_section .et_pb_row:has(.et_pb_column.et_pb_column_1_5) { flex-wrap: wrap; }
	.et_pb_section .et_pb_column.et_pb_column_1_5 { flex: 1 1 45%; }
}
@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,.et_pb_column.et_pb_column_1_3) { 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_3{ flex:  1 1 50%; max-width: 50%;}
}
@media screen and (max-width:800px) {
	.et_pb_section .et_pb_column.et_pb_column_1_4,.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_3{ flex:  1 1 100%; max-width: 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; }
}
@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) * 10), 100px); }
#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: 8px 30px !important;
	width: fit-content;
    z-index: 2;
	opacity: 1;
    display: flex;
	align-items: center;
    column-gap: 20px;
	font-family: var(--font-buttons-alt) !important;
	font-weight: 500;
	font-size: var(--size-2);
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1.95px;
	white-space: nowrap;
	color: inherit;
	line-height: calc(var(--master-line-height) * 1.5);

	transition: var(--transition);
}
.et_pb_button::after, .et_pb_button::before {
	display: none;
}

.et_pb_button i, button i,
.et_pb_button span, button span,
.et_pb_button em, button em {
	font-weight: 300;
	font-family: var(--font-fa-sharp);
	font-size: 1.2em;
	color: inherit;
}

/*----  BUTTON VARIANTS ----*/
body .et_pb_section button.et_pb_button,
body .et_pb_section a.et_pb_button{
	color: var(--colour-white);
	font-weight: 700;
	/*font-style: italic;*/
	letter-spacing: 0;
	border-radius: 0;
	transform: skewX(-15deg);
	border: 2px solid;
}
body .et_pb_section button.et_pb_button.button-red,
body .et_pb_section a.et_pb_button.button-red{
	background-color: var(--colour-secondary);
	border-color: var(--colour-secondary);
}
body .et_pb_section button.et_pb_button.button-red:hover,
body .et_pb_section a.et_pb_button.button-red:hover{
	background-color: var(--colour-primary);
	border-color: var(--colour-primary);
}
body .et_pb_section button.et_pb_button.button-white-line,
body .et_pb_section a.et_pb_button.button-white-line{
	border: 2px solid var(--colour-white) !important;
}
body .et_pb_section button.et_pb_button.button-white-line:hover,
body .et_pb_section a.et_pb_button.button-white-line:hover{
	background-color: var(--colour-white);
	color: var(--colour-dark-primary);
}
body .et_pb_section button.et_pb_button.button-red-bg-outline,
body .et_pb_section a.et_pb_button.button-red-bg-outline{
	background-color: var(--colour-secondary);
	border-color: transparent;
/*	outline: 4px double var(--colour-secondary);*/
}
body .et_pb_section button.et_pb_button.button-red-bg-outline:hover,
body .et_pb_section a.et_pb_button.button-red-bg-outline:hover{
	background-color: var(--colour-primary);
	border-color: transparent;
}

body .et_pb_section button.et_pb_button.button-red-bg-outline::after,
body .et_pb_section a.et_pb_button.button-red-bg-outline::after{
	content:"";
	opacity: 1;
	position: absolute;
	display: block;
	width: 102.5%;
	background-color: transparent;
	outline: 4px solid var(--colour-secondary);
	top: -4px;
	right: -4px;
	bottom: -4px;
}
body .et_pb_section button.et_pb_button.button-red-bg-outline:hover::after,
body .et_pb_section a.et_pb_button.button-red-bg-outline:hover::after{
	outline-color: var(--colour-primary);
}
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:450px) {
	body .et_pb_section button.et_pb_button, body .et_pb_section a.et_pb_button{
		transform: none;
		width: 100%;
		justify-content: center;
	}
}

/*---- 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-secondary);
}
.et_pb_section .et_pb_divider.divider-grey::before{
	border-top-color: #B4B2B0;
}
.et_pb_space{
	height: 0;
}
/* Negative Margin */

.nm-200 {
	margin-top: -200px !important;
}

/* Block - FAQ */
/* -------------- */

.et_pb_row:has(.et_pb_toggle) {
	max-width: var(--frame-max-s);
}
.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_toggle_close,
.et_pb_toggle_open {
    background-color: var(--colour-background);
    padding: 50px;
}
.et_pb_toggle_close .et_pb_toggle_title, .et_pb_toggle_item h5 {
    color: var(--colour-black) !important;
	margin: 0px;
	font-size: 20px;
	font-weight: 500;
	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: '\f055';
	font-family: var(--font-fa) !important;
    right: auto;
    left: -50px;
    font-size: 22px;
    color: #888;
}
.et_pb_toggle.et_pb_toggle_open .et_pb_toggle_title:before {
	content: '\f056';
    color: var(--colour-primary);
}

.et_pb_column .et_pb_module.et_pb_toggle {
	margin: 0px;
}
.et_pb_toggle {
    border: 0px solid;
}


@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 {
	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-primary) !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,
.et_pb_section .et_pb_module .swiper-button-next:hover::after,
.et_pb_section .et_pb_module .swiper-button-prev:hover::after  {
	color: var(--colour-white);
	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) {

}

/*---- DEFAULT - FORM CSS ----*/

body .et_pb_module label {
	font-size: var(--size-2);
	font-family: var(--font-main);
	color: var(--colour-primary);
}
body .et_pb_module .et_pb_contact_field {
	border: 0px;
	padding: 0px;
	display: flex;
	flex-direction: column;
	row-gap: 0px;
}
body .et_pb_module .et_pb_contact .et_pb_contact_field_half {
    width: 100%;
    float: none;
	max-width: calc(50% - 15px);
    flex: 0 0 calc(50% - 15px);
	margin: 0px;
}
body .et_pb_contact_form {
	display: flex;
	flex-wrap: wrap;
	column-gap: 30px;
	row-gap: 25px;
	margin: 0px;
}
body .et_pb_contact_form.clearfix::before,
body .et_pb_contact_form.clearfix::after {
	display: none;
}
body .et_contact_bottom_container {
	max-width: 100%;
	flex: 0 0 100%;
    width: 100%;
	float: none;
	justify-content: flex-end;
}
body .et_pb_module input {
	padding: 0px;
	height: 45px;
}
body .et_pb_module .et_pb_contact :where(input, textarea, select) {
	padding: 15px;
	border-radius: 0px;
	border: 0px;
	border-bottom: 1px solid var(--colour-alternate-3);
	font-family: var(--font-body);
	font-size: var(--size-2);
	font-weight: 300;
	outline: unset;
	appearance: none;
}
body .et_pb_module .et_pb_contact :where(input, textarea, select)::placeholder {
	color: var(--colour-secondary);
}
body .et_pb_module .et_pb_contact :where(input, textarea, select):hover,
body .et_pb_module .et_pb_contact :where(input, textarea, select):focus {
	border-color: var(--colour-primary);
}
body .et_pb_module .et_pb_contact textarea {
	min-height: 150px;
}
body .et_pb_module .et_pb_contact .et_pb_contact_field:has(textarea) {
	max-width: 100%;
	flex: 0 0 100%;
}
body .et_pb_contact_submit {
    position: relative;
    transition: var(--transition);
    color: var(--colour-primary);
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    line-height: 1.2em;
    font-weight: 500;
    padding: 15px 25px !important;
    background: none !important;
    border: none !important;
    z-index: 3;
	margin: 0px;
}


@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 */

/* CONTACT DETAILS - USED IN HEADER, FOOTER & SECTION CTA*/
.contact-details p a{
	position: relative;
}
.contact-details p a:not(.no-line)::after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: var(--colour-secondary);
	bottom: 0;
}
.contact-details p a:not(.no-line):hover{
	color: var(--colour-primary);
}

/*---- HEADER ----*/

header {
	padding: 0;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 101;
	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: 50px 80px;
    margin: 0 auto;
    display: flex;
    align-items: center;
	justify-content: space-between;
}
header .et_pb_section .menu-item {
	display: flex;
	align-items: center;
	padding-left: 0;
	padding-right: 0;
}
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: center;
}
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 {
    width: 100%;
    min-width: auto;
    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_menu{
	justify-content: center;
}
header .et_pb_menu .et-menu {
    margin-left: 0px;
    margin-right: 0px;
}
header .et-menu a {
    display: flex;
    justify-content: center;
	font-size: 14px;
    color: var(--colour-white);
 	font-family: var(--font-headings);
 	font-weight: 600;
 	font-style: italic;
    position: relative;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: var(--transition);
	padding-left: 17.5px;
	padding-right: 17.5px;
	padding-top: 4px;
}
header .et-menu a::after {
	top: 3px !important;
}
header .menu-blue .et-menu a {
	color: var(--colour-primary);
}/*
header .et-menu .menu-item-has-children.et-hover{
	background-color: var(--colour-white);	
}*/
header .et-menu .menu-item-has-children.et-hover a{
	color: var(--colour-primary);
}
header .et-menu .sub-menu{
	border-top: 0;
	padding: 10px 0 !important;
	width: 300px;
	transition: var(--transition);
}
header .et-menu .sub-menu a{
	color: var(--colour-primary) !important;
	width: 100%;
	justify-content: flex-start;
}
.et_pb_menu .et_pb_menu__wrap{
	justify-content: center;
}


/*Header Responsive Override*/
@media screen and (max-width:1600px) {

}
@media screen and (max-width:1500px) {
	header .et_pb_section .et_pb_row {
		flex-wrap: wrap;
		row-gap: 7px;
	}
	header .et_pb_section .et_pb_column:has(.et_pb_menu) {
	    width: 100%;
	    justify-content: center;
	    order: 2;
	    flex: 1 1 100%;
	}
	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 45%;
	}
	header .et_pb_section .et_pb_column:last-child{
		align-items: end;
	}
}
@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 .et_pb_section .et_pb_row{
		padding: 50px 20px;
		flex-wrap: nowrap !important;
	}
	header .menu-item a:hover {
	    text-decoration: none;
	    background: none !important;
	    color: var(--colour-secondary);
	    transition: var(--transition);
	}
	.et_pb_menu .et_pb_menu__wrap{
		justify-content: end;
	}
	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) {
		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 {
		display: none;
		position: absolute;
		top: 0;
		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 .et_mobile_menu li a{
		color: var(--colour-white);
	}
	header .mobile_nav.opened .et_mobile_menu {
		pointer-events: all;
		opacity: 1;
		transition: var(--transition);
	}
	header .et_pb_section .et_pb_column:last-child{
		display: none;
	}
	header .et_pb_section .menu-item{
		display: block;
	}
	header .menu-blue .et-menu .sub-menu,
	header .et_pb_menu .et_mobile_menu ul{
		background-color: var(--colour-tertiary) !important;
	}
}
@media screen and (max-width:800px) {
	header .et_pb_section .et_pb_column:first-child{
		z-index: 11;
	}
}
@media screen and (min-width:1001px) {}
@media screen and (max-width:1200px) and (min-width:1000px) {}
@media screen and (max-width:600px) {
	header img {
	    min-width: 150px;
	    max-width: 200px;
	    object-fit: contain;
	}
	header .et_pb_section .et_pb_row {
        flex-wrap: nowrap !important;
    }
	header .et_pb_image_0_tb_header {
  	  width: unset;
	}
}
@media screen and (max-width:450px) {}

.font-large p,
.font-large p span {
	font-size: clamp(20px, 0.30rem ,26px);
	line-height: calc(var(--master-line-height) * 1.7);
}


/*---- FOOTER ----*/
footer{
	background-image: linear-gradient(180deg,var(--colour-primary) 0%,var(--colour-tertiary) 100%) !important;
}
footer p {
	font-size: 14px;
}
footer p span {
	display: flex;
	column-gap: 10px;
	align-items: flex-start;
}
footer .et_pb_section {
	/*display: flex;
	align-items: flex-start;
	max-width: var(--frame-max-m);
	width: var(--frame-width);*/
	margin: 0 auto;
	padding: 0px;
}
footer .et_pb_section{
	background-color: transparent;
}
footer .et_pb_module_heading{
	font-family: var(--font-headings);
	color: var(--colour-white);
	font-size: 16px;
	letter-spacing: 0;
}
footer,
footer .et_pb_section,
footer .et_pb_module.et_pb_menu {
}
footer .et_pb_section{
	padding-top: 80px;
}
footer .et_pb_section .et_pb_row:not(.row-footer-bottom){
	margin: 0 auto;
	max-width: var(--frame-footer);
}
footer .et_pb_section .et_pb_row.row-footer-bottom{
	max-width: 100vw;
	width: 100%;
	padding-left: calc(var(--frame-pad)/2);
	padding-right: calc(var(--frame-pad)/2);
	margin-top: 100px;
	background-color: var(--colour-primary);
}
footer .et_pb_section .row-footer-bottom::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	background-color: var(--colour-primary);
	width: 100%;
	height: clamp(36px,72px,72px);
	top: -72px;
	bottom: 0;
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
footer .et_pb_section .row-footer-bottom p{
	display: flex;
	flex-wrap: wrap;
	column-gap: 30px;
}
footer .et_pb_section .row-footer-bottom p a:hover{
	color: var(--colour-dark-tertiary);
}
footer .et_pb_section .row-footer-bottom .et_pb_column:last-child p{
	justify-content: flex-end;
}
footer .et_pb_section .et_pb_row--with-menu .et_pb_column--with-menu{
	flex: 1 1 50%;
}
footer .et_pb_section .et_pb_row--with-menu .et_pb_column--with-menu:nth-child(2){
	flex: 1 1 35%;
}
footer .et_pb_row {
	flex: 1 1 200px;
	margin: 0px;
}
footer img {
	max-width: 250px;
	width: 100%;
	margin-bottom: 40px;
}
footer ul {
	display: flex;
	flex-direction: column;
	padding: 0px !important;
}
footer ul li {
	color: #fff;
    list-style: none;
	font-size: 14px;
}
footer ul li:first-child {
	color: var(--colour-primary);
}
footer .et_pb_text_inner ul:not(:last-child) {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}
footer .et_pb_text_inner ul:not(:last-child)::after {
	content: '';
	display: flex;
	width: 100%;
	height: 1px;
	background-color: var(--colour-white);
	opacity: 0.2;
	margin-bottom: 15px;
}
footer h5 {
	color: var(--colour-white);
	font-size: 16px;
	margin-bottom: 15px;
}
footer h6 {
	color: var(--colour-white);
	font-size: 16px;
	margin-bottom: 0px;
}
footer p,
footer .et-menu a {
	color: var(--colour-white);
}
footer .et-menu {
	flex-direction: column;
	row-gap: 5px;
}
footer .et-menu a {
	font-weight: normal;
	font-style: normal;
}

footer .bottom-footer {
	max-width: 1700px;
}
footer .bottom-footer  .et_pb_row {
	max-width: 100%;
}
footer .bottom-footer .et_pb_row .et_pb_column {
	display: flex;
	flex-direction: row;
	column-gap: 20px;
	align-items: center;
}
footer .bottom-footer .et_pb_row .et_pb_column:last-child {
	justify-content: flex-end;
}
footer .bottom-footer .et_pb_row .et_pb_column .et_pb_module {
	margin: 0px;
}
footer .bottom-footer .et_pb_row:first-child {
    margin-right: 0px;
}
footer .mobile_menu_bar {
	display: none !important;
}
footer .et_pb_menu .et_pb_menu__menu {
	display: flex !important;
}
footer .et_pb_menu__wrap {
	-webkit-box-pack: start !important;
	-ms-flex-pack: start !important;
	justify-content: flex-start !important;
}
@media screen and (max-width: 1400px) {
	footer .et_pb_section {
		flex-wrap: wrap;
		column-gap: 40px;
		row-gap: 60px;
	}
	footer .et_pb_row:has(img) {
		width: var(--frame-width);
	}
	footer .et_pb_row:not(:first-child) {
	}
	footer .et_pb_section .et_pb_row:first-child .et_pb_text {
		max-width: 600px;
	}
	footer .et_pb_section.bottom-footer {
	    padding-top: 80px;
	}
}
@media screen and (max-width: 1000px) {
    footer .et_pb_section.bottom-footer .et_pb_row {
        flex-wrap: nowrap !important;
    }
}
@media screen and (max-width: 900px) {
	footer .et_pb_section .et_pb_row.row-footer-bottom{
		flex-wrap: wrap;
		align-items: center;
	}
	footer .et_pb_section .row-footer-bottom p,
	footer .et_pb_section .row-footer-bottom .et_pb_column:last-child p{
		justify-content: center;
		text-align: center;
	}
	footer .et_pb_section .et_pb_row--with-menu .et_pb_column--with-menu{
		flex: 1 1 100%;
	}
}
@media screen and (max-width: 700px) {
    footer .et_pb_section.bottom-footer .et_pb_row {
        flex-wrap: wrap !important;
		row-gap: 30px;
    }
	footer .bottom-footer .et_pb_row .et_pb_column,
	footer .bottom-footer .et_pb_row .et_pb_column:last-child {
		justify-content: center;
	}
}
@media screen and (max-width: 600px) {
	footer .et_pb_row .et_pb_column {
		align-items: center;
	}
	footer ul li {
		display: flex;
		justify-content: center;
		text-align: center;
	}
	footer .et_pb_section .et_pb_row:first-child .et_pb_text {
		text-align: center;
	}
	footer .et_pb_section {
		row-gap: 20px;
	}
}


/*----- 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-white);
	}
	.et_pb_menu .mobile_nav .mobile_menu_bar::after {
		box-shadow: 0px 22px 0 var(--colour-white);
	}
	.et_pb_menu.menu-blue .mobile_nav .mobile_menu_bar::before,
	.et_pb_menu.menu-blue .mobile_nav .mobile_menu_bar::after{
		background-color: var(--colour-primary);
	}
	.et_pb_menu.menu-blue .mobile_nav .mobile_menu_bar::after {
		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 & FOOTER GLOBAL STYLE ---*/
header .header_footer.contact-details p,
footer .header_footer.contact-details p{
	color: var(--colour-white);
	font-family: var(--font-headings);
	font-size: 16px;
}	
header .header_footer.contact-details.blue p,
footer .header_footer.contact-details.blue p,
header .header_footer.contact-details.blue p a,
footer .header_footer.contact-details.blue p a{
	color: var(--colour-primary);
}
header .header_footer.contact-details p{
	text-transform: uppercase;
	text-align: right;
}
header .header_footer.contact-details p a,
footer .header_footer.contact-details p a{
	color: var(--colour-white);
	text-transform: lowercase;
/*	text-decoration: underline var(--colour-secondary);
	text-decoration-thickness: 2px;*/
}
header .header_footer.contact-details p a:hover,
footer .header_footer.contact-details p a:hover{
	color: var(--colour-dark-tertiary);
}
footer .header_footer.contact-details p{
	margin-bottom: 20px;
	line-height: calc(var(--master-line-height) * 1.2);
}
header .header_footer.contact-details p a::after{
	right: 0;

}
@media screen and (max-width:600px) {
	footer .header_footer.contact-details p {
		text-align: center;;
	}
	footer .header_footer.contact-details p a{
		display: table;
		margin: 0 auto;
	}
}
/*---- INPUT / FORM ----*/
form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 50px;
  background-color: #fff;
  font-size: 16px;
  box-shadow: 1px 19px 63px 6px rgba(0,0,0,0.43);
-webkit-box-shadow: 1px 19px 63px 6px rgba(0,0,0,0.43);
-moz-box-shadow: 1px 19px 63px 6px rgba(0,0,0,0.43);
}
form h2{
	text-transform: uppercase;
	padding-bottom: 50px;
}
label {
  margin-bottom: 30px;
  font-size: 16px;
  padding-left: 10px;
}
label.no-left-pad{
	padding-left: 0;
}
form p {
	 padding-bottom: 0;
}
form p span{
	line-height: 0;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea{
  width: 100%;
  padding: 12px;
  margin-bottom: 25px;
  border:0;
  border-bottom: 1px solid #B4B2B0;
  border-radius: 0;
  font-size: 16px;
  color: #333;
  background-color: var(--colour-white);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  box-sizing: border-box;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus {
  border-color: var(--colour-primary);
  outline: none;
  box-shadow: 0 0 5px var(--colour-primary);
}

input[disabled],
textarea[disabled] {
  background-color: #e9e9e9;
  border-color: #ddd;
  color: #aaa;
  cursor: not-allowed;
}

textarea {
  height: 120px;
  resize: vertical;
  background-color: #F3F3F6 !important;
  border:0;
  margin-bottom: 50px;
}

button[type="submit"],
input[type="submit"] {
  width: 100%;
  padding: 15px 25px !important;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background-color: var(--colour-primary);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: var(--transition);
  text-transform: uppercase;
}

button[type="submit"]:hover,
input[type="submit"]:hover {
  background-color: var(--colour-dark-primary) !important;
  transform: translateY(-2px);
}

form button[type="submit"]{
	background-color: var(--colour-secondary);
}
/* Validation Styles */
input:valid,
textarea:valid {
/*  border-color: #28a745;*/
}

input:invalid,
textarea:invalid {
  border-color: #dc3545;
}

/* Helper Text for Inputs */
input:required::after,
textarea:required::after {
  content: "*";
  color: #dc3545;
  margin-left: 5px;
}

/* 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;
}

select {
  width: 100%;
  padding: 12px;
  margin-bottom: 20px;
  border:0;
  border-radius: 0;
  font-size: var(--size-2);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.et_pb_contact_select{
	background-color: #fff !important;
	border-bottom: 1px solid #B4B2B0;
}
select:focus {
  border-color: var(--colour-primary);
  outline: none;
}
.wpcf7-spinner{
	height: 0;
	display: flex;
}
@media (max-width: 600px) {
  form {
    padding: 20px;
  }

  button[type="submit"],
  input[type="submit"] {
    width: 100%;
  }
}
/*---- SECTION - TEXT ----*/
.et_pb_text h2{
	/*font-weight: 700;*/
	color: var(--colour-primary);
}

/*---- SECTION -----*/
/*.section-a-third-width,
.section-half-width{
	flex-direction: column;
	align-content: baseline !important;
	justify-content: center;
}
.section-a-third-width .et_pb_row,
.section-half-width .et_pb_row {
	/*padding-right: calc(50vw - (var(--frame-pad) / 2));
	padding-left: var(--frame-pad) !important;
	margin: unset;
}
.section-half-width .et_pb_row {
	max-width: 50vw;
}
.section-a-third-width .et_pb_row {
	max-width: 50vw;
}*/
/*---- SECTION - BANNER ----*/
.section-banner {
    position: relative;
    z-index: 2;
    display: flex;
	flex-wrap: wrap;
	align-content: end;
/*    flex-direction: column;
    justify-content: flex-end;*/
    min-height: 96vh;
    padding: 0 !important;
	padding-bottom: 150px !important;
    background-color: var(--colour-black);
	overflow: hidden;
	padding-top: 200px !important;
}
.section-banner .et_pb_column{
	flex-wrap: wrap;
	flex-direction: unset;
	row-gap: clamp(20px, calc(var(--row-gap) * 3), 30px);
	column-gap: clamp(10px, calc(var(--row-gap) * 2), 20px);
}
/*.section-banner.home {
	min-height: 78vh;
}
.section-banner.contact .et_pb_row:has(.et_pb_heading) {
	padding: 160px 0px 350px;
}*/
.section-banner.v2 {
	min-height: 530px;
}
.section-banner.v3 {
	min-height: 650px;
}
.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 .et_pb_module:has(p) {
	margin-bottom: 60px;
}
.section-banner .et_pb_row:has(.et_pb_heading),
.section-banner .et_pb_row:has(h1) {
    display: flex;
    justify-content: center;
}
.section-banner .et_pb_row:has(.et_pb_text_inner) .et_pb_column,
.section-banner .et_pb_row:has(h1) .et_pb_column {
	display: flex;
	column-gap: 15px;
	flex-direction: column;
}
.section-banner:not(.bg-white) .et_pb_row:first-child .et_pb_text:not(.heading){
	max-width: 550px;
}
.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 h1{
	line-height: clamp(35px, calc(var(--master-line-height) * 1.2), 70px);
}
.section-banner .et_pb_row p{
	font-size: 20px;
}
.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-banner .et_pb_text_inner:not(h1){
	font-family: var(--font-body);
	font-weight: 300 !important;
}
.section-banner.bg-white .et_pb_text_inner *{
	color: var(--colour-primary);
}
.heading{
	order: unset;
}
/* OVERLAY */
.et_pb_section.overlay{
	background-color: var(--colour-white);
}
.et_pb_section.overlay::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.et_pb_section.overlay.style-1::before{
	background-image: url('/wp-content/uploads/2025/05/overlay-1.png');
}
.et_pb_section.overlay.style-2::before{
	background-image: url('/wp-content/uploads/2025/05/overlay-2.png');
}
@media screen and (max-width:1000px) {
	.section-banner.v2{
		min-height: 50vh;
	}
}
@media screen and (max-width:600px) {
	.section-banner,
	.section-banner.v2{
		padding-top: 150px !important;
		min-height: unset;
	}
	.section-banner p:has(.et_pb_button) {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}
/*---- SECTION - CTA ----*/
.section-cta{
	position: relative;
	background-color: var(--colour-primary);
	background-blend-mode: luminosity;
  }
.section-cta  *{
	color: var(--colour-white);
}
.section-cta::before{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	background: linear-gradient(90deg,var(--colour-dark-tertiary) 45%,rgba(255,255,255,0) 100%);
	z-index: 1;
}
.section-cta .et_pb_module_heading{
	font-size: var(--size-16);
	line-height: calc(var(--master-line-height) * 1.2);
	text-transform: capitalize;
}
.section-cta .contact-details p{
	font-family: var(--font-headings);
	font-style: italic;
	font-weight: 500;
	text-transform: capitalize;

}
.section-cta .contact-details p a{
	font-size: 35px;
	font-weight: 700;
	text-transform: none;
}

.section_has_divider::after{
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100px;
	z-index: 12;
	left: 0;
	right: 0;  
}

.section_has_divider.divider_style_1::after{
	background-image:url("/wp-content/uploads/2025/02/Line.svg");
} 
.section_has_divider.divider_style_2::after{
	background-image:url("/wp-content/uploads/2025/03/line-flip.svg");
}
.section_has_divider.divider_style_3::after{
	background-image:url("/wp-content/uploads/2025/05/line-2-1.svg");
}
.section_has_divider.divider_style_4:after{
	background-image:url("/wp-content/uploads/2025/05/line-2-1-flip.svg");
}
.section_has_divider.divider_style_5:after{
	background-image:url("/wp-content/uploads/2025/05/line-3-1.svg");
}
.section_has_divider.divider_style_1::after,.section_has_divider.divider_style_3:after,.section_has_divider.divider_style_5:after{
	background-position: 80% bottom;
	bottom: -3px;
}
.section_has_divider.divider_style_2::after,.section_has_divider.divider_style_4:after{
	background-position: 20% bottom;
	bottom: -43px;
}
.section_has_divider.divider_style_1::after,.section_has_divider.divider_style_3:after,.section_has_divider.divider_style_2::after,.section_has_divider.divider_style_4:after,.section_has_divider.divider_style_5:after{
	background-size: auto;
	background-repeat: no-repeat;  
}
@media screen and (max-width: 1100px) {	
.section_has_divider.divider_style_2,.section_has_divider.divider_style_4{
	padding-bottom: 120px !important;
}
}
/*---- ARTICLES  ----*/
article header{
	position: relative;
}
article header h4{
	font-weight: 700;
	font-style: italic;
	letter-spacing: 0;
	color: var(--colour-primary);
}
article .dsm-readmore-btn{
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--colour-primary);
	font-family: var(--font-headings);
	font-weight: 700;
	font-style: italic;
	font-size: var(--size-2);
}
article .dsm-readmore-btn::after{
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 2px;
	left: 0;
	background-color: var(--colour-secondary);
}
/*---- ARTICLES & PROJECTS SLIDER ----*/
.dsm_post_carousel .swiper-button-next, .dsm_post_carousel .swiper-button-prev,
.dsm_blog_carousel .swiper-button-next, .dsm_blog_carousel .swiper-button-prev {
	border: 1px solid var(--colour-primary);
	padding: 5px 20px;
	width: unset !important;
	height: unset !important;
	margin-top: 15px;
}
.dsm_post_carousel .swiper-button-next:hover, .dsm_post_carousel .swiper-button-prev:hover,
.dsm_blog_carousel .swiper-button-next:hover, .dsm_blog_carousel .swiper-button-prev:hover {
	padding: 5px 20px;
}
.dsm_post_carousel .swiper-button-next::after, .dsm_post_carousel .swiper-button-prev::after,
.dsm_blog_carousel .swiper-button-next::after, .dsm_blog_carousel .swiper-button-prev::after{
	font-weight: 300;
}
.dsm_post_carousel .swiper-pagination,
.dsm_blog_carousel .swiper-pagination{
	text-align: left;
	width: fit-content !important;
	position: relative;
}
.dsm_post_carousel .swiper-pagination .swiper-pagination-bullet,
.dsm_blog_carousel .swiper-pagination .swiper-pagination-bullet{
	background-color: #d9d9d9 !important;
	width: 30px;
	height: 4px;
	border-radius: 0;
}
.dsm_post_carousel .swiper-pagination .swiper-pagination-bullet-active,
.dsm_blog_carousel .swiper-pagination .swiper-pagination-bullet-active{
	background-color: var(--colour-secondary) !important;
}
.dsm_post_carousel .swiper-button-prev, 
.dsm_blog_carousel .swiper-button-prev{
	/*left: 90% !important;*/
	left: unset !important;
	right: 90px !important;
}
.dsm-blog-carousel-item{
	align-self: flex-start !important;
}
.dsm_post_carousel .dsm-entry-wrapper{
	position: absolute;
	bottom: 0;
	width: 100%;
}
.dsm_post_carousel .dsm-entry-title{
	color: var(--colour-white);
	letter-spacing: 0;
	text-transform: uppercase;
}
/*.dsm_post_carousel .dsm-entry-thumbnail::before{*/
.dsm_post_carousel	.dsm-entry-thumbnail a::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background: linear-gradient(to bottom, transparent 0%, rgba(18, 76, 162, 0.5) 80%, var(--colour-primary) 100%);
	transition: all 0.35s ease-in-out;
	z-index: 1;
	pointer-events: none;
}
.dsm_post_carousel	.dsm-entry-thumbnail a:hover::before{
	opacity: 0;
}
.dsm_blog_carousel .dsm-entry-meta .dsm-meta-seperator{
	display: none; 
}
.dsm_blog_carousel .dsm-entry-meta .dsm-posted-on{
	background-color: rgba(255,255,255,0.9);
	padding: 3px 10px;
	position: absolute;
	top: 5px;
	left: 6px;
	font-family: var(--font-main);
	letter-spacing: 1px;
	font-weight: 500;
	font-size: 10px;
	color: var(--colour-dark-primary);
}
.dsm_blog_carousel .dsm-entry-title{
	margin-bottom: 15px;
}
.dsm_blog_carousel .dsm-entry-meta .dsm-posted-on::before{
	content: "\f017";
	font-family: "Font Awesome 6 Sharp";
	position: relative;
	padding-right: 5px;
}
/* FLEX BOX */
.flex-box .et_pb_text_inner{
	display: flex;
	font-family: var(--font-headings);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0;
	font-style: italic;
}
.flex-box .et_pb_text_inner div:not(:first-child){
	padding-left: 30px;
	border-left: 1px solid var(--colour-grey);
}
.flex-box .et_pb_text_inner div{
	color: var(--colour-primary);
	padding-right: 30px;
	padding-top: 10px;
}
.flex-box .et_pb_text_inner span{
	font-size: var(--size-11);
	font-weight: 700;
}
.flex-box .et_pb_text_inner span i{
	font-size: 40px;
}
.flex-text .et_pb_text_inner > *{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	align-items: center;
}
.flex-box{
	display: flex;
}
.et_pb_column.flex-box{

}
@media screen and (max-width:700px) {
	.flex-box .et_pb_text_inner{
		flex-wrap: wrap;
	}
	.flex-box .et_pb_text_inner div:not(:first-child){
		border-left: 0;
	}
	.flex-box .et_pb_text_inner div{
		width: 100%;	
		padding-top: 30px;
	}
	.flex-box .et_pb_text_inner div:first-child{
		padding-left: 30px;
	}
	.dsm_post_carousel .dsm-entry-image .dsm-entry-thumbnail {
		height: 350px;
	}
}
/* ROWS */
.row-space-between-columns .et_pb_column{
	justify-content: space-between;
}
.col-size-900 .et_pb_column_4_4{
	width: 900px !important;
}
.row-size-1000{
	width: 1000px !important;
}
.row-size-xs{
	width: var(--frame-max-xs) !important;
}
.row-size-s{
	width: var(--frame-max-s) !important;
}
.row-size-m{
	width: var(--frame-max-m) !important;
}
.row-size-xl{
	width: 100% !important;
	max-width: var(--frame-max-xl) !important;
}
.row-align-center{
	align-items: center;
}
.row-content-icon-blocks{
	column-gap:unset !important;
}
.row-content-icon-blocks .et_pb_column {
	padding-left: 2.5px;
	padding-right: 2.5px;
}
.row-content-icon-blocks .et_pb_text_inner{
	background-color: var(--colour-white);
	padding: 40px;
	width: 100%;
}
.row-content-icon-blocks .et_pb_text {
	display: flex;
	height: 100%;
}
.row-content-icon-blocks .et_pb_text_inner h6{
	font-style: unset;
	font-family: var(--font-base);
	margin-bottom: 5px;
}
.row-content-icon-blocks .et_pb_text_inner i{
	font-size: 36px;
	color: var(--colour-primary);
}
.row-logos{
	column-gap: clamp(30px, calc(var(--row-gap) * 12), 120px) !important;
	align-items: center;
}
.et_pb_section .row-gap-30,
.row-gap-30{
	row-gap: clamp(15px, calc(var(--row-gap) * 3), 30px);
}
.align-center {
	align-items: center;
  }
.align-bottom {
	align-items: end;
}
@media screen and (max-width:1600px) {
	.row-size-xl{
		width: var(--frame-width) !important;
	}
}
@media screen and (max-width:1400px) {
	.row-size-m{
		width: var(--frame-width) !important;
	}
}
@media screen and (max-width:1300px) {
	.row-size-xs,.row-size-s{
		width: var(--frame-width) !important;
	}
}
@media screen and (max-width:1200px) {
	.row-logos{
		flex-wrap: wrap !important;
		justify-content: center;
	} 	
	.row-logos .et_pb_column{
		width: 25% !important;
	}
	.row-size-1000{
		width: var(--frame-width) !important;
	}
}
@media screen and (max-width:800px) {
	.row-logos .et_pb_column{
		width: 33.33% !important;
	}
}
/* COLUMNS */
.et_pb_section .col-50 .et_pb_column,
.col-50 .et_pb_column {
	max-width: 50vw;
	margin: 0 auto 0 0 !important;
}
.col-gap-100{
	column-gap: 100px !important;
	position: relative;
}
.col-gap-100::before{
	content: "";
	position: absolute;
	display: block;
	width: 1px;
	top: 30px;
	bottom: 60px;
	left: 50%;
	background-color: var(--colour-secondary);
}
.col-gap-100.no-border::before{
	display: none;
}
@media screen and (max-width:1700px) { 
	.et_pb_section .col-50 .et_pb_column, .col-50 .et_pb_column{
		max-width: 60vw;
	}
}
@media screen and (max-width:1000px) { 
	.col-gap-100::before {
		display: none;
	}
}
@media screen and (max-width:700px) { 
	.et_pb_section .col-50 .et_pb_column, .col-50 .et_pb_column{
		max-width: 100%;
	}
}
/* MARGINS */
.margin-top-50{
	margin-top: 50px !important;
}
.margin-top--150{
	margin-top: -150px !important;
}
/* PADDINGS */
.pad-top-0{
	padding-top: 0 !important;
} 
.pad-bottom-0{
	padding-bottom: 0 !important;
}
.pad-bottom-20{
	padding-bottom: 20px !important;
} 
.pad-bottom-50{
	padding-bottom: 50px !important;
} 
.pad-bottom-100{
	padding-bottom: 100px !important;
} 
.pad-bottom-150{
	padding-bottom: 150px !important;
} 
.pad-tb-50{
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}
.pad-top-50{
	padding-top: 50px !important;
}
.pad-bottom-50{
	padding-bottom: 50px !important;
}
.pad-bottom-65{
	padding-bottom: 65px !important;
}
.pad-tb-150{
	padding-top: 150px !important;
	padding-bottom: 150px !important;
}

@media screen and (max-width:1700px) {
	.margin-top--150{
		margin-top: -90px !important;
	}
}
@media screen and (max-width:1000px) {
	.margin-top--150{
		margin-top: 0 !important;
	}
}
/* TEXT STYLES */
.uppercase{
	text-transform: uppercase;
}
.text-blue{
	color: var(--colour-primary);
}
/* FILTER */
.filter-grey{
	filter: grayscale(1);
}
.row-contact-details .et_pb_heading {
	padding-bottom: 20px; 
}
.row-contact-details .et_pb_column{
	row-gap: 30px !important;

}
.row-contact-details h2{
	font-weight: 700;
	font-size: 32px;
	line-height: 40px;
	letter-spacing: 0%;
}
.contact-details h4{
	font-size: 22px;
	text-transform: uppercase;
	letter-spacing: 1%;
	line-height: 40px;
	color: var(--colour-secondary);
}
.contact-details .flex-box{
	width: 100%;
}
.contact-details .flex-box .col{
	flex: 1 1 50%;
}

.bullet-list ul li{
	list-style: none;
	margin-bottom: 30px;
	padding-left: 51px;
	position: relative;
	font-size: var(--size-4);
	font-family: var(--font-headings);
	font-weight: 600;
	color: var(--colour-primary);
	text-transform: capitalize;
}
.bullet-list ul li:last-child{
	margin-bottom: 0;
}
.bullet-list ul li::before{
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	width: 25px;
	height: 26px;
	background-image: url("/wp-content/uploads/2025/05/chevron.png");
	background-size: contain;
	display: inline-flex;
}

.border-box{
	border-left: 1px solid var(--colour-primary);
	padding-left: 20px;
}
.border-box p{
	font-size: var(--size-4);
	font-family: var(--font-headings);
	font-weight: 600;
}
.border-box p a{
	position: relative;
}
.border-box p a::after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	left: 0;
	height: 2px;
	background-color: var(--colour-secondary);
	bottom: 0;
}
/* ARTICLES INDEX */
.et_pb_blog_grid .et_pb_salvattore_content{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	justify-content: space-between;
}
.et_pb_blog_grid .column{
	margin-right: 0 !important;
	overflow: hidden;
	position: relative;
	width: calc(33.333% - 30px) !important;
}/*
.et_pb_blog_grid .column:not(:first-child){
	margin-left: 30px;
}*/
.et_pb_blog_grid .et_pb_post{
	border: 0;
	padding: 25px 20px 0;
}
.et_pb_blog_grid .et_pb_post .more-link{
	font-family: var(--font-headings);
	text-transform: uppercase;
	letter-spacing: 2%;
	font-style: italic;
	font-weight: 600;
	display: table;
	color: var(--colour-primary);
}
.et_pb_blog_grid .et_pb_post .more-link::after{
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-color: var(--colour-secondary);
}
.et_pb_blog_grid .et_pb_post .post-meta{
	position: absolute;
	top: 16px;
	left: 16px;
	background-color: rgba(255,255,255,0.9);
	padding: 6px 10px;
}
.et_pb_blog_grid .et_pb_post .post-meta .published{
	color: var(--colour-dark-primary);
	font-size: 10px;
	font-family: var(--font-alt);
}
.et_pb_blog_grid .et_pb_post .post-meta::before{
	content: "\f017";
	font-family: var(--font-fa-sharp);
	padding-right: 6px;
}
@media screen and (max-width: 1000px) {
	.et_pb_blog_grid .column{
		width: 100% !important;
	}
}
@media screen and (max-width: 600px) {
	.et_pb_blog_grid .column{
		max-width: 100%;
	}
}
/* ARTICLES & PROJECT (OUR WORK) */
.single-post  #main-content .et_pb_section.post-type-banner{
	padding: 0;
	max-height: 700px;
	overflow: hidden;
}
.single-project #main-content .post-type-banner {
	padding: 0;
	max-height: 530px;
	overflow: hidden;
}
.single-project .et_pb_post_content .et_pb_section {
	background-color: var(--colour-white);
	padding-top: 70px !important;
}
.single-project .et_pb_post_content .et_pb_section .et_pb_row {
	width: 100%;
}
.single-post #main-content .et_pb_section.post-type-banner::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url('/wp-content/uploads/2025/06/overlay-3.png');
	z-index: 3;
}
.single-post #main-content .et_pb_section.post-type-banner::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	background-color: #f3f8fc;
	width: 100%;
	height: clamp(36px,72px,72px);
	bottom: 0;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);	
	z-index: 11;
}
.single-post .post-type-banner.et_pb_section .et_pb_row,.single-project .post-type-banner.et_pb_section .et_pb_row {

	width:100%;
	max-width: unset;
	padding: 0;
}
.single-project h1.entry-title{
	font-size: var(--size-16);
	font-weight: 700;
}
.single-project #main-content .et_pb_text_inner{
	font-family: var(--font-primary);
}
.single-post #main-content .et_pb_section.post-news-button .et_pb_row,
.single-post #main-content .et_pb_section.post-type-content .et_pb_row{
	max-width: 1000px;
	margin: 0 auto;
}
.single-post #main-content .et_pb_section.post-type-content{
	padding-bottom: 23px;
}
.single-post #main-content .et_pb_section.post-type-content .et_pb_row{
	padding: 70px 100px 100px;
	margin-top: -500px;
	z-index: 11;
	background-color: var(--colour-white);
}
.single-post #main-content .et_pb_section.post-type-content .et_pb_row .et_pb_post_title:first-child{
	padding-bottom: 60px;
	border-bottom: 1px solid  var(--colour-grey);
}
.single-post #main-content .et_pb_section.post-type-content p{
	font-size: 13px;
}
.single-post #main-content .et_pb_section.post-type-content p.et_pb_title_meta_container{
	font-family: var(--font-headings);
	color: #222;
}
.single-post #main-content .et_pb_section.post-news-button{
	padding-top: 0;
	padding-bottom: 200px;
}
.single-project .post-type-content .et_pb_row{
	max-width: 1700px;
	/* margin: 0 0 0 auto; */
}
.single-project .post-type-content .swiper-button-prev,
.single-project .post-type-content .swiper-button-next{
	background-color: transparent !important;
	color: var(--colour-primary) !important;
	border: 2px solid var(--colour-primary);
	padding: 15px 20px;
}
.single-project .post-type-content .divi8-icon-left,
.single-project .post-type-content .divi8-icon-right{
	font-size: var(--size-6) !important;
}
.single-project .post-type-content .swiper-button-next, 
.single-project .post-type-content .swiper-button-prev{
	position: relative;
	width: 80px;
	height: 35px;
	left: unset;
	right: unset;
}
.single-project .post-type-content .swiper-button-next:hover, 
.single-project .post-type-content .swiper-button-prev:hover{
	background-color: var(--colour-primary) !important;
	padding: 15px 20px;
}
.single-project .post-type-content .swiper-button-next:hover i, 
.single-project .post-type-content .swiper-button-prev:hover i{
	color: var(--colour-white);
}
.single-project .post-type-content .swiper-button-prev{
	margin-right: 5px;
}
.single-project .post-type-content .swiper-pagination{
	text-align: left;
	width: fit-content !important;
	bottom: -30px;
}
.single-project .post-type-content .swiper-pagination-bullet{
	width: 30px;
	height: 6px;
	background-color: var(--colour-secondary);
	border-radius: 0;
}
.single-project .post-type-content .swiper-pagination-bullet-active-prev,
.single-project .post-type-content .swiper-pagination-bullet-active-next,
.single-project .post-type-content .swiper-pagination-bullet-active-next-next{
	transform: none;
	background-color: var(--colour-grey);
}
.single-project .post-type-content .swiper-navi-container{
/*	justify-content: flex-end;
	transform: none;
	position: relative;
	bottom: unset;*/
	bottom: -55px;
}
ul.et_pb_social_media_follow{
	display: flex;
	justify-content: end;
}
.et_pb_social_media_follow li a.icon{
	background-color: var(--colour-white) !important;
	height: 46px;
	width: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.et_pb_social_media_follow li:not(:last-child) a.icon{
	margin-right: 2px;
}
.et_pb_social_media_follow li a.icon::before {
	color: var(--colour-primary) !important;
}
.divi8_image_carousel_item {
	width: 100% !important;
}
.custom-fields .dsm_dual_heading:not(:first-of-type){
	padding-left: 30px;
}
.custom-fields.dsm_dual_heading:not(:last-of-type),
.custom-fields .dsm_dual_heading:not(:last-of-type){
	padding-right: 30px;
	border-right: 1px solid var(--colour-grey);
}
.custom-fields .dsm-dual-heading-main span{
	display: flex;
	flex-wrap: wrap;	
	font-family: var(--font-headings);
	color: var(--colour-primary) !important;
}
.custom-fields .dsm-dual-heading-main .dsm-dual-heading-before{
	text-transform: uppercase;
	font-weight: 700;
}
.et_pb_portfolio_grid_items .et_pb_portfolio_item a .et_overlay,
.et_pb_filterable_portfolio .et_pb_portfolio_item a .et_overlay{
	background-color: transparent;
	opacity: 1;
	z-index: 3;
}
.et_pb_portfolio_grid_items .et_pb_portfolio_item a .et_overlay::before,
.et_pb_filterable_portfolio .et_pb_portfolio_item a .et_overlay::before,
.et_pb_portfolio_grid_items .et_pb_portfolio_item a .et_overlay::after,
.et_pb_filterable_portfolio .et_pb_portfolio_item a .et_overlay::after{
	font-size: var(--size-1);
	font-weight: 600;
	background-color: var(--colour-primary);
	color: var(--colour-white);
	top: unset;
	left: unset;
	bottom: 15px;
	transform: unset;
	display: flex;
	height: 32px;
	align-items: center;
	padding-left: 16px;
	padding-right: 16px;
}
.et_pb_portfolio_grid_items .et_pb_portfolio_item a .et_overlay::before,
.et_pb_filterable_portfolio .et_pb_portfolio_item a .et_overlay::before {
	content: "View Project";
	font-family: var(--font-buttons-alt) !important;
	text-transform: uppercase;
	letter-spacing: 0%;
	right: 35px;
	opacity: 1;
	transition: var(--transition);
}
.et_pb_portfolio_grid_items .et_pb_portfolio_item a .et_overlay::after,
.et_pb_filterable_portfolio .et_pb_portfolio_item a .et_overlay::after {
	content:"\f061";
	font-family: var(--font-fa-sharp);
	padding-left: 0;
	position: absolute;
	right: 15px;
	transition: var(--transition);
}
.et_pb_portfolio_grid_items .et_pb_portfolio_item a:hover .et_overlay::after,
.et_pb_filterable_portfolio .et_pb_portfolio_item a:hover .et_overlay::after{
	transform: translateX(10px);
	padding-left: 10px;
}
.et_pb_portfolio_grid_items,
.et_pb_portfolio_items{
	display: flex;
	flex-wrap: wrap;
	row-gap: 80px;
	column-gap: 30px;
}
.et_pb_portfolio_grid_items .et_pb_grid_item,
.et_pb_filterable_portfolio .et_pb_portfolio_item {
	width: 100% !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
	flex: 1 1 calc(50% - 30px);
	max-width: 50%;
}
.et_pb_filterable_portfolio .et_pb_portfolio_item {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
}
.et_pb_portfolio_grid_items .et_pb_grid_item a,
.et_pb_filterable_portfolio .et_pb_portfolio_item a{
	width: 100%;
}
.et_pb_filterable_portfolio_grid .et_pb_portfolio_item h2{
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 25px !important;
	text-transform: uppercase;
}
.et_pb_filterable_portfolio_grid .et_pb_portfolio_item .post-meta{
	padding-left: 20px;
	border-left: 2px solid var(--colour-secondary);
}
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a{
	text-transform: uppercase;
	font-style: italic;
	font-family: var(--font-headings);
	border: 0;
	padding-left: 0;
	font-weight: 500;
	font-size: var(--size-4);
}
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a:hover{
	background-color: transparent;
	color: var(--colour-secondary);
}
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active{
	color: var(--colour-secondary);
	background-color: transparent;
	font-weight: 600;
	text-decoration: underline;
}
.et_portfolio_image{
	max-height: 400px;
	overflow: hidden;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.et_pb_portfolio_grid .et_portfolio_image img,
.et_pb_filterable_portfolio_grid .et_pb_portfolio_item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.dsm_breadcrumbs_item{
	font-family: var(--font-headings);
	text-transform: uppercase;
	position: relative;
	font-size: 14px !important;
}
.dsm_breadcrumbs_item:not(.dsm_breadcrumbs_item_current,.dsm_home_item),
.dsm_breadcrumbs_separator{
	display: none;
}
.dsm_breadcrumbs_item_current{
	padding-left: 20px !important;
	color: #424242;
}
.dsm_breadcrumbs_item_current::before{
	content: "\f054";
	font-family: var(--font-fa);
	position: absolute;
	left: 0;
}
.dsm_home_item{
	font-weight: 700;
}
.et_pb_testimonial_content,
.et_pb_testimonial_author{
	font-family: var(--font-headings);
	font-weight: 500;
}
.et_pb_testimonial_content{
	letter-spacing: 0;
	font-size: 32px;
	color: var(--colour-primary);
	font-style: italic;
}
.et_pb_testimonial_author{
	color: var(--colour-secondary);
	letter-spacing: -0.4px;
	font-size: 20px;
}
.row-content .et_pb_column:first-child{
	display: flex;
	flex-wrap: wrap;
	flex-direction: unset;
}
.row-content .et_pb_column:first-child .et_pb_module:not(.custom-fields) {
	width: 100%;
}
@media screen and (max-width: 1000px) {
	.single-project .post-type-content .et_pb_row{
		margin: 0 auto;
	}
	.single-post #main-content .et_pb_section.post-type-content .et_pb_row{
		margin-top: -350px;
	}
}
@media screen and (max-width: 767px) {
	.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li{
		width: auto;
	}
	.et_pb_portfolio_grid_items .et_pb_grid_item, .et_pb_filterable_portfolio .et_pb_portfolio_item{
		max-width: 100%;
		flex: 1 1 100%;
	}
	.single-post #main-content .et_pb_section.post-type-content .et_pb_row{
		margin-top: -200px;
		padding: 70px 50px 100px;
	}
	.custom-fields.dsm_dual_heading{
		width: 100%;
		padding-left: 30px;
		border-left: 1px solid var(--colour-grey);
		padding-right: 0 !important;
		border-right: 0 !important;
	}
}
/* SERVICES TAB */
.dsm_advanced_tabs .dsm-advanced-tabs-container{
	column-gap: 20px;
	justify-content: space-between;
	align-items: center;
}
.et_pb_column .dsm_advanced_tabs  .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper{
	row-gap: 20px;
	width: 100%;
	max-width: 400px;
	flex: unset !important;
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title::before{
	content: "\f061";
	font-family: var(--font-fa-sharp);
	color: var(--colour-white);
	background-color: #969188;
	padding: 13px 17px;
	font-size: 18px;
	font-weight: 400;
	display: flex;
	width: auto;
	justify-content: center;
	align-items: center;
	font-style: normal;
	transition: var(--transition);

}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title{
	text-align: left;
	font-family: var(--font-headings);
	text-transform: uppercase;
	font-weight: 700;
	font-style: italic;
	letter-spacing: -0.4px;
	color: #969188;
	display: flex;
	align-items: center;
	column-gap: 30px;
	font-size: 20px;
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title:hover{
	color: var(--colour-black);
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title:hover::before{
	background-color: var(--colour-black);
}
.dsm_advanced_tabs .dsm-tab{
	background-color: transparent !important;
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-title{
	color: var(--colour-black);
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-title::before{
	/* width: 45px; */
	padding: 13px 35px;
	background-color: var(--colour-secondary);
	transition: var(--transition);
}
.dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper{
	max-width: 830px;
}
.dsm_advanced_tabs .dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper{
	padding-left: 0;
}
.dsm_advanced_tabs .dsm-advanced-tabs-content-wrapper .et_pb_button_wrapper{
	text-align: right;
}
.dsm_advanced_tabs .dsm-advanced-tabs-content-wrapper .dsm_button{
	color: var(--colour-primary);
	padding: 0 !important;
	border: 0;
	border-bottom: 2px solid var(--colour-secondary);
	transform: none;
	font-style: italic;
}
.dsm_advanced_tabs .dsm-advanced-tabs-content-wrapper .dsm-inner-content{
	background-color: #F3F8FC;
	padding: 30px 40px;
}
.dsm_advanced_tabs .dsm-advanced-tabs-content-wrapper .dsm-inner-content .dsm-title{
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 15px;
}
.dsm_advanced_tabs .dsm-advanced-tabs-content-wrapper .dsm-inner-content .dsm-content{
	font-family: var(--font-headings);
	font-size: 20px;
	font-style: italic;
	text-transform: capitalize;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--colour-primary);
}
.dsm_advanced_tabs .dsm-content-wrapper .dsm-image{
	padding-bottom: 5px !important;
	min-height: 350px;
	max-height: 350px;
}
.dsm_advanced_tabs .dsm-content-wrapper .dsm-image img{
	width: 100% !important;
	object-fit: cover;
	height: 100%;
}

.swiper-button-prev, .swiper-button-next{
	top: unset !important;
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next, .swiper-button-next{
	background-color: unset;
}
.swiper-slide{
	text-align: left;
}

/* TESTIMONIALS CAROUSEL */
.divi8_testimonial_carousel_lite .carousel_content{
	background-color: transparent;
	display: flex;
	flex-wrap: wrap;
	row-gap: 20px;
}
.divi8_testimonial_carousel_lite .carousel_content img{
	display: none;
}
.carousel_content .social-media-container{
	order: -1;
}
.carousel_content .name_design,
.carousel_content .position_design{
	font-family: var(--font-headings);
	text-transform: uppercase;
	font-weight: bold;
	font-style: italic;
	letter-spacing: -0.3px;
	width: 100%;
}
.carousel_content .name_design{
	order: 1;
	font-size: var(--size-2);
}
.carousel_content .position_design{
	order: 2;
	font-size: var(--size-1);
	color: var(--colour-secondary);
	padding-top: 0px;
}
.carousel_content p{
	padding: 0;
}
.carousel_content span{
	padding-left: 0;
}
.divi8_testimonial_carousel_lite .social-media{
	max-width: unset !important;
}
.swiper-navi-container{
	top: unset;
	bottom: -20px;
	justify-content: end;
}
.swiper-button-next, .swiper-button-prev{
	background-image: none;
}
.et_pb_column .divi8_testimonial_carousel_lite .divi8-star-fill::before{
	color: #FDC90D !important;
}
.social-media li{
	padding-left: 0 !important;
}
.social-media li:not(:first-child){
	padding-right: 5px !important;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-pagination{
	text-align: left;
	margin-top: 60px;
	margin-left: 0;
	width: fit-content !important;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-pagination-bullet{
	border-radius: 0;
	width: 30px;
	height: 4px;
	transform: none;
	opacity: 1;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-pagination-bullet:not(.swiper-pagination-bullet-active-main){
	background-color: #D9D9D9;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-button-prev,
.et_pb_column .divi8_testimonial_carousel_lite .swiper-button-next{
	position: relative;
	border: 1px solid var(--colour-primary);
	width: 80px;
	height: 40px;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-button-prev{
	left: unset;
	border-right: 0;
}
.et_pb_column .divi8_testimonial_carousel_lite .swiper-button-next{
	right: unset;
}


.divi8_image_carousel  .et_pb_module_inner {
	width: 100%;
}


@media screen and (max-width: 600px) {
	.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title {
		font-size: 17px;
	}
	.et_pb_column .dsm_advanced_tabs .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {
		max-width: 100%;
		flex-direction: column;
	}
	.dsm_advanced_tabs .dsm-advanced-tabs-container {
		row-gap: 20px;
	}
}

/* IMAGE SLIDER ON SERVICE PAGES */
.et-pb-arrow-next, .et-pb-arrow-prev{
	color: var(--colour-primary) !important;
	opacity: 1;
	text-shadow: 2px 2px var(--colour-grey);
}
.et-pb-arrow-next{
	right: -10px;
}
.et-pb-arrow-prev{
	left: -10px;
}
.et-pb-arrow-next,
.et-pb-arrow-prev {
	background: rgba(255, 255, 255, 0.50);
	backdrop-filter: blur(10px);
	height: 40px;
	width: 40px;
}
.et-pb-arrow-next::before,
.et-pb-arrow-prev::before {
	font-size: 37px;
}
.et-pb-arrow-next::before {
	content: "\f054";
	font-family: var(--font-fa-sharp) !important;
	color: var(--colour-dark-tertiary);
	font-size: 20px;
	margin-left: 12px;
}
.et-pb-arrow-prev::before {
	content: "\f053";
	font-family: var(--font-fa-sharp) !important;
	color: var(--colour-dark-tertiary);
	font-size: 20px;
	margin-left: 14px;
}
.et_pb_gallery_image img {
    width: 100%;
		min-height: 460px !important;
		max-height: 460px !important;
		object-fit: cover;
}

.error404 header {
	position: relative;
}
.error404 header .et_pb_section {
	background-color: var(--colour-primary);
}
