/*
Theme Name:		 Homeguru
Theme URI:		 http://childtheme-generator.com/
Description:	 Homeguru is a child theme of Twenty Twenty-Two, created by ChildTheme-Generator.com
Author:			 HomeGuru
Author URI:		 http://childtheme-generator.com/
Template:		 twentytwentytwo
Version:		 1.0.0
Text Domain:	 homeguru
*/


/*
    Add your custom styles here
*/

@font-face {
  font-family: "nevis";
  src: url("assets/fonts/nevis.eot");
  src: url("assets/fonts/nevis.woff") format("woff"), url("assets/fonts/nevis.ttf") format("truetype"), url("assets/fonts/nevis.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
}

body a {
    text-decoration: none !important;
}
body a.wp-block-post-excerpt__more-link {
    font-weight: 700 !important;
    color: #FC2243;
}

.wp-site-blocks {
    position: relative;
}

h1 {
  font-size: 2.5em;
  font-weight: 400;
  margin: 0;
  padding: 0;
}

body .wp-block-group.has-background {
    padding-left: 2.375em;
    padding-right: 2.375em;
}

section .inner {
  max-width: 900px;
  margin: 0px auto;
  padding: 0 1em;
}

#container {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 767px) {
  #container {
    position: relative;
    left: 0px;
    transition: left 0.3s;
  }
}
@media (min-width: 767px) {
  #container {
    padding-top: 0px;
    box-sizing: border-box;
  }
}

body.menuopen #container {
  left: 200px;
}

@media (min-width: 767px) {
    div.static-nav {
        height: 100px;
    }
}

div.mobile-header {
  height: 55px;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  z-index: 100;
  background: none;
  text-align: center;
  transition: top 0.3s, opacity 0.6s;
  color: #FFF;
  opacity: 1;
}
div.mobile-header img.dark {
  display: none;
}
div.mobile-header.prefixed {
  position: fixed;
  opacity: 0;
  top: -55px;
  transition: top 0.3s, opacity 0.6s;
}
div.mobile-header.fixed {
  position: fixed;
  background: #FFF;
  top: 0px;
  opacity: 1;
  box-shadow: 0 2px 4px 3px rgba(0, 0, 0, 0.09);
  color: #000;
  transition: top 0.3s, opacity 0.6s, left 0.3s;
}
div.mobile-header.fixed img.light {
  display: none;
}
div.mobile-header.fixed img.dark {
  display: inline-block;
}
@media (min-width: 767px) {
  div.mobile-header {
    display: none;
  }
}
div.mobile-header .hamburger {
  float: left;
  height: 55px;
  line-height: 68px;
  width: 58px;
  cursor: pointer;
}
div.mobile-header .account {
  float: right;
  height: 55px;
  line-height: 68px;
  width: 58px;
  cursor: pointer;
}
div.mobile-header .account a:hover {
  color: #000;
}
div.mobile-header img {
  width: 54px;
  height: 37px;
  margin-top: 9px;
}

body.menuopen div.mobile-header {
  left: 0px;
}

body.menuopen div.mobile-header.prefixed {
  left: 200px;
}

nav.mobile {
  position: fixed;
  left: -200px;
  transition: left 0.3s;
  top: 0px;
  width: 200px;
  height: 100%;
  z-index: 20;
}
@media (min-width: 767px) {
  nav.mobile {
    display: none;
  }
}
nav.mobile .sidebar {
  width: 200px;
  background: #1d1d1d;
  height: 100%;
}
nav.mobile .sidebar img {
  width: 80px;
  height: 55px;
  margin: 14px 14px 11px;
}
nav.mobile .sidebar ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
nav.mobile .sidebar ul li {
  line-height: 44px;
  text-transform: uppercase;
  font-family: "nevis", Helvetica, Arial, sans-serif;
}
nav.mobile .sidebar ul li a {
  display: block;
  padding: 0 1em;
  color: #FFF;
  text-decoration: none;
  font-size: 14px;
}
nav.mobile .sidebar ul li a.post, nav.mobile .sidebar ul li a.signup {
  color: #FC2243;
}
nav.mobile .sidebar ul .dropdown i {
  vertical-align: top;
  line-height: 42px;
}
nav.mobile .sidebar ul .dropdown ul {
  display: none;
}
nav.mobile .sidebar ul .dropdown ul li {
  padding-left: 0.5em;
  line-height: 32px;
}
nav.mobile .sidebar ul .dropdown ul li a {
  color: #000;
}
nav.mobile .sidebar ul .dropdown.opened ul {
  display: block;
}
nav.mobile .sidebar .copyright {
  font-weight: 400;
  font-size: 11px;
  margin-top: 2em;
  padding: 12px;
  color: #EEE;
}
nav.mobile .blinds {
  position: absolute;
  left: 221px;
  top: 0px;
  width: 100%;
  height: 100%;
  display: none;
}

body.menuopen nav.mobile {
  left: 0px;
  width: 100%;
}
body.menuopen nav.mobile .blinds {
  display: block;
}

nav.desktop {
  display: none;
  position: absolute;
  z-index: 10;
  background: none;
  height: 100px;
  top: 0px;
  left: 0px;
  width: 100%;
  padding: 0.5em;
  box-sizing: border-box;
  background: #1932AF;
  padding-bottom: 20px;
}
nav.desktop .nav-inner {
  position: relative;
}
@media (min-width: 767px) {
  nav.desktop {
    display: block;
  }
}
nav.desktop ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}
nav.desktop ul li {
  display: inline-block;
  margin: 0px;
  padding: 0 0.75em;
  height: 80px;
  line-height: 80px;
  box-sizing: border-box;
  vertical-align: top;
  color: #FFF;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 14px;
}
@media (max-width: 992px) {
  nav.desktop ul li {
    padding: 0 0.5em;
  }
}
nav.desktop ul li.active a {
  text-decoration: underline;
}
nav.desktop ul li.active a.signup {
  color: #FFF;
}
nav.desktop ul li.logo {
  padding: 0.75em 1.75em 0;
  margin-right: 1em;
}
nav.desktop ul li.dropdown {
  position: relative;
}
nav.desktop ul li.dropdown i {
  vertical-align: top;
  line-height: 80px;
}
nav.desktop ul li.dropdown ul {
  display: none;
  position: absolute;
  top: 80px;
  left: 0px;
  width: 170px;
  background: #FFF;
  padding: 1em 0;
}
nav.desktop ul li.dropdown ul li {
  display: block;
  padding: 0px;
  line-height: 1;
  height: auto;
  padding: 0.375em 1em;
}
nav.desktop ul li.dropdown ul li a {
  text-transform: none;
  font-weight: 400;
  display: block;
}
nav.desktop ul li.dropdown ul li a:hover {
  text-decoration: underline;
}
nav.desktop ul li.dropdown:hover ul {
  display: block;
}
nav.desktop ul li a[href^=tel] {
  color: #FFF !important;
}
nav.desktop ul li a {
  text-transform: uppercase;
  font-weight: 500;
  color: #FFF;
  text-decoration: none;
}
nav.desktop ul li a.post, nav.desktop ul li a.signup {
  color: #FC2243;
}
nav.desktop ul li a:hover {
  color: #FF6100;
}
nav.desktop ul.secondary {
  position: absolute;
  right: 6px;
  top: 0px;
}
nav.desktop ul.secondary li {
  font-size: 14px;
}
nav.desktop ul.secondary li a {
  font-weight: 400;
}
nav.desktop ul.secondary li.account {
  padding: 0 2.75em;
  margin-left: 1em;
  border-left: 1px solid #D1D9DC;
}
nav.desktop ul.secondary li.phone i {
  line-height: 84px;
  vertical-align: top;
  padding-right: 6px;
  font-size: 18px;
}
nav.desktop ul.secondary li.phone a {
  text-decoration: none;
  color: #004D62;
}

