/*
 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: 	 "tt-commons-pro", var(--font-default);
	--font-body:	 "avenir-lt-pro", var(--font-default);
	--font-alt: 	 "inria-serif", 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.40rem, 40px);
	--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.64rem, 64px);
	--size-16: clamp(34px, 0.70rem, 70px);

    --size-h1: var(--size-15);
    --size-h2: var(--size-9);
    --size-h3: var(--size-5);
    --size-h4: var(--size-4);
    --size-h5: var(--size-5);
    --size-h6: var(--size-2);

	/*---- 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: 	  #DD1919;
	--colour-secondary:   #DD1919;
	--off-white-bg: 	  #F7F8FA;
	--colour-white: 	  #FFF;
	--colour-black: 	  #000;
	--colour-background: #FFF;
	--colour-background-off: #F7F8FA;
	--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: 	500;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h2, .h2 {
	font-weight: 	500;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h3, .h3 {
	font-weight: 	500;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h4, .h4 {
	font-weight: 	500;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h5, .h5 {
	font-weight: 	500;
	color: 			var(--colour-text);
	letter-spacing: 0.015em;
	margin-bottom: 20px;
}
h6, .h6 {
	font-weight: 	500;
	text-transform: uppercase;
	color: 			var(--colour-text);
	letter-spacing: 0.15em;
	margin-bottom: 40px;
}

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.2); }
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: 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 {
	font-weight: 400;
	color: inherit;
	font-family: var(--font-body);
	letter-spacing: 0px;
	line-height: calc(var(--master-line-height) * 1.7);
	font-size: 18px;
}
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); }

.et_pb_section.off-white-bg {
	background-color: var(--colour-background-off);
}
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 30px !important;
    background: var(--colour-secondary) !important;
    border: none !important;
	border-radius: 12px;
    z-index: 3;
	opacity: 1;

    display: flex;
	align-items: center;
    column-gap: 10px;

	font-weight: 600;
	font-size: 16px;
	font-family: var(--font-main);
	text-decoration: none;
	letter-spacing: 0;
	color: var(--colour-white);
	line-height: calc(var(--master-line-height) * 1.4) !important;

    box-shadow: 0px 6px 0 var(--colour-black); 
	transform: translateY(-3px);

	transition: var(--transition);
}
body .et_pb_section button.et_pb_button:hover,
body .et_pb_section a.et_pb_button:hover {
    /* color: var(--colour-secondary);
	background-color: var(--colour-white) !important;
	box-shadow: 6px 6px 0 var(--colour-secondary); */
	box-shadow: 0px 0px 0 var(--colour-black);
	transform: translateY(0);
	transition: all 0.25s cubic-bezier(0.63, 2.11, 0.5, 0.86);
}
body .et_pb_section button.et_pb_button:active,
body .et_pb_section a.et_pb_button:active {
	box-shadow: 0 0 0 var(--colour-white) !important;
	transform: translate(0px,0px);
	transition: all 0.025s ease;
}

body .et_pb_section button.et_pb_button::after,
body .et_pb_section a.et_pb_button::after {
    content: none;
    display: none;
}
/**
 * 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 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);
}

body .et_pb_section a.et_pb_button.btn-white {
	box-shadow: 0px 6px 0 var(--colour-black);
    background: var(--colour-white) !important;
    color: var(--colour-black) !important;
}

body .et_pb_section a.et_pb_button.btn-white:hover {
	box-shadow: 0px 0px 0 var(--colour-black);
    background: var(--colour-white) !important;
    color: var(--colour-black) !important;
}

/*---- 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) {
	body .et_pb_section a.et_pb_button {
		width: 100%;
	}
}
@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: 25px 30px;
}
.et_pb_toggle_close .et_pb_toggle_title,
.et_pb_toggle_open .et_pb_toggle_title,
.et_pb_toggle_title h5 {
    color: var(--colour-black) !important;
	margin: 0px;
	font-family: var(--font-main);
	font-size: 20px;
	font-weight: 400;
	line-height: 30px;
	text-transform: none;
	letter-spacing: normal;
}
.et_pb_toggle_title::before {
    content: '';
    font-family: var(--font-fa);
    margin-left: 8px;
    font-size: 14px;
    font-weight: 600;
}
.et_pb_toggle_open .et_pb_toggle_title::before {
    content: '\f077';
}
.et_pb_toggle_close .et_pb_toggle_title::before {
    content: '\f078';
}
.et_pb_module.et_pb_toggle_item:not(:last-child) {
	border-bottom: 1px solid #2222222e;
}
.et_pb_toggle .et_pb_toggle_title:before {
	font-family: var(--font-fa) !important;
    right: 0px;
    font-size: 25px;
    color: var(--colour-text);
}
.et_pb_toggle.et_pb_toggle_open .et_pb_toggle_title:before {
	display: block;
	visibility: visible;
    color: var(--colour-white);
}
.et_pb_toggle_close {
	background-color: var(--colour-background-off);
}
.et_pb_toggle_open {
    box-shadow: 0px 6px 0 var(--colour-black);
	background-color: var(--colour-primary);
}
.et_pb_toggle_open h5.et_pb_toggle_title,
.et_pb_toggle_open p,
.et_pb_toggle_open p span {
	color: var(--colour-white) !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: 40px 50px;
	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: 0px;
    margin: 0 auto;
    display: flex;
    align-items: center;
	justify-content: space-between;
}

header .et_pb_image img {
    width: 350px;
    height: 50px;
    vertical-align: top;
}
header .et_pb_column:has(.et_pb_image) {
	z-index: 5;
}

header .et_pb_section .menu-item {
	display: flex;
	align-items: center;
}

header .et_pb_section .et_pb_row {
	column-gap: 40px;
	row-gap: 20px;
}
header .et_pb_section .et_pb_row_0_tb_header {
	align-items: center;
}
header .et_pb_section .et_pb_column {
	flex-direction: row;
	column-gap: 35px;
}
header .et_pb_section .et_pb_column:first-child {
	flex: 1 1 400px;
	width: auto;
}
header .et_pb_section .et_pb_column:last-child {
	flex: 1 1 400px;
}
header .et_pb_section .et_pb_column:has(.et-menu) {
	justify-content: center;
}
header .et_pb_module:not(:first-child).et_pb_button_module_wrapper {
    margin-top: 0;
}
header .header-contact a {
	font-family: var(--font-main);
	color: var(--colour-primary);
	font-size: 16px;
	font-weight: 700;
}
body header .et_pb_section a.et_pb_button {
	box-shadow: unset;
}
header .et_pb_section .et_pb_column.header-contact,
header .et_pb_section .et_pb_column.header-book {
	justify-content: center;
	flex: auto 0 0;
  	width: auto;
}
header .et_section_regular {
    padding: 0;
	max-width: 100%;
	width: 100%;
}

header .et_pb_column--with-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

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 .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 Contacts*/
header .header-contact .et_pb_text_inner {
	display: flex;
	align-items: center;
	column-gap: 30px;
}

header .header-contact a.head-phone,
header .header-contact a.head-email {
	display: flex;
	align-items: center;
	justify-content: center;
}
header .header-contact a.head-phone svg,
header .header-contact a.head-email svg {
	fill: var(--colour-secondary);
	width: 100%;
	max-width: 22px;
	vertical-align: top;
}
header .header-contact a.head-email svg {
	max-width: 25px;
}
header .header-contact a.head-phone:hover svg,
header .header-contact a.head-email:hover svg {
	fill: var(--colour-primary);
}
header .header-contact a.head-phone::before,
header .header-contact a.head-email::before {

}

