/* --------------------------------------------------------------------------------------------------------------
	1. $CSS RESET - Normalise.css, H5BP ETC -------------------------------------------------------------------------
  -------------------------------------------------------------------------------------------------------------- */
  article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
  audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
  audio:not([controls]) { display: none; }
  [hidden] { display: none; }
  html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
  html, button, input, select, textarea { font-family: sans-serif; color: #222; }
  body { margin: 0; font-size: 1em; line-height: 1.4; }
  ::-moz-selection { background: #005F63; color: #fff; text-shadow: none; }
  ::selection { background: #005F63; color: #fff; text-shadow: none; }
  a:focus { outline: thin dotted; }
  a:hover, a:active { outline: 0; }
  abbr[title] { border-bottom: 1px dotted; }
  b, strong { font-weight: bold; }
  blockquote { margin: 1em 40px; }
  dfn { font-style: italic; }
  hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
  ins { background: #ff9; color: #000; text-decoration: none; }
  mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
  pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
  pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
  q { quotes: none; }
  q:before, q:after { content: ""; content: none; }
  small { font-size: 85%; }
  sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
  sup { top: -0.5em; }
  sub { bottom: -0.25em; }
  ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
  dd { margin: 0 0 0 40px; }
  nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
  img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
  svg:not(:root) { overflow: hidden; }
  figure { margin: 0; }
  form { margin: 0; }
  fieldset { border: 0; margin: 0; padding: 0; }
  label { cursor: pointer; }
  legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
  button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
  button, input { line-height: normal; }
  button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
  button[disabled], input[disabled] { cursor: default; }
  input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
  input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
  input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
  button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
  textarea { overflow: auto; vertical-align: top; resize: vertical; }
  input:valid, textarea:valid {  }
  input:invalid, textarea:invalid { background-color: #f0dddd; }
  table { border-collapse: collapse; border-spacing: 0; }
  td { vertical-align: top; }
  .chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

  /* For image replacement */
  .ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
  .ir br { display: none; }

  /* Hide from both screenreaders and browsers: h5bp.com/u */
  .hidden { display: none !important; visibility: hidden; }

  /* Hide only visually, but have it available for screenreaders: h5bp.com/v */
  .visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

  /* extras the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
  .visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

  /* Hide visually and from screenreaders, but maintain layout */
  .invisible { visibility: hidden; }

  /* Contain floats: h5bp.com/q */

  .clearfix:before, .clearfix:after { content: ""; display: table; }
  .clearfix:after { clear: both; }
  .clearfix { *zoom: 1; clear:both; }

  /* WordPress Things */
  .aligncenter { display:block; margin:0 auto }
  .alignleft { float:left; margin:20px 20px 20px 0px; }
  .alignright { float:right;  margin:20px 0px 20px 20px; }
  .wp-caption { border:1px solid #666; text-align:center; background:#ccc; padding:10px; margin:10px }
.alert { background:red; color:white } /* 'alert' has a basic style, since it's useful to have it standing out for testing purposes.


/* Generic Items */
h1,h2,h3,h4,h5,h6, p {
  font-weight: normal;
  margin: 0px;
  padding: 0px;
}
a { text-decoration: none;}
ul, li {margin: 0px; padding: 0px;}

* {background: no-repeat 0px 0px;}


/* --------------------------------------------------------------------------------------------------------------
	2. $PRINT STYLES CSS RESET -------------------------------------------------------------------------
  -------------------------------------------------------------------------------------------------------------- */

  @media print {
    * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
    a, a:visited { text-decoration: underline; }
    a[href]:after { content: " (" attr(href) ")"; }
    abbr[title]:after { content: " (" attr(title) ")"; }
    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
    pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
    thead { display: table-header-group; } /* h5bp.com/t */
    tr, img { page-break-inside: avoid; }
    img { max-width: 100% !important; }
    @page { margin: 0.5cm; }
    p, h2, h3 { orphans: 3; widows: 3; }
    h2, h3 { page-break-after: avoid; }
  }
  /** END HTML5 Boilerplate CSS **/

  a {
    color: #080811;
  }
  a:hover {
   color: #626262;
 }


 .mobile-only {
  display: none;
}

/* ==========================================================================
$ Dependable John Start
========================================================================== */

body {
  font-family: 'Myriad Pro', 'arial';
}


.container {
  max-width: 840px;
  margin: 0px auto;
  width: 100%;
  padding: 0px 20px;
  box-sizing: border-box;
}


/*-------------------------------------------------------------
$ Header
------------------------------------------------------------- */
.header {
  height: 350px;
  background: #2A4057 url("images/header.jpg") repeat-x 50% 100%;
  background-size: cover;
  margin-bottom: 20px;
}
.header .header__container {
  padding-top: 60px;
}

/* --------------------------
Logo
----------------------------*/
.header .header__logo {
  margin-left: 120px;
  margin-bottom: 60px;
}

/* --------------------------
Heading
----------------------------*/
.header .header__heading {
  font-size: 24px;
  color: #FFF;
  max-width: 580px;
  margin: 0px auto;
  text-align: center;
}


/*-------------------------------------------------------------
$ Main
------------------------------------------------------------- */
.main {
  background: url("images/background.png") repeat-x;
}


/* --------------------------
Quote
----------------------------*/
.main .main__quote {
  line-height: 29px;
  color: #2A3F57;
  font-size: 14px;
  font-family: "Segoe Print";
  margin: 0px;
  margin-bottom: 20px;
}
.main .main__quote em {
  font-size: 12px;
  color: #666666;
  font-family: 'Myriad Pro', 'arial';
}

/* --------------------------
Horizontal Rule
----------------------------*/
hr {
  border-top: 2px solid #2A4057;
  margin-bottom: 40px;
  margin-top: 0px;
}


/* --------------------------
Service List
----------------------------*/
.main__services .service {
  width: 33%;
  float: left;
  list-style: none;
  box-sizing: border-box;
  padding: 40px 40px 0px 0px;
}
.main__services .service.no-margin {
  margin-right: 0px;
}

.main__services .service.no-margin + .service {
  clear: both;
}

.main__services .service h2 {
  font-size: 18px;
  font-weight: bold;
  color: #2A4057;
  margin-bottom: 10px;
}
.main__services .service  p {
  font-size: 14px;
  color: #444444;
  margin-bottom: 10px;
}
.main__services .service span {
  font-size: 11px;
  color: #878787;
}
.main__services .services__reason {
  font-size: 16px;
  color: #444;
  line-height: 28px;
  clear: both;
  padding: 30px 0px;
}

/*-------------------------------------------------------------
$ About
------------------------------------------------------------- */
.about {
  clear: both;
}
.about .about__about {
  float: left;
  margin-right: 2%;
  width: 57%;
}

.about .about__about  h3 {
  font-size: 20px;
  color: #444;
  margin-bottom: 40px;
  line-height: 34px;
}
.about .about__about p {
  font-size: 16px;
  color: #444;
  line-height: 28px;
  margin-bottom: 31px;
}

/*-------------------------------------------------------------
$ Contact
------------------------------------------------------------- */
.about__contact {
  float: left;
  width: 41%;
}

/* --------------------------
Details
----------------------------*/
.about__contact .contact__details {
  text-align: right;
  margin-bottom: 35px;
}

.about__contact .contact__details a {
  font-size: 35px;
  color: #444;
  margin-bottom: 5px;
  display: inline-block;
}

.about__contact .contact__details .email {
  font-size: 26px;
  color: #2A3F57;
}
.about__contact  .map__intro {
  font-size: 12px;
  color: #444;
  margin-bottom: 10px;
}


/* --------------------------
Map
----------------------------*/
.map {
  background: #EEEEEE;
  height: 340px;
  margin-bottom: 40px;
}
.map iframe {
  width: 100%;
  height: 100%;
}