<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/* 
	Main CSS Document 
	Resets taken care of in reset.css
*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600&amp;display=swap');

body,html,p,h1,h2,h3,h4,h5,h6,ul,li,ol,div,span,input,textarea {
	margin: 0;
	padding: 0;
}

/* Main Colours */
:root {
  --text_colour_1: #555555; /* mid grey */
  --text_colour_2: #072439; /* dark blue */
  --header_colour_blue: #09304a; /* dark blue */
  --header_colour_turquoise: #00837e; /* Turquoise */
  --header_colour_turquoise_light: #0075716b; /* Faded Turquoise   */
  --header_colour_turquoise_brighter: #4ab1ef; /* Brighter Turquoise  */
  --header_colour_3: #ffffff;
  --bg_colour_mediumblue: #4197CB;
  --bg_colour_mediumblue_brighter: #32a5eb;
  --bg_colour_lightblue: #e0f4ff;

  --site_width: 1200px; /* media quieries can't use this */
  --site_padding: 30px;
  --site_font: "Poppins";

  --header_height: 180px;
  --header_height_mid: 162px;
  --header_height_smallish: 120px;
  --header_height_small: 66px;
}

html { font-size: 16px; }
@media screen and (max-width: 800px) { html { font-size: 15px; } }
@media screen and (max-width: 500px) { html { font-size: 13px; } }
body {
	color: var(--text_colour_1);
	font-family: var(--site_font);
	font-size: 1rem;
	font-weight: 300;
	background-color: #ffffff;
	overflow-y: scroll;
	scrollbar-gutter: stable;
	/*hyphens: auto;*/
}


img, svg, video, canvas, iframe {
	border: 0;
	display: inline-block;
}
a {
	text-decoration: none;
	color: var(--main_colour_1);
	cursor: pointer;
}
a:hover { text-decoration: underline; }
p a { text-decoration: underline; }
p a:hover { text-decoration: none; }

p { margin-bottom: 1em; line-height: 1.55em; }
li { margin: 10px 16px 0; }
ol { margin: 10px 20px 0 20px; }
li ol {	margin: 10px 0 0 20px; }
hr {
	border-top: 1px solid #ccc;
	margin: 20px 0 20px;
}

/* ================================================================================================= */
/* ======================================== WRAPPERS/SECTIONS ====================================== */
/* ================================================================================================= */

	.pagewrap {
		width: 100%;
		height: 100%;
		max-width: var(--site_width);
		margin: 0 auto 0;
		position: relative;
	}
	.pagewrap.wide {
		max-width: 3000px;
	}
	.pagewrap.narrow {
		max-width: 800px;
	}	
	.pagewrap.medium {
		max-width: 1000px;
	}
	@media screen and (max-width: 1300px) {
		.pagewrap {
			padding: 0 var(--site_padding) 0;
		}
		.pagewrap.wide {
			padding: 0;
		}
		.pagewrap.lesspad {
			padding: 0 14px 0;
		}
		header .pagewrap {
			padding: 0 10px 0;
		}
	}
	@media screen and (max-width: 820px) {
		.pagewrap {
			padding: 0 20px 0;
		}
		.pagewrap.wide {
			padding: 0;
		}
	}


	section {
	  min-height: 20px;
	  padding: var(--site_padding) 0;
	}
	section.collapse_padding_up { padding-top: 0; }
	section.lesspad {
		padding: 20px 0;
	}
	section.blue { background-color: var(--header_colour_blue); }
	section.lightblue { background-color: var(--bg_colour_lightblue); }