header .header-contact a.et_pb_button {
	font-size: .15rem;
	white-space: nowrap;
	padding: 10px 24px 11px !important;
}
header .header-contact a.et_pb_button::before {
	border-color: var(--colour-primary);
}

/*Header Menu*/
body.category #main-content {
	background: none;
}
body.et-db #et-boc .et-l .et_pb_menu_0_tb_header.et_pb_menu {
	background: none;
}
body.et-db #et-boc .et-l .et_pb_menu_0_tb_header.et_pb_menu .nav li ul {
	background: var(--colour-secondary) !important;
}

header .et_pb_menu ul.et-menu {
    margin-left: -15px;
    margin-right: -15px;
}
header .et_pb_menu ul.et-menu > li {
	padding-left: 10px;
	padding-right: 10px;
	margin: 0;
}
header .et-menu a {
    display: flex;
    justify-content: center;
	font-size: 0.17rem;
    font-weight: 500;
    color: var(--colour-black);
    font-family: var(--font-body);
	padding: 12px 10px;
    border: none;
    position: relative;
    letter-spacing: -0.02em;
    transition: var(--transition-slow);
}
header .et_pb_menu--without-logo .et_pb_menu__menu > nav > ul > li > a {
	padding-bottom: 12px;
}
header .et-menu a:hover {
	opacity: 1;
    color: var(--colour-highlight);
	transition: var(--transition-fast);
}
header .et-menu .menu-item-has-children > a:first-child::after {
	content: "\f078";
	font-size: 12px;
	font-weight: 800;
    font-family: var(--font-fa-sharp);
	color: var(--colour-black);
	top: 13px;
}
header .et-menu .menu-item-has-children.et-hover > a:first-child::after,
header .et-menu .menu-item-has-children > a:first-child:hover::after {
	content: "\f077";
}

/*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: 15px;
	width: 275px;
	border: none;
	padding: 5px 0;
	transition: var(--transition);
}
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: 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;
	color: var(--colour-white);
	font-family: var(--font-body);
	justify-content: flex-start;
}
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-orange);
	box-shadow: inset 5px 0 0 var(--colour-orange);
	opacity: 1;
}


/*Header Responsive Override*/
@media screen and (max-width:1600px) {

}
@media screen and (max-width:1500px) {
	header .et_pb_image img {
		height: 42px;
	}
}
@media screen and (max-width:1400px) {
	body header .et_pb_section a.et_pb_button {
		padding: 9px 15px !important;
	}
	header .et_pb_section .et_pb_column:last-child {
		flex-direction: column;
		row-gap: 10px;
	}
	header .et_pb_menu ul.et-menu {
		margin-left: -10px;
		margin-right: -10px;
	}
	header .et_pb_menu ul.et-menu > li {
		padding-left: 5px;
		padding-right: 5px;
	}
}
@media screen and (max-width:1200px) {
	header {
		padding: 35px 40px;
	}
	header .et_pb_image img {
		height: 40px;
	}
	header .header-book p em {
		display: none;
	}
}
@media screen and (max-width:1100px) {
	header .header-contact a.head-phone,
	header .header-contact a.head-email {
		display: none;
	}
}
@media screen and (max-width:980px) {
	body:has(.mobile_nav.opened) {
		overflow: hidden;
	}

	header {
		padding: 0;
	}
	header .et_pb_section--with-menu {
		padding: 25px;
		display: flex;
	}
	header .et_pb_section--with-menu > .et_pb_row {
		flex-wrap: nowrap !important;
	}
	header .et_pb_section .et_pb_row.et_pb_row--with-menu {
		padding-top: 0;
		margin-top: 0;
		border: none;
		column-gap: 10px;
		justify-content: flex-end;
		position: static;
	}
	header .et_pb_section .et_pb_row.et_pb_row--with-menu .et_pb_menu {
		order: 2;
	}

	header .et_pb_section .et_pb_column {
		column-gap: 25px;
	}
	header .et_pb_section .et_pb_column:first-child {
		flex: auto 1 1;
	}

	header .header-contact a.head-phone,
	header .header-contact a.head-email {
		display: block;
	}

	header .et_pb_section .et_pb_column:has(.et_pb_menu) {
		flex: auto 0 0;
		width: auto;
	}

	header .et_pb_section a.et_pb_button:not(:hover)::before {
		background: transparent;
	}

	header .et_pb_image img {
		width: 210px;
  		height: 40px;
	}

	/*Menu*/
	header .et_pb_section .menu-item {
		flex-direction: column;
		align-items: flex-start;
	}
	header .et_pb_section .menu-item.book-now-btn {
		display: block !important;
		background-color: var(--colour-secondary);
	}
	header .et_pb_section .menu-item > a {
		color: var(--colour-white);
		font-family: var(--font-main);
		font-feature-settings: var(--font-setting);
		font-size: var(--size-5);
		font-weight: 600;
		padding: 22px 0px 20px;
		width: 100%;
	}

	header .menu-item a:hover {
	    text-decoration: none;
	    background: none !important;
	    color: var(--colour-tertiary);
	    transition: var(--transition-fast);
	}
	header .menu-item {
		width: 100%;
		padding: 0 !important;
	}
	header .et_mobile_menu > li.menu-item {
		border-top: 1px solid rgba(255,255,255,0.1);
	}
	header .menu-item > a:hover {
		color: var(--colour-highlight);
		opacity: 1;
	}

	header .menu-item-has-children {
		padding: 0 !important;
		border: none;
	}
	header .menu-item-has-children > a,
	header .et_pb_section .menu-item-has-children > a {
		padding: 22px 0px 8px !important;
		color: var(--colour-tertiary);
		pointer-events: none;
		/*padding-left: 40px;
		padding-right: 40px; */
	}
	header .menu-item ul.sub-menu,
	header .et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul {
		/* background-color: var(--colour-footer) !important; */
		background: none !important;
		padding: 0 15px 15px;
		margin: 0;
		width: 100%;
	}
	header .menu-item ul.sub-menu > li a,
	header .et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul > li a {
		padding: 10px 0 8px;
		font-weight: 400;

	}
	header .et_mobile_menu ul li a {
		width: 100%;
	}

	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: auto 0 0;
		justify-content: flex-end;
		position: unset;
		width: auto !important;
	}
	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;
		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: 100px 40px 50px !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 .mobile_nav.opened .et_mobile_menu::before {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100px;
		background: linear-gradient(var(--colour-primary) 75%, transparent 100%);
	}

}
@media screen and (max-width:800px) {
	header .header-contact a.et_pb_button {
		display: none;
	}
}
@media screen and (max-width:600px) {
	header .et_pb_section .et_pb_menu .et_mobile_menu {
		padding: 100px 30px 50px !important;
	}

	header .et_pb_section .et_pb_row {
        flex-wrap: nowrap;
    }

	header .menu-item {
	}
	header .menu-item-has-children {
	}
	header .et_pb_section .menu-item > a {
	}

	header .et_pb_image img {
		min-width: 160px;
		height: 35px;
	}
}
@media screen and (max-width:500px) {
	header .header-contact a.head-phone,
	header .header-contact a.head-email {
		display: none !important;
	}
}
@media screen and (max-width:450px) {
	header .et_pb_section .menu-item > a {
		padding: 14px 0px;
	}

	header .header-contact ul li {
		font-size: 0px;
	}
	header .header-contact ul li a {
		display: flex;
		align-items: center;
	}
	header .header-contact ul li a .new-text {
		font-size: 8px;
		display: block !important;
		margin-left: 5px;
		line-height: 1;
		color: var(--colour-light-blue);
	}
	.global-header .header-contact ul {
		column-gap: 20px;
	}
	header .header-contact ul li a i,
	header .header-contact ul li a em {
		font-size: 18px;
		vertical-align: top;
		margin-right: 0;
	}
}