#content section.masthead {
  background: url(../img/hgtop.jpg) top center no-repeat;
  background-size: contain;
  position: relative;
  padding-top: 58.33%;
}
#content section.masthead.bath {
  background: url(../img/hgtopbath.jpg) top center no-repeat;
  background-size: contain;
}
@media (min-width: 767px) {
  #content section.masthead {
    background: url(../img/hgtop.jpg) center center no-repeat;
    background-size: cover;
    height: 620px;
    padding-top: 0;
  }
  #content section.masthead.bath {
    background: url(../img/hgtopbath.jpg) center center no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #content section.masthead .spacer {
    padding-top: 58.33%;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
  }
}
#content section.masthead .overlay {
  background: rgba(255, 255, 255, 0.82);
  padding: 1em;
  text-align: center;
  box-sizing: border-box;
}
@media (min-width: 767px) {
  #content section.masthead .overlay {
    padding: 2.25em 1em;
    position: absolute;
    bottom: 0px;
    width: 100%;
    left: 0px;
  }
}
#content section.masthead .overlay h1 {
  font-size: 1.75em;
  font-weight: 400;
}
@media (max-width: 767px) {
  #content section.masthead .overlay h1 {
    padding: 0.325em 1em 0.5em;
    box-sizing: border-box;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    background: rgba(255, 255, 255, 0.82);
  }
}
@media (min-width: 767px) {
  #content section.masthead .overlay h1 {
    font-size: 2.5em;
  }
}
#content section.masthead .overlay p {
  font-weight: 400;
}
#content section.masthead .overlay button.signup {
  margin-top: 0.25em;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 3em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
@media (min-width: 767px) {
  #content section.masthead .overlay button.signup {
    font-size: 18px;
  }
}
#content section.masthead .overlay button.signup:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}

.homesignup.preload {
  height: 450px;
}

.homesignup {
  background: #0C67D6;
  color: #FFF;
  padding-bottom: 0.5em;
}

.signupform {
  padding: 4em 0 2em;
  text-align: center;
}
.signupform .inner {
  max-width: 700px;
}
.signupform select {
  border: 1px solid #E9E9E9;
  border-radius: 10px;
  width: 100%;
  max-width: 470px;
  padding: 1em 0.5em 1em 1.5em;
  color: #353535;
  font-size: 16px;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-weight: 600;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url('data:image/svg+xml;utf8,<svg width="12" height="8" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h11.281l-5.64 7.64z" fill="%230C67D6" fill-rule="evenodd"/></svg>') 96% no-repeat #FFF;
}
@media (min-width: 767px) {
  .signupform select {
    padding: 1.25em 0.5em 1.25em 1.5em;
  }
}
.signupform .servicenotoffered {
  display: none;
  padding: 1em 0.5em 2em;
}
.signupform .servicenotoffered h4 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 2.5em;
  font-weight: 600;
  margin: 1em 0 0;
  color: #FFF;
}
.signupform h2 {
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}
.signupform .alttrade {
  background: #1932AF;
  color: #FFF;
  padding: 12px;
  border-radius: 10px;
  margin: 1em 0;
  cursor: pointer;
}
@media (min-width: 767px) {
  .signupform .alttrade {
    padding: 16px 4em;
    margin: 1em 0;
    display: inline-block;
  }
}
.signupform .alttrade h4 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.25em;
  font-weight: 600;
  margin: 0;
  color: #FFF;
}
@media (min-width: 767px) {
  .signupform .alttrade h4 {
    font-size: 1.5em;
  }
}
.signupform .alttrade p {
  margin: 1em 0 0;
  font-size: 12px;
  font-weight: 500;
}
@media (min-width: 767px) {
  .signupform .alttrade p {
    font-size: 16px;
  }
}
.signupform .alttrade:hover {
  background: #1e40e6;
}
.signupform input {
  border: 1px solid #FFF;
  border-radius: 10px;
  width: 100%;
  padding: 1.5em 0.5em 1.5em 2em;
  color: #353535;
  font-size: 1em;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-weight: 600;
  box-sizing: border-box;
}
.signupform input.error {
  border: 1px solid #de2100;
  border-radius: 10px 10px 0px 0px;
}
.signupform .text.field {
  max-width: 500px;
  text-align: left;
  margin: 0px auto;
}
.signupform .callcenter-error {
  color: #FFF;
  display: none;
  width: 24em;
  margin: 0px auto;
  font-size: 1em;
  font-weight: 600;
  background: #de2100;
  border-radius: 4px;
  padding: 8px 0;
}
.signupform .notqualified {
  padding: 2em 0;
}
.signupform .radioboxes {
  text-align: center;
}
.signupform .radiobox {
  display: inline-block;
  width: 12em;
}
.signupform .radiobox:first-child {
  margin-right: 1em;
}
.signupform .radiobox input[type=radio] {
  display: none;
}
.signupform .radiobox label {
  padding: 1em;
  border: 1px solid #13257f;
  background: #1932AF;
  border-radius: 4px;
  font-size: 16px;
  cursor: pointer;
  position: relative;
}
.signupform .radiobox input[type=radio]:checked + label {
  background: #228bfc;
}
.signupform .radiobox input[type=radio]:checked + label::before {
  color: #FFF;
  content: url('data:image/svg+xml;utf8,<svg width="17" height="17" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 0A8.52 8.52 0 0 0 0 8.5C0 13.17 3.82 17 8.5 17S17 13.17 17 8.5 13.18 0 8.5 0zM7.29 13L3 8.67l1.2-1.2 3.09 3.1L13.8 4 15 5.21 7.29 13z" fill="%23FFF" fill-rule="evenodd"/></svg>');
  font-size: 24px;
  position: absolute;
  top: 50%;
  left: 15%;
  transform: translateY(-50%);
  height: 50px;
  width: 50px;
  line-height: 50px;
  text-align: center;
}
.signupform span.error {
  color: #FFF;
  display: block;
  font-size: 1em;
  margin: 0;
  font-weight: 600;
  background: #de2100;
  border-radius: 0px 0px 10px 10px;
  padding: 6px 6px 8px 2em;
  margin-top: -4px;
}
.signupform label {
  display: block;
  margin: 1.5em 0 1em;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-weight: 600;
}
.signupform label span.note {
  font-weight: 400;
}
.signupform fieldset {
  border: none;
  display: none;
}
.signupform fieldset.step1 {
  display: block;
}
.signupform .step2 button, .signupform .step3 button {
  margin-top: 1em;
}
.signupform .goback {
  cursor: pointer;
}
.signupform .rangeslider {
  margin: 2em 0 1em;
}
.signupform .leadpricedisplay {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.75em;
  font-weight: 600;
  margin: 1em 0 0;
  color: #FFF;
}
.signupform .leadpricedetail {
  color: #FFF;
  font-size: 16px;
  font-family: "nevis", Helvetica, Arial, sans-serif;
}
.signupform button.continue {
  outline: none;
  border: 0px none;
  border-radius: 0px;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  color: #FFF;
  background: #FC2243;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  font-size: 14px;
  padding: 1.25em 5.5em;
  font-weight: 500;
  transition: box-shadow 0.15s;
  cursor: pointer;
  text-transform: uppercase;
}
@media (min-width: 767px) {
  .signupform button.continue {
    font-size: 18px;
  }
}
.signupform button.continue:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}
.signupform button.continue.bottom {
  margin-top: 0.5em;
}
.signupform .step4 h4 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.75em;
  font-weight: 600;
  margin: 0.5em 0 1em;
  color: #353535;
}
.signupform .step4 .successicon {
  margin: 1em 0;
}
.signupform .step4 .successicon svg {
  width: 100%;
  max-width: 200px;
}

#signupform .signupform {
  padding: 0em;
}
#signupform .signupform h1 {
  display: none;
}
#signupform .signupform label {
  margin: 0.5em 0;
}
#signupform .signupform .leadpricedisplay {
  font-size: 1.25em;
}
#signupform .signupform p {
  margin: 0.5em 0;
}
#signupform .signupform .step1 label {
  text-align: center;
}

section.gettingstarted {
  background: #FFA400;
  color: #FFF;
  text-align: center;
  padding: 3em 0;
}
section.gettingstarted h1 {
  margin: 0 0 1em;
}
section.gettingstarted .howitworks-steps .step {
  padding: 2%;
  box-sizing: border-box;
}
@media (min-width: 767px) {
  section.gettingstarted .howitworks-steps .step {
    display: inline-block;
    vertical-align: top;
    width: 30%;
    padding: 0 2%;
  }
}
section.gettingstarted .howitworks-steps .step .icon {
  display: inline-block;
  border: 2px solid #FFF;
  border-radius: 40px;
  text-align: center;
  width: 44px;
  height: 44px;
  line-height: 44px;
  font-size: 26px;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-weight: 400;
}
section.gettingstarted .howitworks-steps .step h2 {
  font-size: 28px;
  font-weight: 400;
  margin: 0.125em 0;
}
@media (min-width: 767px) {
  section.gettingstarted .howitworks-steps .step h2 {
    font-size: 36px;
  }
}
section.gettingstarted .howitworks-steps .step p {
  margin: 0.75em 0;
  font-weight: 400;
  line-height: 1.4;
}
@media (max-width: 767px) {
  section.gettingstarted .howitworks-steps .arrow {
    display: none;
  }
}
@media (min-width: 767px) {
  section.gettingstarted .howitworks-steps .arrow {
    display: inline-block;
    padding-top: 2.5em;
    width: 4%;
  }
}
section.gettingstarted .free {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 16px;
  display: inline-block;
  border: 1px solid #3C89A4;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 400;
  padding: 0.5em 3.5em;
  margin-top: 0.5em;
}
@media (min-width: 767px) {
  section.gettingstarted .free {
    font-size: 18px;
  }
}
section.gettingstarted button.signup {
  margin-top: 1em;
  background: #FF6100;
}

