html
{ height: 100%;}

spacer {
  display:block;
  height: 7px;}
  
xlspacer {
  display:block;
  height: 100px;}
  
xxlspacer {
  display:block;
  height: 250px;}

*
{ margin: 0;
  padding: 0;}

body
{ font: normal .80em 'trebuchet ms', arial, sans-serif;
  background: #FFF;
  color: #777;}
  
.bg {
	background-image:url(../images/headerbg.png);
	background-position: center;
	background-repeat: repeat;
	background-attachment: fixed;
}

p
{ padding: 0 0 20px 0;
  line-height: 1.7em;}

img
{ border: 0;}

h1, h3, h4, h5, h6 {
	text-align:center;
	font: normal 175% 'century gothic', arial, sans-serif;
 	color: #43423F;
	margin: 0 0 15px 0;
	padding: 15px 0 5px 0;
	}

lg404
{ 	text-align:center;
	font: normal 'century gothic', arial, sans-serif;
	font-size: 150px;
 	color: #43423F;
	margin: 0 0 15px 0;
	padding: 15px 0 5px 0; }

h2
{ font: normal 175% 'century gothic', arial, sans-serif;
  color: #FFF;}

h4, h5, h6
{ margin: 0;
  padding: 0 0 5px 0;
  font: normal 120% arial, sans-serif;
  color: #bd4bf2;}

h5, h6
{ font: italic 95% arial, sans-serif;
  padding: 0 0 15px 0;
  color: #000;}

h6
{ color: #362C20;}

h7
{	text-align: left;
	font: normal 175% 'century gothic', arial, sans-serif;
 	color: #43423F;
	margin: 0 0 15px 0;
	padding: 15px 0 5px 0;}

strong
{ color:#444}

a
{ outline: none;
  text-decoration: none;
  color: #bd4bf2;}

a:hover
{ text-decoration: none;
  color: #444;}

.btn:hover {
	color: #FFF;
	background: #bd4bf2;
	border-radius: 0;
	border-color: transparent;
}

.btn {
  background: transparent;
  border: 4px solid #444;
  border-radius: 0;
  color: #444;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 2px;
  padding: 12px 42px;
  margin-left: 23%;
  transition: all 0.4s ease-in-out;
}
	
.left
{ float: left;
  width: auto;
  margin-right: 10px;}

.right
{ float: right; 
  width: auto;
  margin-left: 10px;}

.center
{ display: block;
  text-align: center;
  margin: 20px auto;}

.icon {
	font-size: 45px !important;
    color: #FFF;}
	
.arwback{
	font-size: 25px !important;
    color: #bd4bf2;
	margin-right: 10px}
	
.back{
	font: normal 175% 'century gothic', arial, sans-serif !important;
	color: #bd4bf2;
	text-decoration:none;}

blockquote
{ margin: 20px 0; 
  padding: 10px 20px 0 20px;
  border: 1px solid #E5E5DB;
  background: #FFF;}

ul {
}

ul li
{ margin: 0 0 6px 0; 
  padding: 0 0 4px 5px;}

ol
{ margin: 8px 0 22px 20px;}

ol li
{ margin: 0 0 11px 0;}

#main, #logo, #menubar, #site_content, #footer
{ margin-left: auto; 
  margin-right: auto;}

#header
{ background: transparent;
  height: 240px;
}

#logo_text h1, #logo_text h1 a, #logo_text h1 a:hover 
{ padding: 22px 0 0 0;
  color: #FFF;
  letter-spacing: 0.1em;
  text-decoration: none;}

#logo_text h1 a .logo_colour
{ color: #1293EE;}

#logo_text h2
{ font-size: 100%;
  padding: 4px 0 0 0;
  color: #DDD;}

#menubar {
  padding: 0;} 

ul#menu
{ float: left;
  margin: 0px; 
  padding: 0;
  text-align: center;
  width: 100%;
	}
  
ul#menu li {
  margin: 0px; 
  padding: 0;
  display: inline-block;
  }

ul#menu li
{ list-style: none;}

ul#menu li a
{ letter-spacing: 0.1em;
  top:0px;
  font: normal 100% arial, sans-serif;
  display: block; 
  float: left;
  padding: 25px 17px 25px 17px;
  margin-top: 175px;
  text-align: center;
  color: #FFF;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;} 

ul#menu li a:hover, ul#menu li.selected a, ul#menu li.selected a:hover
{ color: #bd4bf2;
  background: rgba(255, 255, 255, 0.7);
  -webkit-transition: background .3s;
  transition: background .3s;}

#container {
}

#intro {
	margin-bottom:50px;
}

#intro p {
	text-align: center;
}

#site_content
{ width: 856px;
  margin: 0 auto 0 auto;
  padding: 55px 24px 40px 24px;
  background: rgba(255, 255, 255, 0.7);}
  
#portraitimg {
  margin-left:22px;  
}

.sidebar
{ float: right;
  width: 190px;
  padding: 0 15px 20px 15px;
  display: block; }

.sidebar ul
{ width: 178px; 
  padding: 4px 0 0 0; 
  margin: 4px 0 30px 0;}

.sidebar li
{ list-style: none; 
  padding: 0 0 7px 0; }

.sidebar li a, .sidebar li a:hover
{ padding: 0 0 0 40px;
  display: block;
  background: transparent;} 

.sidebar li a.selected
{ color: #444;
  text-decoration: none;} 

#content
{ text-align: left;
  width: 595px;
  padding: 0 0 0 40px;}

#content ul
{ margin: 2px 0 22px 0px;}

#content ul li
{ list-style-type: none;
  margin: 0 0 6px 0; 
  padding: 0 0 4px 25px;
  line-height: 1.5em;}

#footer
{ width: 904px;
  font: normal 100% 'lucida sans unicode', arial, sans-serif;
  height: auto;
  padding: 38px 0 5px 0;
  text-align: center; 
  background: #666;
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: 0.1em;}

#footer a
{ color: #FFF;
  text-decoration: none;}

#footer a:hover
{ color: #FFF;
  text-decoration: underline;}

.search
{ color: #5D5D5D; 
  border: 1px solid #BBB; 
  width: 134px; 
  padding: 4px; 
  font: 100% arial, sans-serif;}

#colours
{ height: 0px;
  text-align: right;
  padding: 66px 16px 0px 300px;}
  
.form_settings
{ margin: 15px 0 0 0;}

.form_settings p
{ padding: 0 0 4px 0;}

.form_settings span
{ float: left; 
  width: 200px; 
  text-align: left;}
  
.form_settings input, .form_settings textarea
{ padding: 5px; 
  width: 299px; 
  font: 100% arial; 
  border: 1px solid #E5E5DB; 
  background: #FFF; 
  color: #47433F;}
  
.form_settings .submit
{ font: 100% arial; 
  border: 1px solid; 
  width: 99px; 
  margin: 0 0 0 212px; 
  height: 33px;
  padding: 2px 0 3px 0;
  cursor: pointer; 
  background: #1293EE; 
  color: #FFF;}

.form_settings textarea, .form_settings select
{ font: 100% arial; 
  width: 299px;}

.form_settings select
{ width: 310px;}

.form_settings .checkbox
{ margin: 4px 0; 
  padding: 0; 
  width: 14px;
  border: 0;
  background: none;}

.separator
{ width: 100%;
  height: 0;
  border-top: 1px solid #D9D5CF;
  border-bottom: 1px solid #FFF;
  margin: 0 0 20px 0;}
  
table
{ margin: 10px 0 30px 0;}

table tr th, table tr td
{ background: #3B3B3B;
  color: #FFF;
  padding: 7px 4px;
  text-align: left;}
  
table tr td
{ background: #F0EFE2;
  color: #47433F;
  border-top: 1px solid #FFF;}
  
#social {
	text-align: center;
}

#social i:hover{
	box-shadow: 0px 0px 20px #000;
	-webkit-transition: box-shadow .1s ease-out;
    transition: box-shadow .1s ease-out;
	line-height: 65px;
	width: 64px;
	height: 64px;
	margin: 0 8px 1px 8px;
}

#social i{
	color: #FFF;
	font-size: 25px !important;
	margin: 10px;
	width: 60px;
	height: 60px;
	vertical-align: middle;
	line-height: 60px;
	border-radius: 5px;
	box-shadow: 0px 0px 0px #000;
	-webkit-transition: box-shadow .1s ease-out;
    transition: box-shadow .2s ease-out;
}

#socialhome {
	text-align: center;
}

#socialhome i:hover{
	box-shadow: 0px 0px 20px #000;
	-webkit-transition: box-shadow .1s ease-out;
    transition: box-shadow .1s ease-out;
	line-height: 65px;
	width: 64px;
	height: 64px;
	margin: 0 8px 1px 8px;
}

#socialhome i{
	color: #FFF;
	font-size: 25px !important;
	margin: 10px;
	width: 60px;
	height: 60px;
	vertical-align: middle;
	line-height: 60px;
	border-radius: 5px;
	box-shadow: 0px 0px 0px #000;
	-webkit-transition: box-shadow .1s ease-out;
    transition: box-shadow .2s ease-out;
}
  
/*mobile header */

#mobileheader {
  position: absolute;
  text-align: center;
  transform: translate(-50%, 0);
  margin: 0 0 0 50vw;
  bottom: 0px;
  display:none;
}

#logo {

}

#logo h1 {
  transform: translate(-50%,0);
  margin-left: 50%;
  position: absolute;
  font: normal 300% 'century gothic', arial, sans-serif;
  font-weight: bold;
  color: #FFF;
  text-shadow: 0px 0px 20px #000;
  }
  
#logo {
	position: absolute;
	transform: translate(-50%,0);
	margin-left: 50%;
	margin-top: 20px;
	padding: 0;
}

  
/*Collapsable menu */
#collapsemenu {
	display: none;
} 
	