/*---------------------------*/
/*----- MOBILE DROPDOWN -----*/
/*---------------------------*/
@media screen and (max-width:980px) {
	.et_pb_menu .mobile_nav .mobile_menu_bar {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		transform: none;
		margin-bottom: -4px;
		cursor: pointer;
		height: 40px;
		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-primary);
		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;
	}
}


/*---- FOOTER ----*/
footer {
	background: var(--colour-white);
	position: relative;
	overflow: hidden;
}

footer .et_pb_section {
	padding: clamp(50px, calc(var(--master-section-pad) * 12), 120px) 0 0;
	background-color: var(--colour-white);
}
footer .et_pb_section .et_pb_row {
	padding: 0;
	max-width: 1200px !important;
	column-gap: 150px;
	color: var(--colour-text);
}

/*Footer Menu / Elements*/
footer .et_pb_image {
	width: 100%;
}
footer .footer-logo-row .et_pb_image img {
	max-width: 250px;
}
footer .footer-logo-row .et_pb_column:last-child {
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
}
footer .footer-logo-row .et_pb_column:last-child .et_pb_image {
	width: auto;
}
footer .footer-logo-row .et_pb_column:last-child .et_pb_image img {
	max-width: 130px;
	width: 130px;
}

footer hr {
	margin: clamp(35px, 50px ,65px) 0 clamp(40px, 60px ,75px);
}
footer .footer-menus {
	padding: 50px 0 100px;
}

footer .footer-info-row.et_pb_row .et_pb_column {
	flex-direction: row;
	flex-wrap: wrap;
	column-gap:0;
	row-gap:0;
}
footer .footer-info-row.et_pb_row .et_pb_column:has(img) {
	flex-direction: column;
}
footer .footer-info-row.et_pb_row .et_pb_column:first-child .et_pb_text p {
	font-weight: 500;
}
footer .footer-info-row .dsm_menu,
footer .footer-info-row .et_pb_text {
	flex: 20% 1 1;
}

footer .footer-info-row .dsm_menu h4,
footer .footer-info-row .et_pb_text h4 {
	font-style: normal;
	font-weight: 500;
	letter-spacing: -0.02em;
	font-size: var(--size-4);
	color: var(--colour-primary);
}
footer .dsm_menu .dsm-menu-title {
	padding-bottom: 0 !important;
}

footer .et_pb_text ul li,
footer .et_pb_text ul li a {
	display: flex;
	column-gap: 5px;
}
footer .footer-info-row .et_pb_text ul li a span {
	color: var(--colour-black);
}
footer .footer-info-row .et_pb_text ul li a {
	color: var(--colour-black);
	font-weight: 400;
}
footer .footer-info-row .et_pb_text ul li span {
	color: var(--colour-primary);
	margin-right: 10px;
}
footer .et_pb_text ul li i {
	position: relative;
	top: 2.5px;
	min-width: 20px;
	max-width: 20px;
}
footer .footer-info-row .et_pb_column:has(.dsm-menu) {
	flex: 1 1 55%;
}
footer .footer-info-row .et_pb_column:has(img) p {
	margin-top: 30px;
}
footer .social p {
	display: flex;
	align-items: center;
	font-family: var(--font-main);
	font-size: 18px;
}
footer .social i {
	font-size: 20px;
	display: flex;
	width: 50px;
	height: 50px;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	border: 5px solid var(--colour-primary);
	margin-right: 10px;
	color: var(--colour-black) !important;
}
footer .footer-download-btns .et_pb_button_module_wrappers {
	justify-content: center;
	margin-top: 60px;
}
body footer .et_pb_section .footer-download-btns a.et_pb_button {
	background: var(--off-white-bg) !important;
	box-shadow: unset;
	font-weight: 500;
	color: var(--colour-black);
	font-size: 18px;
}
body footer .et_pb_section .footer-download-btns a.et_pb_button::before {
	content: '\f019';
	display: block !important;
	font-family: var(--font-fa);
	color: var(--colour-primary);
	margin-right: 5px;
    font-size: 16px;
    margin-left: 0;
    position: unset;
    opacity: 1;
    font-weight: 100;
}
footer .dsm_menu ul li,
footer .et_pb_text ul li {
	font-family: var(--font-main);
	font-size: 18px;
	list-style: none;
	line-height: 1.3em;
	font-weight: 400;
	margin: 0 0 15px !important;
}
footer .dsm_menu ul li:last-child,
footer .et_pb_text ul li:last-child {
	margin: 0 !important;
}
footer .dsm_menu ul li a:hover,
footer .et_pb_text ul li a:hover {
	color: var(--colour-secondary);
}

footer .dsm_menu ul li ul.sub-menu {
	padding-left: 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-secondary);
	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-secondary);
}
footer .et_pb_text p a {
	text-decoration: underline;
}
footer .et_pb_text p a:hover {
	color: var(--colour-tertiary);
}

footer .et_pb_section .et_pb_column.et_pb_column_1_3 {
	flex-direction: row;
	column-gap: 20px;
}
footer .et_pb_section .footer-copy-row .et_pb_column.et_pb_column_1_3:has(img) {
	flex: 1 1 45%;
    max-width: 40%;
}

/*Social*/
footer .social-links {
	display: flex;
	align-items: center;
	column-gap: 20px;
	justify-content: flex-end;
	padding-top: 20px;
}
footer .social-links a {
	color: var(--colour-primary);
	font-size: .25rem;
	line-height: 1;
}
footer .social-links a i {
	color: var(--colour-primary);
}
footer .social-links a:hover i {
	color: var(--colour-highlight);
}
footer .footer-copy-row .et_pb_column.et_pb_column_1_3 {
    align-items: center;
}

/*Footer Copy*/
footer .et_pb_row.footer-copy-row {
	padding: 40px var(--frame-pad);
    max-width: 100% !important;
    width: 100%;
    margin-top: 120px;
	background-color: var(--colour-background-off);
	align-items: center;
	column-gap: 0px;
}
.footer-copy-row .et_pb_text {
	text-align: center !important;
}
footer .footer-copy-row .et_pb_column:last-child {
	justify-content: flex-end;
}
footer .footer-copy-row .et_pb_text p,
footer .footer-copy-row .et_pb_text p a {
	color: var(--colour-black);
	text-decoration: none;
	font-size: 16px;
	font-weight: 300;
	padding-bottom: 0px;
	font-family: var(--font-main);
}
footer .footer-copy-row .et_pb_text p a {
	font-weight: 800;
	text-decoration: underline;
}
footer .footer-copy-row .et_pb_text p a:hover {
	color: var(--colour-blue);
}
@media screen and (min-width:1200px) {
	footer .et_pb_text ul li wbr {
		display: none;
	}
}
@media screen and (max-width:1200px) {
	footer .et_pb_section {
		padding: 80px 0;
	}
	.footer-copy-row {
  		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;
	}
	footer .footer-logo-row .et_pb_image img {
		max-width: 200px;
	}
	footer .footer-logo-row .et_pb_column:last-child .et_pb_image img {
		max-width: 100px;
		width: 100px;
	}

	footer .et_pb_section .et_pb_row.footer-info-row {
		flex-wrap: wrap !important;
	}
	footer .et_pb_section .et_pb_row.footer-info-row > .et_pb_column {
		/* flex: auto 1 1; */
		row-gap: 10px !important;
	}
}
@media screen and (max-width:700px) {
	footer .et_pb_image img {
		max-width: 220px;
	}
	.footer-copy {
		padding-top: 60px;
	}
	footer .et_pb_section {
		padding: 60px 0;
	}
}
@media screen and (max-width:750px) {
	footer .et_pb_row .et_pb_column_0_tb_footer {
		max-width: 100%;
	}
	footer hr {
		margin:	clamp(25px, 35px ,45px) 0 clamp(30px, 40px ,50px);
	}
	footer .footer-logo-row .et_pb_image img {
		max-width: 150px;
	}
	footer .footer-logo-row .et_pb_column:last-child .et_pb_image img {
		max-width: 75px;
		width: 75px;
	}
	footer .et_pb_image_wrap  {
		display: flex !important;
		justify-content: center;
	}
	footer .footer-info-row.et_pb_row .et_pb_column:first-child .et_pb_text p {
		text-align: center;
	}
	footer .et_pb_section .et_pb_row.footer-info-row > .et_pb_column {
		flex-wrap: wrap;
		row-gap: 35px;
		align-items: center;
	}
	footer .footer-info-row .dsm_menu {
		flex: 100% 1 1;
		text-align: center;
	}
	footer .dsm_menu ul li,
	footer .et_pb_text ul li {
		justify-content: center;
		text-align: center;
	}
	footer .et_pb_text ul li i {
		display: none;
	}
}
@media screen and (max-width:450px) {
	footer .et_pb_section .et_pb_row:has(.et_pb_column.et_pb_column_1_2) {
		flex-wrap: wrap !important;
	}
	footer .footer-logo-row .et_pb_column,
	footer .footer-logo-row .et_pb_column .et_pb_image {
		text-align: center;
	}
	footer .footer-logo-row .et_pb_column:last-child {
		justify-content: center;
	}
	footer .footer-logo-row .et_pb_image img {
		max-width: 180px;
	}
	footer .footer-logo-row .et_pb_column:last-child .et_pb_image img {
		max-width: 80px;
		width: 80px;
	}
}
@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;
	}
}