/*	section.bluefade { background: linear-gradient(to bottom, #b1d6f5 0%,#ffffff 100%); }*/
	section.bluefade { background-color: var(--bg_colour_lightblue); }
	section.darkbluefade { background: linear-gradient(to bottom, var(--header_colour_blue) 0%,#ffffff 100%); }
	section.turquoise { background-color: var(--header_colour_turquoise); }
	section.grey { background-color: #f0f3f5; }

	.first_section { padding-top: var(--header_height); }
	.first_section.page_without_banner { padding-top: calc(var(--header_height) + var(--site_padding)); }
	.first_section.page_without_banner.lesspad { padding-top: calc(var(--header_height) + 20px); }

/* ================================================================================================= */
/* ======================================== /WRAPPERS/SECTIONS ===================================== */
/* ================================================================================================= */



/* ================================================================================================= */
/* ============================================= HELPERS =========================================== */
/* ================================================================================================= */

	.clear { clear: both; }
	.floatright { float: right; }
	.smalltext { font-size: 0.89rem; line-height: 1.5em; /* ~16px */ }

	.nopadding, section.nopadding { padding: 0; }
	.neverpadding, section.neverpadding { padding: 0 !important; }
	.no_top_padding, section.no_top_padding { padding-top: 0; }
	.never_top_padding, section.never_top_padding { padding-top: 0 !important; }
	.nomargin { margin: 0 !important; }
	.alignleft { text-align: left !important; }
	.alignright { text-align: right !important; }
	.aligncentre { text-align: center !important; }	
	.display_none { display: none !important; }
	.hasclick { cursor: pointer; }
	.larger_text, p.larger_text {
		font-size: 1.3rem;
		font-weight: 200;
		line-height: 1.6em;
	}

	@keyframes fadein {
	    from { opacity: 0; }
	    to   { opacity: 1; }
	}

/* ================================================================================================= */
/* ============================================= /HELPERS ========================================== */
/* ================================================================================================= */



/* ================================================================================================= */
/* ============================================= HEADERS =========================================== */
/* ================================================================================================= */

	h1,	h2,	h3,	h4,	h5,	h6 {
	  font-family: var(--site_font), sans-serif;
	  color: var(--header_colour_blue);
	  color: var(--text_colour_2);
		margin-top: 1em;
		margin-bottom: 1em;
	}
	h1, h2.as_h1 {
		font-size: 2rem;
		font-weight: 500;
	}
	h1.no_btm_margin,
	h2.no_btm_margin { margin-bottom: 0; }
	h2{
		font-weight: 400;
		font-size: 1.5rem;
	}
	h3 {
		font-size: 1.3rem;
		font-weight: 600;
	}
	h4 {
		font-size: 1.2rem;
		font-weight: normal;
	}
	h5 {
		font-size: 1.1rem;
		font-weight: 600;
	}
	h5.as_subhead { margin-top: 8px; color: var(--header_colour_turquoise); font-style: italic; }
	h6 {
		font-weight: 400;
		font-size: 1rem;
		margin: 1em 0 0.4em;
	}
	h1:first-child,	h2:first-child,	h3:first-child,	h4:first-child,	h5:first-child,	h6:first-child {
		margin-top: 0;
	}
	.page_header_box h2, .page_header_box h6 {
		margin-top: 4px;
		margin-bottom: 0;
	}
	@media screen and (max-width: 700px) {
	}

/* ================================================================================================= */
/* ============================================= /HEADERS ========================================== */
/* ================================================================================================= */




/* ================================================================================================= */
/* ============================================= BUTTONS =========================================== */
/* ================================================================================================= */

	@keyframes rotating {
	  from {
	    -webkit-transform: rotate(0deg);
	            transform: rotate(0deg);
	  }
	  to {
	    -webkit-transform: rotate(360deg);
	            transform: rotate(360deg);
	  }
	}	
	:root {
		--button_height: 40px;
	}
	button, .btn, .btn_spin span {
		background: none; border: none;
		background-color: var(--header_colour_turquoise);
		text-align: center;
		padding: 0 30px 0;
		font-size: 1rem;
		color: #ffffff;
		transition: all 0.3s;
		cursor: pointer;
		font-weight: 400;
		display: inline-block;
		height: var(--button_height);
		margin: 0 auto 10px;
		outline: none;
		line-height: var(--button_height);
		white-space: nowrap;
		font-weight: bold;
		text-decoration: none;
	}
	button.rounded, .btn.rounded {
		border-radius: 5px;
	}

	button:hover, .btn:hover {
		background-color: var(--bg_colour_mediumblue);
		background-color: var(--header_colour_turquoise_brighter);
		text-decoration: none;
	}
	button.small, .btn.small {
		height: 34px;
		font-size: 0.89rem;
		line-height: 34px;
	}
	button.tiny, .btn.tiny {
		width: 140px;
		height: 24px;
		font-size: 10px;
		padding-top: 2px;
	}
	button.inverse, .btn.inverse, .btn_spin span {
		background: transparent;
		border: 2px solid var(--header_colour_turquoise);
		line-height: calc(var(--button_height) - 4px);
		color: var(--header_colour_turquoise) !important;
	}
	button.inverse:hover, .btn.inverse:hover, .btn_spin:hover span  {
		background: var(--header_colour_turquoise);
		color: #fff !important;
		opacity: 1;
	}
	.btn.white {
		color: white;
		border-color: white;
		background-color: transparent;
	}

	/* Spinning button when 'active' class added, shares 'inverse' appearance:  */
	.btn_spin span {
		transition: all 0.25s ease;		
		white-space: nowrap;
		overflow: hidden;
	}
	.btn_spin.active span {
		color: transparent !important; font-size: 0;
		border-radius: 50%;
		width: var(--button_height);
		padding: 0;
		border-left-color: var(--header_colour_turquoise_light);
		animation: rotating 1.5s 0.05s linear infinite;
	}
	.btn_spin.active:hover span {
		background: none;
	}
	button.alt, .btn.alt, .bt_span.alt span {
		background-color: var(--header_colour_blue);
	}
	button.alt2, .btn.alt2, .bt_span.alt2 span {
		background-color: var(--bg_colour_mediumblue);
	}
	button.inverse.alt, .btn.inverse.alt, .btn_spin.alt span {
		background: transparent;
		border: 2px solid var(--header_colour_blue);
		color: var(--header_colour_blue) !important;
	}
	button.inverse.alt:hover, .btn.inverse.alt:hover, .btn_spin.alt:hover span {
		background: var(--header_colour_blue);
		color: #fff !important;
	}
	button.alt2:hover, .btn.alt2:hover, .btn_spin.alt2:hover span {
		background: var(--bg_colour_mediumblue_brighter);
	}
	button.white, .btn.white {
		background-color: transparent;
		color: white;
		border: 2px solid white;
		line-height: 38px;
	}
	button.white:hover, .btn.white:hover {
		background-color: white;
		color: var(--bg_colour_lightblue);
		border: 2px solid white;
	}
	.turquoise .btn.white:hover {
		color: var(--header_colour_turquoise);
	}

	.page_header_box .btn {
		margin-bottom: 0;
	}
	@media screen and (max-width: 400px) {
		.page_header_box .btn {
			padding-left: 4px;
			padding-right: 4px;
		}
	}

/* ================================================================================================= */
/* ============================================ /BUTTONS =========================================== */
/* ================================================================================================= */


	.popup_container {
		position: fixed;
		top: 0px;
		left: 0px;
		height: 100%; width: 100%;
		background: rgba(255,255,255,0.8);
		z-index: 100;
		display: none;
	}
	.popup {
			width: 80%;
			height: 80%;
			max-width: 900px;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			box-sizing: border-box;
				
			background-color: #ffffff;
			background-color: var(--bg_colour_mediumblue);
			border-radius: 0px;
			position: absolute;
			transition: all 0.5s;		
			overflow: hidden;
			box-shadow: 0px 0px 3px #0000003d;
	}
	.popup * { color: white; }
	.popup_scroll {
		padding: 30px 50px 30px 30px;
		height: 100%;
		width: calc(100% + 25px);
		overflow-y: auto;
	}
	#newsletter_popup .popup {
		width: 100%;
		max-width: 400px;
		height: auto;
	}

	.popup h4 {
		margin: 0 0 6px;
	}
	.popup h6 {
		margin-top: 0;
	}
	.popup .btn {
		margin-bottom: 0;
	}
	.fn_close_popup, .close_popup {
		position: absolute;
		top: 10px;
		right: 3px;
		display: block;
		width: 30px;
		height: 30px;
		font-size: 26px;
		cursor: pointer;
		transition: all 0.2s;
	}
	.fn_close_popup:hover, .close_popup:hover {
		opacity: 0.6;
	}
	@media screen and (max-width: 900px) {
		.popup {
			width: 95%;
		}
	}



/* ===================================================================================================== */
/* ============================================= TOP HEADER BAR ======================================== */
/* ===================================================================================================== */

	
	header {
		width: 100%;
		height: var(--header_height);
		padding-top: 10px;
		background-color: #fff;
		z-index: 10;
		transition: all 0.3s;
		position: fixed;
	}
	header.smaller {
		height: var(--header_height_small);
	}

	.main_logo { display: inline-block; }
	.main_logo img, .jv_logo {
		display: inline-block;
		height: 110px;
		width: auto;
		transition: all 0.3s;
		margin: 0 0 10px;
	}
	header.smaller .main_logo { float: left; }
	header.smaller .main_logo img {
		height: 46px;
		margin: 0 30px 0 0;
	}
	.jv_logo {
		height: 60px;
		margin: 0 0 15px 30px;
	}
	.jv_logo.mobile { display: none; }
	header.smaller .jv_logo { display: none; }

	.toplinks {
		float: right;
		text-align: right;
		font-weight: 400;
	}
	.toplinks a {
		display: inline-block;
		margin: 0 5px 0;
		font-size: 1rem;
	}
	a.social_link {
		width: 40px; height: 40px;
		display: inline-block;
		color: #fff;
		background-color: #4197CB;
		text-decoration: none;
		text-align: center;
		transition: all 0.3s;
		vertical-align: bottom;
	}
	a.social_link .fa {
		margin-top: 6px;
		font-size: 28px;
		color: #fff;
	}
	.social_link_2 { 
		padding-top: 10px;
		font-size: 1rem;
		color: var(--text_colour_2);
	}
	.social_link_2 .fa {
		font-size: 1.1rem;
	}
	a.language_link {
		display: inline-block;
		padding: 0 0 20px;
		font-size: 1.125rem;
	}

	header.smaller .toplinks {
		display: none;
	}


/* ===================================================================================================== */
/* ============================================= /TOP HEADER BAR ======================================= */
/* ===================================================================================================== */



/* ===================================================================================================== */
/* ============================================= NAVIGATION ============================================ */
/* ===================================================================================================== */


	.nav_container {
		float: left;
	}
	.nav_container {
		/*margin-top: 40px;*/
		transition: all 0.3s;
	}
	.smaller .nav_container {
		margin-top: 7px;
	}
	.main_nav {
		transition: all 0.3s;
	}
	.main_nav li {
		margin: 0; padding: 0;
		list-style-type: none;
		float: left;
		font-family: var(--site_font);
		position: relative;
	}
	.main_nav li a span {
		display: inline-block;
		padding: 0 0 8px;
		border-bottom: 2px solid transparent;
		transition: all 0.2s;
	}
	.main_nav li a {
		display: block;
		padding: 8px 20px 0;
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 0.5px;
		color: var(--text_colour_2);
	}
	header.smaller .main_nav li a { padding: 8px 10px 0; }
	.main_nav li:first-child a {
		font-size: 0;
		padding: 0;
	}
	.main_nav li:first-child a span { width: 100%; padding-bottom: 2px; }
	.main_nav li:first-child a img { display: inline-block; height: 32px; }
	header.smaller .main_nav li:first-child a { padding: 0; }

	.main_nav li a:hover {
		text-decoration: none;
		transition: all 0.2s;
	}
	.smaller .main_nav li a:hover {		
	}
	.main_nav li.on span, .main_nav li:hover a span {
		border-bottom: 2px solid var(--text_colour_2);
	}
	.smaller .main_nav li.on span,
	.smaller .main_nav li:hover span {
	}
	.smaller .main_nav li.special.on span {
		border-bottom: 0px solid #ffffff;
	}

	.sub_nav {
		border-top: 10px solid transparent;
		background-clip: padding-box; /* Stops the background showing under the transparent border */
		background-color: var(--text_colour_2);
		color: #fff;
		width: 240px;
  	visibility: hidden;
	 	opacity: 0;
  	position: absolute;
  	top: 100%;
  	left: 0;
  	transform: translateY(-2em);
  	z-index: -1;
  	transition: all 0.2s ease-in-out 0s, visibility 0s linear 0.3s, z-index 0s linear 0.01s;
	}
	.main_nav li:hover .sub_nav {
		/* shows sub-menu */
		visibility: visible;
		opacity: 1;
		z-index: 0;
		transform: translateY(0%);
		transition-delay: 0s, 0s, 0.2s;
		/* this removes the transition delay so the menu will be visible while the other styles transition */
	}
	.main_nav li:last-child .sub_nav {
		left: auto;
		right: 0px;
	}
	.sub_nav li {
		float: none;
		width: 100%;
		box-sizing: border-box;
		color: #fff;
	}
	.main_nav .sub_nav li a, header.smaller .main_nav .sub_nav li a {
		padding: 8px 24px 8px;
		color: #fff;
		font-size: 15px;
	}
	.sub_nav li:hover a {
		background-color: #30495c;
	}

	.hamburger_menu {
		position: absolute;
		top: -10px;
		right: -1530px;
		opacity: 0;
		transition: 0.3s all;
		font-size: 40px;
		font-weight: bold;
		cursor: pointer;
		color: var(--text_colour_2);
	}
	header.white .hamburger_menu {
		color: var(--text_colour_2);
	}
	.hamburger_menu.on {
		color: #ffffff;
		top: -10px;
	}
	.smaller .hamburger_menu {
		top: -10px;
	}
	.nav_container li .fa {
		display: block; 
		font-size: 26px;
	}

	.main_nav li.special {
		margin-left: 10px;
	}
	.main_nav&gt;li.special a {
		border: 2px solid var(--text_colour_2);
		padding: 6px 22px 2px;
	}
	.main_nav&gt;li.special a span {
		padding-bottom: 4px;
	}
	.smaller .main_nav&gt;li.special a {
		border-color: #fff;
	}

	header.smaller .searchbox {
		display: none;
	}

	.show_on_mobile { display: none; }

	@media screen and (max-width: 1230px) {
		.main_nav li a {
			padding: 8px 18px 0;
		}
	}

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

		header {
			height: var(--header_height_mid);
		}
		.first_section { padding-top: var(--header_height_mid); }
		.first_section.page_without_banner { padding-top: calc(var(--header_height_mid) + var(--site_padding)); }
		.first_section.page_without_banner.lesspad { padding-top: calc(var(--header_height_mid) + 20px); }


		a.main_logo img { height: calc(var(--header_height_mid) - 53px); }

		a.language_link {
			margin-right: 60px;
		}

		.hamburger_menu {
			display: block;
			opacity: 1;
			right: 16px;
			z-index: 15;
		}

		.searchbox {
			margin-top: 16px;
		}

		.nav_container {
			opacity: 1;
			z-index: 14;
			top: -10px;
			left: 0;
			position: absolute;
			float: none;
			padding-bottom: 0px;	
			overflow: hidden;
			height: 0;
			width: 100%;
		}
		.nav_container.on {
			height: auto;
			height: 100vh;
			overflow-y: scroll;
			padding-bottom: 20px;
		}
		.main_nav, .nav_container {
			background-color: var(--text_colour_2);
		}
		.main_nav {		
			margin-left: 0px;
			margin-right: 0px;
			padding: 0 30px 0 0;
			margin-top: 15px;
			width: 100%;
			height: 100%;
			overflow-y: scroll;
		}
		header.smaller .nav_container {
			display: inline-block;
			margin: 0;
		}
		header.smaller .main_nav {
			
		}
		.main_nav li {
			width: 100%;
			float: none;
			box-sizing: border-box;
		}
		.main_nav li a span {
			border: none;
			padding: 0;
		}
		.main_nav li a,
		header .main_nav .sub_nav li a,
		header.smaller .main_nav .sub_nav li a,
		header.smaller .main_nav li a {
			color: #ffffff !important;
			padding: 8px 18px 8px;
		}
		.main_nav li a:hover {
			background: rgba(255,255,255,0.2);
			text-decoration: none;
		}
		.main_nav li.is_parent&gt;a:hover {
			background: none;
		}
		.main_nav li:hover a span, .main_nav li.on a span {
			border: none;
		}
		header.smaller .main_nav li:first-child a,
		.main_nav li:first-child a { padding: 8px 18px 8px; }
		.hide_on_wide { display: block; }
		.hide_on_narrow { display: none; }

		.main_nav li.special {
			margin-left: 0px;
		}
		.main_nav&gt;li.special a {
			border: 0px solid var(--text_colour_2);
			padding: 8px 18px 0px;
		}

		.sub_nav {
			border: none;
			padding: 0px 0 0 14px;
			width: 100%;
		  visibility: visible;
		 	opacity: 1;
	  	position: relative;
	  	top: auto;
	  	left: auto;
	  	transform: translateY(0);
	  	z-index: inherit;
	  	transition: all 0.3s ease-in-out 0s, visibility 0s linear 0.3s, z-index 0s linear 0.01s;
		}
		.main_nav li:hover .sub_nav {
			visibility: visible;
			opacity: 1;
			z-index: inherit;
			transform: translateY(0%);
			transition-delay: 0s, 0s, 0s;
		}

		/* This is because we have the parent link repeated in the dropdown */
		/* Hidden 14/04/23 as parent link doesn't have a link on it as per client request */
/*		.sub_nav li:first-child { display: none; }*/


	} /* media screen and (max-width: 1170px) */


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

		.jv_logo {
			height: 30px;
			margin: 0 0 0px 0px;
			display: none;
		}
		.jv_logo.mobile { 
			position: absolute;
			left: 14px;
			top: 116px;
			display: inline-block; 
		}
		header.smaller .jv_logo.mobile { display: none; }


	}

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

		header {
			height: var(--header_height_smallish);
		}
		.first_section { padding-top: var(--header_height_smallish); }
		.first_section.page_without_banner { padding-top: calc(var(--header_height_smallish) + var(--site_padding)); }
		.first_section.page_without_banner.lesspad { padding-top: calc(var(--header_height_smallish) + 20px); }

		a.main_logo img {
			height: calc(var(--header_height_smallish) - 43px);
		}

		.toplinks .btn, .toplinks .social_link {
			display: none;		}
		.smaller .hamburger_menu { top: -2px; }
		.show_on_mobile { display: block; }


		.jv_logo {
			height: 24px;
			margin: 0 0 0px 0px;
			display: none;
		}
		.jv_logo.mobile { 
			position: absolute;
			left: 14px;
			top: 79px;
			display: inline-block; 
		}
		header.smaller .jv_logo.mobile { display: none; }



	}
	
	@media screen and (max-width: 380px) {
		a.main_logo img {
	    height: calc(var(--header_height_smallish) - 48px);
		}		
		a.language_link {
			margin-left: 0;
			margin-right: 50px;
		}
		.social_link_2 {
			margin: 10px 0 0 !important;
			font-size: 0.7rem !important;
		}
	}