#myDIV {
    width: 100%;
    padding: 50px 0;
    text-align: center;
    background-color: transparent;
	display: none;
}
.myDIV li {
	list-style-type: none;
	margin: 0;
	border-bottom: 2px solid rgba(102, 102, 102, 0.2);
}

.myDIV li:hover {
	list-style-type: none;
	margin: 0;
	background: #666;
}

#myDIV li a {
	font-size: 20px;
    text-decoration:none;
	color:#666;
	display: block;
	padding: 27px 0 27px 0;
}

#myDIV li a:hover {
    text-decoration:none;
	color:#fff;
	display: block;
	padding: 27px 0 27px 0;
}

.button { 
	background-color: transparent;
    border: none;
    color: #666;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 20px;
    margin: 0px 0px;
    cursor: pointer;
	float: right;
}

/*Review App */
#map-plug {display:none;}

#google-reviews {
display:flex;
flex-wrap:wrap;
//display: grid;
//grid-template-columns: repeat( auto-fit, minmax(320px, 1fr));
}

.review-item {
margin:0 auto;
padding:1em;
flex: 1 1 25%;
}

@media ( max-width:1200px) {
  .review-item { flex: 1 1 40%; }
}

@media ( max-width:450px) {
  .review-item { flex: 1 1 90%; }
}