/*---- INPUT / FORM ----*/
form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 0px;
  background-color: transparent;
  font-size: .17rem;
}

label {
  margin-bottom: 10px;
  color: inherit;
  font-size: .16rem;
  font-weight: 400;
}
label input[type="text"],
label input[type="email"],
label input[type="password"],
label input[type="tel"],
label textarea {
  margin-top: 2px;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea,
.et_pb_module input[type="text"],
.et_pb_module input[type="email"],
.et_pb_module input[type="password"],
.et_pb_module input[type="tel"],
.et_pb_module textarea {
  width: 100%;
  padding: 12px 18px;
  border: 0px solid rgba(0,0,0,0.15);
  font-size: 18px;
  font-family: var(--font-main);
  font-weight: 400;
  color: var(--colour-text);
  background-color: #EEF1F6;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  box-sizing: border-box;
  border-radius: 9px;
}

input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="tel"]:hover,
textarea:hover,
.et_pb_module input[type="text"]:hover,
.et_pb_module input[type="email"]:hover,
.et_pb_module input[type="password"]:hover,
.et_pb_module input[type="tel"]:hover,
.et_pb_module textarea:hover {
  border-color: var(--colour-primary);
  outline: none;
  background-color: var(--colour-white);
  box-shadow: 0 0 0 1px var(--colour-primary);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
textarea:focus,
.et_pb_module input[type="text"]:focus,
.et_pb_module input[type="email"]:focus,
.et_pb_module input[type="password"]:focus,
.et_pb_module input[type="tel"]:focus,
.et_pb_module textarea:focus {
  border-color: var(--colour-secondary);
  outline: none;
  background-color: #EEF1F6;
  box-shadow: 0 0 0 2px var(--colour-secondary);
}

input[disabled],
textarea[disabled] {
  background-color: #e9e9e9;
  border-color: #ddd;
  color: #aaa;
  cursor: not-allowed;
}

textarea {
  height: auto;
  min-height: 130px;
  resize: vertical;
  background-color: var(--colour-white);
}

button[type="submit"],
input[type="submit"] {
  min-width: 180px;
  color: var(--colour-secondary) !important;
}
button[type="submit"]:hover,
input[type="submit"]:hover {
  color: var(--colour-white) !important;
}

/* 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: 2px solid #ccc;
  border-radius: 5px;
  background-color: #f9f9f9;
  font-size: 1rem;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

select:focus {
  border-color: var(--colour-primary);
  outline: none;
}

/** Contact Form 7 **/
.dsm_contact_form_7 form {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
}
.dsm_contact_form_7 form > p {
	width: 100%;
	padding-bottom: 10px;
}
.dsm_contact_form_7 form > p:has(label.w50) {
	width: calc(50% - 10px);
}
.dsm_contact_form_7 form > p label {
	font-size: 14px;
}
.dsm_contact_form_7 form > p label a {
	text-decoration: underline;
	color: var(--colour-dark);
}

.dsm_contact_form_7 form button.et_pb_button {
	background-color: var(--colour-primary) !important;
	box-shadow: 0px 6px 0 var(--colour-black);
	color: var(--colour-white) !important;
	font-family: var(--font-main) !important;
	font-weight: 500;
}
.dsm_contact_form_7 form button.et_pb_button:hover {
	box-shadow: 0px 0px 0 var(--colour-secondary);
}

.dsm_contact_form_7 .wpcf7 form .wpcf7-response-output {
	padding: 0.8em 1.2em 0.9em;
	border-radius: 10px;
	font-family: var(--font-body);
	color: var(--colour-black);
}
.dsm_contact_form_7 .wpcf7 form.sent .wpcf7-response-output {
	background-color: #eafce9;
}
.dsm_contact_form_7 .wpcf7 form.failed .wpcf7-response-output,
.dsm_contact_form_7 .wpcf7 form.aborted .wpcf7-response-output {
	background-color: #fceaea;
}
.dsm_contact_form_7 .wpcf7 form.invalid .wpcf7-response-output,
.dsm_contact_form_7 .wpcf7 form.unaccepted .wpcf7-response-output,
.dsm_contact_form_7 .wpcf7 form.payment-required .wpcf7-response-output {
	background-color: #fcfcea;
}

@media (max-width: 600px) {
	form {
		/* padding: 20px; */
	}
	.dsm_contact_form_7 form > p:has(label.w50) {
		width: 100%;
	}

	button[type="submit"],
	input[type="submit"] {
		width: 100%;
	}
}


/*---- SLIDER - TESTIMONIAL ----*/
.et_pb_row:has(.testimonial-swiper) {
	max-width: 1200px;
}
.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;
	column-gap: 100px;
	height: 100%;
	background: transparent;
}
.testimonial-swiper .carousel_content .text-wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	flex: 1 1 45%;
}
.testimonial-swiper .carousel_content > img {
	display: block;
	flex: 1 1 45%;
	max-width: 550px;
	max-height: 480px;
	object-fit: cover;
	border-radius: 30px;
}
.testimonial-swiper .carousel_content p {
	padding: 0px;
	font-size: clamp(22px, 0.28rem, 28px);
	line-height: 1.6;
	font-family: var(--font-alt);
}
.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: 500;
	font-style: italic;
	order: 2;
	padding: 30px 0 0;
}
.testimonial-swiper .carousel_content span.name_design {
	display: flex;
	align-items: center;
}
.testimonial-swiper .carousel_content span.name_design::before {
	content: '\f2bd';
	font-family: var(--font-fa);
	color: var(--colour-text);
	font-size: 20px;
	margin-right: 13px;
	font-style: normal;
}
.position_design {
	display: none !important;
}
.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%;
	left: 0;
	right: 0;
	height: 44px;
	justify-content: space-between;
	align-items: center;
}
.testimonial-swiper .swiper-pagination.testi-pagintion0 {
	position: absolute !important;
	top: 100% !important;
	bottom: auto !important;
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	height: 44px;
	display: flex !important;
	justify-content: center;
	align-items: center;
	pointer-events: none;
}
.testimonial-swiper .swiper-pagination.testi-pagintion0 .swiper-pagination-bullet {
	pointer-events: auto;
}
@media screen and (max-width:1050px){
	.testimonial-swiper .carousel_content {
		flex-direction: column;
		row-gap: 20px;
	}
	.testimonial-swiper .carousel_content > img {
		max-width: 100%;
		max-height: 400px;
		flex: 1 1 100%;
	}
}
@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) {
	.testimonial-swiper .carousel_content > img {
		max-height: 300px;
	}
	.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: 30px 30px 0px 0px;
	flex: auto 1 1;
	display: flex;
	flex-direction: column;
}
.dsm-blog-carousel article .dsm-entry-wrapper h2 {
	margin-bottom: 12px;
	font-size: 20px;
	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: 16px;
	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;
	text-align: center;
	color: var(--colour-primary);
	text-decoration: underline;
	font-size: 16px;
	font-family: var(--font-main);
	font-weight: 500;
	margin-top: 20px !important;
	transition: var(--transition-fast);
}
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;
	margin-bottom: 60px;
}
body .et_pb_section.post-type-content a.et_pb_button {
	width: fit-content;
}
#main-content .et_pb_section.post-type-content {
	margin-bottom: 0;
}
#main-content .et_pb_section.post-type-content .et_pb_row {
	padding: 0px;
	padding-top: 10px;
	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 .breadcrumb .et_pb_post_title {
	padding-bottom: 0px;
}
#main-content .et_pb_section.post-type-content .breadcrumb.et_pb_row {
	padding: 0px;
}
#main-content .et_pb_section.post-type-content .breadcrumb .entry-title {
	margin-bottom: 0px;
}
#main-content .et_pb_section.post-type-content .breadcrumb .et_pb_title_container {
	padding-bottom: 0px;
}
#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;
}