/* ===================================================================================================== */
/* ============================================= /NAVIGATION =========================================== */
/* ===================================================================================================== */





/* ===================================================================================================== */
/* ============================================= SEARCHBAR ============================================= */
/* ===================================================================================================== */


	.searchbox {
		float: right;
		margin-top: 12px;
		margin-right: 25px;
		transition: all 0.2s;
	}
	.searchinput {
		background: rgba(255,255,255,0.3);
		/*color: #ffffff;*/
		font-size: 14px;
		height: 28px;
		width: 200px;
		padding-top: 1px;
		display: inline-block;
		margin: 0px 0px 0px;
		/*caret-color: white;*/
	}
	.searchinput:focus {
		border: 1px solid rgba(255,255,255,0);
		background: rgba(255,255,255,0.4);
	}
	.searchbox .ionicons {
		/*color: #ffffff;*/
		display: inline-block;
		margin: 0 8px 0 0;
		font-size: 30px;
		vertical-align: middle;
	}
	.searchbox .ionicons:hover {
		
	}
	header.white .searchbox .ionicons {
	    color: var(--text_colour_2);
	}
	header.white .searchinput {
		background: rgba(0,0,0,0.11);
		border: 1px solid rgba(0,0,0,0.0);
	}
	.smaller .searchbox {
		margin-top: 12px;
	}

	.search_results {
		overflow-y: scroll;
		margin: 20px 0 20px;
		padding: 0 0 0px;
		display: none;
	}
	.active_search {
		box-sizing: border-box;
		position: fixed;
		top: 0px;
		left: 0px;
		width: 100%;
		min-height: 150px;
		border-bottom: 1px solid #fafafa;
		background: rgba(255,255,255,0.95);
		display: none;
		z-index: 15;
	}
	.active_search .pagewrap {
		padding: 20px 0px 0;
	}
	.active_search .ionicons {
		position: absolute;
		top: 33px;
		left: 20px;
		font-size: 30px;
	}
	.active_search .search_icon {
		
	}
	.active_search .close_icon {
		left: auto;
		right: 10px;
		cursor: pointer;
	}
	.real_search_input {
		width: 90%;
		font-size: 26px;
		background: transparent;
		border: 1px solid transparent;
		margin: 0 50px 0;
	}
	.real_search_input:focus {
		border: 1px solid transparent;
	}

	.search_results ul, .search_results li { padding: 0; margin: 0; }
	.search_results ul {
		padding: 0 20px 0;
		
	}
	.search_results ul:first-child {
		margin: 20px 0 0;
	}	
	.search_results li {
		list-style-type: none;
		transition: all 0.2s;
		border-bottom: 1px solid rgba(200,200,200,0.5);
	}
	.search_results ul:first-child li:first-child {
		border-top: 1px solid rgba(200,200,200,0.5);
	}

	.search_results li a {
		display: block;
		color: inherit;
		padding: 20px;
		transition: all 0.2s;
	}
	.search_results li a:hover {
		text-decoration: none;
	}
	.search_results li:hover {
		background: rgba(200,200,200,0.5);
	}
	.search_results li:hover a {
		padding: 20px 20px 20px 25px;
		color: var(--text_colour_2);
	}

	.smaller .search_clear {
		display: none;
	}

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

		.searchbox {
			margin-top: 16px;
			margin-right: 10px;
		}

