.container {overflow:hidden}
html {scroll-behavior:smooth}


body {
    --wp--style--root--padding-top: 2rem !important;
    --wp--style--root--padding-right: 4vw !important;
    --wp--style--root--padding-bottom: 2rem !important;
    --wp--style--root--padding-left: 4vw !important;
}

.wrapper {
	padding-left: var(--wp--style--root--padding-right); 
	padding-right: var(--wp--style--root--padding-left);
	max-width: var(--wp--style--global--content-size);
	margin-left: auto !important;
	margin-right: auto !important;
}

.wp-block-cover {
	padding-left: var(--wp--style--root--padding-right); 
	padding-right: var(--wp--style--root--padding-left);
}

:where(.wp-block-group.wp-block-group-is-layout-constrained) {
    position: initial !important;
}

:root :where(h1, h2, h3, h4, h5, h6) {
    font-family: var(--wp--preset--font-family--body);
    font-style: normal;
    font-weight: 500;
}

/*Fonts load*/
html {visibility: visible;opacity: 1;}



.has-global-padding > .alignfull {margin-right: calc(var(--wp--style--root--padding-right) * -1);margin-left: calc(var(--wp--style--root--padding-left) * -1)}

/* Animations */
.fade {opacity:0;transition:opacity 1s}
.fadeLeft {opacity:0;transform:translate3d(-100px, 0, 0);transition:opacity 1s, transform 1s;transition-timing-function:cubic-bezier(.175, .885, .32, 1.275)}
.fadeRight {opacity:0;transform:translate3d(100px, 0, 0);transition:opacity 1s, transform 1s;transition-timing-function:cubic-bezier(.175, .885, .32, 1.275)}
.fadeUp {opacity:0;transform:translate3d(0, 100px, 0);transition:opacity 1s, transform 1s}
.animate {opacity:1;transform:translateX(0);transform:translateY(0)}

	
	@media only screen and (max-width:calc(1500px + 8vw)) {		
        .wp-block-group.alignfull, .wrapper {padding-left: var(--wp--style--root--padding-right); padding-right: var(--wp--style--root--padding-left)}
	}
	@media only screen and (min-width:801px) {
	    .mobile-only {display:none !important;}
	}
	@media only screen and (max-width:800px) {	
		body {
		    --wp--style--root--padding-top: 1rem;
		    --wp--style--root--padding-right: 1rem;
		    --wp--style--root--padding-bottom: 1rem;
		    --wp--style--root--padding-left: 1rem;
		}
		.desktop-only {display:none !important;}
	}






/* Fonts */
body {font-stretch:normal; color:black; -webkit-font-smoothing:antialiased;  -moz-osx-font-smoothing:grayscale}
h1 {font-size:3em; line-height:120%}
h2 {font-size:2em; line-height:120%}
h3 {font-size:1.5em; line-height:140%}
h4 {font-size:1.5em; line-height:140%}
h5 {font-size:1em; line-height:140%}
h6 {font-size:0.85em; line-height:120%}
p {line-height:160%}
		
	@media only screen and (max-width:800px) {
		h1 {font-size:2em}
		h2 {font-size:1.5em}
		h3 {font-size:1.25em}
		h4 {font-size:1.25em}
		p.has-x-large-font-size {font-size:1.75em !important}
	}