.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;
	font-family: var(--font-body);
}
.breadcrumb p {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0px;
	padding-bottom: 0px;
	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.pattern::before {
	content: '';
	background-image: url('/wp-content/uploads/2026/04/pattern-banner.svg');
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	max-width: 1040px;
	width: 100%;
	z-index: -1;
}
.section-banner::before {
	content: '';
	background: linear-gradient(0deg, rgba(34, 34, 34, 0.35) 0%, rgba(34, 34, 34, 0.35) 100%);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
.section-banner.home {
	min-height: 80vh;
}
.section-banner p {
    max-width: 592px;
}
.section-banner.home h1 {
    max-width: 690px;
}
.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%;
}
.et_pb_button_module_wrappers {
    display: flex;
}
.et_pb_module:not(:first-child) .et_pb_button_module_wrappers, 
.et_pb_module:not(:first-child).et_pb_button_module_wrapper {
    margin-top: clamp(20px, 60px, 60px);
}
body .et_pb_section.section-banner a.et_pb_button {
    box-shadow: 0px 6px 0 var(--colour-black);
    background: var(--colour-white) !important;
    color: var(--colour-black) !important;
}
body .et_pb_section.section-banner a.et_pb_button:hover {
    box-shadow: 0px 0px 0 var(--colour-black);
}
.section-banner .et_pb_text {
	max-width: 1100px;
}
@media screen and (max-width:800px){
	.section-banner.pattern::before {
		background-image: unset;
		background-color: var(--colour-primary);
		opacity: 0.6;
	}
}
@media screen and (max-width:600px) {
	.section-banner .et_pb_button_module_wrappers {
		display: flex;
		flex-direction: column;
	}
	body #page-container .section-banner.et_pb_section .dsm_button_0 .et_pb_button_two.et_pb_button {
		margin-left: 0px !important;
	}
	.et_pb_button_module_wrappers {
		display: flex;
		flex-direction: column;
	}
	body #page-container .entry-content .et_pb_section .dsm_button .et_pb_button_two.et_pb_button {
		margin-left: 0px !important;
	}
}


/** Section Image Text **/
.section-image-text .et_pb_row {
	column-gap: 100px;
	max-width: 1200px;
}
.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%;
	border-radius: 30px;
}
.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:1000px) {
	.section-image-text img {
		position: unset;
	}
	.section-image-text .reverse {
		flex-direction: column-reverse;
	}
	.section-image-text .et_pb_text {
		padding: 0px;
	}
}


