/* Text Elements */

h1 {
  color: #3b3b3b;
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h1.H1Header {
  margin-bottom: 10px;
  color: #3b3b3b;
  text-align: center;
  font-size: 32px;
  line-height: 1;
}

h2 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h3 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h4 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h5 {
  text-align: center;
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h5.H5Footer {
  color: #c6c0b8;
}

h6 {
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

h6.H6Images {
  color: #000;
  text-align: center;
}

p.paragraph {
  margin-bottom: 10px;
  color: #3b3b3b;
  text-align: center;
  font-size: 18px;
  font-family: 'Quicksand', sans-serif;
  line-height: 1.1;
}

p.paragraph.pHeader {
  margin-bottom: 20px;
  text-align: center;
}

p.paragraph.David.pHeader {
  margin-bottom: 0;
  color: #595959;
  font-size: 26px;
}

p.paragraph.pServices {
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.1;
}

p.paragraph.FooterBig.pHeader {
  margin-bottom: 20px;
  color: #fff;
  font-size: 26px;
}

p.paragraph.pSmallText {
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
}

p.paragraph.Thanks.pHeader {
  font-size: 24px;
}

p.paragraph span.paragraph-text-1 {
  color: #c6c0b8;
}

a.link-text.TextLinkClose {
  padding: 5px 15px;
  background-color: #000;
  box-shadow: rgba(0, 0, 0, .5) 2px 2px 5px 0;
  color: #fff;
  font-size: 21px;
  font-family: 'Quicksand', sans-serif;
}

a.link-text {
  color: #fff;
  font-weight: 300;
  font-size: 20px;
  font-family: 'Oswald', sans-serif;
}

/* Interaction Elements */

a.link-button.Terms.button {
  margin-bottom: 0;
  background-color: #9b8870;
}

a.link-button.Facebook.button {
  margin-bottom: 0;
  width: 200px;
  background-color: #708b9b;
}

/* Layout Elements */

.container {
  position: relative;
  z-index: 0;
  padding: 30px;
}

.container.DivHeader {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  min-height: 70vh;
  background-image: url('../images/stock4.webp');
  background-attachment: scroll;
  background-position: center top;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: cover;
  background-repeat: repeat;

  background-blend-mode: normal;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
}

.container.HeaderTextWrap {
  z-index: 1;
  padding: 0;
  max-width: 1024px;
  -webkit-transition-delay: 2.5s;
     -moz-transition-delay: 2.5s;
       -o-transition-delay: 2.5s;
          transition-delay: 2.5s;
  -webkit-transition-duration: 1.5s;
     -moz-transition-duration: 1.5s;
       -o-transition-duration: 1.5s;
          transition-duration: 1.5s;
}

.container.DivHeaderFade {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  opacity: .8;
  -webkit-transition-delay: .5s;
     -moz-transition-delay: .5s;
       -o-transition-delay: .5s;
          transition-delay: .5s;
  -webkit-transition-duration: 1s;
     -moz-transition-duration: 1s;
       -o-transition-duration: 1s;
          transition-duration: 1s;
}

.container.DivMainSection.Two {
  background-color: #f0ebe4;
  background-image: url('../images/stock2-BW.webp');
}

.container.DivMain {
  display: grid;
  padding: 0;

  grid-template-columns: none;
  grid-template-rows: none;
}

.container.DivMainSection.Three {
  background-image: url('../images/stock1-BW.webp');

  grid-area: auto /auto/ auto /auto;
}

.container.DivContactFormWrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: none;
  padding: 30px;
  background-color: #595959;
  box-shadow: rgba(0, 0, 0, .5) 5px 5px 10px 0;
  text-align: right;
}

.container.DivMainSection {
  background-image: url('../images/stock3-BW.webp');
  background-attachment: scroll;
  background-position: left top;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: cover;
  background-repeat: repeat;

  background-blend-mode: normal;
}

.container.DivFooter {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  background-color: #9b8870;
  background-image: url('../images/SwanageGlobe.webp');
  background-attachment: scroll;
  background-position: center center;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: cover;
  background-repeat: no-repeat;

  background-blend-mode: normal;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
          align-content: center;
}

.container.FooterFade {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, .5);
}

.container.DivTermsWrapper {
  display: grid;
  margin-bottom: 20px;
  padding: 0;
  max-width: 1024px;

  grid-template-columns: 1fr;
  grid-template-rows: repeat(2 , auto);
  grid-column-gap: 20px;
  grid-row-gap: 10px;
}

.container.DivTextOnly.Privacy {
  background-color: #f0ebe4;
}

.container.DivImagesWrapper {
  display: grid;
  padding: 5px 0;
  min-height: 500px;
  background-color: #fff;

  grid-template-columns: repeat(3 , auto);
  grid-template-rows: repeat(2 , auto);
  grid-column-gap: 5px;
  grid-row-gap: 5px;
}

.container.DivImage {
  background-image: url('../images/exterior2.webp');
  background-attachment: scroll;
  background-position: center center;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: cover;
  background-repeat: repeat;

  background-blend-mode: normal;
}

.container.DivImage.Two {
  background-image: url('../images/shower1.webp');
}

.container.DivImage.Three {
  background-image: url('../images/roof.webp');
}

.container.DivImage.Four {
  background-image: url('../images/interior6.webp');
}

.container.DivImage.Five {
  background-image: url('../images/exterior4.webp');
}

.container.DivImage.Six {
  background-image: url('../images/interior4.webp');
}

.container.ImagesMainText {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-pack: center;
  background-color: rgba(0, 0, 0, .49);
  opacity: 0;
  -webkit-transition-delay: 2s;
     -moz-transition-delay: 2s;
       -o-transition-delay: 2s;
          transition-delay: 2s;
  -webkit-transition-duration: 3s;
     -moz-transition-duration: 3s;
       -o-transition-duration: 3s;
          transition-duration: 3s;

  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container.HeaderTextWrap.outofview {
  opacity: 0;
}

.container.DivHeader.outofview {
  background-image: url('../images/stock4.webp');
  background-attachment: scroll;
  background-position: left top;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: 0 0;
  background-repeat: no-repeat;

  background-blend-mode: normal;
}

.container.DivHeaderFade.outofview {
  opacity: 0;
}

.container.ImagesMainText.outofview {
  background-color: #fff;
  opacity: 1;
}

a.responsive-picture.LinkLogo {
  position: relative;
  z-index: 1;
  margin-right: auto;
  margin-bottom: 20px;
  margin-left: auto;
  max-width: 150px;
  -webkit-transition-delay: 1.5s;
     -moz-transition-delay: 1.5s;
       -o-transition-delay: 1.5s;
          transition-delay: 1.5s;
  -webkit-transition-duration: 1.5s;
     -moz-transition-duration: 1.5s;
       -o-transition-duration: 1.5s;
          transition-duration: 1.5s;
}

.html-element {
  margin-bottom: 0;
}

a.glyph.FontIconEmail {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 1;
  margin-top: 10px;
  padding: 13px 15px 10px;
  border-radius: 50px;
  background-color: #3b3b3b;
  background-image: none;
  background-attachment: scroll;
  background-position: left top;
  background-clip: border-box;
  background-origin: padding-box;
  background-size: 0 0;
  background-repeat: no-repeat;
  color: #f0ebe4;
  font-size: 40px;
  line-height: 1;

  background-blend-mode: normal;
}

a.responsive-picture.LinkLogo.outofview {
  opacity: 0;
}

@media screen and (min-width: 40rem) {
  /* Layout Elements */

  .container {
    padding: 40px;
  }

  .container.DivMain {
    grid-template-columns: repeat(2 , auto);
    grid-template-rows: repeat(2 , auto);
  }

  .container.DivMainSection.Three {
    border-top: .0625rem solid #f0ebe4;

    grid-area: auto /span 2/ auto /auto;
  }

  .container.DivTermsWrapper {
    grid-template-columns: repeat(3 , 1fr);
    grid-template-rows: auto;
  }

  .container.DivImagesWrapper {
    min-height: 600px;
  }

  .html-element {
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 64rem) {
  /* Layout Elements */

  .container {
    padding: 60px;
  }

  .container.DivMainSection.Three {
    border-top-width: 0;

    grid-area: auto /auto/ auto /auto;
  }

  .container.DivMain {
    grid-template-columns: repeat(3 , auto);
    grid-template-rows: auto;
  }

  .container.DivImagesWrapper {
    min-height: 400px;

    grid-template-rows: auto;
    grid-template-columns: repeat(6 , auto);
  }
}