html, body, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

article, aside, figure, footer, header, hgroup, nav, section {
  display: block; }

/* ==========================================================================
   BITS AND PIECES
============================================================================= */
html {
  height: 100%; }

body {
  font-size: 1em;
  line-height: 1.4;
  height: 100%; }

::-moz-selection {
  background: #b4d5fd;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

img {
  vertical-align: middle; }

textarea {
  resize: vertical; }

/* Remove button padding in FF */
button::-moz-focus-inner {
  border: 0;
  padding: 0; }

/* ==========================================================================
   COLOURS
============================================================================= */
/* ==========================================================================
   MIXINS
============================================================================= */
.container, .main, header, .form-row, .form-action {
  *zoom: 1; }
  .container:before, .main:before, header:before, .form-row:before, .form-action:before, .container:after, .main:after, header:after, .form-row:after, .form-action:after {
    display: table;
    content: ""; }
  .container:after, .main:after, header:after, .form-row:after, .form-action:after {
    clear: both; }

header h1 span {
  overflow: hidden;
  position: absolute;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0; }
  header h1 span.focusable:active, header h1 span.focusable:focus {
    position: static;
    clip: auto;
    height: auto;
    width: auto;
    margin: 0;
    overflow: visible; }

/* ==========================================================================
   BASE STYLES
============================================================================= */
body {
  font-family: "myriad-pro", sans-serif;
  font-size: 14px;
  font-weight: 400;
  background: #e9e9e9 url(../img/bg.png) repeat-y top center;
  color: #333333;
  margin: 0 auto; }

.wrapper {
  margin: 0 auto;
  min-height: 100%;
  background: transparent url(../img/bg-plan.png) no-repeat bottom right; }

.container {
  max-width: 750px;
  margin: 0 auto;
  padding: 0 0 0 250px;
  position: relative; }

.main {
  padding: 100px 0 50px 0; }
  .main p {
    padding: 0 0 20px 0;
    line-height: 21px; }
  .main p.intro {
    font-size: 22px;
    line-height: 32px;
    font-weight: normal; }
  .main a {
    color: #037398;
    text-decoration: none; }
  .main h1 {
    text-transform: uppercase;
    font-size: 30px;
    padding: 0 0 15px 0; }
  .main h2 {
    font-size: 22px;
    font-weight: 700;
    background: transparent url(../img/bg-icons.png) no-repeat 0 -38px;
    padding: 0 0 15px 20px;
    clear: left; }

.col-1 {
  padding: 0 1.5%;
  width: 97%; }

.col-2 {
  padding: 0 1.5%;
  width: 47%;
  float: left; }
  .col-2 p {
    padding-right: 40px; }

.col-4 {
  padding: 0 1.5%;
  width: 22%;
  float: left; }

/* ==========================================================================
   HEADER
============================================================================= */
header h1 {
  display: block;
  position: absolute;
  top: 35px;
  left: 12px;
  width: 187px;
  height: 161px;
  background: transparent url(../img/logo.png) no-repeat 0 0; }

ul.contacts {
  list-style: none;
  position: absolute;
  top: 35px;
  right: 12px; }
  ul.contacts li {
    float: left;
    display: inline;
    margin: 0 0 0 12px; }
    ul.contacts li a {
      display: block;
      padding: 5px 10px 5px 35px;
      text-decoration: none;
      text-transform: uppercase;
      font-size: 16px;
      color: #333333;
      background: white url(../img/bg-icons.png) no-repeat; }
    ul.contacts li a:hover {
      color: #037398; }
  ul.contacts li.email a {
    background-position: 10px -90px; }
  ul.contacts li.phone a {
    background-position: 10px -142px; }
  ul.contacts li.facebook a {
    background-position: 10px -242px; }

nav ul {
  list-style: none;
  position: absolute;
  top: 246px;
  left: 0;
  width: 214px; }
  nav ul li {
    display: block;
    float: none; }
    nav ul li a {
      display: block;
      text-transform: uppercase;
      text-decoration: none;
      color: white;
      font-size: 16px;
      padding: 6px 12px; }
    nav ul li a:hover {
      background-color: #037398; }
  nav ul li.current a {
    background-color: #333333; }

nav ul li ul {
  position: relative;
  top: auto;
  left: auto; }
  nav ul li ul li a {
    text-transform: capitalize;
    background: transparent url(../img/bg-icons.png) no-repeat 12px 14px;
    padding-left: 30px; }

nav ul li.current ul li a {
  background-color: transparent; }

nav ul li.current ul li a:hover {
  background-color: #037398; }

/* ==========================================================================
   FLOOR PLAN THUMBS
============================================================================= */
.floor-plan-thumb {
  display: block;
  text-align: center;
  text-decoration: none;
  margin: 0 0 30px 0; }
  .floor-plan-thumb span {
    display: block;
    font-size: 16px;
    text-transform: uppercase;
    color: #333333; }
  .floor-plan-thumb .thumb-image {
    height: 155px;
    margin: 0 0 5px 0;
    display: block;
    background-color: white;
    border: 3px solid white; }

.floor-plan-thumb:hover span {
  color: #037398; }
.floor-plan-thumb:hover .thumb-image {
  border-color: #037398; }

.floor-plans-black-white .thumb-image {
  background: white url(../img/bg-bw.png) no-repeat center center;
  background-size: cover; }

.floor-plans-colour .thumb-image {
  background: white url(../img/bg-colour.png) no-repeat center center;
  background-size: cover; }

.floor-plans-furnished .thumb-image {
  background: white url(../img/bg-furnished.png) no-repeat center center;
  background-size: cover; }

.floor-plans-site-plans .thumb-image {
  background: white url(../img/bg-site-plan.png) no-repeat center center;
  background-size: cover; }

/* ==========================================================================
   SLIDESHOW
============================================================================= */
.slideshow-wrapper {
  text-align: center; }

.cycle-slideshow {
  width: 100%;
  height: 850px;
  margin: auto;
  background-color: white; }

.cycle-slideshow img {
  width: 550px; }

.cycle-prev {
  text-transform: uppercase;
  color: #333333;
  background: transparent url(../img/bg-icons.png) no-repeat 0 -191px;
  display: inline-block;
  padding: 5px 5px 5px 15px; }

.cycle-next {
  text-transform: uppercase;
  color: #333333;
  background: transparent url(../img/bg-icons.png) no-repeat right -41px;
  display: inline-block;
  padding: 5px 32px 5px 5px; }

.cycle-prev:hover,
.cycle-next:hover {
  color: #333333; }

/* ==========================================================================
   FORMS
============================================================================= */
.contact-form {
  padding: 12px;
  background-color: white; }

.form-row {
  margin: 0 0 6px 0;
  position: relative; }
  .form-row label {
    display: block;
    text-transform: uppercase;
    font-size: 11px; }
  .form-row input,
  .form-row textarea {
    display: block;
    border: 3px solid #e9e9e9;
    background-color: #e9e9e9;
    font-size: 12px;
    padding: 3px;
    width: 100%;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
  .form-row input:focus,
  .form-row textarea:focus {
    outline: none;
    border-color: #037398; }
  .form-row textarea {
    height: 40px; }
  .form-row span.error {
    color: red;
    font-size: 12px; }

.form-action {
  padding-top: 6px; }
  .form-action input.submit {
    display: block;
    float: right;
    border: none;
    background-color: #037398;
    color: white;
    font-size: 12px;
    padding: 6px;
    margin: 0;
    text-transform: uppercase;
    font-size: 11px;
    cursor: pointer; }

.form-error {
  background-color: #ffffcf;
  padding: 5px 10px;
  margin: 0 0 10px 0; }

.form-success {
  background-color: #cfffdb;
  padding: 15px 15px 0 15px; }

.form-row-hide {
  display: none; }

@media only screen and (max-width: 1000px) {
  body {
    background-image: none; }

  .container {
    max-width: none;
    padding: 0; }

  .main {
    padding: 25px 0; }

  header {
    background-color: black;
    position: relative; }
    header h1 {
      display: block;
      position: relative;
      padding: 35px 0 20px 12px;
      background-position: 12px 35px;
      top: auto;
      left: auto; }

  nav ul {
    position: relative;
    top: auto;
    left: auto;
    width: auto; }
    nav ul li {
      display: inline;
      float: left; }
      nav ul li a {
        display: block;
        float: left; }

  nav ul li ul {
    display: none; } }
@media only screen and (max-width: 820px) {
  .cycle-slideshow {
    height: 450px; }

  .cycle-slideshow img {
    width: auto;
    height: 424px; } }
@media only screen and (max-width: 650px) {
  .col-1 {
    padding: 0 2.5%;
    width: 95%; }

  .col-2 {
    padding: 0 2.5%;
    width: 95%;
    float: none; }
    .col-2 p {
      padding-right: 0; }

  .col-4 {
    padding: 0 2.5%;
    width: 45%;
    float: left; } }
@media only screen and (max-width: 485px) {
  ul.contacts li a {
    padding: 5px 10px;
    width: 18px;
    height: 22px; }
    ul.contacts li a span {
      display: none; } }
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .main h2,
  ul.contacts li a,
  ul.menu li ul li a {
    background-image: url(../img/bg-icons@2x.png);
    background-size: 25px auto; }

  header h1 {
    background-image: url(../img/logo@2x.png);
    background-size: 187px auto; }

  .floor-plans-black-white .thumb-image {
    background-image: url(../img/bg-bw@2x.png);
    background-size: 170px auto; }

  .floor-plans-colour .thumb-image {
    background-image: url(../img/bg-colour@2x.png);
    background-size: 170px auto; }

  .floor-plans-furnished .thumb-image {
    background-image: url(../img/bg-furnished@2x.png);
    background-size: 170px auto; }

  .floor-plans-site-plans .thumb-image {
    background-image: url(../img/bg-site-plan@2x.png);
    background-size: 170px auto; } }
@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important; }

  @page {
    margin: 0.5cm; }
  h2, h3 {
    orphans: 3;
    widows: 3;
    page-break-after: avoid; }

  p {
    orphans: 3;
    widows: 3; }

  pre, blockquote {
    border: 1px solid #666;
    page-break-inside: avoid; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  a, a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }

  img {
    max-width: 100% !important;
    page-break-inside: avoid; }

  thead {
    display: table-header-group; }

  tr {
    page-break-inside: avoid; } }

/*# sourceMappingURL=style.css.map */