div.vignette {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  pointer-events: none;
  z-index: 40;
  box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.3);
}
@media (min-width: 767px) {
  div.vignette {
    box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.3);
  }
}

div.unmute, div.playfromstart {
  position: absolute;
  display: block;
  top: 22px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
  background: rgba(0, 0, 0, 0.6);
  opacity: 1;
  border-radius: 12px;
  padding: 10px 18px;
  font-weight: bold;
  cursor: pointer;
}
@media (min-width: 767px) {
  div.unmute, div.playfromstart {
    top: 34px;
    padding: 12px 24px;
  }
}
div.unmute svg, div.playfromstart svg {
  width: 18px;
  vertical-align: middle;
}
@media (min-width: 767px) {
  div.unmute svg, div.playfromstart svg {
    width: 30px;
  }
}
div.unmute span, div.playfromstart span {
  display: inline-block;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 14px;
  padding-left: 1em;
  vertical-align: middle;
  color: #FFF;
}
@media (min-width: 767px) {
  div.unmute span, div.playfromstart span {
    font-size: 18px;
  }
}
div.unmute:hover, div.playfromstart:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.8);
}

div.playfromstart {
  display: none;
}

div.mute {
  position: absolute;
  display: none;
  top: 20px;
  left: 20px;
  z-index: 99999;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 4px;
  padding: 8px 12px;
  font-weight: bold;
  cursor: pointer;
}

section.leadin {
  background: #FCFCFC;
  text-align: center;
  padding: 3em 0;
  border-bottom: 1px solid #979797;
}
section.leadin h1 {
  margin: 0 0 1em;
}
@media (min-width: 767px) {
  section.leadin .box {
    width: 45%;
    display: inline-block;
    vertical-align: top;
  }
  section.leadin .box.vetted {
    margin-right: 9%;
  }
}
section.leadin .box img {
  max-width: 95%;
}
section.leadin h3 {
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
}
section.leadin p {
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
}

section.services {
  background: #3BA5A7;
  color: #FFF;
  text-align: center;
  padding: 3em 0;
  border-bottom: 1px solid #979797;
}
section.services h1 {
  margin: 0;
}
section.services p {
  margin: 1.5em 0;
}
section.services ul {
  list-style-type: disc;
  margin: 0px;
  padding: 0px;
  max-width: 800px;
  margin: 0px auto;
}
section.services ul li {
  display: inline-block;
  width: 30%;
  font-size: 1.125em;
  line-height: 1.6;
  font-weight: 400;
}
section.services ul li:nth-child(3n-1) {
  margin: 0 4.5%;
}
section.services button {
  margin-top: 0.25em;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 3em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
@media (min-width: 767px) {
  section.services button {
    font-size: 18px;
  }
}
section.services button:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}

section.about {
  background: #3BA5A7;
  color: #FFF;
  text-align: center;
  padding: 3em 0;
}
section.about h1 {
  margin: 0 0 1em;
}
section.about h3 {
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
}
section.about p {
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
}

section.featuredprojects {
  text-align: center;
  padding: 3em 0;
}

.carousel-wrapper {
  position: relative;
}
.carousel-wrapper .slide {
  float: left;
  width: 100%;
}
.carousel-wrapper .twentytwenty-container {
  max-width: 900px;
  margin: 0px auto;
  z-index: 1;
  padding-top: 66.7%;
  box-sizing: border-box;
}
@media (min-width: 767px) {
  .carousel-wrapper .twentytwenty-container {
    /*
          height: 600px;
          width: 900px;
    */
  }
}
.carousel-wrapper .beforeafter-carousel {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
  max-width: 900px;
  margin: 0px auto;
  margin-top: 2em;
  padding-top: 67%;
  box-sizing: border-box;
  width: 90%;
}
@media (min-width: 767px) {
  .carousel-wrapper .beforeafter-carousel {
    width: 95%;
  }
}
@media (min-width: 1200px) {
  .carousel-wrapper .beforeafter-carousel {
    width: 100%;
  }
}
.carousel-wrapper .beforeafter-carousel .carousel-inner {
  width: 100%;
  height: 100%;
  position: absolute !important;
  top: 0;
}
.carousel-wrapper .beforeafter-carousel img {
  width: 100%;
  height: auto;
}
.carousel-wrapper .carousel-nav {
  width: 100%;
  max-width: 1112px;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  margin-top: -14px;
}
.carousel-wrapper .carousel-nav .disabled {
  opacity: 0.3;
}
.carousel-wrapper .carousel-nav .next {
  float: right;
  margin-right: -6px;
}
@media (min-width: 1200px) {
  .carousel-wrapper .carousel-nav .next {
    margin-right: -24px;
  }
}
.carousel-wrapper .carousel-nav .prev {
  float: left;
  margin-left: -6px;
}
@media (min-width: 1200px) {
  .carousel-wrapper .carousel-nav .prev {
    margin-left: -24px;
  }
}

.carousel-indicator {
  margin: 1.25em 0 0;
}
@media (min-width: 767px) {
  .carousel-indicator {
    margin: 2em 0 0;
  }
}
.carousel-indicator .indicator {
  display: inline-block;
  border: 2px solid #000;
  width: 8px;
  height: 8px;
  opacity: 0.46;
  border-radius: 20px;
  margin: 0 0.25em;
}
@media (min-width: 767px) {
  .carousel-indicator .indicator {
    width: 12px;
    height: 12px;
  }
}
.carousel-indicator .indicator.active {
  opacity: 0.95;
  background: #0C6083;
  border-color: #0C6083;
}
.carousel-indicator .indicator:hover {
  opacity: 1;
}

#signupform {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s;
  opacity: 0;
}
#signupform.show {
  opacity: 1;
}
#signupform .dimmer {
  position: absolute;
  z-index: 1;
  background: rgba(0, 0, 0, 0.83);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  opacity: 1;
}
#signupform .form {
  position: absolute;
  z-index: 2;
  box-shadow: 0 2px 4px 3px rgba(0, 0, 0, 0.09);
  background: #0C67D6;
  color: #FFF;
  top: 50%;
  left: 50%;
  width: 90%;
  height: 500px;
  border-radius: 5px;
  transform: translateY(-50%) translateX(-50%);
}
@media (min-width: 767px) {
  #signupform .form {
    max-width: 750px;
    height: 550px;
  }
}
#signupform .form input {
  padding: 1.25em 0.5em 1.25em 1.5em;
}
@media (max-width: 350px) {
  #signupform .form input {
    padding: 1em 0.5em 1em 1.5em;
  }
}
#signupform .form span.error {
  padding: 4px 4px 4px 1.25em;
  margin-bottom: -0.5em;
}
#signupform .form .header {
  padding: 1.25em 1.25em 0.5em;
  background: #0C67D6;
}
#signupform .form .header h2 {
  font-weight: 400;
  font-size: 24px;
  padding: 8px 0 0 0;
  margin: 0px;
  text-align: center;
}
#signupform .form .header .closebutton {
  position: absolute;
  right: 16px;
  top: 20px;
  color: #FFF;
  cursor: pointer;
}
#signupform .form .header .closebutton:hover {
  color: #000;
}
#signupform .form .content {
  padding: 0.75em 1.25em;
}
#signupform .form .content .content-inner {
  position: relative;
  height: 400px;
  overflow: hidden;
}
@media (min-width: 767px) {
  #signupform .form .content .content-inner {
    height: 480px;
  }
}
#signupform .form .content .step {
  position: absolute;
  left: 110%;
  width: 100%;
  height: 360px;
  top: 0px;
  transition: left 0.5s;
}
#signupform .form .content .step.showing {
  left: 0px;
}
#signupform .form .content .step.hidden {
  left: -110%;
}
#signupform .form .content .step p {
  font-weight: 400;
  color: #a0a0a0;
  margin: 0.25em 0 1.25em;
}
#signupform .form .content .step2 {
  text-align: center;
}
#signupform .form .content .step2 .successicon {
  text-align: center;
  padding: 2em 0 1em;
}
#signupform .form .content .step2 p {
  padding: 1em;
  line-height: 1.4;
}
#signupform .form .content .field {
  padding-bottom: 0.75em;
}
#signupform .form .bottom {
  width: 100%;
  position: absolute;
  bottom: 0px;
  left: 0px;
  box-sizing: border-box;
  padding: 1.25em;
}
#signupform .form .bottom button {
  display: block;
  background: #FC2243;
  width: 100%;
  border: 0px none;
  color: #FFF;
  font-size: 18px;
  font-weight: 600;
  border-radius: 3px;
  padding: 0.75em 0;
  cursor: pointer;
}
#signupform .form .bottom button:hover {
  text-decoration: underline;
  -webkit-appearance: none;
}
#signupform .form .bottom button.loading {
  background: #e66466;
  cursor: default;
}
#signupform .form .bottom button.loading:hover {
  text-decoration: none;
}
#signupform .form .bottom button.close {
  border: 1px solid 979797;
  background: #FFF;
  color: #979797;
  font-weight: 400;
}

