/*
-----------------------------------------------
Styles
----------------------------------------------- */

/* Reset
----------------------------------------------- */

/* general reset */
html {overflow-y: scroll;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym {border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
table {font-size:inherit;font:100%;}
pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}
strong {font-weight: bold;}
i,em {font-style: italic;}

/* apply a natural box layout model to all elements */
* { 
	-moz-box-sizing: border-box; 
	-webkit-box-sizing: border-box; 
	box-sizing: border-box;
}

/* stops ie 7 badly scaling images */
img { -ms-interpolation-mode: bicubic; }

/* selection highlight */
::selection { 
	background: #FDC501; 
	color: #000; 
	text-shadow: none;
}
::-moz-selection { 
	background: #FDC501; 
	color: #000; 
	text-shadow: none;
}
html, body {
	color: #59524C;
	background:#fff;
}
body {
	text-align:center;
	font-size: 100%;
	font-family: "Roboto Slab", Helvetica, "Helvetica Neue", Arial, sans-serif;
	quotes: '\201c' '\201d';
}
p {
	margin: 0 0 1em 0;
	line-height: 150%;
}
blockquote p:before { 
	content: open-quote;
	margin-left: -6px;
}
blockquote p:last-child:after  { 
	content: close-quote;
}

/* Links
----------------------------------------------- */
a { color: #861613; text-decoration: none; }
a:link { color: #861613; text-decoration: none;}
a:visited { color: #861613; }
a:hover { color: #861613; text-decoration: underline;}
a:active { color: #861613; text-decoration: none;}


/* Layout
----------------------------------------------- */

#bar_wrap, 
#header_wrap, 
#photo_header_wrap, 
#home_services_wrap, 
#map_holder_wrap, 
#footer_wrap {
	width: 100%;
	float: left;
	clear: both;
	text-align: center;
}
.generic_wrap, 
.services_wrap {
	width: 100%;
	float: left;
	clear: both;
	text-align: center;
}

#bar_wrap {
	background: #861613;
}
#header_wrap {
	padding: 40px 0 40px 0;
	position: relative;
}
#home #header_wrap {
	padding: 40px 0 70px 0;
}
img.arrow_top {
	display: block;
	position: absolute;
	left: calc(50% - 83.5px);
	bottom: -24px;
}
#home #photo_header_wrap {
	background: url(../images/page/header_home.jpg) top center no-repeat;
	background-size: 100% auto;
}
#services #photo_header_wrap {
	background: url(../images/page/header_services.jpg) top center no-repeat;
	background-size: 100% auto;
}
#about #photo_header_wrap {
	background: url(../images/page/header_about.jpg) top center no-repeat;
	background-size: 100% auto;
}
#prices #photo_header_wrap {
	background: url(../images/page/header_prices.jpg) top center no-repeat;
	background-size: 100% auto;
}
#resources #photo_header_wrap {
	background: url(../images/page/header_resources.jpg) top center no-repeat;
	background-size: 100% auto;
}
#contact #photo_header_wrap {
	background: url(../images/page/header_contact.jpg) top center no-repeat;
	background-size: 100% auto;
}
#footer_wrap {
	background: #DEDCDB;
	margin-top: 100px;
}
#bar,
#photo_header, 
#home_services, 
footer {
	width: 95%;
	max-width: 960px;
	margin: 0 auto;
}
#bar {
	padding: 15px 0;
	line-height: 120%;
	text-align: center;
}
footer {
	max-width: 100%;
}
#bar ul {
	width: 100%;
	float: left;
	list-style: none;
	padding-bottom: 15px;
}
#bar ul li {
	display: inline;
	list-style: none;
	display: inline-block;
}
#bar ul li a {
	width: auto;
	padding: 0 15px;
	display: block;
	float: left;
	color: #fff;
}
#bar ul li.on a {
	color: #FDC501;
}
#lang {
	position: absolute;
	top: 0px;
	right: 5px;
	z-index: 100;
}
#lang ul {
	list-style: none;
	padding: 0;
	background: #861613;
	height: 3em;
	overflow: hidden;
}
#lang:hover ul {
	height: auto;
	overflow: none;
}
#lang ul li {
	list-style: none;
	float: left;
	clear: left;
}
#lang ul li img {
	max-width: 16px;
	height: auto;
	margin-right: 10px;
	vertical-align: bottom;
}
#lang ul li a {
	display: block;
	float: left;
	clear: both;
	padding: 15px;
	line-height: 120%;
}
a#mobonly {
	display: none;
	float: left;
	color: #fff;
	z-index: 100;
	position: fixed;
	top: 15px;
	left: 15px;
	text-decoration: none;
}
#logo {
	width: 110px;
	height: 110px;
	display: block;
	float: left;
	margin-left: calc(50% - 55px);
	text-align: left;
	text-indent: -9999px;
	background: url(../images/page/valteri.svg) 0 0 no-repeat;
	background-size: 100%;
}