/*			margin-top: 74px;
			margin-right: 18px;*/
		}
		.smaller .searchbox {
/*		    margin-top: 11px;
		    margin-right: 61px;*/			
		}
	}






	@media screen and (max-width: 600px) {
		.real_search_input {
			font-size: 16px;
			width: 78%;
		}
	}
	@media screen and (max-width: 440px) {
		.searchinput { display: none; }
		.searchbox {
			margin-right: 12px;
		}
		.smaller .searchbox {
		    margin-top: 20px;
		    margin-right: 50px;			
		}		
	}
	@media screen and (max-width: 410px) {
		.real_search_input {
			font-size: 12px;
			width: 78%;
		}
	}
	@media screen and (max-width: 380px) {
		.searchbox {
			display: none;
		}
	}



/* ===================================================================================================== */
/* ============================================= /SEARCHBAR ============================================ */
/* ===================================================================================================== */







/* ===================================================================================================== */
/* ============================================= BANNER ================================================ */
/* ===================================================================================================== */


	.banner_container {
		transition: opacity 1s;
		transition-delay: 0.5s;
		visibility: hidden;
		opacity: 0;
	}
	.banner_container.slick-initialized {
    	visibility: visible;
	    opacity: 1;
	}
	.banner {
		width: 100%;
		height: 100vh;
		margin: 0 auto 0;
		padding-bottom: 0 !important;
		background-color: #ccc;
		position: relative;
		background-position: top center;
		background-repeat: no-repeat;
		background-size: cover;
		box-sizing: border-box;

	}
	.slide {
		width: 100%;
		height: 100%;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
		box-sizing: border-box;
/*		position: absolute;
		top: 0px;
		left: 0px;*/
		/*justify-content: center;*/
		/*align-items: center;*/
	}
	.slide::before {
	  content: '';
	  position: absolute;
	  top: 0; left: 0;
	  width: 100%; height: 100%;
	  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
	}
	.slide .bg_img {
		object-fit: cover;
		object-position: 50% 50%;
		width: 100%;
		height: 100%;
		z-index: -1;
		position: absolute;
	}


	.slide .pagewrap { height: 100%; padding-top: 150px; box-sizing: border-box; }

	.banner h1 {
		margin-bottom: 0px;
	}

	.move_down {
		position: absolute;
		width: 54px;
		margin-left: -27px;
		left: 50%;
		bottom: 30px;
		color: #ffffff;
		cursor: pointer;
		transition: bottom 0.3s;
	}
	.move_down .fa {
		color: #ffffff;
		font-size: 50px;
		font-weight: lighter;
	}
	.move_down:hover {
		bottom: 20px;
	}	


	.linkhide {}
	.linkshow { display: none; }


	.banner_image_credit {
		position: absolute;
		/*transform: rotate(-90deg);*/
		/*transform-origin: 100% 0;  Ensures correct positioning */
		right: 15px;
		bottom: 12px;
		color: #ffffff;
		font-size: 10px;
		z-index: 10;
		text-shadow: 0px 1px 0px rgba(0, 0, 0, 1);
	}
	.banner_image_credit.cr_outer { 
		display: none; 
		bottom: auto;
		top: 20px;
	}


	/* ================================== */

		.caption {
			width: 700px;			
			box-sizing: border-box;
			padding: 18px 0 28px;
			position: absolute;
			bottom: 4%;
			left: 0px;
			color: #fff;
			z-index: 2;
			text-align: left;
			text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
		}
		.caption table { width: 100%; margin-top: 20px; }
		.caption table td { vertical-align: bottom; padding: 0; }
		.caption table td:first-child { padding-right: 10px; }
		.caption .btn {	
			margin: 12px 0 0;
		}

		.caption p { 
			font-size: 22px; margin: 0; line-height: 1.4em; padding-top: 10px; font-weight: 500; }
		.caption h2 {
			color: #ffffff;
			padding-bottom: 6px;
			margin: 0px;
			font-size: 3rem;
			font-weight: 500;
			line-height: 1.2em;
		}
		.smallicon {
			width: 30px; height: 30px;
			line-height: 30px;
			text-align: center;
			cursor: pointer;
			font-size: 24px;
			transition: all 0.2s;
		}
		.smallicon:hover {
			background: rgba(0,0,0,0.15);
		}
		.caption .open_icon {
			display: inline-block;
			background: rgba(255,255,255,0.75);
			color: #58595b;
		}
		.caption .open_icon:hover {
			background: rgba(255,255,255,0.25);
			color: #fff;
		}
		.caption .open_icon.off {
			display: none;
		}


	/* ================================== */

	@media screen and (max-width: 1270px) {
		.caption {
			left: 20px;
		}
	}
	@media screen and (max-width: 900px) {
		.caption {
			width: 650px;
			left: 20px;
		}
	}

	@media screen and (max-width: 800px) {
		.banner {
			height: 400px;
		}
		.caption h2 {
			font-size: 2.2rem;
		}

	}
	@media screen and (max-width: 800px) {
		.caption {
			width: 90%;
		}
		.caption p {
			font-size: 18px;
		}

	}
	@media screen and (max-width: 450px) {
		.caption {
			width: 90%;
		}
		.caption h2 {
			font-size: 2rem;
		}
	}