#bottomcta {
  background-position: center center;
  background-size: cover;
  text-align: center;
}
#bottomcta .cta-inner {
  padding: 1em 0;
  background: rgba(255, 255, 255, 0.8);
}
@media (min-width: 767px) {
  #bottomcta .cta-inner {
    padding: 4em 0;
  }
}
#bottomcta button {
  margin: 0.75em 0 2em;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 3em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
#bottomcta button:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}
@media (min-width: 767px) {
  #bottomcta button {
    font-size: 18px;
  }
}
#bottomcta h2 {
  color: #000;
  font-size: 1em;
  margin: 0;
  line-height: 2;
  font-weight: 700;
}
#bottomcta h2.call {
  color: #0E1428;
  font-size: 18px;
}
#bottomcta h2.call span {
  font-weight: 600;
}
#bottomcta h2.call a {
  color: #0E1428;
  text-decoration: none;
}
@media (min-width: 767px) {
  #bottomcta h2 {
    font-size: 1.5em;
    line-height: 1.4;
  }
}
@media (min-width: 992px) {
  #bottomcta h2 {
    font-size: 2.25em;
    line-height: 1.4;
  }
}

    footer {
        height: 250px;
    }

@media (min-width: 767px) {
    footer {
        height: 400px;
    }
}
.static-footer {
    position: absolute;
    width: 100%;
    left: 0px;
    bottom: 0px;

  background: #232728;
  color: #FFF;
  text-align: center;
  padding: 4em 0 2em;
  font-size: 10.5px;
}
@media (min-width: 767px) {
 .static-footer {
  font-size: 12.25px;
 }
}
footer .logo img {
  width: 100px;
  height: 72px;
}
@media (min-width: 767px) {
  footer .logo img {
    width: 171px;
    height: 129px;
  }
}
footer nav {
  margin: 2em 0 1.5em;
  display: none;
}
@media (min-width: 767px) {
  footer nav {
    display: block;
  }
}
footer nav ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
footer nav ul li {
  margin: 0;
  padding: 0.5em 1.5em;
  display: inline-block;
}
footer nav ul li a {
  color: #FFF;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 600;
  cursor: pointer;
}
footer .contact h3 {
  font-size: 1.286em;
  margin: 0.375em 0;
  padding: 0px;
}
footer .contact h3 a {
  text-decoration: none;
  color: #FFF;
}
footer .contact a {
  text-decoration: none;
  color: #FFF;
}
footer .columns {
  margin-top: 2.5em;
}
@media (min-width: 767px) {
  footer .columns .column {
    display: inline-block;
    vertical-align: top;
    width: 30%;
    max-width: 280px;
  }
}
footer .columns h4 {
  color: #7A7A7A;
  font-size: 1em;
  font-weight: 600;
  margin: 0.5em 0;
}
footer .columns img {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  margin: 0 0.25em;
}
footer .columns input {
  background: #232728;
  outline: none;
  border: 0px none;
  border-bottom: 1px solid #7A7A7A;
  text-align: center;
  color: #FFF;
  font-size: 12px;
  padding: 0 1.25em 0.5em;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-weight: 400;
}
footer .columns input::placeholder {
  color: #FFF;
}
footer .copyright {
  font-size: 0.75em;
  color: #7A7A7A;
  margin-top: 2em;
}

.category-masthead {
  overflow: hidden;
}
@media (min-width: 767px) {
  .category-masthead {
    max-height: 420px;
  }
}
.category-masthead img {
  width: 100%;
}

h1.category-header {
  text-align: center;
  padding: 1em 0;
  font-size: 1.25em;
}
@media (min-width: 767px) {
  h1.category-header {
    font-size: 2.5em;
  }
}

section.project-map {
  background: #4F6D7A;
  color: #FFF;
  text-align: center;
}
@media (min-width: 767px) {
  section.project-map {
    padding: 2em;
  }
}
section.project-map h1 {
  margin: 0px;
  padding: 1em 0;
  font-size: 1.75em;
  font-weight: 100;
}
@media (min-width: 767px) {
  section.project-map h1 {
    padding: 0.5em 0;
    font-size: 3em;
  }
}
section.project-map h1 img {
  width: 33px;
  height: 23px;
  vertical-align: middle;
  margin-top: -6px;
}
@media (min-width: 767px) {
  section.project-map h1 img {
    margin-top: -12px;
    width: 96px;
    height: 66px;
  }
}

.customer-reviews {
  background: #FFF;
  text-align: center;
  padding: 0 1.25em;
}
@media (min-width: 767px) {
  .customer-reviews {
    padding: 0 1em;
  }
}
.customer-reviews .customer-reviews-inner {
  max-width: 995px;
  margin: 0px auto;
}
.customer-reviews h1 {
  margin: 0px;
  padding: 1.25em 0 0.5em;
  font-size: 1.75em;
  font-weight: 100;
}
@media (min-width: 767px) {
  .customer-reviews h1 {
    font-size: 3em;
    padding: 1.25em 0;
  }
}
.customer-reviews h1 img {
  width: 33px;
  height: 23px;
  vertical-align: middle;
  margin-top: -6px;
}
@media (min-width: 767px) {
  .customer-reviews h1 img {
    margin-top: -12px;
    width: 96px;
    height: 66px;
  }
}
.customer-reviews .reviewlogos {
  width: 95%;
  max-width: 825px;
}
@media (min-width: 767px) {
  .customer-reviews .reviewlogos {
    width: 85%;
  }
}
.customer-reviews h4 {
  font-size: 1.125em;
  text-transform: uppercase;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  color: #959595;
  font-weight: 500;
  margin: 0.75em 0;
}
.customer-reviews svg.combined {
  width: 60%;
  max-width: 309px;
}
@media (min-width: 767px) {
  .customer-reviews svg.combined {
    width: 75%;
  }
}
.customer-reviews .reviews {
  padding: 2em 0 0.75em;
}
@media (min-width: 767px) {
  .customer-reviews .reviews {
    padding: 2em 0;
  }
}
.customer-reviews .review {
  width: 100%;
  text-align: right;
  margin-bottom: 1em;
}
@media (min-width: 767px) {
  .customer-reviews .review {
    margin-bottom: 0;
    display: inline-block;
    width: 45%;
  }
  .customer-reviews .review:nth-child(1) {
    margin-right: 9%;
  }
}
.customer-reviews .review .quote {
  text-align: left;
  padding: 1em;
  border: 1px solid #D6D6D6;
  border-radius: 20px;
  line-height: 1.6;
  font-size: 0.825em;
  color: #585858;
  margin-bottom: 1.75em;
  position: relative;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
}
@media (min-width: 767px) {
  .customer-reviews .review .quote {
    font-size: 1.125em;
  }
}
.customer-reviews .review .quote:before {
  content: "";
  position: absolute;
  bottom: -15px;
  right: 30px;
  border-width: 15px 15px 0;
  border-style: solid;
  border-color: #D6D6D6 transparent;
  display: block;
  width: 0;
}
.customer-reviews .review .quote:after {
  content: "";
  position: absolute;
  bottom: -14px;
  right: 31px;
  border-width: 14px 14px 0;
  border-style: solid;
  border-color: #fff transparent;
  display: block;
  width: 0;
}
.customer-reviews .review .cite {
  font-size: 0.875em;
  family: "Roboto", Helvetica, Arial, sans-serif;
  color: #4F4F4F;
}
.customer-reviews .review .score {
  margin: 0.25em 0;
}
.customer-reviews .review .logo img {
  max-width: 40px;
}
@media (min-width: 767px) {
  .customer-reviews .review .logo img {
    max-width: 60px;
  }
}