#header_wrap h1 {
	width: 100%;
	max-width: 940px;
	margin: 0 auto;
	clear: both;
	font-size: 2.5em;
	font-weight: 300;
	padding: 0 20px;
}
#photo_header p.standfirst {
	color: #fff;
	line-height: 120%;
	font-size: 2em;
	margin: 150px 0 320px 0;
}
#photo_header p.standfirst span {
	color: #FDC501;
}
#photo_header h1 {
	color: #fff;
	line-height: 120%;
	font-size: 2em;
	text-align: left;
	margin: 50px 0;
}
#home_services #service_01, 
#home_services #service_02, 
#home_services #service_03 {
	width: 33.3%;
	padding: 10px;
	float: left;
}
#home_services #service_01 .inner, 
#home_services #service_02 .inner, 
#home_services #service_03 .inner {
	padding: 10px;
	float: left;
	background: #fff;
	width: 100%;
	-webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
	margin: -200px 0 0 0;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}
#home_services .inner img {
	width: 80px;
	height: auto;
	margin: 10px 0 10px 0;
	-webkit-border-radius: 40px;
	border-radius: 40px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
}
#home_services h2 {
	font-size: 1.625em;
}
#home_services p {
	margin-top: 20px;
}
a.big_button {
	margin: 20px 0 40px 10px;
	font-size: 1.625em;
	color: #FDC501;
	width: calc(100% - 20px);
	float: left;
	clear: both;
	text-align: center;
	background: url(../images/icons/arrow.svg) right center no-repeat #59524C;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 20px;
}
.generic {
	width: 95%;
	max-width: 960px;
	margin: 0 auto;
	text-align: left;
	padding: 40px 0;
	line-height: 150%;
	padding-right: 20%;
}
.generic p {
	margin: 0 0 2em 0;
}
.generic h1, 
.generic h2, 
.services h2 {
	font-size: 1.625em;
	margin: 0 0 10px 0;
}
.generic h3 {
	font-size: 1.3em;
	margin: 0 0 10px 0;
}
.generic ul {
	margin: 0 0 2em 0;
	list-style: circle;
}
.generic ul li {
	list-style: circle;
	margin: 0.3em 0;
}
.generic ol {
	margin: 0 0 2em 0;
	list-style: decimal-leading-zero;
}
.generic ol li {
	list-style: decimal-leading-zero;
	margin: 0.3em 0;
}
.services {
	width: 95%;
	max-width: 960px;
	margin: 0 auto;
	text-align: left;
	padding: 40px 0;
	line-height: 150%;
}
.services ul {
	width: 100%;
	float: left;
	clear: both;
	margin: 20px 0;
}
.services ul li {
	width: 31.333%;
	float: left;
	margin: 10px 1% 10px 1%;
	background: #FAFAFA;
	padding: 20px;
	text-align: center;
}
.services ul li:nth-child(4), 
.services ul li:nth-child(7), 
.services ul li:nth-child(10), 
.services ul li:nth-child(13), 
.services ul li:nth-child(16), 
.services ul li:nth-child(19), 
.services ul li:nth-child(22), 
.services ul li:nth-child(25), 
.services ul li:nth-child(28) {
	clear: left;
}
.services ul li img {
	width: 80px;
	height: auto;
	margin-bottom: 10px;
}
p.travel {
	background: url(../images/icons/travel.svg) 10px center no-repeat #FAFAFA;
	padding: 30px 20px 30px 80px;
	width: 98%;
	float: left;
	clear: both;
	margin: 20px 1% 0 1%;
}
.services ul.reg {
	padding-left: 2em;
}
.services ul.reg li {
	list-style:circle;
	width: 100%;
	margin: 0.2em 0;
	background: none;
	padding: 0;
	text-align: left;
}
#deets {
	width: 100%;
	float: left;
	max-width: 500px;
	padding: 20px;
	margin-top: -130px;
	margin-left: calc(50% - 250px);
	position: relative;
	background: #fff;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.15);
}
#deets p {
	margin: 0 0 10px 0;
}
#map .gm-style > div > div[style*="position: absolute; left: 0px; top: 0px; z-index: 2; width: 100%; height: 100%;"] {
	-webkit-box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.15);
	box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.15);
}
#map {
	width: 100%;
	height: 400px;
	float: left;
	display: block;
	margin: 0;
	padding: 0;
}
p.business_name, 
p.business_number, 
p.business_email {
	font-size: 1.625em;
}


footer {
	font-weight: 300;
}

footer p.copy {
	text-align: left;
	float: left;
	width: auto;
	margin: 0;
	padding: 10px;
}
footer p.site {
	text-align: right;
	float: right;
	width: auto;
	margin: 0;
	padding: 10px;
}

.mobile_only {
	display: none;
}
p.contact_top {
	font-size: 1.2em;
	width: 100%;
	float: left;
	text-align: center;
	margin-top: 30px;
	margin-bottom: 0;
}


form.login {
	margin: 0 0 2	em 0;
	line-height: 150%;
	width: 100%;
	clear: both;
	float: left;
}
form.login label {
	float: left;
}
form.login input {
	float: left;
	clear: left;
	width: 100%;
	padding: 5px;
	border: 1px solid #ccc;
}
form.login input[type="submit"] {
	width: auto;
	padding: 10px 20px;
	margin-top: 10px;
	cursor: pointer;
	color: #FDC501;
	background: #59524C;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}
p.error {
	margin: 0;
	color: #861613;
}