/* ===================================================================================================== */
/* ============================================= /BANNER =============================================== */
/* ===================================================================================================== */









/* ===================================================================================================== */
/* ============================================= CONTENT =============================================== */
/* ===================================================================================================== */

	.pagewrap.padding {
		padding: 20px 40px 20px;
	}
	.pagewrap.toppadding {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.full_width_text {
		padding: 0 60px 0;
		text-align: center;
	}
	.full_width_text.small {
		padding: 0 170px 0;
	}
	.full_width_text img {
		max-width: 100%;
	}

	section.turquoise * { color: white; }
/*	section.lightblue * { color: white; }*/
	section.blue * { color: white; }
	section.grey * { xcolor: var(--text_colour_2); }
	.first_richtext_on_page p:first-child { font-size: 1.2rem; font-weight: 400; }
	.first_richtext_on_page p.larger_text:first-child { font-size: 1.3rem; font-weight: 200; }
	p.intro {
		font-size: 24px;
		font-weight: 500;
		color: var(--text_colour_2);
	}

	.flex_type_richtext p {
		/*max-width: 1100px;*/
	}

	.feature_text {
		color: var(--text_colour_2);
		font-size: 1.7rem;
		font-weight: 500;
	}	
	.feature_text p {
		margin: 0;
	}

	/* Images in text paragraphs: */
	.inline_image {
		height: auto; float: left; margin: 0 20px 20px 0;
	}
	@media screen and (max-width: 400px) {
		.inline_image {
			width: 100% !important;
		}
	}

	/* =========== Big Links ========== */
	.biglink_container {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 0px;
	}
	.num_btns_1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.num_btns_2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.num_btns_3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.num_btns_4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.num_btns_5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.biglink {
		display: inline-block;
		padding: 40px 40px 40px;
		text-align: center;
		color: #ffffff;
		background-color: var(--header_colour_turquoise);
	}
	.biglink * { color: #ffffff; }
	.biglink.blue { background-color: var(--header_colour_blue); }
	.biglink.mediumblue { background-color: var(--bg_colour_mediumblue); }
	.biglink .img {
		height: 80px;
		display: block;
		margin: 0 auto 0;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	.biglink:hover { text-decoration: none; }
	.biglink p { font-size: 1rem;	}
	@media screen and (max-width:  900px) {
		.biglink { padding: 25px; }
	}
	@media screen and (max-width: 780px) {
		.biglink_container {
			display: block;
		}
		.biglink {
			padding: 30px; 
		}
	}

	/* ============== USED FOR EMBEDDED VIDEOS ==========  */
	.iframe_container {
		width: 100%;
	}
	.responsive_iframe {
		width: 100% !important;
		height: 330px;
	}
	.iframe_container.full_width .responsive_iframe {
		height: 500px;
	}
	@media screen and (max-width: 650px) {
		.iframe_container {
			/* padding to maintain iframe ratio: */
			padding-top: calc(2.2 / 4 * 100%);
			width: 100%;
			height: 0;
			overflow: hidden;
			position: relative;
		}
		.responsive_iframe {
/*			width: 100%;*/
/*			height: 300px;*/
			height: 100%;
		  position: absolute;
		  top: 0;
		  left: 0;
		}
		.iframe_container.full_width {

		}
		.iframe_container.full_width .responsive_iframe {
			height: 100%;
		}

	}



	/* ============== MAKES TABLE DATA LOOK NICE ==========  */
	.nicerow {
		width: 100%;
	}
	.nicerow td {
		height: 40px;
		width: 50%;
		box-sizing: border-box;
		padding: 8px;
		background-color: #b5b9d0;
		border: 2px solid white;
	}
	.nicerow td:last-child {
		background-color: #cdcfe0;
	}
	.nicerow tr:nth-child(even) td {
		background-color: #cdcfe0;
	}	
	.nicerow tr:nth-child(even) td:last-child {
		background-color: #b5b9d0;
	}



	/* ============== CONTACT BOX ================ */
	.contact_box {
		width: 100%;
		height: auto;
		position: relative;
		box-sizing: border-box;
		padding: 30px;
		margin-bottom: 20px;
		border: 1px solid #ccc;
	}
	.contact_box p {
		margin: 0; padding: 0; line-height: auto;
		font-family: var(--site_font), serif;
		font-weight: bold;
	}


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

		.nicerow td {
			width: 100%;
			display: block;
		}
		.nicerow td {
			background-color: #b5b9d0;
			height: auto;
		}
		.nicerow td:last-child {
			background-color: #cdcfe0;
		}
		.nicerow tr:nth-child(even) td {
			background-color: #b5b9d0;
		}	
		.nicerow tr:nth-child(even) td:last-child {
			background-color: #cdcfe0;
		}

		.contact_box {
			padding: 20px;
		}

	}


	@media screen and (max-width: 450px) {
		.location_link .img {
			margin-right: 0;
		}
	}



	/* Mini grid of images: */
	.mini_gallery_container {
		text-align: justify;
	}
	.mini_gallery_thumb {
		display: inline-block;
		float: left;
		margin: 0px 0px 20px 0px;
		cursor: pointer;
		height: 200px;
		width: 48%;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	.mini_gallery_single .mini_gallery_thumb {
		width: 100%;
		height: 300px;
		margin: 0;
	}
	.mini_gallery_single.match_height .mini_gallery_thumb {
		height: 530px;
		height: 680px;
		min-width: 100%;
		width: auto;
	}
	.mini_gallery_thumb:nth-child(2n) {
		margin-right: 0;
	}
	/* Makes last row of images justify properly: */
	/*.mini_gallery_container:after{content:""; display: inline-block; width: 100%; height: 0;}*/

	.mini_gallery_container.mini_gallery_vertical .mini_gallery_thumb {
		width: 100%;
		height: 250px;
		height: 325px;
	}
	.mini_gallery_container.mini_gallery_vertical .mini_gallery_thumb:nth-child(2) {
		margin-bottom: 0px;
	}

	.mini_gallery_container.mini_gallery_triple .mini_gallery_thumb:nth-child(1) {
		width: 100%;
		height: 300px;
	}
	.mini_gallery_container.mini_gallery_triple .mini_gallery_thumb:nth-child(2) {
		margin-right: 4%;
	}
	@media screen and (max-width: 890px) {

		.mini_gallery_thumb {
			height: 120px;
		}
		.mini_gallery_single .mini_gallery_thumb {
			height: 200px;		
		}
		.mini_gallery_single.match_height .mini_gallery_thumb {
			height: 430px;
		}
		.mini_gallery_container.mini_gallery_vertical .mini_gallery_thumb {
			height: 200px;
		}

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

		.mini_gallery_thumb {
			height: 90px;
		}
		.mini_gallery_single .mini_gallery_thumb {
			height: 150px;		
		}
		.mini_gallery_single.match_height .mini_gallery_thumb {
			height: 330px;
		}
		.mini_gallery_container.mini_gallery_vertical .mini_gallery_thumb {
			height: 150px;
		}

	}		





	section.outline_left {
		box-shadow: 5px 0 0 var(--header_colour_turquoise) inset;
	}
	section.outline_right {
		box-shadow: -5px 0 0 var(--header_colour_turquoise) inset;
	}


/* ===================================================================================================== */
/* ============================================= /CONTENT ============================================== */
/* ===================================================================================================== */






/* ===================================================================================================== */
/* ============================================= COLUMNS =============================================== */
/* ===================================================================================================== */


	.col_container {
		display: flex;
	}
	.col {
		/*display: inline-block;
		box-sizing: border-box;
		margin: 0 2% 0px 0;*/
		padding: 0 30px 0;
		vertical-align: top;
		min-height: 1px;
		flex: 0 0 auto;
	}
	.col:first-child { padding-left: 0; }
	.col:last-child { padding-right: 0; }
	.col33 {
		width: 33.%;
		margin: 0;
	}
	.col25 {
		width: 25%;
		margin: 0;
		flex: 0 0 auto; /* no shrink, no expand, auto width */
	}
	.col34 { width: 34%; }
	.col40 { width: 40%; }
	.col60 { width: 60%; }
	.col66 { width: 66%; }
	.col50 { width: 50%; }
	.col75 {
		width: 75%;
		margin: 0;
		flex: 0 0 auto;
	}

	@media screen and (max-width: 920px) {
	}
	@media screen and (max-width: 890px) {
		/* content_column is used for full page text - eg news, richtext */
		.col75.content_column { width: 100%; padding: 0 0 0; }
		.col_container.col_container_50s {
			flex-direction: column;
		}
		.col.col50 {
			width: 100%;		
		}
		.col.col50.txt_col, .col.col50,
		.fancy_row.col_container .col.col60.txt_col, .fancy_row.col_container .col.col40 {
			padding: 0 0 20px;
		}
		.fancy_row.col_container { flex-direction: column; }
		.fancy_row .col40, .fancy_row .col60 {
			width: 100%;
		}		
	}
	@media screen and (max-width: 750px) {
		.col {
			padding: 0 20px 0;
		}
		.fancy_row.col_container { flex-direction: column; }
		.col34, .col66 {
			width: 100%;
		}
	}
	@media screen and (max-width: 450px) {
		.col_container {
			flex-direction: column;
		}
		.col_container.col_text_first {
			flex-direction: column-reverse;
		}
		.col {
			padding: 20px 0 0;
			width: 100%;
			clear: both;
		}
		.col25, .col40, .col60, .col75 {
			width: 100%;
			clear: both;
		}
		.col:first-child { padding-top: 0; }
	}

/* ===================================================================================================== */
/* ============================================ /COLUMNS =============================================== */
/* ===================================================================================================== */



/* ===================================================================================================== */
/* ============================================ COLUMN CONTENT ========================================= */
/* ===================================================================================================== */

	.flex_type_twocol {

	}
	.img_col {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-end; /* Vertical */
	}
	.img_col img {
		max-width: 100%;
		height: auto;
		display: block;
	}
	.txt_col {
		display: flex;
		align-items: center;
	}
	.fancy_row .txt_col {
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	.fancy_row .txt_col p {
		font-size: 1.2rem;
	}
	@media screen and (max-width: 450px) {
		.img_col img {
			max-height: 150px;
			margin-bottom: 20px;
		}
	}

	.partner_logo {
		display: inline-block;
		height: 65px;
		height: 67px;
		margin: 0 17px 20px;
		/*filter: grayscale(100%);*/
	}
	.partner_logo:hover {
		filter: none;
	}
	

/* ===================================================================================================== */
/* ============================================ /COLUMN CONTENT ======================================== */
/* ===================================================================================================== */




/* ===================================================================================================== */
/* ============================================= GRID PAGES ============================================ */
/* ===================================================================================================== */

	.article_container {
		display: grid;
	  /*grid-template-columns: 1fr 1fr 1fr 1fr 1fr;*/
	  /* Following is to ensure equal column width, from https://css-tricks.com/equal-width-columns-in-css-grid-are-kinda-weird/ */
	  grid-template-columns: repeat(5, minmax(0, 1fr));
	  gap: 20px;
	}
	.article_container.article_max2,
	.article_container.news_articles.article_max2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 15px;
	}
	article {
		height: 284px;
		position: relative;
	}
	figure {
		height: 100%;
		width: 100%;
		overflow: hidden;
		margin: 0 !important;
	}
	figure img {
		display: block;
		height: calc(100% - 85px);
		width: 100%;
		object-fit: cover;
		object-position: center center;
	  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
	  filter: grayscale(100%);		
	}
	figcaption {
		display: block;
		height: 85px;
		padding: 15px 15px 0;
		background-color: var(--bg_colour_mediumblue);
	}
	figcaption * { color: #fff; }
	figcaption h4 {
		font-weight: normal;
		margin: 0 0 4px;	
	}
	figcaption h6 {
		margin: 0;
		font-size: 0.9rem;	
	}

	.article_container.news_articles {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 40px;
	}
	.news_articles article {
		background-color: #f5f5f5;
		height: 330px;
	}
	.news_articles article .img {
		height: 150px;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center
	}
	.news_articles article .txt {
		padding: 14px 14px 14px 20px;
	}
	.news_articles article h5 { margin: 0; }
	.news_articles article p { margin-top: 6px; }
	.news_articles article:hover {
		text-decoration: none;
	}


	@media screen and (max-width: 1170px) {
		.article_container { grid-template-columns: repeat(4, minmax(0, 1fr)); }
		.article_container.news_articles { grid-template-columns: repeat(3, minmax(0, 1fr)); }

		.article_container.news_articles.article_max2 article h5 { 
			font-size: 1rem;
		}		
	}
	@media screen and (max-width: 900px) {
		.article_container { grid-template-columns: repeat(3, minmax(0, 1fr)); }
		.article_container.news_articles { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: 20px; }		
	}
	@media screen and (max-width: 650px) {
		.article_container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.article_container.news_articles { grid-template-columns: repeat(1, minmax(0, 1fr)); }		
	}
	@media screen and (max-width: 450px) {
		.article_container {
			grid-template-columns: repeat(1, minmax(0, 1fr));
		}
	}


/* ===================================================================================================== */
/* ============================================= /GRID PAGES =========================================== */
/* ===================================================================================================== */



/* ===================================================================================================== */
/* ============================================= FEATUREBOX ============================================ */
/* ===================================================================================================== */

	.icon_wrapper {
		text-align: center;
	}
	.icon_wrapper .icon_link {
		float: none;
		display: inline-block;
		vertical-align: top;
	}

	.icon_link {
		height: 300px;
		padding-top: 20px;
		margin-bottom: 20px;
		text-align: center;
		float: left;
		cursor: pointer;
		transition: all 0.3s;
		position: relative;
	}

	.icon_link .icon {
		height: 100px;
		text-align: center;
		display: block;
	}
	.icon_link .icon img, .icon_link .icon svg {
		/*height: 100%;*/
	}
	.svg-icon { fill: white; transition: all 0.3s; }

	.icon_link .text {
		padding: 30px 90px 0px;
		font-size: 18px;
		font-weight: 300;
		transition: all 0.3s;
		text-align: center;
	}
	.icon_link h2 {
		text-align: center;
	}
	.icon_link:hover {
		text-decoration: none;
	}
	.icon_link:hover .text {
		text-decoration: none;
	}
	.icon_link .btn {
		position: absolute;
		bottom: 0px;
		left: 50%;
		margin-left: -80px;
	}

	
	@media screen and (max-width: 11460px) {
		.icon_link .text {
			padding: 30px 10px 0px;
			font-size: 18px;
			font-weight: 300;
			transition: all 0.3s;
			text-align: center;
		}
	}	
	@media screen and (max-width: 1070px) {
		.icon_link h3 {
			font-size: 24px;
		}
		.icon_link .icon {
			/*height: 70px;*/
		}
		 #lottie{
            /*width: 105px;*/
            /*height: 100%;*/
        }
	}	
	@media screen and (max-width: 800px) {
		.icon_link h3 {
			font-size: 18px;
		}
		.icon_link .icon {
			height: 50px;
		}

	}
	@media screen and (max-width: 650px) {
		.icon_link p {
			display: none;
		}
		.icon_link {
			height: 200px;
		}

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


	}
	@media screen and (max-width: 550px) {
		.col33 {
			width: 100%;
		}
	}

/* ===================================================================================================== */
/* ============================================= /FEATUREBOX =========================================== */
/* ===================================================================================================== */






/* ===================================================================================================== */
/* ============================================= GALLERY SLIDER ======================================== */
/* ===================================================================================================== */


	.slick_container {
		height: 180px;
	}
	.slick-slider .slick-track, .slick-slider .slick-list {
	    height: 100%;
	}	
	.gal_img_outer {
		background: white;
		cursor: pointer;
		overflow: visible;
		outline: none;
		position: relative;
		margin: 0 20px 0;
	}
	.gal_img {
		box-sizing: border-box;
		height: 152px;
		border: 14px solid white;
		margin: 5px 0 0;
		
		
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
	}
	.gal_img:hover {
		cursor: pointer;
		box-shadow: 1px 1px 8px 0px rgba(0,0,0,0.75);
	}		
	.gal_img.whitebox {
		padding: 0;
	}
	@media screen and (max-width: 1300px) {
		.gal_img_outer {
			margin: 0 10px 0;
		}
	}
	@media screen and (max-width: 650px) {
		.slick_container {
			margin: 0 20px 0;
		}
	}


/* ===================================================================================================== */
/* ============================================= /GALLERY SLIDER ======================================= */
/* ===================================================================================================== */




/* ===================================================================================================== */
/* ============================================ FORMS ================================================== */
/* ===================================================================================================== */

	input,textarea,select {
		display: block;
		background: none; border: none;
		background-color: #ffffff;
		box-sizing: border-box;
		border: 1px solid #ccc;
		width: 100%;
		height: 45px;
		outline: none;
		font-size: 1rem;
		font-family: var(--site_font);
		margin: 8px 0 15px;
		padding: 3px 10px 0;
		transition: 0.2s all;
	}
	.standard_form input, .standard_form textarea, .standard_form select {
		border: 1px solid #ccc;
	} 
	.standard_form textarea { font-size: 13px; font-family: var(--site_font), sans-serif; }
	input:focus, textarea:focus, select:focus {
		border: 1px solid var(--text_colour_2);
	} 
	textarea {
		height: 80px;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	input[type="checkbox"] { height: auto; }
	input.mini {
		width: 30%; 
		margin-right: 5%;
		float: left;
	}
	input.mini:last-child { margin-right: 0; }

	input.invalid, textarea.invalid, select.invalid, form.is_submitted input:invalid, form.is_submitted textarea:invalid, form.is_submitted select:invalid {
		border: 1px solid #db0000;
	}
	input[type='number'] {
	  -moz-appearance:textfield;
	}

	fieldset {
		border: none;
	}
	label, legend {
		display: block;
		font-weight: 500;
		width: 100%;
		font-size: 1.1rem;
		margin: 0 0 8px;
		-webkit-padding-start: 0px;
		-webkit-padding-end: 0px;
	}
	label.is_checkbox {
		cursor: pointer;
		font-weight: 300;
	}	
	legend {
		margin: 0 0 6px;
	}
	.infolink {
		opacity: 0.8;
		cursor: pointer;
		font-size: 17px;
	}
	.infolink:hover {
		opacity: 1;
	}
	label input[type="checkbox"] {
		width: auto;
		display: inline-block;
		cursor: pointer;
		margin: 0;
	}
	fieldset label { cursor: pointer; }

	.checkbox_list_container {
		columns: 2;
		margin: 0 0 20px;
	}
	.checkbox_list_container.no_cols { columns: 1; }
	.checkbox_list_container label {
		display: inline-block;
	}




/* ===================================================================================================== */
/* ============================================= /FORMS ================================================ */
/* ===================================================================================================== */





/* ===================================================================================================== */
/* ============================================= ENQUIRE FORM ========================================== */
/* ===================================================================================================== */



	.checkpair {
		width: 100%;
		height: 50px;
		background-color: #ffffff;
		padding-right: 20px;
		box-sizing: border-box;
	}
	.checkpair input[type="text"] {
		
		
	}
	.checkpair input[type="radio"] {
		float: right;
		width: 25px;
		height: 25px;
		cursor: pointer;
		margin: 12px 0 0;
	}
	.checkpair div {
		margin-right: 50px;
	}


	.enquire_box {
		background-color: #ffffff;
		width: 60%;
		box-sizing: border-box;
		position: relative;
		margin: 100px auto 60px;
		padding: 30px;
	}

	.enquire_box .leftside {
		/*background-image: url('../images/contact_bg.jpg');*/
		background-repeat: no-repeat;
		background-size: cover;
		box-sizing: border-box;
		padding: 0 30px 0 0;
	}
	.enquire_box .rightside {
		box-sizing: border-box;
		padding: 0px 0px 0px 30px;
	}
	/*.enquire_box h2 { color: #ffffff; }*/

	.enquire_box table { width: 100%; }
	.enquire_box table td { vertical-align: top; width: 100%; }



	.enquire_box input, .enquire_box textarea, .enquire_box select {
		border: none;
		width: 100%;
		background-color: transparent;
		
		margin-top: 0;
	}
	.enquire_box input[type="text"], .enquire_box textarea {
		background-color: #ededed;
		border-bottom: 1px solid #ededed;
	}	
	.enquire_box input[type="text"]:focus, .enquire_box textarea:focus {
		border-bottom: 1px solid #272727;
	}	
	.enquire_box label {
		
	}
	.enquire_box textarea {
		height: 180px;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	label.smallcheck {
		font-size: 14px;
		text-align: right;
		vertical-align: text-bottom;
		cursor: pointer;
	}
	label.smallcheck input {
		vertical-align: sub;
	}

	table.contact_content {
		width: 100%;
		margin-top: 15px;
	}
	.contact_content td:nth-child(2) {
		text-align: right;
	}
	.contact_content img {
		height: 204px;
	}

	@media screen and (max-width: 1200px) {
		.enquire_box {
			margin-bottom: 20px;
			height: auto;
		}
		.enquire_box td.lasttd { 
			display: none;
		}
		.contact_content td {
			text-align: left;
			display: block;
			width: 100%;
		}		
		.contact_content td:nth-child(2) {
			text-align: left;
			padding-top: 10px;
		}

	}
	@media screen and (max-width: 900px) {
		.enquire_box {
			width: 100%;
		}
		.enquire_box td { 
			display: block;
			width: 100%;
		}
		.enquire_box input, .enquire_box textarea {
			width: 100%;
		}		
	}
	@media screen and (max-width: 750px) {
		.enquire_box .leftside, .enquire_box .rightside { 
			display: block;
			width: 100%;
			padding-left: 0;
			padding-right: 0;
		}
		.enquire_box .leftside {
			margin-bottom: 10px;
		}
	}	
	@media screen and (max-width: 500px) {
		.enquire_box {
			padding: 30px 20px;
		}

	}


/* ===================================================================================================== */
/* ============================================= /ENQUIRE FORM ========================================= */
/* ===================================================================================================== */






/* ===================================================================================================== */
/* ============================================= TESTIMONIAL ============================================ */
/* ===================================================================================================== */

	.testimonials_container {
		text-align: center;
		min-height: 100px;
	}
	blockquote {
		font-size: 1.4rem;
		font-style: italic;
		font-weight: 300;
		color: var(--text_colour_2);
		text-align: center;
		padding: 35px 5em 35px;
		margin: 0 auto 0px;
		max-width: 1000px;
	}
	@media screen and (max-width: 850px) {
		.testimonials_container {
			min-height: 100px;
		}		
		blockquote {
			padding: 0px 1em 0;
		}

	}
	@media screen and (max-width: 550px) {
		.testimonials_container {
			min-height: 110px;
		}		
		blockquote {
			padding: 0px 0 0;
		}
	}
/* ===================================================================================================== */
/* ============================================= /TESTIMONIAL ========================================== */
/* ===================================================================================================== */




	.subscribe_btn {
		background-color: #dde942;
		border-radius: 30px 0 0 30px;
		height: 60px;
		line-height: 60px;
		font-size: 18px;
		font-weight: 500;
		padding: 0 25px 0;
		color: #6d6e71;
		position: fixed;
		bottom: 0px;
		right: -1px;
		z-index: 20;
	}
	@media screen and (max-width: 900px) {
		.subscribe_btn {
			display: none;
		}

	}






/* ===================================================================================================== */
/* ============================================= FOOTER ================================================ */
/* ===================================================================================================== */


	footer {
		font-weight: 400;
		background-color: var(--header_colour_blue);
		padding: 0 20px 20px;
	}
	footer, footer a {
		color: #ffffff;
	}

	.footer_body {
		padding-top: 20px;
	}

	.footer_top {
		margin: 0 0 30px;
	}
	.footer_top img {
		max-width: 95%;
		width: auto;
		height: 100px;
	}
	.footsmall {
		font-size: 0.75rem;
		padding-top: 20px;
	}

	.footnav {
		display: block;
	}
	.footnav li {
		list-style-type: none;
		display: inline-block;
		margin-top: 1px;
		margin: 0 10px 0;
	}
	.footnav a {
		font-weight: 400;
		font-size: 14px;
	}

	@media screen and (max-width: 940px) {
		footer {
			height: auto;
		}
	}
	@media screen and (max-width: 784px) {

		footer {
			height: auto;
		}
		.footer_top img {
			max-width: 95%;
		    width: auto;
		    height: 100px;
		}

	}
	@media screen and (max-width: 550px) {
		.footer_top img {
			max-width: 100%;
		    width: auto;
		    height: 100px;
		}		
		.footnav li {
			text-align: center;
		}		
		.footsmall {
			text-align: center !important;
		}
		.footsmall .floatright {
			float: none;
		}
	}


/* ===================================================================================================== */
/* ============================================= /FOOTER =============================================== */
/* ===================================================================================================== */


</pre></body></html>