.contact-form {
  background: #F8F8F8;
  text-align: center;
}
.contact-form h1 {
  padding: 1.25em 0 0.5em;
  font-weight: 100;
  font-size: 1.75em;
  width: 77%;
  margin: 0px auto;
}
@media (min-width: 767px) {
  .contact-form h1 {
    font-size: 2.25em;
  }
}
@media (min-width: 992px) {
  .contact-form h1 {
    font-size: 3em;
  }
}
.contact-form .desktop-call {
  display: none;
  font-size: 2.25em;
  font-weight: 500;
}
.contact-form .desktop-call svg {
  vertical-align: middle;
  margin-left: -16px;
}
.contact-form .mobile-call {
  font-size: 1.75em;
  color: #000;
  letter-spacing: 1px;
  text-decoration: none;
  font-weight: 500;
  border: 2px solid #000;
  background: #fbfbfb;
  border-radius: 8px;
  display: inline-block;
  padding: 0.25em 0.5em;
}
.contact-form .mobile-call svg {
  vertical-align: middle;
}
.contact-form h4 {
  font-size: 1em;
  text-transform: uppercase;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  color: #959595;
  font-weight: 400;
  margin: 0.75em 0 0;
}
@media (min-width: 767px) {
  .contact-form h4 {
    font-size: 1.125em;
    margin: 0.75em 0;
  }
}
.contact-form form {
  padding: 0 1em 0.75em;
}
@media (min-width: 767px) {
  .contact-form form {
    padding: 0 0 3em;
  }
}
.contact-form form .form-inner {
  position: relative;
}
.contact-form form p {
  color: #494949;
  font-size: 0.85em;
}
@media (min-width: 767px) {
  .contact-form form p {
    font-size: 1em;
  }
}
.contact-form form input {
  display: block;
  margin: 0.5em auto;
  width: 100%;
  height: 52px;
  padding: 0.25em 0.75em;
  box-sizing: border-box;
  border: 1px solid #979797;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 1em;
  color: #000;
  outline: none;
  border-radius: 0;
}
@media (min-width: 767px) {
  .contact-form form input {
    width: 365px;
  }
}
.contact-form form input:placeholder {
  color: #979797;
}
.contact-form form textarea {
  display: block;
  margin: 0.5em auto;
  width: 100%;
  height: 108px;
  padding: 0.25em 0.75em;
  box-sizing: border-box;
  border: 1px solid #979797;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 1em;
  color: #000;
  border-radius: 0;
  outline: none;
}
.contact-form form textarea:placeholder {
  color: #979797;
}
@media (min-width: 767px) {
  .contact-form form textarea {
    width: 365px;
  }
}
.contact-form form button {
  display: block;
  margin: 0.5em auto;
  width: 100%;
  height: 52px;
  padding: 0.25em 0.75em;
  box-sizing: border-box;
  border: 0px none;
  outline: none;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 1em;
  color: #FFF;
  background: #DB504A;
  border-radius: 0;
}
@media (min-width: 767px) {
  .contact-form form button {
    width: 365px;
  }
}
.contact-form form .success {
  display: none;
  background: #FFF;
  position: absolute;
  height: 100%;
  color: #000;
  text-align: center;
  top: 0px;
  left: 0px;
  width: 100%;
  box-sizing: border-box;
  padding: 9em 1em 0;
}
.contact-form form .success p {
  font-weight: 600;
  color: #000;
}
@media (min-width: 767px) {
  .contact-form form .success {
    padding: 8em 1em 0;
    left: 50%;
    width: 365px;
    margin-left: -182.5px;
  }
}
@media (min-width: 767px) {
  .contact-form .mobile-call {
    display: none;
  }
  .contact-form .desktop-call {
    display: block;
  }
}

#customermap {
  position: relative;
  height: 360px;
}

#customermap .gmap {
  width: 100%;
  height: 360px;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 1;
}

.zoomnotification {
  background: rgba(0, 0, 0, 0.8);
  border-radius: 10px;
  padding: 1.5em;
  font-size: 14px;
  color: #FFF;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 99;
  font-family: Arial, Helvetica, sans-serif;
  width: 180px;
  text-align: center;
  margin-left: -90px;
  margin-top: -29px;
  display: none;
  box-sizing: border-box;
}

.geolocate {
  background: #FFF;
  color: #0E1428;
  padding: 1px 6px;
  border: 1px solid #717B87;
  position: absolute;
  left: 50%;
  bottom: 1em;
  z-index: 9;
  cursor: pointer;
  font-family: Arial, Roboto, Helvetica, sans-serif;
  padding: 0.5em 0;
  font-size: 14px;
  width: 180px;
  text-align: center;
  margin-left: -90px;
}

#legend {
  text-align: left;
  color: #0E1428;
}

#legend h3 {
  margin-top: 0;
}

#legend img {
  vertical-align: middle;
}

/*
--
END PROFILE PAGE
--
*/
#content.home section.sweepstakes {
  background: url(../img/hrhsweeps.jpg) center center no-repeat;
  background-size: cover;
  position: relative;
  height: 280px;
}
#content.home section.sweepstakes .logo {
  width: 32%;
  position: absolute;
  left: 0px;
  top: 50%;
  text-align: right;
  transform: translateY(-50%);
}
#content.home section.sweepstakes .logo img {
  width: 100%;
  max-width: 260px;
}
#content.home section.sweepstakes .copy {
  width: 63%;
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.79);
  box-sizing: border-box;
}
#content.home section.sweepstakes .copy .copy-inner {
  width: 90%;
  max-width: 700px;
  box-sizing: border-box;
  padding: 1em 0 1em 2.5em;
}
#content.home section.sweepstakes .copy h5 {
  font-size: 12px;
  margin: 0.5em 0;
}
#content.home section.sweepstakes .copy h1 {
  font-size: 16px;
  font-weight: 600;
  color: #FC2243;
  margin: 0.5em 0;
  line-height: 1.1;
}
@media (min-width: 767px) {
  #content.home section.sweepstakes .copy h1 {
    font-size: 24px;
  }
}
#content.home section.sweepstakes .copy p {
  font-weight: 400;
}
#content.home section.masthead {
  background: url(../img/partnerstop.jpg) top center no-repeat;
  background-size: contain;
  padding-top: 45%;
}
@media (max-width: 767px) {
  #content.home section.masthead {
    border-bottom: 1px solid #979797;
    margin-top: -20px;
  }
}
@media (min-width: 767px) {
  #content.home section.masthead {
    background: url(../img/partnerstop.jpg) center center no-repeat;
    background-size: cover;
    height: 500px;
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  #content.home section.masthead .inner {
    padding: 0;
  }
}
@media (max-width: 767px) {
  #content.home section.masthead .spacer {
    padding-top: 0;
    position: static;
  }
}
@media (max-width: 767px) {
  #content.home section.masthead .spacer h1 {
    position: static;
  }
}
#content.home section.masthead .overlay {
  padding: 1em;
}
@media (max-width: 767px) {
  #content.home section.masthead .overlay {
    background: #FFF;
  }
}
@media (min-width: 767px) {
  #content.home section.masthead .overlay {
    padding: 2em 1em;
    position: absolute;
    bottom: 0px;
    width: 100%;
    left: 0px;
  }
}
#content.home section.masthead .overlay p {
  font-weight: 400;
  max-width: 850px;
  margin: 1em auto;
  line-height: 1.375;
}
@media (min-width: 767px) {
  #content.home section.masthead .overlay p {
    font-size: 16px;
  }
}
#content.home section.masthead .overlay p a {
  color: #FC2243;
  text-decoration: none;
  font-weight: 400;
}
#content.home section.summary h1 {
  margin: 0px;
  padding: 1.25em 0 0.5em;
  font-size: 1.75em;
  font-weight: 400;
  text-align: center;
}
@media (min-width: 767px) {
  #content.home section.summary h1 {
    font-size: 3em;
    padding: 1.5em 0 1em;
  }
}
#content.home section.summary h1 img {
  width: 33px;
  height: 23px;
  vertical-align: middle;
  margin-top: -6px;
  margin-right: 0.325em;
}
@media (min-width: 767px) {
  #content.home section.summary h1 img {
    margin-top: -12px;
    width: 96px;
    height: 66px;
  }
}
#content.home section.summary .review {
  max-width: 900px;
  box-sizing: border-box;
  margin: 0px auto 3em;
  padding: 0.5em 0 0.5em 2em;
  border-left: 3px solid #FFCC00;
}
#content.home section.summary .review p {
  color: #000;
  line-height: 1.4;
  font-weight: 400;
}
#content.home section.howitworks {
  text-align: left;
  color: #FFF;
  padding: 3em 0;
}
#content.home section.howitworks h3 {
  font-size: 18px;
  font-weight: 800;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
}
#content.home section.howitworks p {
  line-height: 1.4;
  font-weight: 400;
}
#content.home section.howitworks ul {
  list-style-type: none;
  margin: 1.5em 0 1em;
  padding: 0px;
}
#content.home section.howitworks ul li {
  margin: 0.75em 0;
  font-weight: 500;
}
#content.home section.howitworks ul li:before {
  content: url('data:image/svg+xml;utf8,<svg width="17" height="17" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 0A8.52 8.52 0 0 0 0 8.5C0 13.17 3.82 17 8.5 17S17 13.17 17 8.5 13.18 0 8.5 0zM7.29 13L3 8.67l1.2-1.2 3.09 3.1L13.8 4 15 5.21 7.29 13z" fill="#FFF" fill-rule="evenodd"/></svg>');
  width: 16px;
  height: 16px;
  margin-right: 10px;
  position: relative;
  top: 3px;
}
#content.home section.ppc .howitworks {
  background: #084C61;
}
#content.home section.ppc .howitworks img {
  width: 100%;
}
@media (min-width: 767px) {
  #content.home section.ppc .howitworks .image {
    width: 45%;
    display: inline-block;
    margin-right: 9%;
  }
  #content.home section.ppc .howitworks .copy {
    width: 45%;
    display: inline-block;
    vertical-align: top;
  }
}
#content.home section.ppc .howitworks h3 {
  font-weight: 600;
}
@incoude bp(most) {
  #content.home section.ppc .howitworks h3 {
    margin-top: 0;
  }
}
#content.home section.ppc button.signup {
  margin-top: 0.5em;
}
#content.home .techexample {
  padding: 3em 0;
  text-align: center;
}
#content.home .techexample h2 {
  font-size: 24px;
  font-weight: 400;
  margin-top: 0;
}
#content.home .techexample p {
  max-width: 700px;
  margin: 1em auto;
  line-height: 1.4;
  font-weight: 400;
}
#content.home .techexample:nth-of-type(odd) {
  background: #f8f8f8;
}
#content.home .techexample #customermap {
  max-width: 900px;
  margin: 2em auto 0;
}
#content.home .techexample .customer-reviews {
  background: none;
}
#content.home .techexample .customer-reviews .quote {
  background: #FFF;
}
#content.home section.partners.fixed {
  position: fixed;
  background: #FFF;
  z-index: 1;
  width: 100%;
  margin-top: -280px;
}

