/* Hydromancer CSS */:root {  --colour1: rgb( 26, 167, 75);  --colour2: rgb( 26, 167, 75);}/* - */body{	font-family: "Montserrat", Helvetica, Arial, "sans-serif";	font-weight: 400;}p, li{	font-size: 16px;	line-height: 32px;	letter-spacing: .5px;	color: #111;}h1, h2, h3, h4{	font-family: "montecatini-pro-stretto", serif;	font-weight: 400;	color: var( --colour2 );	text-transform: uppercase;}b, strong{    color: var( --colour1 );}a{	color: var( --colour2 );	text-decoration: none;}.secondColour{	color: var( --colour2 );}/* - */#page-content{	display: grid;	grid-gap: 32px;	margin-bottom: 256px;}/* - */.sect-a{	display: grid;	grid-template-columns: auto;}@media( min-width: 768px ){	.sect-a 	{		grid-template-columns: auto 384px 384px auto;	}}@media( min-width: 992px ){	.sect-a 	{		grid-template-columns: auto 496px 496px auto;	}}@media( min-width: 1200px ){	.sect-a 	{		grid-template-columns: auto 600px 600px auto;	}}.workspace{	grid-gap: 32px;}/* - */.heading-1{	grid-gap: 4px;}.heading-1 h1{	font-size: 35px;	color: #666;}.heading-1 h3{	font-size: 23px;	font-style: italic;}/* - */.heading-2{	grid-gap: 4px;	align-self: center;	justify-self: center;}.heading-2 h1{	font-size: 40px;	color: #DDD;	justify-self: center;}.heading-2 h3{	font-size: 26px;	font-style: italic;	color: #B8B8B8;	justify-self: center;}.heading-2 .btn{	justify-self: center;	margin-top: 32px;}/* - */hr{	justify-self: center;	width: 50vw;	border: none;	border-top: 1px solid;	color: #cecece;}/* - */.btn{	border: solid 2px;	color: var( --colour2 );	padding: 12px 16px;	text-decoration: none;	font-size: 16px;	border-radius: 32px;	transition: background ease .2s, transform ease .2s;	justify-self: start;}.btn:hover{	cursor: pointer;	background-color: var( --colour2 )1a;	transform: scale(0.9);	}/* - */.feature-a{	display: grid;	grid-gap: 32px;	justify-content: start;		overflow-x: hidden;	width: 100%;}.feature-a-img{	grid-row: 1;	grid-column: 1;	width: 50vw;}.feature-a-content{	grid-row: 1;	width: 568px;	margin: 32px 0;}/* - */.feature-b{	display: grid;	grid-gap: 32px;	justify-content: end;		overflow-x: hidden;	width: 100%;	}.feature-b-img{	grid-row: 1;	grid-column: 2;	width: calc(50vw - 16px );}.feature-b-content{	grid-row: 1;	width: 568px;	margin: 32px 0;}/* - *//* - */.list{ display: grid; align-content: center;}.list p{ align-content: center; display: grid; grid-template-columns: max-content auto;}.list p:before{ font-family: "Font Awesome 5 Pro"; font-weight: 300; color: var( --colour2 ); align-self: start; content: "\f6e3"; margin-right: 8px; font-size: 16px; border-right: solid 2px; padding-right: 8px;}/* - */.paralax-banner{	height: 384px;	overflow: hidden;	background-image: url( ../img/para.jpg );	background-attachment: fixed;	background-position: center;	background-repeat: no-repeat;	background-size: cover;	margin: 64px 0;}/* Testimonials */ .testimonial-container{	display: grid;	width: 100%;	background-image: url('../img/testimonial-bg.jpg');	background-position: center center;	background-color: #111;	background-repeat: no-repeat;	background-size: cover;		min-height: 512px;}@media(min-width: 992px) {    .testimonial-container {        background-attachment: fixed;    }}.testimonial{	display: grid;	align-self: center;	justify-self: center;		grid-row: 1;	grid-column: 1;		grid-gap: 16px;		width: 512px;	max-width: 80vw;		opacity: 1;		transition: opacity ease .5s;		z-index: 3;}.opacity-0{	opacity: 0!important;}.testimonial h3{	color: #fff;	justify-self: center;	font-size: 32px;}.testimonial p{	color: #fff;	justify-self: center;	text-align: center;}.star-container{	display: grid;	align-content: center;	justify-content: center;}.star{	color: var( --colour2 );	grid-row: 1;}.testimonial-controls{	display: grid;	z-index: 1;	grid-row: 2;	grid-column: 1;	align-content: center;	padding: 0 32px;}@media( min-width: 992px ){	.testimonial-controls	{		grid-row: 1;		grid-column: 1;	}}.testimonial-arrow{	color: #fff;	font-size: 32px;	grid-row: 1;	grid-column: 1;		transition: opacity .5s ease;}.testimonial-arrow:hover{	cursor: pointer;	opacity: 0.5;}.testimonial-left{	justify-self: start;}.testimonial-right{	justify-self: end;}.testimonial-dots{	display: grid;	grid-gap: 8px;	justify-content: center;	justify-self: center;	align-self: center;	z-index: 3;		grid-row: 2;	grid-column: 1;}.testimonial-dot{	grid-row: 1;	width: 8px;	height: 8px;	border-radius: 16px;	border: #fff solid 1px;	align-self: center;}.testimonial-dot:hover{	cursor: pointer;	border-color: var( --colour2 );}.active-testimonial-dot{	background-color: var( --colour2 );	border-color: var( --colour2 );	/*border: none;*/}/* - */.elem-table{	/* justify-self: start; */	align-self: start;}thead{	background-color: #555;	}thead h1{	padding: 4px 16px;	color: #fff;						}tbody tr{	background-color: #ececec;				border: solid 2px #555;	border-top: none;}tbody tr:nth-child(odd){	background-color: #fff;}td{	position: relative;	z-index: 1;							padding: 8px 16px;	transition: all 0.2s ease;}td::after{  content: "";  /* background: var( --colour2 ); */  position: absolute;  top: 0;  left: 0;  z-index: -1;  width: 0;  height: 100%;  transition: all 0.2s ease;  grid-row: 1;  grid-column: 1;}td:hover::after{  width: 100%;}td:hover {	color: #fff;	cursor: pointer;}/* Catch-all Centering Class */.cent{justify-self:center;text-align:center;}.heading{    font-weight: 300;    width: 100%;    border-bottom: 1px solid var( --colour2 );    padding-bottom: 16px;}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */.paralax-banner{	height: 512px;}.paralax-banner .element{	align-self: start;	margin-top: 128px;}.hide-on-contact #footer .workspace .contact-details{    display: none;}.hide-on-contact #footer .workspace .dashed-line{    display: none;}.contact-item {	grid-template-columns: max-content auto;	align-content: center;}.contact-item .element{	background-color: rgb( 26, 167, 75);	padding: 2px;	border-radius: 64px;	align-self: start;}.contact-item i{	align-self: center;	color: #fff;	background-color: var( --colour2 );	padding: 16px;	border-radius: 64px;	justify-self: center;	font-size: 24px;	border: solid 4px #fff;}.contact-item a{	align-self: center;}.contact-item p{	align-self: center;}.contact-item p, .contact-item a {   overflow-wrap: anywhere;}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - *//*  WAVES */#bot-wave-conainer{	overflow: hidden;	width: 100%;	height: 256px;	margin-top: -256px;	z-index: 2;	display: grid;}#bot-wave-conainer .st0{	fill: #222;}#bot-wave-conainer .st1{	fill: rgba(34,34,34,0.65);}.paralax-banner{	height: 512px;}.paralax-banner .element{	align-self: start;	margin-top: 128px;}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - *//*  CONTACT PAGE SPACING */.space{    height: 200px;}            .gatehouse {  	margin-block-start: 0px;  	margin-block-end: 0px;}.roof .workspace .element {    align-self: center;    justify-self: center;}.roof .workspace .element .element h1,.roof .workspace .element .element h3,.roof .workspace .element .element p {    justify-self: center;    text-align: center;}@media(max-width: 768px) {    .roof .workspace .element {        align-self: left;        justify-self: left;    }    .roof .workspace .element .element h1,    .roof .workspace .element .element h3,    .roof .workspace .element .element p {        justify-self: left;        text-align: left;    }} .mobishow {    display: none !important;}.mobihide {    display: grid !important;}@media (max-width: 768px) {     .mobishow {      display: grid!important      }     .mobihide {      display: none!important;      }}.card{	padding: 32px;	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;	transition : all ease .25s;	cursor: pointer;}.card:hover{	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;}/* - - - - - - - - - - - - - - - - - - - - - - - - */@media( min-width: 992px ){	.page-img	{		grid-row: 1;		grid-column: 2;	}	.img-left	{		grid-column: 1;	}	.page-content	{		grid-row: 1;	}}		.fancy { background-color: transparent; border: 2px solid #000; border-radius: 0; box-sizing: border-box; color: #fff; cursor: pointer; display: inline-block; float: right; font-weight: 700; letter-spacing: 0.05em; margin: 0; outline: none; overflow: visible; padding: 1.25em 2em; position: relative; text-align: center; text-decoration: none; text-transform: none; transition: all 0.3s ease-in-out; user-select: none; font-size: 13px; margin-top:16px;}.fancy::before { content: " "; width: 1.5625rem; height: 2px; background: black; top: 50%; left: 1.5em; position: absolute; transform: translateY(-50%); transform-origin: center; transition: background 0.3s linear, width 0.3s linear;}.fancy .text { font-size: 1.125em; line-height: 1.33333em; padding-left: 2em; display: block; text-align: left; transition: all 0.3s ease-in-out; text-transform: uppercase; text-decoration: none; color: black;}.fancy .top-key { height: 2px; width: 1.5625rem; top: -2px; left: 0.625rem; position: absolute; background: #e8e8e8; transition: width 0.5s ease-out, left 0.3s ease-out;}.fancy .bottom-key-1 { height: 2px; width: 1.5625rem; right: 1.875rem; bottom: -2px; position: absolute; background: #e8e8e8; transition: width 0.5s ease-out, right 0.3s ease-out;}.fancy .bottom-key-2 { height: 2px; width: 0.625rem; right: 0.625rem; bottom: -2px; position: absolute; background: #e8e8e8; transition: width 0.5s ease-out, right 0.3s ease-out;}.fancy:hover { color: white; background: black;}.fancy:hover::before { width: 0.9375rem; background: white;}.fancy:hover .text { color: white; padding-left: 1.5em;}.fancy:hover .top-key { left: -2px; width: 0px;}.fancy:hover .bottom-key-1, .fancy:hover .bottom-key-2 { right: 0; width: 0;}.content-socials{	grid-row: 16px;}.content-socials a{	padding: 16px;	background-color: #222;	border: solid 2px #222;	border-radius: 32px;	height: 14px;	width: 14px;	display: grid;	align-content: center;	justify-content: center;	grid-row: 1;	transition: all ease .3s;}.content-socials a:hover{	background-color: #efefef;}.content-socials a:hover :is( i, svg ){	color: #222;}.content-socials i, .content-socials svg{	transition: all ease .3s;	font-size: 24px;	color: #efefef;}