/* CSS Document */:root {  --colour1: #BFD9D7;  --colour2:  #AE9152;  --colour3:  #646D77;}body{			font-family: 'Montserrat', sans-serif;	background-color: #f7f7f7;}#page-content{	display: grid;	width: 100%;	grid-gap: 32px;	padding: 32px 0 64px;}#page-content img{	border-radius: 6px;}.workspace{	grid-gap: 32px;}h1, h2, h3, h4{	font-family: 'Montserrat', sans-serif;	font-weight: 300;}p, li{	font-weight: 300;	font-size: 17px;	line-height: 23px;	letter-spacing: .5px;	color: #444;}.alt{	padding: 24px 0;  background-color: var(--colour3);}.alt h1{	color: var( --colour1)!important;}.alt p{	color: #fff;}b, strong{    color: var( --colour2);}a{	text-decoration: none;	color: var( --colour2);}.shadow-top{    background-image: url( "../img/shadow.png" );    background-position: top center;    background-repeat: no-repeat;}.heading{	font-weight: 300;	width: 100%;	border-bottom: 1px solid var( --colour1 );	padding-bottom: 16px;}.heading-block{	display: grid;	justify-content: start;	justify-self: start;		border-bottom: solid 1px #969696;	padding-bottom: 16px;}#page-content h1{	color: var( --colour2 );	font-size: 25px;}#page-content h2{	color: var( --colour3 );	font-size: 20px;}.heading-block h1{	color: var( --colour2 );}.heading-block h3{	color: #757575;}.secondColour{	color: var( --colour2 );}/* - */hr{	width: 80%;	height: 1px;	background-color: var( --colour1 );	border: none;}@media( min-width: 768px ){	hr	{		width: 750px;	}}@media( min-width: 992px ){	hr	{		width: 950px;	}}@media( min-width: 1200px ){	hr	{		width: 1200px;	}}/* - */.btn{	display: grid;		justify-self: start;	letter-spacing: 1px;	margin: 8px;	background-color: var( --colour1 );	border-radius: 32px;	transition: ease .5s;	}.btn h4{	grid-row: 1;	grid-column: 1;	z-index: 2;		border: none;	color: #222;	padding: 16px 32px;	text-align: center;	font-size: 16px;	border-radius: 32px;		box-shadow: 0 1px 1px rgba(0,0,0,0.05), 0 2px 2px rgba(0,0,0,0.05), 0 4px 4px rgba(0,0,0,0.05), 0 8px 8px rgba(0,0,0,0.05), 0 16px 16px rgba(0,0,0,0.05);		transition: ease .25s;}.btn::before{		content: "";		grid-row: 1;	grid-column: 1;	z-index: 1;		width: 0;	height: 0;		border-radius: 32px;		transition: ease .25s;		color: #fff;		overflow: hidden;		justify-self: center;	align-self: center;}.btn:hover {	cursor: pointer;	background-color: var( --colour2 );}.btn:hover h4{	color: #fff;}.btn:hover::before{	height: 100%;	width: 100%;}/* - */.banner {	display: grid;}#banner-image{	display: grid;	grid-row: 1;	grid-column: 1;    z-index: 1;	    width: 100%;    height: 128px;    background-size: cover;	background-image: url('../img/banner-bg.jpg');	background-attachment: fixed;	background-position: center center;	background-repeat: no-repeat;}#banner-overlay{	display: grid;	grid-row: 1;	grid-column: 1;    z-index: 2;	    width: 100%;    height: 128px;    background-size: cover;    opacity: 0.65;		background-color: var( --colour1 );}#banner-container{	display: grid;	grid-row: 1;	grid-column: 1;	z-index: 3;		width: 100%;	height: 128px;	align-content: center;	justify-content: center;}@media ( min-width: 768px ){	#banner-image	{		height: 256px;	}	#banner-overlay	{		height: 256px;	}	#banner-container	{		height: 256px;	}}#banner-container h1{	color: #fff;	/* text-shadow: 0px 0px 4px #333; */}/* - *//* - */.contact-items{	grid-gap: 20px;}.contact-icon{	grid-row: 1;	color: rgb( 238, 184, 32);	align-self: center;	justify-self: start;	font-size: 20px;}.contact-items h3{	color: var( --colour2 );	grid-row: 1;	margin: 0;		align-self: center;	justify-self: start;}.contact-items p{	grid-row: 1;	margin: 0;		align-self: center;	justify-self: start;}.contact-items .element{	align-content: start;	justify-content: start;	grid-gap: 16px;}:root {  --line-width: 80%;  --line-colour: var( --colour1 );}.line{	width: 100%;	display: grid;	grid-gap: 32px;	grid-template-columns: auto max-content auto;}.line i, .line svg{	font-size: 24px;	color: var(--line-colour);}.line::before{		content: "";	height: 1px;	align-self: center;	justify-self: end;	width: var(--line-width);	background-color: var(--line-colour);}.line::after{		content: "";	height: 1px;	align-self: center;	justify-self: start;	width: var(--line-width);	background-color: var(--line-colour);}/* 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: 400px;}@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: rgb( 238, 184, 32);	}.active-testimonial-dot{	background-color: var( --colour2 );	border-color: var( --colour2 );	/*border: none;*/}/* - Table - */.w100 {	width: 100%;}.elem-table{	border: 1px solid #fff;	background-color: #fff;	width: 100%;	text-align: left;	border-collapse: collapse;}thead{	background-color: var( --colour1 );	border-bottom: 2px solid #fff;}th{	font-size: 14px;	font-weight: bold;	color: #FFFFFF;	border-left: 2px solid #fff;	text-transform: uppercase;	letter-spacing: 2px;	border: solid 1px;		height: 20px;}th h1{	font-size: 14px;}tr:nth-child(2n) {    background: rgba(222,222,222,0.30);}/*** TABLE STYLING ***/table {  border: 1px solid #fff;  background-color: #fff;  width: 100%;  text-align: left;  border-collapse: collapse;}table td, table th {  border: 1px solid #fff;  padding: 10px 10px;}table tbody td {  font-size: 13px;}table thead th:first-child {  border-left: none;}table tfoot td {  font-size: 14px;}table tfoot .links {  text-align: right;}/* Catch-all Centering Class */.cent{justify-self:center;text-align:center;}.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;}