section.trustedby {
  padding: 2em 0;
  text-align: center;
  background: #1d1d1d;
  color: #FFF;
}
@media (min-width: 767px) {
  section.trustedby {
    padding: 4em 0;
  }
}
section.trustedby h1 {
  margin: 0.5em 0;
}
section.trustedby ul {
  list-style-type: none;
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 2em 0 1em;
}
section.trustedby ul li {
  display: inline-block;
  vertical-align: middle;
  width: 32%;
  margin: 0 5% 2%;
}
@media (min-width: 767px) {
  section.trustedby ul li {
    width: 16%;
    margin: 0 1.5%;
  }
}
section.trustedby ul li img {
  max-width: 100%;
  opacity: 0.95;
}
section.trustedby ul li img.smaller {
  max-width: 83%;
}
@media (max-width: 767px) {
  section.trustedby ul li:nth-of-type(4) {
    display: none;
  }
}

section.infoboxes {
  background: #1932AF;
  color: #FFF;
  text-align: center;
  padding: 3em 0;
}
section.infoboxes h1 {
  margin: 0 0 1em;
}
@media (min-width: 767px) {
  section.infoboxes .box {
    width: 45%;
    display: inline-block;
    vertical-align: top;
  }
  section.infoboxes .box:nth-of-type(odd) {
    margin-right: 9%;
  }
}
section.infoboxes .box img {
  max-width: 95%;
}
section.infoboxes h3 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
}
@media (min-width: 767px) {
  section.infoboxes h3 {
    font-size: 26px;
  }
}
section.infoboxes p {
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
}
section.infoboxes p a {
  color: #FC2243;
  font-weight: 500;
  text-decoration: none;
}
section.infoboxes .signup {
  margin-top: 0em;
}

section.pricinghighlights {
  background: #009E5E;
  color: #FFF;
  text-align: center;
  padding: 3em 0;
}
section.pricinghighlights h1 {
  margin: 0 0 1em;
}
section.pricinghighlights ul {
  list-style-type: none;
  margin: 1.5em 0 1em;
  padding: 0px;
  text-align: center;
}
section.pricinghighlights ul li {
  margin: 0.75em 0;
  text-align: left;
  font-weight: 400;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.5em;
}
@media (min-width: 767px) {
  section.pricinghighlights ul li {
    display: inline-block;
    width: 45%;
    margin: 1% 2%;
    vertical-align: top;
  }
}
section.pricinghighlights ul li:before {
  content: url('data:image/svg+xml;utf8,<svg width="17" height="17" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 0A8.52 8.52 0 0 0 0 8.5C0 13.17 3.82 17 8.5 17S17 13.17 17 8.5 13.18 0 8.5 0zM7.29 13L3 8.67l1.2-1.2 3.09 3.1L13.8 4 15 5.21 7.29 13z" fill="%23FFF" fill-rule="evenodd"/></svg>');
  width: 16px;
  height: 16px;
  margin-right: 10px;
  position: relative;
  top: 3px;
}

section.pricingtable {
  background: #007FDD;
  color: #FFF;
  text-align: center;
  padding: 4.5em 0 3em;
  border-bottom: 1px solid #979797;
}
section.pricingtable h3 {
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
}
section.pricingtable p {
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
  font-size: 18px;
}
section.pricingtable .inner {
  max-width: 800px;
}
section.pricingtable table {
  width: 100%;
  border: 0px none;
  border-radius: 8px;
  background: #FFF;
  color: #000;
}
section.pricingtable table td, section.pricingtable table th {
  font-weight: 400;
  padding: 1em;
  text-align: left;
}
@media (min-width: 767px) {
  section.pricingtable table td, section.pricingtable table th {
    font-size: 16px;
  }
}
section.pricingtable table td:last-child, section.pricingtable table th:last-child {
  text-align: right;
}
section.pricingtable table th {
  font-weight: 600;
  color: #FFF;
}
section.pricingtable table tbody tr:nth-child(even) td {
  background: #F5F5F5;
}
section.pricingtable table thead tr {
  background: #2B2B2B;
}
section.pricingtable button.signup {
  margin-top: 0;
}

h2.endtag {
  font-size: 24px;
  font-weight: 400;
  max-width: 650px;
  margin: 2em auto;
}

h3.callnow {
  font-size: 24px;
}
h3.callnow a {
  text-decoration: none;
  color: #0E1428;
}

button.signup {
  margin-top: 2.5em;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 5em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
@media (min-width: 767px) {
  button.signup {
    font-size: 18px;
  }
}
button.signup:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}
button.signup.bottom {
  margin-top: 0.5em;
}

section.servicetypes {
  background: #0C6083;
  color: #FFF;
  padding: 3em 0;
  text-align: center;
}
section.servicetypes h3 {
  font-size: 1.825em;
  font-weight: 600;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
}
section.servicetypes ul {
  list-style-type: none;
  margin: 1.5em auto 1em;
  padding: 0px;
  max-width: 600px;
}
section.servicetypes ul li {
  margin: 0.75em 0;
  font-weight: 500;
  vertical-align: middle;
}
@media (min-width: 767px) {
  section.servicetypes ul li {
    text-align: left;
    display: inline-block;
    width: 32%;
  }
}
section.servicetypes ul li:before {
  content: url('data:image/svg+xml;utf8,<svg width="17" height="17" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 0A8.52 8.52 0 0 0 0 8.5C0 13.17 3.82 17 8.5 17S17 13.17 17 8.5 13.18 0 8.5 0zM7.29 13L3 8.67l1.2-1.2 3.09 3.1L13.8 4 15 5.21 7.29 13z" fill="%23FFF" fill-rule="evenodd"/></svg>');
  width: 16px;
  height: 16px;
  margin-right: 10px;
  position: relative;
  top: 3px;
}