/** Section Contact **/
.section-contact .et_pb_row {
	column-gap: 100px;
	max-width: 1200px;
}
.section-contact h2 {
	font-size: clamp(34px, 0.62rem, 62px);
}
.section-contact .et_pb_column:has(h2) .et_pb_text * {
	color: var(--colour-white);
}
.section-contact .et_pb_column:has(h2) form {
	padding: 0px;
}
.section-contact .et_pb_column:has(h3) {
	padding-top: 60px;
}
.section-contact .et_pb_column:has(form) {
	padding: 50px;
	border-radius: 30px;
	background-color: var(--colour-white);
}
.section-contact .et_pb_column:has(form) h2 {
	color: var(--colour-black);
}
.section-contact .et_pb_column:has(form) p,
.section-contact .et_pb_column:has(form) p span {
	font-size: 16px;
	color: var(--colour-black);
}
.section-contact .et_pb_column:has(form) .et_pb_text_inner {
	margin-bottom: 30px;
}
.section-contact .et_pb_column.et_pb_column_1_2:has(form) {
	flex: 1 1 60%;
}
.section-contact .et_pb_column:has(h3) p:has(i) {
	opacity: 1;
}
.section-contact {
	position: relative;
	z-index: 1;
}
.section-contact::after {
    content: '';
    background: linear-gradient(0deg, rgba(221, 25, 25, 0.50) 0%, rgba(221, 25, 25, 0.50) 100%), linear-gradient(0deg, #DD1919 0%, #DD1919 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.8;
    z-index: -1;
}

.section-contact .et_pb_column:has(h2) h5 {
	margin-top: 50px;
}
.section-contact .et_pb_column:has(h2) i {
	margin-right: 10px;
}
.section-contact .et_pb_column:has(h2) a {
	text-decoration: underline;
}

.dsm_contact_form_7 .wpcf7-form-control.wpcf7-textarea {
    height: 105px;
}
.section-contact .et_pb_text h4 {
	display: flex;
	align-items: center;
	text-decoration: underline;
	margin-top: 30px;
}
.section-contact .et_pb_text h4::after {
	content: '\f054';
	font-family: var(--font-fa);
	margin-left: 8px;
	font-size: 14px;
	font-weight: 600;
}

/* Contact Page */
.section-contact.main::after {
    display: none;
}
.section-contact.main::before {
	content: '';
    background-image: url(/wp-content/uploads/2026/05/Group-115.svg);
	background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    max-width: 650px;
    max-height: 450px;
    width: 100%;
    height: 100%;
}
.section-contact.main h2 {
	font-size: var(--size-h2);
	margin-bottom: 20px;
}
.section-contact.main .et_pb_column:has(h2) .et_pb_text * {
	color: var(--colour-text);
}
.section-contact.main .et_pb_column:has(h2) .et_pb_text a {
	color: var(--colour-primary);
	font-weight: 600;
	text-decoration: underline;
}
.section-contact.main .et_pb_column:has(h2) .et_pb_text p:has(a) {
	padding-bottom: 10px;
}
.section-contact.main .et_pb_column:has(h2) .et_pb_text_inner:has(a) {
	margin-top: 50px;
}
.section-contact.main  .et_pb_column:has(h2) .et_pb_text a::before {
    content: '\f054';
    font-family: var(--font-fa);
    margin-left: 8px;
    font-size: 14px;
    font-weight: 600;
	margin-right: 12px;
}
@media screen and (max-width:1000px) {
	.section-contact .et_pb_row {
		flex-direction: column;
	}
}
@media screen and (max-width:600px) {
	.section-contact .et_pb_column:has(form) {
    	padding: 50px 30px;
	}
}


/*---- CONTENT - MID LINE ----*/
.content-mid-line.background-group::before {
	content: '';
    background-image: url(/wp-content/uploads/2026/05/Group-115.svg);
	background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    max-width: 650px;
    max-height: 450px;
    width: 100%;
    height: 100%;
}
.content-mid-line .et_pb_row {
	row-gap: 80px;
  	column-gap: 100px;
	max-width: 1200px;
}
.content-mid-line .et_pb_row .et_pb_column {
	padding-top: 40px;
	padding-bottom: 40px;
	justify-content: center;
}

.content-mid-line.mid-line-padless .et_pb_row .et_pb_column {
	padding-top: 0;
	padding-bottom: 0;
}

.align-center.et_pb_row .et_pb_column,
.center-align.et_pb_row .et_pb_column {
	justify-content: center;
}
.content-mid-line h6 {
	font-family: var(--font-alt);
	color: var(--colour-primary);
	font-weight: 400;
	font-size: clamp(22px, 0.28rem, 28px);
	line-height: 1.5;
	letter-spacing: 0.015em;
	text-transform: none;
	margin-bottom: 0px;
}
.content-mid-line.long .et_pb_row {
	max-width: 850px;
}
.content-mid-line.long .et_pb_text {
	max-width: 100%;
}
@media screen and (max-width:1200px) {
	.content-mid-line .et_pb_row {
		row-gap: 50px;
  		column-gap: 120px;
	}
	.content-mid-line .et_pb_row .et_pb_column:not(:first-child)::before {
		left: -61px;
	}
	.content-mid-line .et_pb_row .et_pb_column {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}
@media screen and (max-width:980px) {
	.content-mid-line .et_pb_row .et_pb_column:not(:first-child):not(.et_pb_column_2_5:last-child)::before {
		top: -25px;
		left: 0;
		bottom: auto;
		width: 100%;
		height: 1px;
		background-color: var(--colour-grey);
	}
	.content-mid-line .et_pb_row .et_pb_column {
		padding-top: 0;
		padding-bottom: 0;
	}

	.mobile-reverse.et_pb_row .et_pb_column:first-child,
	.mobile-order-reverse.et_pb_row .et_pb_column:first-child  {
		order: 2;
	}

	.content-mid-line .quote-logo-block .et_pb_text {
		padding: 15px 0 !important;
	}
	.content-mid-line .quote-logo-block .et_pb_image {
		max-width: 180px !important;
	}

	.content-mid-line .icon-quote-block .et_pb_text {
		padding: 15px 0 !important;
	}
	.content-mid-line .icon-quote-block .et_pb_image {
		max-width: 80px !important;
	}
	.content-mid-line .icon-quote-block .et_pb_image:first-child {
		margin-top: 20px;
	}
}
@media screen and (max-width:800px) {
	.content-mid-line .et_pb_row .et_pb_column:not(:first-child)::before {
		top: -25px;
		left: 0;
		bottom: auto;
		width: 100%;
		height: 1px;
		background-color: var(--colour-grey);
	}
}

.section-quote .et_pb_row {
	position: relative;
	padding: 40px 50px !important;
	max-width: 750px;
	border-radius: 0px 30px 30px 30px;
	border: 1px solid #F3F3F3;
	background: #FFF;
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
}
.section-quote .et_pb_row::before {
    content: '';
    background-image: url('/wp-content/uploads/2026/04/Vector-3.svg');
    position: absolute;
    top: -8px;
    left: -8px;
    z-index: 2;
    width: 60px;
    height: 60px;
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width:600px) {
	.section-quote .et_pb_row {
		padding: 33px 30px !important;
	}
	.section-quote .et_pb_row::before {
		width: 40px;
		height: 40px;
	}
}

.section-services.small .et_pb_row {
	max-width: 1200px;
}
.section-services .et_pb_row:has(h2) {
	max-width: 1200px;
}
.section-services .et_pb_row:has(img) {
	max-width: 1400px;
	column-gap: 30px;
}
.section-services .et_pb_row:has(img) .et_pb_column {
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
}
.section-services img {
	max-height: 250px;
	min-height: 250px;
	width: 100%;
	object-fit: cover;
}
.section-services .et_pb_text {
	padding: 30px 40px 50px 40px
}
.section-services .et_pb_text a {
	margin-top: 25px;
	color: var(--colour-primary);
	text-decoration: underline;
	font-family: var(--font-main);
	font-size: 16px;
	font-weight: 600;
    letter-spacing: 0.25px;
}
.section-services .et_pb_text i {
	color: var(--colour-primary);
	font-size: 15px;
    font-weight: 900;
	margin-right: 10px;
}
.section-services .et_pb_image {
	position: relative;
}
.section-services h6 {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	column-gap: 15px;
	opacity: 0.3;
}
.section-services h6::before {
	content: '';
	height: 1px;
	width: 100%;
	background-color: var(--colour-black);
	opacity: 0.3;
	flex: 1 1;
}
.section-services h2 {
	max-width: 620px;
}
.section-services h3 {
	margin-bottom: 10px;
}
.section-services h4 {
	color: var(--colour-primary);
	font-size: 18px;
	font-weight: 500;
}
.section-services .et_pb_image::before {
	content: '';
    background-image: url('/wp-content/uploads/2026/04/Image-pattern.svg');
    background-size: 100%;
    background-position: bottom;
    background-repeat: no-repeat;
    width: 101%;
    height: 160px;
    position: absolute;
    bottom: -5px;
    left: 0px;
    z-index: 2;
}

@media screen and (max-width:1100px) {
	.section-services .et_pb_row:has(img) {
		flex-wrap: wrap;
	}
	.section-services .et_pb_row:has(img) .et_pb_column {
		flex: 1 1 45%;
	}
}
@media screen and (max-width:800px) {
	.section-services .et_pb_row:has(img) .et_pb_column {
		flex: 1 1 100%;
	}
	.section-services .et_pb_text:has(h2) {
		padding: 30px 0px 25px 0px;
	}
	.section-services .et_pb_text {
		padding: 15px 20px 20px 25px;
	}
}


.section-testimonials .et_pb_row {
	max-width: 1200px;
}

.section-icon-block {
	position: relative;
	z-index: 1;
}
.section-icon-block::before {
    content: '';
    background-image: url('/wp-content/uploads/2026/04/pattern-banner.svg');
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    max-width: 1040px;
    width: 100%;
    z-index: -1;
}
.section-icon-block::after {
	content: '';
	background: linear-gradient(0deg, rgba(221, 25, 25, 0.50) 0%, rgba(221, 25, 25, 0.50) 100%), linear-gradient(0deg, #DD1919 0%, #DD1919 100%);
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0.7;
	z-index: -2;
}
.section-icon-block h3 {
	margin-bottom: 0px;
	margin-top: auto;
}
.section-icon-block .et_pb_row:has(i) {
	max-width: 1400px;
	column-gap: 20px;
	margin-top: 50px;
}
.section-icon-block .et_pb_row h2 {
	margin-bottom: 0px;
}
.section-icon-block .et_pb_row:has(h2) {
	max-width: 1200px;
}
.section-icon-block .et_pb_row:has(h2) .et_pb_column:has(p) {
	flex: 1 1 65%;
	justify-content: flex-end;
}
.section-icon-block .et_pb_row:has(h2) .et_pb_text * {
	color: var(--colour-white);
}
.section-icon-block .et_pb_column:has(i) {
	padding: 30px;
	border-radius: 15px;
	box-shadow: 0 4px 0 0 #000;
	background-color: var(--colour-white);
}
.section-icon-block .et_pb_column:has(i)::before {
	content: '';
	background-image: url('/wp-content/uploads/2026/04/Vector-5.svg');
	width: 12px;
	height: 12px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 15px;
	right: 15px;
	opacity: 0.15;
}
.section-icon-block .et_pb_column:has(i)::after {
	content: '';
	background-image: url('/wp-content/uploads/2026/04/Vector-5.svg');
	width: 12px;
	height: 12px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	bottom: 15px;
	left: 15px;
	opacity: 0.15;
	transform: rotate(180deg);
}
.section-icon-block i {
	font-size: 32px;
	color: var(--colour-primary);
	margin-bottom: 30px;
}
.section-icon-block .et_pb_column:has(i) .et_pb_text_inner {
	display: flex;
	flex-direction: column;
}

.section-icon-block .et_pb_column:has(i) .et_pb_text  {
	display: flex;
	height: 100%;
}
.section-icon-block .et_pb_column:has(i) .et_pb_text_inner:has(.far.fa-home) {
	display: unset;
}
.section-icon-block .et_pb_text_inner:has(.far.fa-home) i {
	margin-right: 10px;
}

.row-buttons-center .et_pb_button_module_wrappers {
	display: flex;
	justify-content: center;
	margin-top: 80px;
}

@media screen and (max-width: 1000px) {
	.section-icon-block .et_pb_row:has(i) {
		flex-wrap: wrap;
		row-gap: 20px;
	}
	.section-icon-block .et_pb_column.et_pb_column_1_3:has(i) {
		flex: 1 1 45%;
	}
}
@media screen and (max-width: 800px){
	.section-icon-block .et_pb_row:has(h2) {
		flex-direction: column;
		row-gap: 20px;
	}
}
/** Section News Slider **/
.section-news-slider .et_pb_row {
	max-width: 1400px;
}
.section-news-slider .et_pb_row:has(h6),
.section-news-slider .et_pb_row:has(h2) {
	padding-left: 50px;
	margin-bottom: 60px;
}
.section-news-slider .et_pb_row:has(.dsm-blog-carousel) {
	padding-left: 0px;
} 
.section-news-slider .et_pb_row h2 {
	margin-bottom: 0px;
}
.section-news-slider .et_pb_button_module_wrapper  {
	justify-content: center;
}
.dsm-entry-thumbnail img,
.dsm-entry-image {
	max-height: 300px;
	min-height: 300px;
	border-radius: 15px;
}
.section-news-slider h6 {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    column-gap: 15px;
    opacity: 0.3;
}
.section-news-slider h6::before {
    content: '';
    height: 1px;
    width: 100%;
    background-color: var(--colour-black);
    opacity: 0.3;
    flex: 1 1;
}

.section-image-text-stack .et_pb_row {
	max-width: 1200px;
}
.section-image-text-stack .et_pb_row:has(h2) {
	margin-top: 60px;
}
.section-image-text-stack img {
	width: 100%;
	object-fit: cover;
	max-height: 392px;
	border-radius: 30px;
}
.section-image-text-stack .et_pb_row:has(h2) .et_pb_column:has(h2) {
	flex: 1 1 60%;
}
.section-image-text-stack .et_pb_row:has(h2) .et_pb_column:has(.et_pb_button) {
	flex: 1 1 40%;
}
.section-image-text-stack .et_pb_button {
	width: fit-content;
}
.section-image-text-stack .et_pb_button_module_wrapper {
	display: flex;
	justify-content: flex-end;
}
@media screen and (max-width: 900px) {
	.section-image-text-stack .et_pb_row:has(h2) {
		flex-direction: column;
	}
	.section-image-text-stack .et_pb_button_module_wrapper {
		justify-content: flex-start;
	}
}

/** Section Team */
.section-team img {
	min-height: 385px;
	width: 100%;
	max-height: 385px;
	object-fit: cover;
	object-position: top center;
	border-radius: 30px;
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
}
.section-team h5 {
	margin-bottom: 5px;
	font-size: 20px;
	font-weight: 700;
}
.section-team h6 {
	text-transform: capitalize;
	color: var(--colour-primary);
	margin-bottom: 16px;
	letter-spacing: normal;
}
.section-team .et_pb_row:has(img) .et_pb_text {
	padding: 20px;
	padding-bottom: 0px;
}
.section-team .et_pb_row:has(img) .et_pb_text.team-box {
	margin-top: 20px;
	padding: 20px;
	padding-bottom: 20px;
	border-radius: 20px;
	background: var(--colour-white);
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
}
.section-team .et_pb_row:has(img):not(:first-of-type) {
	margin-top: 40px;
}

@media screen and (max-width:1200px) {
	.section-team .et_pb_row:has(img) {
		flex-wrap: wrap;
	}
	.section-team .et_pb_row:has(img) .et_pb_column.et_pb_column_1_3 {
		flex: 1 1 45%;
		max-width: 50%;
	}
}
@media screen and (max-width:800px) {
	.section-team .et_pb_row:has(img) .et_pb_column.et_pb_column_1_3 {
		flex: 1 1 100%;
		max-width: 100%;
	}
	.section-team .et_pb_row:has(img) .et_pb_text.team-box {
    	margin-top: 0px;
	}
}


/* Section Image BG */
body .et_pb_section.section-image-bg a.et_pb_button {
    box-shadow: 0px 6px 0 var(--colour-black);
    background: var(--colour-white) !important;
    color: var(--colour-black) !important;
}
.section-image-bg .et_pb_text {
	max-width: 900px;
}
.section-image-bg h2 {
	font-size: var(--size-13);
}
.section-image-bg .et_pb_text * {
	color: var(--colour-white);
}
.section-image-bg {
	position: relative;
	z-index: 1;
}
.section-image-bg::before {
	content: '';
    background: linear-gradient(0deg, rgba(221, 25, 25, 0.50) 0%, rgba(221, 25, 25, 0.50) 100%), linear-gradient(0deg, #DD1919 0%, #DD1919 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.8;
    z-index: -1;
}



.section-logos .et_pb_row {
	max-width: 1200px;
}
.section-logos .et_pb_text {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 800px;
	margin: 0 auto;
}
.section-logos .et_pb_column:has(img) {
	flex-direction: row;
	row-gap: 30px;
	margin-top: 60px !important;
	justify-content: center;
	flex-wrap: wrap;
}
.section-logos img {
	min-width: 90px;
	object-fit: contain;
}
.section-logos .et_pb_image  {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 600px) {
	.section-logos img {
		width: 65px;
	}
}

.section-box-small .et_pb_row {
	max-width: 610px;
	background-color: var(--colour-primary);
	padding: 20px 30px;
	border-radius: 30px;
}
.section-box-small .et_pb_text * {
	color: var(--colour-white);
	text-align: center;
}
.section-box-small .et_pb_text h3 {
	margin-bottom: 15px;
}
.section-box-small .et_pb_text i {
	margin-left: 6px;
}
.section-box-small .et_pb_text a {
	text-decoration: underline;
}

/* Section faq */
.section-faq {
	position: relative;
}
.section-faq.small h2 {
	margin-bottom: 30px;
}
.section-faq.background-group::before {
	content: '';
    background-image: url('/wp-content/uploads/2026/05/Group-115.svg');
	background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    max-width: 650px;
    max-height: 450px;
    width: 100%;
    height: 100%;
}
.section-faq.small .et_pb_row {
	max-width: 1200px;
}
@media screen and (max-width:1000px) {
	.section-faq .et_pb_row {
		flex-direction: column;
	}
}
.swiper-controls-wrapper {
	display: flex;
	column-gap: 6px;
	align-items: center;
	width: fit-content;
	padding: 15px 25px;
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
	border-radius: 15px;
	background: #FFF;
	margin: 60px auto 0;
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-next,
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-prev,
.swiper-controls-wrapper .swiper-pagination {
	position: unset;
	transform: translateY(0);
	margin: 0px !important;
}
.swiper-controls-wrapper .swiper-pagination .swiper-pagination-bullet {
	background: transparent !important;
	border: 1px solid var(--colour-primary);
    width: 12px;
    height: 12px;
    margin: 0 6px;
	opacity: 1;
}
.swiper-controls-wrapper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: var(--colour-primary) !important;
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-next {
	order: 1;
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-next,
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-prev {
	width: fit-content !important;
	height: fit-content !important;
	background-color: transparent !important;
	color: var(--colour-primary) !important;
	padding: 0px !important;
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-next::after,
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-prev::after {
	content: '';
    font-family: var(--font-fa);
    margin-left: 8px;
    font-size: 15px;
    font-weight: 600;
	color: var(--colour-primary);
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-prev::after {
	margin-left: 0px;
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-next::after {
	content: '\f054';
}
.swiper-controls-wrapper .swiper-arrow-button.swiper-button-prev::after {
	content: '\f053';
}
.swiper-container-horizontal {
	line-height: 1;
}
/** Testimonial nav **/
.swiper-testi-controls-wrapper {
	position: relative;
}
.swiper-testi-controls-wrapper .swiper-pagination {
	position: absolute !important;
    left: 50%;
    transform: translateX(-50%) !important;
}
.swiper-testi-controls-wrapper {
	display: flex;
	align-items: center;
	width: fit-content;
	padding: 15px 25px;
	box-shadow: 0 39px 11px 0 rgba(0, 0, 0, 0.00), 0 25px 10px 0 rgba(0, 0, 0, 0.01), 0 14px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 6px 0 rgba(0, 0, 0, 0.04), 0 2px 3px 0 rgba(0, 0, 0, 0.04);
	border-radius: 15px;
	background: #FFF;
}
.swiper-testi-controls-wrapper .divi8-testi-icon-left, .swiper-testi-controls-wrapper .divi8-testi-icon-right {
	width: 15px;
	height: 15px;
	display: flex;
    justify-content: center;
    align-items: center;
}
.swiper-testi-controls-wrapper .swiper-navi-container {
	position: unset;
	transform: unset;
	column-gap: 60px;
}
#main-content .swiper-testi-controls-wrapper .swiper-pagination {
	display: flex !important;
    justify-content: center;
}
.swiper-testi-controls-wrapper .swiper-button-next,
.swiper-testi-controls-wrapper .swiper-button-prev,
.swiper-testi-controls-wrapper .swiper-pagination {
	position: unset;
	transform: translateY(0);
	margin: 0px !important;
}
#main-content .swiper-testi-controls-wrapper .swiper-pagination .swiper-pagination-bullet {
	background: transparent !important;
	border: 1px solid var(--colour-primary);
	opacity: 1;
    width: 12px;
    height: 12px;
    margin: 0 6px;
	transform: scale(1);
	left: 0 !important;
}
#main-content .swiper-testi-controls-wrapper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active-main {
	background-color: var(--colour-primary) !important;
}
#main-content .swiper-testi-controls-wrapper .swiper-button-next {
	order: 1;
}
#main-content .swiper-testi-controls-wrapper .swiper-button-next,
#main-content .swiper-testi-controls-wrapper .swiper-button-prev {
	width: fit-content !important;
	height: fit-content !important;
	background-color: transparent !important;
	color: var(--colour-primary) !important;
	padding: 0px !important;
}
#main-content .swiper-testi-controls-wrapper .swiper-button-next::after,
#main-content .swiper-testi-controls-wrapper .swiper-button-prev::after {
	content: '';
    font-family: var(--font-fa);
    margin-left: 8px;
    font-size: 18px;
    font-weight: 600;
	color: var(--colour-primary);
}
.swiper-testi-controls-wrapper .swiper-button-next::after {
	content: '\f054';
}
.swiper-testi-controls-wrapper .swiper-button-prev::after {
	content: '\f053';
}


/* News Section */
.section-news .et_pb_ajax_pagination_container {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	row-gap: 50px
}
.section-news .et_pb_ajax_pagination_container article {
	flex: 1 1 30%;
	margin-bottom: 0px;
	padding: 0;
	max-width: 33%;
}
.section-news .entry-title {
	font-size: 20px;
}
.section-news .post-content-inner p {
	font-size: 16px !important;
	color: var(--colour-text);
}
.section-news .et_pb_post a img {
	border-radius: 15px;
	max-height: 300px;
	min-height: 300px;
	object-fit: cover;
}
.section-news .et_pb_post .entry-featured-image-url {
	margin-bottom: 20px;
}
.section-news .more-link {
	width: fit-content;
    color: var(--colour-primary);
    text-align: center;
    font-size: 16px;
    font-family: var(--font-body);
    font-weight: 700;
    margin-top: 20px !important;
	text-decoration: underline;
	text-transform: capitalize;
}
.section-news .published {
    position: absolute;
    top: 15px;
    left: 15px;
    background: rgba(210, 217, 231, 0.60);
	backdrop-filter: blur(12px);
    border-radius: 10px;
    padding: 9px 12px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 1em;
    font-weight: 400;
    font-family: var(--font-body);
	color: var(--colour-white);
}
.section-news .published::before {
    content: "\f017";
    font-family: var(--font-fa-sharp);
    font-weight: 500;
    margin-right: 8px;
}

@media screen and (max-width: 980px) {
	.section-news .et_pb_ajax_pagination_container article {
		flex: 1 1 45%;
	}
}
@media screen and (max-width: 600px) {
	.section-news .et_pb_ajax_pagination_container article {
		flex: 1 1 100%;
	}
}

/** News Page **/
#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: 0px;
	padding-top: 10px;
	max-width: 1200px;
	background-color: var(--colour-white);
	border-radius: 20px;
}
#main-content .et_pb_section.post-type-content .et_pb_section {
	padding-top: 0px !important;
} 
#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: 0px;
}