/* .header Bar */
header{width:100%; height:85px; z-index:1000; position:relative; z-index:5; padding:10px 0; background:white}
.header-grid {width:100%; position:relative; display:grid; grid-template-columns:260px auto; grid-template-rows:1fr; grid-column-gap:1em; grid-row-gap:0px; align-items:center}
	.logo {padding:0;}
	.logo a{font-size:2em;font-weight:700;text-decoration:none;color:#000000}
		.logo img {max-width:100%; display:inline-block; vertical-align:bottom; height:auto}
	
	.desktopMenu li.btn, .menu-panel li.btn {margin:0 0 0 1em; padding:0}
	.menu-panel li.btn {margin:1em; padding:0; border-radius:30px}
	.desktopMenu li.btn a, .menu-panel li.btn a {color:white !important; font-weight:bold; height:auto; line-height:100%; padding:1em 1.5em !important}
	.menu-panel li.btn a:hover {background:blue !important}
		
	.desktopMenu li.introducers {}
	.desktopMenu li.introducers a:before {content:"|"; font-weight:300; margin-right:2vw; color:grey}
			
	@media only screen and (min-width:1025px) {

		.desktopMenu {text-align:right; height:50px}
		.desktopMenu ul {list-style-type:none;margin:0 auto;padding:0; position:static; z-index:1001; text-align:center; display:inline-block}
		.desktopMenu li {display:inline-block;position:relative; margin:0 0.5vw;text-align:center}
		.desktopMenu li a {display:block; color:black; height:50px; line-height:50px; padding:0 0.5vw; text-decoration:none}
		.desktopMenu .current_page_item a {font-weight:bold}
		.desktopMenu li.menu-item-has-children > a:after  {content:"\2304"; display:inline-block; vertical-align:middle; color:grey; line-height:100%; margin:-6px 0 0 5px; font-size:0.8em; transform:scaleY(0.8)}		

		/* 2nd Level */
		.desktopMenu li ul {position:absolute; top:80px; left:0px; padding:1em; width:260px; z-index:1010; background:black; border-radius:10px; opacity:0; visibility:hidden; transition:0.5s all; transition-timing-function:cubic-bezier(.4,0,.2,1)}
        .desktopMenu ul li.menu-item-has-children:hover>ul {top:50px; opacity:1; visibility:visible}
		.desktopMenu li:hover ul a {color:white}
		.desktopMenu li:hover ul a:hover, .desktopMenu li li:hover > a {}
		.desktopMenu li ul li {display:block; width:100%; font-size:100%;float:none;text-align:left;width:auto;position:relative;margin:0; z-index:1010; color:white}
		.desktopMenu li ul li a {width:100%;height:auto!important;display:block;padding:0.5em;line-height:125%!important; text-transform:none; font-weight:normal !important}	
		.desktopMenu .current_page_item ul li a {font-weight:normal !important}		
		.desktopMenu li li:after {display:none}	
		.desktopMenu ul li a:hover + .sub-menu,
		.desktopMenu .sub-menu:hover {display:block;opacity:1}
		.desktopMenu li ul li:last-of-type a{border:0}
		.desktopMenu li ul li a:hover {color:blue}
		
		.desktopMenu li li:after, .desktopMenu li  .current_page_item:after  {display:none}

		.menu-panel, .sidebar-toggle, .mobileNav {display:none}	
	}
	@media only screen and (max-width:1024px) {
		.desktopMenu {display:none}
		
		header{height:75px; padding:10px 0}
		.header-grid {grid-template-columns:225px auto; width:auto; grid-template-rows:1fr; grid-column-gap:10px; text-align:right; margin:0 70px 0 0}
		.logo {text-align:left}
		.logo img {height:auto}
	
		
		/* Animated Burger Menu */ 
		.sidebar-toggle {position:absolute; z-index:100002; top:0px; right:0px; font-weight:400; font-size:100%; width:75px; height:75px; background:transparent; color:#2A326D; cursor:pointer;padding:0; margin:0; border:none; outline:0}
		.sidebar-toggle:hover {background:transparent}
		.sidebar-toggle span, .sidebar-toggle span:before, .sidebar-toggle span:after {cursor:pointer; border-radius:10px; height:3px; width:30px; left:25px; top:37px; background:#2A326D; position:absolute; display:block; content:''}
		.sidebar-toggle span:before {top:-8px; left:0px}
		.sidebar-toggle span:after {top:8px;  left:0px}
		.sidebar-toggle span, .sidebar-toggle span:before, .sidebar-toggle span:after {transition:all 250ms ease-in-out}
		.open-menu .sidebar-toggle span {background-color:transparent}
		.open-menu .sidebar-toggle span:before, .sidebar-toggle.active span:after {top:0}
		.open-menu .sidebar-toggle span:before {transform:rotate(45deg); top:0px; left:0px}
		.open-menu .sidebar-toggle span:after {transform:rotate(-45deg); top:0px;  left:0px}	
		

		.menu-panel {background:white; position:fixed; z-index:100001;overflow-y:auto; top:75px; right:-100%; width:100%; height:calc(100% - 75px); box-sizing:border-box; left:auto; transition:right 0.25s ease-in-out}
		.container.open-menu .menu-panel {left:auto;right:0px}
		
		/* Menu System */
		#menu {padding:0}
		#menu * {box-sizing:border-box}
		#menu {list-style:none;margin:0;padding:0;display:block;clear:both;border-top:1px solid #ecf0f9}
		#menu li {border-bottom:1px solid #ecf0f9; position:relative;overflow:hidden; transition:all .4s ease; font-size:125%}
		#menu li::after {content:"";display:block;clear:both}
		#menu li>a>svg {display:block;position:relative;width:14px;float:right;transition:all .3s ease}
		#menu li.open > a > svg {transform:rotate(45deg)}
		#menu a {padding:1em; font-weight:500; display:flex;flex-direction:row;justify-content:space-between;align-items:center;text-decoration:none; color:#2A326D}
		#menu li.open > ul {display:block}
		#menu li>ul {background:#FBFAFA; display:none; border-top:0;  height:0;margin:0; padding-bottom:1em; overflow:hidden;transition:height 350ms ease-in-out}
		#menu ul.is-visible {display:block}
		#menu ul li {border:0; font-size:90%}
	
		#menu ul a, #menu li.open ul a {padding:0.75em 1em 0.75em 2.5em; font-weight:300}
		#menu a:hover, #menu li.open a, #menu li.open ul a:hover {background:#FBFAFA}
		
		.menu-panel .contact {padding:2.5em 1.25em}
	}


/* 404 Page */
.fourOfour {text-align:center; padding:15vh 0}




/* Form Elements */
/* Form Elements */
.wpcf7 .large-text {font-size:2em}
.wpcf7 .large-text input,.wpcf7 .large-text select{font-family: inherit;width: 300px;;margin: 0;border: 1px solid #fafafa;background: #fafafa;color: black;font-size:inherit;border-radius: 5px;margin-top:10px;outline-color: transparent;text-indent:0;font-weight:300}

input.wpcf7-not-valid {border-color:red}

::-webkit-input-placeholder {color:#777}
:-moz-placeholder {color:#777}
::-moz-placeholder {color:#777}
:-ms-input-placeholder {color:#777}
.wpcf7 p br {display:none}
.wpcf7 input[type=submit] {margin:0 !important; padding: calc(0.667em + 2px) 0; width:auto; min-width:150px; border:0; display:inline-block; background:black; color:white; font-weight:bold; text-indent:0}


	.wpcf7 p .wpcf7-form-control-wrap:after,
	.wpcf7 div .wpcf7-form-control-wrap:after {content:""; position:absolute; font-family:"bootstrap-icons"; right:0.6em; top:0.6em; font-size:1.25em; color:inherit;}
	.wpcf7 p.name .wpcf7-form-control-wrap:after {content:"\F4D3"}
	.wpcf7 p.mail .wpcf7-form-control-wrap:after,
	.wpcf7 div.mail .wpcf7-form-control-wrap:after {content:"\F32F"}
	.wpcf7 p.subject .wpcf7-form-control-wrap:after {content:"\F431"}
	.wpcf7 p.message .wpcf7-form-control-wrap:after {content:"\F252"}
	.wpcf7 p.company .wpcf7-form-control-wrap:after {content:"\F1DD"}
	.wpcf7 p.phone .wpcf7-form-control-wrap:after {content:"\F5C1"}
	.wpcf7 p.connections .wpcf7-form-control-wrap:after {content:"\F2EE"}
	.wpcf7 p.data .wpcf7-form-control-wrap:after {content:"\F54C"}
	.wpcf7 p.device .wpcf7-form-control-wrap:after {content:"\F77C"}
	.wpcf7 p.website .wpcf7-form-control-wrap:after {content:"\F3EE"}
	.wpcf7 p.postcode .wpcf7-form-control-wrap:after {content:"\F3E8"}
	
	/* Contact Form 7 output */
	div.wpcf7-response-output {font-weight:bold; font-size:100%; line-height:125%; border:0 !important; padding:0 !important; margin:0 !important; color:red}
	div.wpcf7-mail-sent-ok {font-size:100%; line-height:125%; color:black; font-weight:bold}
	.wpcf7-not-valid-tip {display:block; padding:0; color:red !important; font-size:90%}

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



/* Table */
.wp-block-table {margin:1em 0; overflow-x:none; font-weight:400; border:1px solid #eaeaea;}
	.wp-block-table thead {border:0;}
		.wp-block-table th {border:0; background:black; color:white; font-weight:600; line-height:125%; font-size:0.85em; padding:1.15em; text-transform:uppercase; text-align:left; vertical-align:top}
		.wp-block-table td {background:white; padding:1em; border:0; line-height:150%; vertical-align:top;}
		.wp-block-table td img {max-width:24px !important; width:24px !important; height:24px !important}
		.wp-block-table tr:nth-of-type(even) td {background:#fafafa}

			@media only screen and (max-width:781px) {
				.wp-block-table th {font-size:1em}		
			}
			@media only screen and (max-width:500px) {
				.wp-block-table {font-size:0.9em;}
				.wp-block-table th {padding:1em}
				.wp-block-table td {padding:0.8em; line-height:125%}
			}





/* Check List */
ul.checks {list-style-type:none; margin:1.5em 0; padding:0}
ul.checks li {list-style-type:none; position:relative; padding:0 0 0 35px; margin:0.75em 0; line-height:150%}
ul.checks li:before {content:"\F26B"; position:absolute; font-family:"bootstrap-icons"; font-size:1.25em; top:0px; left:0px; }





/*Accordion*/
.accordion {width:100%;min-height:150px;margin:1em 0;clear:both}
.accordion .data {padding:1.5em 0;display:none}
.accordion .wp-block-fseblocks-accordion-item {box-shadow:none !important; margin:0}
.accordion-item {cursor:pointer;position:relative; background:white;color:black;line-height:125%;display:block;text-decoration:none;padding:0.75em 2em 0.75em 0; margin:1px 0 0;font-weight:500;font-size:125%; border-top:1px solid #eee}
.accordion-item:after {content:"+";font-weight:400;font-size:100%; position:absolute; right:0px; top:0.75em; }
.accordion-item.open {font-weight:700}
.accordion-item.open:after {content:"-";}
.wp-block-fseblocks-accordion-item .accordion-item, .accordion .data {}
.wp-block-group.has-background .wp-block-fseblocks-accordion-item .accordion-item, .accordion .data {}
.accordion .data {padding-top:4px}

	@media only screen and (max-width:800px) {
		.accordion-item {font-size:100%}
		
	}





/*Tabs*/
.wp-block-fseblocks-tabs .tabs {margin:20px;padding:0;list-style:none;position:relative}
.wp-block-fseblocks-tabs .tabs li {display:inline-block;cursor:pointer;color:black;padding:10px; margin-right:10px; background:#fafafa}
.wp-block-fseblocks-tabs .tabs li.active-tab {border-bottom:none;position:relative}
.wp-block-fseblocks-tabs .tabs li img {width:120px;height:auto;margin-right:10px;vertical-align:middle}
.wp-block-fseblocks-tabs .tabs-content {margin:20px;padding:0;list-style:none}
.wp-block-fseblocks-tabs .tabs-content:first-child > li {display:none}
.wp-block-fseblocks-tabs.vertical {display:grid;grid-template-columns:33% 66%}
.wp-block-fseblocks-tabs.vertical ul.tabs {display:flex;flex-direction:column}
.wp-block-fseblocks-tabs.vertical .tabs li img {width:180px}




/* Phone & Mail Links */
a[href^="tel:"]:before,
a[href^="mailto:"]:before{content:"\F5B6";display:inline-block;vertical-align:middle;margin-right:0.5em;font-family:"bootstrap-icons";font-size:1.5em;}
a[href^="mailto:"]:before{content:"\F84C";}




/* Swipers */
.wp-block-fseblocks-banner-slider,
.wp-block-fseblocks-content-slider {position:relative}

/* Swiper Pagination */
.swiper-pagination{bottom:3vh !important}
.swiper-pagination-bullet{background:white !important;opacity:0.25 !important; margin:0 0.25em !important}
.swiper-pagination-bullet.swiper-pagination-bullet-active{opacity:1 !important;background:white !important}

/* Swiper Arrows (bootstrap) */
	.wp-block-fseblocks-content-slider .fseblocks-swiper-nav{height:1px !important;margin:0px !important;}
	.swiper-button-next,.swiper-button-prev{top:calc(50% - 15px) !important;width:50px !important;height:50px !important;margin-top:0px;z-index:10;}
	.swiper-button-prev{left:1vw !important;}
	.swiper-button-next{right:1vw !important;}
	.swiper-button-next:after,.swiper-button-prev:after{width:50px;height:50px;background-size:50px;font-family:"bootstrap-icons" !important; content:"\F133" !important; color:white;}
	.swiper-button-prev:after{transform:rotate(180deg)}




/*NEW AS PER JARRYD*/

@media only screen and (min-width:2000px) {
  		body {font-size:125%}
  		h1 {font-size:7vw}
  		p.has-medium-font-size {font-size:100%!important}
  	}
  	@media only screen and (min-width:2500px) {
  		body {font-size:150%}
  		h1 {font-size:6vw}
  	}
  	@media only screen and (min-width:3000px) {
  		body {font-size:200%}
  		h1 {font-size:5vw}
  		.desktopMenu li a, p.has-medium-font-size {font-size:115%!important}
  	}
  	@media only screen and (max-width:1100px) {
  		h1 {font-size:3em}
  		h2 {font-size:2.5em !important}
  	}
  	@media only screen and (max-width:800px) {
  		h1 {font-size:2.5em}
  		h2 {font-size:1.75em}
  		h3 {font-size:1.25em}
  		h4 {font-size:1.12em}
  		p.has-x-large-font-size {font-size:1.75em !important}
  	}