button.post {
  margin-top: 0.25em;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 3em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
@media (min-width: 767px) {
  button.post {
    font-size: 18px;
  }
}
button.post:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}
button.post.withcall {
  position: relative;
  margin-bottom: 2em;
  border-radius: 5px 5px 0 0;
}
button.post.withcall a {
  position: absolute;
  background: #ffffff;
  color: #000;
  font-size: 14px;
  font-weight: 400;
  width: 100%;
  left: 0px;
  height: 33px;
  bottom: -34px;
  left: 0%;
  border-radius: 0 0 5px 5px;
  border-width: 1px 0 0 0;
  border-color: #a74141;
  border-style: solid;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  line-height: 33px;
  text-decoration: none;
}
@media (min-width: 767px) {
  button.post.withcall a {
    font-size: 16px;
  }
}
button.post.withcall a i {
  font-size: 1em;
  vertical-align: middle;
}

section.gradientmasthead {
  position: relative;
  padding-top: 58.33%;
  background: #1932AF;
}
@media (min-width: 767px) {
  section.gradientmasthead {
    height: 480px;
    padding-top: 80px;
  }
}
section.gradientmasthead.pricing {
  background: #005B46;
}
section.gradientmasthead.howitworks {
  background: #0C67D6;
}
section.gradientmasthead.register {
  background: #00A562;
  text-align: center;
}
@media (min-width: 767px) {
  section.gradientmasthead.register {
    height: auto;
  }
}
section.gradientmasthead.registercomplete {
  background: #0C67D6;
  text-align: center;
  color: #FFF;
  padding-bottom: 4em;
}
section.gradientmasthead.registercomplete svg {
  max-width: 200px;
  margin: 1em 0;
}
section.gradientmasthead.registercomplete h2 {
  font-weight: 400;
  max-width: 550px;
  margin: 1em auto;
}
@media (min-width: 767px) {
  section.gradientmasthead.registercomplete {
    padding-top: 12em;
    padding-bottom: 6.5em;
  }
}
section.gradientmasthead ul {
  list-style-type: none;
  margin: 1.5em 0 1em;
  padding: 0px;
}
@media (max-width: 767px) {
  section.gradientmasthead ul {
    padding-left: 8px;
  }
}
section.gradientmasthead ul li {
  margin: 0.75em 0;
  font-weight: 400;
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.5em;
}
@media (max-width: 767px) {
  section.gradientmasthead ul li span.mobilelinebreak {
    display: block;
    padding-left: 26px;
  }
}
section.gradientmasthead ul li:before {
  content: url('data:image/svg+xml;utf8,<svg width="17" height="17" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 0A8.52 8.52 0 0 0 0 8.5C0 13.17 3.82 17 8.5 17S17 13.17 17 8.5 13.18 0 8.5 0zM7.29 13L3 8.67l1.2-1.2 3.09 3.1L13.8 4 15 5.21 7.29 13z" fill="%23FFF" fill-rule="evenodd"/></svg>');
  width: 16px;
  height: 16px;
  margin-right: 10px;
  position: relative;
  top: 3px;
}
section.gradientmasthead .inner {
  max-width: 900px;
  margin: 0px auto;
  position: relative;
  height: 100%;
  padding-top: 30px;
}
@media (min-width: 767px) {
  section.gradientmasthead .inner {
    padding-top: 0;
  }
}
@media (min-width: 767px) {
  section.gradientmasthead img {
    position: absolute;
    max-width: 235px;
    left: 12px;
    bottom: -40px;
  }
}
section.gradientmasthead .copy {
  color: #FFF;
}
@media (min-width: 767px) {
  section.gradientmasthead .copy {
    padding: 0 60px 0 279px;
    position: absolute;
    bottom: 6em;
  }
}
section.gradientmasthead .copy p {
  line-height: 1.375;
  font-weight: 400;
}
@media (min-width: 767px) {
  section.gradientmasthead .copy p {
    font-size: 16px;
  }
}
.home section.gradientmasthead .copy p {
  font-size: 1em;
}
section.gradientmasthead.register .copy {
  text-align: center;
  padding: 4em 0;
}
@media (min-width: 767px) {
  section.gradientmasthead.register .copy {
    display: inline-block;
    padding: 96px 0;
    max-width: 650px;
    position: static;
  }
}
section.gradientmasthead.register h1, section.gradientmasthead.registercomplete h1 {
  font-weight: 400;
  position: static;
  width: 100%;
}
@media (max-width: 350px) {
  section.gradientmasthead {
    padding-top: 3em;
    padding-bottom: 5px;
  }
  section.gradientmasthead img {
    max-width: 30%;
    float: right;
    margin: 0.5em 0.5em 0.5em 1em;
  }
  section.gradientmasthead h1 {
    padding-left: 8px;
  }
}
@media (min-width: 351px) and (max-width: 767px) {
  section.gradientmasthead {
    padding-top: 3em;
    padding-bottom: 5px;
  }
  section.gradientmasthead img {
    max-width: 35%;
  }
  section.gradientmasthead h1 {
    position: absolute;
    width: 58%;
    left: 42%;
    top: 50px;
  }
  .howitworks section.gradientmasthead h1 {
    top: 127px;
  }
}