.review-meta, .review-stars {text-align:center; font-size:115%;}
.review-author { text-transform: capitalize; font-weight:bold; }
.review-date {opacity:.6; display:block;}
.review-text {  line-height:1.55; text-align:left; max-width:32em; margin:auto;}

 

.review-stars ul {
display: inline-block;
list-style: none;
margin:0; padding:0;
}

.review-stars ul li {
float: left;
margin-right: 1px;
line-height:1;
}

.review-stars ul li i {
  color: #E4B248;
  font-size: 1.4em;
  font-style:normal;
}
.review-stars ul li i.inactive { color: #c6c6c6;}
.star:after { content: "\2605"; }
	
/*media queries */

@media screen and (min-width: 931px) {
		
  #socialhome {margin-left: 200px;}
  
}

@media screen and (max-width: 930px) {
	
  #sidebar { display: none;}
  #menubar { display: none;}
  #content { text-align: center;
  			 width: auto;
			 padding: 20px 5px 20px 5px;}
  #site_content { width: auto;}
  #collapsemenu { display: block;
  				  background: rgba(255, 255, 255, 0.7);}
  #mobileheader {display: block;}
  #footer { width: auto;}
  #header { height: 100vh}
  #logo { margin-top: 15vh;}
  #social { transform: translate(-50%, 0); margin-left: 50%;}
}