

/* ######################## CSS Reset ########################
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	/*vertical-align: baseline;*/
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
em {
	font-style: italic;
 }
/* ######################## ######################## */




/* ########################General styles ######################## */
* { font-family: Arial, Helvetica, sans-serif; }
strong { font-weight: bold; }
/* ########################
Header styles
######################## */

 .socialIcons .fab{ float: right; padding:0 0 0 5px;  font-size: 40px; }
/* ########################
Navigation styles
######################## */

div.slicknav_menu {display:none;}
.nav { border-bottom: 0; margin: 0; background-color: #0CF; }
.nav li a { display: block; text-decoration: none; padding: 0.75em; }
.nav li ul.sub-menu li a, .nav li ul.children li a { padding-left: 30px; }
.nav { border: 0; }
.nav ul { background: #0CF; margin-top: 0; list-style: none; padding-left: 0px; }
.nav li { float: left; position: relative; }
.nav li a { border-bottom: 0; }
.nav li a:hover, .nav li a:focus { color: white; text-decoration: underline; }
.nav li ul.sub-menu, .nav li ul.children { margin-top: 0; border: 1px solid #ccc; border-top: 0; position: absolute; visibility: hidden; z-index: 8999; }
.nav li ul.sub-menu li a, .nav li ul.children li a { padding-left: 10px; border-right: 0; display: block; width: 180px; border-bottom: 1px solid #ccc; }
.nav li ul.sub-menu li:last-child a, .nav li ul.children li:last-child a { border-bottom: 0; }
.nav li ul.sub-menu li ul, .nav li ul.children li ul { top: 0; left: 100%; }
.nav li:hover > ul { top: auto; visibility: visible; }








/* ########################
Navigation styles
######################## */
/*burger menu icon*/
.burgerMenuCont {float: right;}

/*burger menu container*/
#menuBox {visibility: hidden; opacity: 0; position: fixed; z-index: 9999;  background-color: rgba(0, 0, 0, 0.9); right: 0px; height: 100vh; width:400px; transition: visibility 0s, opacity 0.5s linear;  overflow: scroll; }
#burgerIcon {visibility: hidden; opacity: 0;}
#menuBox.active {  visibility: visible;  opacity: 1;}
#burgerIcon.active {  visibility: visible;  opacity: 1;}


#menuBox a.icon {font-size:50px; color: #192F92;}
#menuBox a.icon.close {color: #fff;float: right; padding: 10px 20px;}

#menuBox a.icon:hover {color: black;}

#menuBox a.icon:hover{text-decoration: none;}

/*burger menu nav*/

	.menuBurger {display: block; clear: both;  background: none; }
	.menuBurger   { background: none; }
	.menuBurger li {display: block; width: 100%; }
	.menuBurger li a { color: #fff; display: block; padding: 15px; padding-left: 30px;font-size:1.4em;   font-style: normal; display: flex; justify-content: space-between; }
	.menuBurger a:hover { color: #fff; text-decoration:none; background-color: orange; }


	.menuBurger  li:last-of-type a { padding-right: 0px; }


	.menuBurger li.current-menu-item > a {font-weight: 700;}


	/*Sub menus*/
	.menuBurger li ul.sub-menu, .menuBurger li ul.children, .menuBurger li:hover > ul {position: initial; visibility: initial;}
	.menuBurger li ul.sub-menu {padding-left: 30px;}
 	.menuBurger li ul.sub-menu li a, .menuBurger li ul.children li a {width: initial;}
	.menuBurger li ul.sub-menu, .menuBurger li ul.children, .menuBurger li ul.sub-menu li a, .menuBurger li ul.children li a { border:none;}


	/*Down arrow*/
	.menuBurger li.menu-item-has-children > a:after  { padding-left:20px;color:white; content: ' ▾'; font-size:1.8em; line-height: 0.5em;}


	/*show / hide the sub menus*/
 .menuBurger ul.sub-menu {
 -moz-transition: height .5s;
    -ms-transition: height .5s;
    -o-transition: height .5s;
    -webkit-transition: height .5s;
    transition: height .5s;
    height: 0;
    overflow: hidden;
  	}

	.menuBurger li.menu-item-has-children:hover >ul.sub-menu  {  height:initial;
 }




	@media (hover: none) {
	ul.sub-menu { display: block;}
	}


	@media (max-width: 520px)
	{
 		#menuBox { width: 100%;}
	}

















/* ########################
Content styles
######################## */
main#main img { max-width: 100%; max-height: 100%; }
main#main .wp-block-gallery img { width: 100%; height: 100%; }
img.alignright { float: right; margin: 0 0 1em 1em; }
img.alignleft { float: left; margin: 0 1em 1em 0; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }



/* ########################
Text styles for content area
http://files.www.gethifi.com/blog/a-boilerplate-for-css-typography/demo/type.html
 ######################## */



/* ########################
404 Page styles
######################## */
body.error404 #content { min-height: 650px; }
body.error404 h1.page-title { font-size: 150px; line-height: 150px; text-align: center; margin-bottom: 10px; }
body.error404 .article-header h2 { font-size: 30px; line-height: normal; text-align: center; margin-bottom: 30px; }
body.error404 .entry-content p { font-size: 20px; line-height: normal; text-align: center; }
body.error404 a.button, body.error404 #content a.button { background-color: #000; color: #fff; font-size: 16px; line-height: 16px; text-align: center; display: block; width: 200px; padding: 20px; border: 2px solid #fff; border-radius: 25px; margin: 20px auto; }
body.error404 a.button:hover, body.error404 #content a.button:hover { text-decoration: none; opacity: 0.7; }



/* ########################
Wordpress gallery
  ######################## */
/* WordPress Gallery
------------------------------------------ */

.gallery { margin-left: -0.5em; margin-right: -0.5em; }
.gallery:after { display: table; content: ""; clear: both; }
.gallery-item { margin: 0; float: left; padding: 0.5em; }

#content .blocks-gallery-grid li.blocks-gallery-item { margin-left: unset; padding-bottom: unset; }

/* YouTube/Vimeo Embed */
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.embed-clear { clear: both; width: 100%; float: left; padding-bottom: 40px; }

 /* ########################
Footer styles
######################## */

#footer { margin-top: 0px; }
.inner-footer {  overflow: hidden; }


/* ########################
Button styles
######################## */
a.button, #content a.button, a.wp-block-button__link { background-color: #E87200; color: #fff; font-size: 20px; font-weight: 400; text-align: center; text-decoration: none; display: inline-block; min-width: 170px; padding: 10px 20px; border: 1px solid #E87200; border-radius: 3px !important; }
a.button:hover, #content a.button:hover, a.wp-block-button__link:hover { background-color: transparent; color: #232D3E; border: 1px solid #232D3E; }
.overlay-box a.button:hover, #content .overlay-box a.button:hover, .overlay-box a.wp-block-button__link:hover, .contentBox.blue a.button:hover, #content .contentBox.blue a.button:hover, .contentBox.blue a.wp-block-button__link:hover { background-color: transparent; color: #fff; border: 1px solid #fff; }
.entry-content a.button, #content .entry-content a.button { margin-bottom: 35px; }



/* ########################
Blog/News Posts styles
######################## */
.blog-grid { justify-content: space-between; gap: 40px 20px; }
.blog-grid h3 { font-size: 1.1em; line-height: 1.3em; padding-bottom: 0px; }
.blog-grid p.post-date { padding-bottom: 5px; font-size: 0.8em; }
.blog-grid p.post-excerpt { font-size: 0.8em; }

.blog-grid .blog-post { padding: 0px; }

.blog-grid .d-1of2.blog-grid-item { width: calc(50% - 10px); flex-basis: calc(50% - 10px); }
.blog-grid .d-1of3.blog-grid-item { width: calc(33.3333333333% - 13.33333333333333px); flex-basis: calc(33.3333333333% - 13.33333333333333px); }
.blog-grid .d-1of4.blog-grid-item { width: calc(25% - 15px); flex-basis: calc(25% - 15px); }

.blog-grid.latest { justify-content: flex-start; }
.blog-grid.latest h1 { width: 100%; }
.blog-post { display: flex; text-align: center; padding: 0 1%; }
.blog-post .post-wrap { display: flex; flex-direction: column; }
.blog-post .post-wrap p { flex: 1 0 auto; padding-bottom: 0.8em; }
.blog-post .post-image { margin-bottom: 20px; }
.blog-post a.button, #content .all-blog .blog-post a.button { width: fit-content; margin-left: auto; margin-right: auto; }
.blog-post a.readMore { color: #fff; text-decoration: underline; width: fit-content; display: block; margin: 0 auto 2em auto; }
.blog-post a.readMore:hover { color: #95C11F; }
.blog .view-all { margin-top: 1em; margin-bottom: 1em; }

/*Blog Page*/
.all-blog.blog-grid { padding-left: 5%; padding-right: 5%; }

/*Single Post*/
.single .post-featured-image { margin-bottom: 1.5em; }
.single p.byline.entry-meta { color: #95C11F; }


/* ########################
Pagination styles
######################## */
.pagination, #content .pagination { text-align: center; width: 100%; clear: both; padding: 20px 0px; }
.pagination ul, #content .pagination ul { display: inline-block; background-color: #fff; white-space: nowrap; padding: 0; margin: 0; clear: both; border-radius: 3px; }
.pagination li, #content .pagination li { padding: 0; margin: 0; float: left; display: inline; overflow: hidden; border-right: 1px solid #eaedf2; }
.pagination a, .pagination span, #content .pagination a, #content .pagination span { margin: 0; text-decoration: none; padding: 0; line-height: 14px; font-size: 14px; font-weight: normal; padding: 0.75em; min-width: 1em; display: block; color: #2592E9; }
.pagination a:hover, .pagination a:focus, .pagination span:hover, .pagination span:focus { background-color: #2592E9 !important; color: #fff !important; }
.pagination .current, #content .pagination .current { cursor: default; color: #fff !important; background-color: #2592E9; }
.pagination .current:hover, .pagination .current:focus { background-color: #2592E9; color: #fff !important; }




/*==================== Pagination - copy into style.css to overwrite ====================*/
	.pagination ul, #content .pagination ul { background-color: #fff; }
	.pagination li, #content .pagination li { border-right: 1px solid #eaedf2; }
	.pagination a, .pagination span, #content .pagination a, #content .pagination span { color: #2592E9; }
	.pagination a:hover, .pagination a:focus, .pagination span:hover, .pagination span:focus { background-color: #2592E9 !important; color: #fff !important; }
	.pagination .current, #content .pagination .current { color: #fff !important; background-color: #2592E9; }
	.pagination .current:hover, .pagination .current:focus { background-color: #2592E9; color: #fff !important; }
/**/








.navigation {display: block;width: 100%; margin: 30px 0px; clear: both;}
#content .navigation ul   {   width: 400px; margin:0 auto;



  }
.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
    color: #fff;
    text-decoration:none;
}

.navigation li {
    display: inline;
}

.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
    background-color: #CB2728;
    border-radius: 3px;
    cursor: pointer;
    padding: 12px;
    padding: 0.75rem;
    border: 3px solid #CB2728;
}

.navigation li a:hover,
.navigation li.active a {
    background-color: #000000;
}






/*==================== Gutenberg Blocks ====================*/

	/* ----- Fifty Fifty (50:50) Block ----- */
	.fiftyFiftyBlock { background-color: var(--primary); aspect-ratio: unset !important; }
	.fiftyFiftyBlock * { color: #fff; }
	.fiftyFiftyBlock h2 { color: #fff; }

	.fiftyFiftyBlock .overlay { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 1; }

	.fiftyFiftySection { position: relative; }

	.fiftyFiftyText { padding: 5%; }

	.fiftyFiftyImage { width: 100%; height: 100%; position: relative; padding-top: 66.66%; }
	.fiftyFiftyImage img.background, #main .fiftyFiftyImage img.background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
	.fiftyFiftyImage .fiftyFiftyText { position: absolute; top: 0; left: 0; z-index: 9999; }

	/* Aspect Ratios */
	.fiftyFiftyBlock.Square .fiftyFiftyImage { padding-top: 100%; }
	.fiftyFiftyBlock.Four-to-Three .fiftyFiftyImage { padding-top: 75%; }
	.fiftyFiftyBlock.Three-to-Two .fiftyFiftyImage { padding-top: 66.66%; }
	.fiftyFiftyBlock.Sixteen-to-Nine .fiftyFiftyImage { padding-top: 56.25%; }
	.fiftyFiftyBlock.Fit-Content .fiftyFiftyImage { padding-top: 0; }

	/* Align Content */
	/*Horizontally Centred*/
	.fiftyFiftySection.h_center { text-align: center; }
	/*Vertically Centred*/
	.fiftyFiftySection.v_center { display: flex; align-items: center; }
	.fiftyFiftySection.v_center .fiftyFiftyImage .fiftyFiftyText { top: 50%; left: 0; transform: translate(0, -50%); }
	/*Horizontally & Vertically Centred*/
	.fiftyFiftySection.hv_center { text-align: center; display: flex; justify-content: center; align-items: center; }
	.fiftyFiftySection.hv_center .fiftyFiftyImage .fiftyFiftyText { top: 50%; left: 50%; transform: translate(-50%, -50%); }

	.fiftyFiftyBlock.Fit-Content .fiftyFiftyImage .fiftyFiftyText, .fiftyFiftyBlock.Fit-Content .fiftyFiftySection.v_center .fiftyFiftyImage .fiftyFiftyText, .fiftyFiftyBlock.Fit-Content .fiftyFiftySection.hv_center .fiftyFiftyImage .fiftyFiftyText { position: relative; top: unset; left: unset; transform: unset; z-index: 9999; }

	@media (max-width: 767px)
	{
		/*Mobile*/
		.fiftyFiftyBlock .fiftyFiftySection.rightImageOnly { order: -1; }
 	}

 	.has-white-color * { color: #fff; }


	/* ----- Panel Block ----- */
	.panel { background-color: var(--primary); clear: both; width: 100%; padding: 20px 5%; margin: 0; margin-bottom: 15px; }
	.panel.halfPadding { padding: 10px 5%; }
	.panel.doublePadding { padding: 40px 5%; }
	.panel.triplePadding { padding: 60px 5%; }
	.panel * { color: #fff; }
	/*.panel *:last-child { padding-bottom: 0; margin-bottom: 0; }*/
	.panel .wp-block-columns { margin-bottom: 0; }

	/* Panel - Headings */
	.panel h1, .panel h2, h1.panel, h2.panel { color: #fff; line-height: normal; text-align: center; }
	.panel h1:last-child, .panel h2:last-child { padding-bottom: 0; margin-bottom: 0; }

	/* Panel - Background Colour */
	.panel.transparent { background-color: transparent; }
	.panel.primary { background-color: var(--primary); }
	.panel.secondary { background-color: var(--secondary); }
	.panel.white { background-color: #fff; }
	.panel.whiteTrans { background-color: var(--whiteTrans); }
	.panel.white *, .panel.whiteTrans * { color: var(--black); }
	.panel.black { background-color: var(--black); }
	.panel.blackTrans { background-color: var(--blackTrans); }


	/* ----- Accordion Block ----- */
	.c-accordion__title, .inner-content .c-accordion__title { background-color: #000000; color: #fff; font-size: 1.2em; font-weight: normal; text-align: left; padding: 20px; padding-right: 40px; margin-bottom: 10px; }
	.c-accordion__title:after { color: #fff; font-size: 25px; right: 20px; }
	.wp-block-pb-accordion-item.is-open .c-accordion__title { margin-bottom: 20px; }
	.wp-block-pb-accordion-item:last-of-type { margin-bottom: 1em; }


	/* ----- Content Block ----- */
	.contentBlock { background-position: center; background-repeat: no-repeat; background-size: cover; clear: both; position: relative; height: 100%; }

	.contentBlock * { z-index: 2; }
	.contentBlock .overlay { width: 100%; height: 100%; display: block; position: absolute; top: 0px; z-index: 1; }

	/* Content Block - Width */
	.contentBlock.full-width { margin: unset; width: 100%; }
	.contentBlock.site-width { margin: unset; }
	.contentBlock.inner-width { margin: unset; }
	.contentBlock.post-width { margin: unset; }
	.contentBlock.mobile-width { margin: unset; }

	/* Content Block - Horizontal & Vertical Align */
	.contentBlock .inner-container, .contentBlock .inner-container.normal { flex-flow: column; align-items: normal; }
	.contentBlock .inner-container.leftAlign { flex-flow: column; align-items: flex-start; }
	.contentBlock .inner-container.h_center { flex-flow: column;  align-items: center; }
	.contentBlock .inner-container.rightAlign { flex-flow: column; align-items: flex-end; }
	.contentBlock .inner-container.topAlign { flex-flow: column; justify-content: flex-start; }
	.contentBlock .inner-container.v_center { flex-flow: column; justify-content: center; }
	.contentBlock .inner-container.bottomAlign { flex-flow: column; justify-content: flex-end; }
	.contentBlock .inner-container.h_center.v_center { flex-flow: column; align-items: center; justify-content: center; }
	.contentBlock .inner-container.h_center > p, .contentBlock .inner-container.h_center.v_center > p { text-align: center; }

	/* Content Block - Background Colour */
	.contentBlock.primary { background-color: var(--primary); }
	.contentBlock.secondary { background-color: var(--secondary); }
	.contentBlock.white { background-color: #fff; }
	.contentBlock.black { background-color: #000; }
	.contentBlock.whiteTrans { background-color: var(--whiteTrans); }
	.contentBlock.blackTrans { background-color: var(--blackTrans); }

	/* Content Block - Background Image */
	.contentBlock .backgroundImage { width: 100%; height: 100%; }
	.contentBlock .backgroundImage img.background, #main .contentBlock .backgroundImage img.background { width: 100%; height: 100%; object-fit: cover; }

	/* Content Block - Aspect Ratio */
	.Fit-Content { height: auto; }
	.Square { aspect-ratio: 1/1; }
	.Four-to-Three { aspect-ratio: 4/3; }
	.Three-to-Two { aspect-ratio: 3/2; }
	.Sixteen-to-Nine { aspect-ratio: 16/9; }
	.TwentyOne-to-Nine { aspect-ratio: 21/9; }
	.ThirtyTwo-to-Nine { aspect-ratio: 32/9; }

	/* Content Block - White Text */
	.whiteText * { color: #fff; }



/*==================== Responsive - Media Queries ====================*/

	@media (max-width: 1439px)
	{
		.inner-content { padding-left: 5%; padding-right: 5%; }
		.page-template-page-FullWidth .inner-content { padding-left: 0; padding-right: 0; }
		.page-template-page-FullWidth .inner-width { padding-left: 5%; padding-right: 5%; }
	}
	@media (max-width: 1280px)
	{
		/*Small Desktop*/
		.blog-grid .sd-1of3.blog-grid-item { width: calc(33.3333333333% - 13.33333333333333px); flex-basis: calc(33.3333333333% - 13.33333333333333px); }
		.blog-grid .sd-1of2.blog-grid-item { width: calc(50% - 10px); flex-basis: calc(50% - 10px); }
		.blog-grid .sd-all.blog-grid-item { width: 100%; flex-basis: 100%; }
		.page-template-page-FullWidth .tablet-width { padding-left: 5%; padding-right: 5%; }
	}
	@media (max-width: 1029px)
	{
		/*Tablet*/
		.blog-grid .t-1of3.blog-grid-item { width: calc(33.3333333333% - 13.33333333333333px); flex-basis: calc(33.3333333333% - 13.33333333333333px); }
		.blog-grid .t-1of2.blog-grid-item { width: calc(50% - 10px); flex-basis: calc(50% - 10px); }
		.blog-grid .t-all.blog-grid-item { width: 100%; flex-basis: 100%; }
		.page-template-page-FullWidth .post-width { padding-left: 5%; padding-right: 5%; }
	}
	@media (max-width: 960px)
	{
		.page-template-page-FullWidth .mobile-width { padding-left: 5%; padding-right: 5%; }
	}
	@media (max-width: 767px)
	{
		/*Mobile*/
		.blog-grid .m-1of3.blog-grid-item { width: calc(33.3333333333% - 13.33333333333333px); flex-basis: calc(33.3333333333% - 13.33333333333333px); }
		.blog-grid .m-1of2.blog-grid-item { width: calc(50% - 10px); flex-basis: calc(50% - 10px); }
		.blog-grid .m-all.blog-grid-item { width: 100%; flex-basis: 100%; }

		div.slicknav_menu {display:block;}
		div.nav {display:none;}
		#content .wp-block-gallery.columns-3 .blocks-gallery-grid li.blocks-gallery-item { width: calc(50% - 16px); margin-right: 16px; }
		#content .wp-block-gallery.columns-3 .blocks-gallery-grid li.blocks-gallery-item:nth-of-type(2n) { margin-right: 0px; }
		#content .wp-block-gallery.columns-3 .blocks-gallery-grid li.blocks-gallery-item:last-of-type { margin-right: 0px; }

		/*=== Landing page  - Home page===*/
		 .intro h1 { font-size: 3em; }
	}
	@media (max-width: 480px)
	{
		/*Small Mobile*/
		.blog-grid .sm-1of3.blog-grid-item { width: calc(33.3333333333% - 13.33333333333333px); flex-basis: calc(33.3333333333% - 13.33333333333333px); }
		.blog-grid .sm-1of2.blog-grid-item { width: calc(50% - 10px); flex-basis: calc(50% - 10px); }
		.blog-grid .sm-all.blog-grid-item { width: 100%; flex-basis: 100%; }

		#content .blocks-gallery-grid li.blocks-gallery-item { width: 100%; margin-right: 0px; }
		#content .wp-block-gallery.columns-3 .blocks-gallery-grid li.blocks-gallery-item { width: 100%; margin-right: 0px; }
		#content .wp-block-gallery.columns-3 .blocks-gallery-grid li.blocks-gallery-item:nth-of-type(3n) { margin-right: 0px; }

		/*=== Landing page  - Home page===*/
		.intro { padding: 200px 12%; }
		.intro p.seemore { font-size: 2em; }
	}