#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;
}
.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;
}
#main-content:has(.post-type-content) {
	background-color: transparent;
}


.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;
	margin-bottom: 0px;
	font-family: var(--font-body);
}
.breadcrumb p {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0px;
	padding-bottom: 0px;
	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-content .et_pb_row {
	max-width: 1200px;
}
.section-content.background-group::before {
    content: '';
    background-image: url('/wp-content/uploads/2026/05/Group-115.svg');
	background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    max-width: 650px;
    max-height: 450px;
    width: 100%;
    height: 100%;
}

/* News category filter bar */
.news-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    padding-top: 40px;
	border-top: 1px solid #00000024;
}

.news-filter-label {
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 500;
    color: #1a1a1a;
    white-space: nowrap;
    margin-right: 4px;
}

.news-filter-btn {
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    padding: 8px 16px;
    border-radius: 8px;
    background: #EEE;
	border: 0px solid;
    color: var(--colour-black);
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.news-filter-btn:hover,
.news-filter-btn.active {
    background: #1a1a1a;
    color: #fff;
    border-color: #1a1a1a;
}

@media (max-width: 600px) {
    .news-filter-bar {
        gap: 6px;
        margin-bottom: 28px;
    }

    .news-filter-btn {
        font-size: 13px;
        padding: 8px 16px;
    }
}