section.registration, section.paymentinfo {
  text-align: center;
}
section.registration div.businessinformation, section.paymentinfo div.businessinformation {
  padding: 1em;
  background: #005B46;
  color: #FFF;
}
section.registration div.agreement, section.paymentinfo div.agreement {
  background: #1932AF;
  color: #FFF;
  padding: 1em;
}
section.registration div.fieldset, section.paymentinfo div.fieldset {
  color: #000;
  max-width: 560px;
  margin: 2em auto;
  background: #fff;
  border-radius: 12px;
}
@media (min-width: 767px) {
  section.registration div.fieldset label, section.paymentinfo div.fieldset label {
    margin-right: 1em;
    text-align: right;
    display: inline-block;
    vertical-align: middle;
    width: 25%;
    max-width: 100px;
  }
  section.registration div.fieldset label.error, section.paymentinfo div.fieldset label.error {
    margin-right: 0px;
    text-align: left;
    padding-left: 135px;
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}
section.registration div.fieldset label.textarea, section.paymentinfo div.fieldset label.textarea {
  vertical-align: top;
}
section.registration div.fieldset .field, section.paymentinfo div.fieldset .field {
  margin: 0.5em 0;
}
section.registration div.fieldset .fieldgroup, section.paymentinfo div.fieldset .fieldgroup {
  padding: 1em;
}
section.registration div.fieldset .fieldgroup:nth-of-type(even), section.paymentinfo div.fieldset .fieldgroup:nth-of-type(even) {
  background: #f7f7f7;
}
section.registration div.fieldset .fieldgroup:last-child, section.paymentinfo div.fieldset .fieldgroup:last-child {
  border-radius: 0 0 12px 12px;
}
section.registration h2, section.paymentinfo h2 {
  font-size: 3em;
  font-weight: 400;
}
section.registration h4, section.paymentinfo h4 {
  font-family: "nevis", Helvetica, Arial, sans-serif;
  font-size: 1.5em;
  font-weight: 600;
  margin: 0.5em 0 0.25em;
}
section.registration h5, section.paymentinfo h5 {
  font-weight: 400;
  font-size: 1.25em;
  margin: -1.5em 0 1.5em;
}
section.registration aside, section.paymentinfo aside {
  display: block;
  margin: 0.5em auto 0.75em;
  color: #636363;
  font-weight: 400;
  line-height: 1.4;
  width: 90%;
}
section.registration label, section.paymentinfo label {
  display: block;
  margin: 0.75em 0 0.5em;
}
section.registration label.error, section.paymentinfo label.error {
  color: red;
  margin: 0.5em 0 0;
  font-size: 0.825em;
}
section.registration label span.note, section.paymentinfo label span.note {
  font-weight: 400;
  color: #AAA;
}
section.registration input, section.paymentinfo input {
  border: 1px solid #dedede;
  border-radius: 0px;
  padding: 1.25em 0.25em 1.25em 1.5em;
  color: #353535;
  font-size: 1em;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-weight: 400;
  box-sizing: border-box;
  width: 100%;
}
@media (min-width: 767px) {
  section.registration input, section.paymentinfo input {
    width: 75%;
    max-width: 380px;
  }
}
section.registration input.error, section.paymentinfo input.error {
  border: 1px solid #FF0000;
}
section.registration textarea, section.paymentinfo textarea {
  border: 1px solid #dedede;
  border-radius: 0px;
  padding: 1.25em 0.25em 1.25em 1.5em;
  color: #353535;
  font-size: 1em;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-weight: 400;
  box-sizing: border-box;
  height: 7em;
  resize: vertical;
  width: 100%;
}
@media (min-width: 767px) {
  section.registration textarea, section.paymentinfo textarea {
    width: 75%;
    max-width: 380px;
  }
}
section.registration div#serviceagreement, section.paymentinfo div#serviceagreement {
  width: 100%;
  background: #FFF;
  overflow-y: scroll;
  max-width: 706px;
  height: 300px;
  margin: 0px auto;
  border: 1px solid #b1b1b1;
  box-sizing: border-box;
  padding: 1em;
}
@media (min-width: 767px) {
  section.registration div#serviceagreement, section.paymentinfo div#serviceagreement {
    height: 460px;
  }
}
section.registration p.agreement-notice, section.paymentinfo p.agreement-notice {
  display: none;
  max-width: 706px;
  box-sizing: border-box;
  margin: 1em auto;
  background: #FC2243;
  color: #FFF;
  padding: 1em;
  font-size: 1.325em;
  text-align: center;
  font-weight: bold;
}
section.registration iframe, section.paymentinfo iframe {
  width: 90%;
  max-width: 706px;
  height: 210px;
  margin: 0px auto;
  border: 1px solid #b1b1b1;
}
@media (min-width: 767px) {
  section.registration iframe, section.paymentinfo iframe {
    height: 286px;
  }
}
section.registration .card-entry, section.paymentinfo .card-entry {
  background: #fbfbfb;
  border: 1px solid #eaeaea;
  padding: 2em;
  margin: 1em auto 0px;
  width: 80%;
}
@media (min-width: 767px) {
  section.registration .card-entry, section.paymentinfo .card-entry {
    width: 300px;
  }
  section.registration .card-entry input, section.paymentinfo .card-entry input {
    width: 100%;
    max-width: 100%;
  }
}
section.registration .billing-address input, section.paymentinfo .billing-address input {
  margin-top: 15px;
  height: 36px;
  background-color: #FDFDFD;
  padding: 1.25em 0.25em 1.25em 0.825em;
}
section.registration .register-error-message, section.paymentinfo .register-error-message {
  display: none;
  max-width: 706px;
  box-sizing: border-box;
  margin: 1em auto;
  background: #FC2243;
  color: #FFF;
  padding: 1em;
  font-size: 1.325em;
  text-align: center;
  font-weight: bold;
}
section.registration button.submit, section.paymentinfo button.submit {
  margin: 1em 0;
  box-sizing: border-box;
  outline: none;
  background: #FC2243;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  color: #FFF;
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  text-transform: uppercase;
  font-size: 14px;
  padding: 1.25em 3em;
  font-weight: 500;
  border: 0px none;
  transition: box-shadow 0.15s;
  cursor: pointer;
}
@media (min-width: 767px) {
  section.registration button.submit, section.paymentinfo button.submit {
    width: 358px;
    font-size: 18px;
  }
}
section.registration button.submit:hover, section.paymentinfo button.submit:hover {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);
}
section.registration button.submit.loading, section.registration button.submit:disabled, section.paymentinfo button.submit.loading, section.paymentinfo button.submit:disabled {
  color: #ffc0c0;
  cursor: default;
}
section.registration button.submit.loading:hover, section.registration button.submit:disabled:hover, section.paymentinfo button.submit.loading:hover, section.paymentinfo button.submit:disabled:hover {
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

section.paymentinfo {
  padding: 1px 1em 1em;
  background: #007FDD;
  color: #FFF;
}
section.paymentinfo .fieldset.creditcard {
  max-width: 430px;
  padding: 1em 0;
}
section.paymentinfo .fieldset.creditcard label.error {
  padding-left: 0px;
}

.video-wrapper {
  padding: 56.25% 0 0 0;
  position: relative;
}
.video-wrapper .video-js {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video-wrapper video {
  outline: none !important;
}
.video-wrapper .video-js .vjs-big-play-button {
  display: none;
}
.video-wrapper .vjs-subs-caps-button {
  display: none;
}

.rangeslider,
.rangeslider__fill {
  display: block;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}

.rangeslider {
  background: #004DAB;
  position: relative;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.03);
  transition: opacity 0.2s;
}

.rangeslider--horizontal {
  height: 14px;
  width: 100%;
}

.rangeslider--disabled {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  opacity: 0.6;
}

.rangeslider__fill {
  /*
    background: #00ff00;
    position: absolute;
  */
}

.rangeslider--horizontal .rangeslider__fill {
  top: 0;
  height: 100%;
}

.rangeslider__handle {
  background: #0C67D6;
  border: 4px solid #FFF;
  cursor: pointer;
  display: inline-block;
  width: 24px;
  height: 40px;
  box-sizing: border-box;
  position: absolute;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}

.rangeslider__handle:after {
  content: "";
  display: block;
  width: 6px;
  height: 18px;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url('data:image/svg+xml;utf8,<svg width="6" height="18" xmlns="http://www.w3.org/2000/svg"><g stroke="%23F5F5F5" fill="none" fill-rule="evenodd" stroke-linecap="square"><path d="M.5 1v16M5.5 1v16"/></g></svg>');
}

.rangeslider__handle:active, .rangeslider--active .rangeslider__handle {
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, rgba(0, 0, 0, 0.12)));
  background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
  background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
  background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
}

.rangeslider--horizontal .rangeslider__handle {
  top: -13px;
  touch-action: pan-y;
  -ms-touch-action: pan-y;
}

input[type=range]:focus + .rangeslider .rangeslider__handle {
  -moz-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
  -webkit-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
  box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
}

body .select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #E9E9E9;
  border-radius: 10px;
  height: 49px;
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  padding: 0 1em;
}
body .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 51px;
}
body .select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 49px;
  margin-right: 20px;
  padding-right: 0px;
}
body .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
body .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}
body .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #0C67D6 transparent transparent transparent;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  height: 0;
  left: 50%;
  margin-left: -13px;
  margin-top: 7px;
  position: absolute;
  top: 50%;
  width: 0;
}
body .select2-container--default .select2-results__option {
  padding: 10px;
  font-weight: 500;
}
body .select2-container--default .select2-search--dropdown:before {
  content: "";
  position: absolute;
  left: 14px;
  top: 13px;
  height: 20px;
  width: 20px;
  background: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='search' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='svg-inline--fa fa-search fa-w-16 fa-2x'%3E%3Cpath fill='%23adadad' d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z' class=''%3E%3C/path%3E%3C/svg%3E") center/contain no-repeat;
}
body .select2-container--default .select2-search--dropdown .select2-search__field {
  padding: 10px;
  font-weight: 500;
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  font-size: 1em;
  text-indent: 24px;
  margin: 0px;
  line-height: 14px;
  height: 37px;
  box-sizing: border-box;
}
body .select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}
body .select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}
body .select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}
body .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}
body .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 5px 8px 5px;
}

.styled-checkbox {
  display: none;
}
.styled-checkbox + label::before {
  border-radius: 3px;
  width: 18px;
  height: 18px;
  border: 2px solid #474747;
  background-color: #fff;
  display: inline-block;
  content: "";
  margin-right: 9px;
  vertical-align: middle;
  position: relative;
  top: -1px;
  cursor: pointer;
}
.styled-checkbox:disabled + label::before {
  background-color: #474747;
  border-color: #bfbfbf;
  background-color: #f5f5f5;
  cursor: pointer;
}
.styled-checkbox:checked + label::before {
  box-shadow: inset 0px 0px 0px 2px #fff;
  background-color: #474747;
}

input:disabled {
  pointer-events: none;
}

span.desktoponly {
  display: none;
}
@media (min-width: 767px) {
  span.desktoponly {
    display: inline;
  }
}

@media (min-width: 767px) {
  span.mobileonly {
    display: none;
  }
}

span.mobilebreak {
  display: block;
}
@media (min-width: 767px) {
  span.mobilebreak {
    display: inline;
  }
}

a[href^=tel] {
  color: inherit;
}