
@import url("reset.css");
@import url("MyWebfontsKit.css");

.mobile-content,
.signup-form label,
header .phone-number-cta {
  display: none
}

.no-show {
  display: none !important
}




body {
  overflow-x: hidden
}

:root {
  --ssh-light-blue: #00adee;
  --ssh-very-light-blue: #E6F7FD;
  --ssh-dark-blue: #003d54;
  --ssh-light-grey: #f1f4f4;
  --ssh-mid-grey: #bababa;
  --ssh-dark-grey: #6a6a6a;
  --ssh-black: #000;
  --ssh-white: #fff;
}

/* 2015  font definitions*/
h1,
h2,
h3,
h4,
body,
#searchform #s,
#cssmenu ul ul li a,
.shack-shine-advantage h3,
.shack-shine-advantage h4,
.quote-form h3,
.quote-form h5,
input:not([type="submit"]):not([type="file"]),
input[type="button"],
input[type="submit"],
.wpcf7-form-control.wpcf7-submit {
  font-family: "Montserrat", sans-serif;
}

.hero-banner h1,
.hero-banner h2,
header .phone-number-cta,
#cssmenu>ul>li>a,
.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-name {
  font-family: "Montserrat", sans-serif;
}

/*2024 font definition overrides*/
body,
#searchform #s

{
font-family: "Montserrat", sans-serif;
}
.content-wrap article .maxbutton.maxbutton-book-now .mb-text,
a.cta-button,
div.cta,
article,
article p,
footer .footer-description p,
input:not([type="submit"]):not([type="file"]),
input[type="button"],
input[type="submit"],
.wpcf7-form-control.wpcf7-submit,
header .phone-number-cta,
.wp-block-button__link.wp-element-button,
#cssmenu ul ul li a,
.footer-navigation-wrap li a,
.col.n3.social-links h4 ,
.brand-list li a,
#cssmenu>ul>li>a
{
font-family: "AvenirPro65Medium";
}

article strong, article b,
   .latest-posts .page-numbers  {
font-family: "AvenirPro85Heavy";
}

h1,
h2,
h3,
h4,
.hero-banner h1,
.hero-banner h2,
.shack-shine-advantage h3,
.shack-shine-advantage h4,
.quote-form h3,
.quote-form h5,
.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-name {
  font-family: "Montserrat", sans-serif;
}


/*end 2024 font definition overrides*/


body .has-small-font-size {
  font-size: 16px !important;
}

body .has-medium-font-size {
  font-size: 18px !important;
}

body .has-large-font-size {
  font-size: 24px !important;
}

body .has-x-large-font-size {
  font-size: 60px !important;
}

.has-ssh-light-blue-background-color,
.has-ssh-light-blue-background-color.wp-block-button__link {
  background-color: var(--ssh-light-blue);
}

.has-ssh-very-light-blue-background-color,
.has-ssh-very-light-blue-background-color.wp-block-button__link {
  background-color: var(--ssh-very-light-blue);
}

.has-ssh-dark-blue-background-color,
.has-ssh-dark-blue-background-color.wp-block-button__link {
  background-color: var(--ssh-dark-blue);
}

.has-ssh-dark-blue-background-color .wp-block-button .has-ssh-light-blue-background-color.wp-block-button__link:hover {
  background-color: var(--ssh-light-blue);
}

.has-ssh-light-grey-background-color,
.has-ssh-light-grey-background-color.wp-block-button__link {
  background-color: var(--ssh-light-grey);
}

.has-ssh-mid-grey-background-color,
.has-ssh-mid-grey-background-color.wp-block-button__link {
  background-color: var(--ssh-mid-grey);
}

.has-ssh-dark-grey-background-color,
.has-ssh-dark-grey-background-color.wp-block-button__link {
  background-color: var(--ssh-dark-grey);
}

.has-ssh-black-background-color,
.has-ssh-black-background-color.wp-block-button__link {
  background-color: var(--ssh-black);
}

.has-ssh-white-background-color,
.has-ssh-white-background-color.wp-block-button__link {
  background-color: var(--ssh-white);
}

.has-ssh-light-blue-color,
.has-ssh-light-blue-color.wp-block-button__link {
  color: var(--ssh-light-blue);
}

.has-ssh-very-light-blue-color,
.has-ssh-very-light-blue-color.wp-block-button__link {
  color: var(--ssh-very-light-blue);
}

.has-ssh-dark-blue-color,
.has-ssh-dark-blue-color.wp-block-button__link {
  color: var(--ssh-dark-blue);
}

.has-ssh-light-grey-color,
.has-ssh-light-grey-color.wp-block-button__link {
  color: var(--ssh-light-grey);
}

.has-ssh-mid-grey-color,
.has-ssh-mid-grey-color.wp-block-button__link {
  color: var(--ssh-mid-grey);
}

.has-ssh-dark-grey-color,
.has-ssh-dark-grey-color.wp-block-button__link {
  color: var(--ssh-dark-grey);
}

.has-ssh-black-color,
.has-ssh-black-color.wp-block-button__link {
  color: var(--ssh-black);
}

.has-ssh-white-color,
.has-ssh-white-color.wp-block-button__link {
  color: var(--ssh-white);
}

img {
  aspect-ratio: attr(width) / attr(height);
}

.tab-content div.entry-title,
.page-template-page-franchise .hero-banner-form-wrap,
.page-template-page-franchise .footer-wrap.primary-cta,
.onlineestimate .hero-banner-form-wrap,
.return-customer .hero-banner-form-wrap,
.onlineestimate .footer-wrap.primary-cta,
.return-customer .footer-wrap.primary-cta,
.parent-pageid-5392.thank-you .hero-banner-form-wrap,
.parent-pageid-5392.thank-you .footer-wrap.primary-cta,
.back-to-metro-mobile,
.cf7mls_back.action-button,
.quote-form label,
.page-id-6862 .hero-banner-form-wrap,
.page-id-6859 .hero-banner-form-wrap,
.page-id-6886 .hero-banner-form-wrap,
.page-id-6889 .hero-banner-form-wrap,
.mobile-content {
  display: none;
}

.grecaptcha-badge {
  display: none !important;
}

.mc-field-group label,
.hero-banner-form .quote-form h5,
.page.home .building-collage.lower,
.page.page-template-page-home-2023 .building-collage.lower,
.hero-banner-form.primary-cta .mobile-ctas,
.franchise-information .hero-banner-form,
.franchise-information .footer-wrap.primary-cta,
.services-wrap {
  display: none;
}

body .wp-block-image .is-style-rounded img,
body .wp-block-image.is-style-circle-mask img,
body .wp-block-image.is-style-rounded img {
  border-radius: 15px
}

.feature-video-width.desktop-content {
  border-radius: 15px;
  overflow: hidden;
}

.has-ssh-dark-blue-background-color .wp-block-group.image-text-group,
.wp-block-group.image-text-group {
  transition: all ease 0.5s
}

.has-ssh-dark-blue-background-color .wp-block-group.image-text-group:hover,
.wp-block-group.image-text-group:hover a {
  text-decoration: underline;
  color: var(--ssh-light-blue) !important;
}

.franchise-information .hero-banner-form-wrap {
  background: transparent;
}

.franchise-information .hero-banner {
  height: 210px;
}

.hero-banner .container {
  position: relative;
  height: 100%
}

.hero-banner {
  background-repeat: no-repeat;
  clear: both;
  background-position: center;
  margin-bottom: 0;
  background-repeat: no-repeat;
  background-image: url(../images/bg.webp);
  max-width: 100%;
  /* height: 100vh */
  padding-top: 300px;
  padding-bottom: 300px;
}

.hero-banner .hero-ctas {
  width: fit-content;
  display: flex;
  flex-direction: column;
}
.hero-banner .hero-ctas .wp-block-button a {
  width: 100%;
}
.hero-banner .book-appointment .wp-block-button__link.wp-element-button {
  margin: 10px 0 15px 0;
  clear: both;
  background-color: var(--ssh-light-grey);
  color: var(--ssh-black);
}

.hero-banner .book-appointment .wp-block-button__link.wp-element-button:hover {
  background-color: var(--ssh-light-blue);
  color: var(--ssh-white);
}


.hero-banner .wp-block-button.is-style-outline.returning-customer {
  clear: both;
  margin: auto;
  width: 100%;
}

/*new returning customer button*/
.hero-banner .book-appointment .wp-block-button__link.wp-element-button {
  background-color: var(--ssh-light-blue);
  color: var(--ssh-white);
}

.hero-banner .book-appointment .wp-block-button__link.wp-element-button:hover {
  background-color: var(--ssh-dark-blue);
}

.hero-banner .wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button:hover {
  color: var(--ssh-white);
  background-color: var(--ssh-dark-blue);
  border-color: var(--ssh-dark-blue)
}

.hero-banner .wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button {
  background: var(--ssh-white);
  color: var(--ssh-light-blue);
  border: 1px solid var(--ssh-dark-blue);
  padding: 15px 35px 13px 35px;
  text-transform: none;
  font-weight: 800;
  font-size: 18px;
  width: 100%
}

.hero-banner .wp-block-button.is-style-outline.returning-customer a::after {
  display: none
}

/* end new returning customer button*/
.hero-banner .hero-content-wrap {
  /* position: absolute; */
  /* left: 0;
  top: 160px; */
  max-width: 550px;
  /* height: calc(100% - 160px) */
}

.page.home .hero-banner,
.page.page-template-page-home-2023 .hero-banner {
  background-position: center bottom;
  background-size: cover
}

.page.home .hero-banner h2,
.page.page-template-page-home-2023 .hero-banner h2 {
  margin-bottom: 20px;
  display: inline-flex
}

header,
.content-wrap,
#headline-intro,
#testimonials,
#video,
article,
.container,
#header-wrap {
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-columns {
  margin: auto
}

.wp-block-columns.is-style-narrow-width {
  max-width: 600px
}

.wp-block-columns.is-style-rounded-24px {
  border-radius: 24px;
}

.wp-block-columns.bordered-light-blue {

  border: 1px solid var(--ssh-light-blue);
}

.wp-block-columns.is-style-rounded-24px.bordered-light-blue.margins-wide.has-ssh-very-light-blue-background-color .wp-block-column {
  padding: 30px 60px;
}

article,
.wp-block-columns.is-style-mid-width {
  max-width: 775px;
}

article,
.wp-block-columns.is-style-boxed-width {
  max-width: 1280px;

}

.has-ssh-light-grey-background-color {
  background-color: #f0f4f4
}


.wp-block-separator {
  border-top: 1px solid
}

.wp-block-group.how-it-works .wp-block-list
 { 
  list-style: none;
  counter-reset: custom-counter;
  width: 540px;
  margin: auto;
  
}

.how-it-works ol li {
  counter-increment: custom-counter;
  position: relative;
  list-style: none;
  margin: 0 0 50px 40px;
  padding: 20px 0 0 30px;
  min-height: 60px
}


.how-it-works ol li::before {
  content: counter(custom-counter);
  font-size: 60px;
  position: absolute;
  left: -40px;
  top: 0;
  font-weight: 800;
  color: var(--ssh-light-blue);
  width: calc(100% + 40px);
  display: block;
  text-indent: 15px;
  height: 115px;
}

.how-it-works ol li::after {
  position: absolute;
  content: '';
  top: initial;
  left: -40px;
  bottom: -40px;
  height: 50px;
  width: calc(100% + 40px);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-image: url('../images/separator-down-arrow.svg');
}

.how-it-works ol li:last-child::after {
  background-image: none
}



input {
  -webkit-appearance: none;
  border-radius: 0;
}




body {
  background-color: var(--ssh-white);
}

a,
header .phone-number-cta,
ul.brand-list li a:after {
  color: #00aeef;
  text-decoration: none;
}

.wp-block-column a:hover {
  text-decoration: underline
}

.wp-block-column .wp-block-button a:hover {
  text-decoration: none
}

/* shared code for text replacement*/
.footer-o2e-brands,
h3.shack-shine-home-services,
.social-links-list li a {
  text-indent: -9000px;
  float: left;
  background-repeat: no-repeat;
}
.footer-o2e-brands .wp-block-button.business-opportunity {text-indent: 0;
  top:-37px;
}
.wp-block-button.business-opportunity .wp-block-button__link.wp-element-button {
  background: transparent;
  color: var(--ssh-black);
  text-align: left;
  padding: 0;
  height: fit-content
}
.footer-o2e-brands .wp-block-button.business-opportunity a{
  text-transform: none
}
h1 img,
h2 img,
h3 img h4 img {
  display: inline-block
}

img.alignright {
  float: right;
  margin-left: 40px;
  margin-bottom: 40px;
}

img.alignleft {
  float: left;
  margin-right: 40px;
  margin-bottom: 40px;
}

img.aligncenter {
  clear: both;
  float: none;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

/*css menu*/
#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #menu-button {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  line-height: 1;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  right: 0
}

#cssmenu:after,
#cssmenu>ul:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

#cssmenu #menu-button {
  display: none;
}

#cssmenu {
  width: auto;
  line-height: 1;
  margin: 0;
  position: absolute;
  right: 0;
  top: -10px
}

#menu-line {
  position: absolute;
  top: 0;
  left: 0;
  height: 3px;
  background: #009ae1;
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  display: none;
}

#cssmenu>ul>li {
  float: left;
}

#cssmenu.align-center>ul {
  font-size: 0;
  text-align: center;
}

#cssmenu.align-center>ul>li {
  display: inline-block;
  float: none;
}

#cssmenu.align-center ul ul {
  text-align: left;
}

#cssmenu.align-right>ul>li {
  float: right;
}

#cssmenu.align-right ul ul {
  text-align: right;
}

#cssmenu>ul>li>a {
  padding: 0 10px 30px 10px;
  font-size: 13.75px;
  text-decoration: none;
  text-transform: uppercase;
  color: #000;
  -webkit-transition: color 0.2s ease;
  -moz-transition: color 0.2s ease;
  -ms-transition: color 0.2s ease;
  -o-transition: color 0.2s ease;
  transition: color 0.2s ease;
}

#cssmenu>ul>li.has-sub>a {
  padding-right: 25px;
}

#cssmenu>ul>li.has-sub>a::after {
  position: absolute;
  top: 2px;
  right: 10px;
  width: 4px;
  height: 4px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: border-color 0.2s ease;
  -moz-transition: border-color 0.2s ease;
  -ms-transition: border-color 0.2s ease;
  -o-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}

#cssmenu>ul>li.has-sub:hover>a::after {
  border-color: #009ae1;
}

#cssmenu ul ul {
  position: absolute;
  opacity: 0;
  display: none;
  left: 0;
  top: 35px;
  background-color: var(--ssh-light-blue);
  height: fit-content;
  width: fit-content;
  padding: 10px 0
}

#cssmenu li>ul {
  transition: all ease 0.1s
}

#cssmenu li:hover>ul {
  opacity: 1;
  display: block !important;
  width: fit-content;
  left: 0;
  transition: all ease 0s
}

#cssmenu ul ul:after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-color: var(--ssh-light-blue) transparent;
  border-width: 0 15px 15px;
  top: -15px;
  left: 20%;
  margin-left: -15px;
}



#cssmenu.align-right li:hover>ul {
  right: 0;
}

#cssmenu ul ul ul {
  margin-left: 100%;
  top: 0;
}

#cssmenu.align-right ul ul ul {
  margin-left: 0;
  margin-right: 100%;
}

#cssmenu ul ul li {
  height: fit-content;
  -webkit-transition: height 0.2s ease;
  -moz-transition: height 0.2s ease;
  -ms-transition: height 0.2s ease;
  -o-transition: height 0.2s ease;
  transition: height 0.2s ease;
}

#cssmenu ul li:hover>ul>li {}

#cssmenu ul ul li a {
  padding: 10px 20px;
  width: 230px;
  font-size: 12px;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: color 0.2s ease;
  -moz-transition: color 0.2s ease;
  -ms-transition: color 0.2s ease;
  -o-transition: color 0.2s ease;
  transition: color 0.2s ease;
  color: var(--ssh-white)
}

#cssmenu ul ul li.has-sub>a::after {
  position: absolute;
  top: 13px;
  right: 10px;
  width: 4px;
  height: 4px;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
  content: "";
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: border-color 0.2s ease;
  -moz-transition: border-color 0.2s ease;
  -ms-transition: border-color 0.2s ease;
  -o-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}

#cssmenu.align-right ul ul li.has-sub>a::after {
  right: auto;
  left: 10px;
  border-bottom: 0;
  border-right: 0;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
}

#cssmenu ul ul li.has-sub:hover>a::after {
  border-color: var(--ssh-white);
}

#cssmenu-search-wrap {
  display: flex;
  flex: 1;
  width: fit-content;
  position: relative;
  top: 45px;
  height: 30px;
  align-items: center
}

@media (max-width: 1020px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1020px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1020px),
only screen and (-o-min-device-pixel-ratio: 21) and (max-width: 1020px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1020px),
only screen and (min-resolution: 192dpi) and (max-width: 1020px),
only screen and (min-resolution: 2dppx) and (max-width: 1020px) {

  #cssmenu ul ul::after,
  #cssmenu-search-wrap .expanding-sf,
  header .phone-number-cta {
    display: none;
  }

  .header-content-wrap {
    display: block !important
  }

  .header-content-wrap .wp-block-column {
    flex-basis: unset
  }

  #cssmenu-search-wrap {
    float: right;
    margin-right: 50px;
  }

  .header-content-wrap .wp-block-columns .wp-block-column {
    display: block
  }

  #cssmenu {
    width: 100%;
    height: 60px
  }

  #cssmenu ul {
    width: 100vw;
    display: none;
    top: 25px;
    left: 50px;
    background-color: var(--ssh-white);
  }

  #cssmenu ul ul {
    padding: 0
  }

  #cssmenu ul ul,
  #cssmenu.align-center>ul,
  #cssmenu.align-right ul ul {
    text-align: left;
    background-color: var(--ssh-white);
  }

  #cssmenu ul li,
  #cssmenu ul ul li,
  #cssmenu ul li:hover>ul>li {
    width: 100vw;
    height: auto;
    border-top: px solid rgba(120, 120, 120, 0.15);
  }

  #cssmenu ul li a,
  #cssmenu ul ul li a {
    width: 100%;
    cursor: pointer
  }

  #cssmenu>ul>li,
  #cssmenu.align-center>ul>li,
  #cssmenu.align-right>ul>li {
    float: none;
    display: block;
  }

  #cssmenu ul ul li a {
    padding: 10px 20px 10px 30px;
    font-size: 15px;
    color: #000;
    background: var(--ssh-white);
  }

  #cssmenu ul ul li:hover>a,
  #cssmenu ul ul li a:hover {
    color: #000;
  }

  header #cssmenu>ul>li:first-child>a,
  #cssmenu>ul>li>a {
    padding-left: 20px;
    padding-right: 5px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase
  }

  #cssmenu ul ul ul li a {
    padding-left: 40px;
  }

  #cssmenu ul ul,
  #cssmenu ul ul ul {
    position: relative;
    left: 0;
    right: auto;
    width: 100%;
    margin: 0;
    opacity: 1;
    display: block
  }

  #cssmenu>ul>li.has-sub>a::after,
  #cssmenu ul ul li.has-sub>a::after {
    display: none;
  }

  #menu-line {
    display: none;
  }

  #cssmenu #menu-button {
    display: block;
    color: #000;
    cursor: pointer;
    font-size: 12px;
    text-transform: uppercase;
    top: 11px;
    right: -20px;
    text-indent: -9000px;
    padding: 20px;
    position: absolute
  }

  #cssmenu #menu-button.menu-opened {
    top: -34px
  }

  #cssmenu #menu-button::after {
    content: "";
    position: absolute;
    bottom: 10px;
    display: block;
    width: 30px;
    height: 4px;
    background: #000;
  }

  #cssmenu #menu-button::before {
    content: "";
    position: absolute;

    display: block;
    width: 30px;
    height: 13px;
    border-top: 4px solid #000;
    border-bottom: 4px solid #000;
  }

  #cssmenu .submenu-button {
    position: absolute;
    z-index: 10;
    right: 0;
    top: 0;
    display: block;
    border-left: 1px solid rgba(120, 120, 120, 0.15);
    height: 55px;
    width: 55px;
    cursor: pointer;
  }

  #cssmenu .submenu-button::after {
    content: "";
    position: absolute;
    top: 21px;
    left: 26px;
    display: block;
    width: 1px;
    height: 11px;
    background: #000;
    z-index: 99;
  }

  #cssmenu .submenu-button::before {
    content: "";
    position: absolute;
    left: 21px;
    top: 26px;
    display: block;
    width: 11px;
    height: 1px;
    background: #000;
    z-index: 99;
  }

  #cssmenu .submenu-button.submenu-opened:after {
    display: none;
  }

  #cssmenu ul {
    margin-bottom: 13px;
    background: #fff
  }

  #cssmenu-search-wrap {
    top: 35px;

  }

  #cssmenu>ul>li>a {
    padding: 19px;
    border-top: 1px solid rgba(120, 120, 120, 0.15);
  }

  #cssmenu ul ul {
    top: 0;
  }

  #cssmenu>ul>li:first-child>a {
    padding-left: 20px;
  }

  #cssmenu ul ul li a {
    color: #333;
    background-color: #fff;
    padding-left: 20px;
    border-top: 1px solid rgba(120, 120, 120, 0.15);
  }

  #cssmenu ul li:first-child>a {
    padding-left: 20px;
  }


  #cssmenu>ul>li:hover>a,
  #cssmenu>ul>li.active>a {
    color: var(--ssh-light-blue);
  }



  #cssmenu ul ul li a {
    line-height: 30px;
  }

  #cssmenu>ul>li:first-child>a {
    padding-left: 0;
  }

  #cssmenu ul ul li:hover>a,
  #cssmenu ul ul li a:hover {
    color: #000;
  }

  #cssmenu ul ul li a {
    color: #333;
    background-color: #fff;
    padding-left: 20px;
    border-top: 1px solid rgba(120, 120, 120, 0.15);
  }

  #cssmenuulli:first-child>a {
    padding-left: 20px;
  }

  #cssmenu ul {
    margin-bottom: 13px;
    background: #fff
  }

  #cssmenu {
    float: right;
  }

  #cssmenu-search-wrap {
    top: 11px;
    width: inherit;
    float;
  }

  #cssmenu>ul>li>a {
    padding: 19px;
    border-top: 1px solid rgba(120, 120, 120, 0.15);
  }

  #cssmenu ul ul {
    top: 0;
  }

  #cssmenu>ul>li:first-child>a {
    padding-left: 20px;
  }
}


/* end css menu work*/
.building-collage {
  background-image: url(../images/building-collage.svg);
  width: 100%;
  height: 180px;
  background-position: center top;
  background-repeat: no-repeat;
  margin-bottom: 70px;
  clear: both;
}


input:not([type="submit"]):not([type="file"]),
form .select-wrap select {
  font-size: 14px;
  color: #444;
}

.tab_container input:not([type="submit"]):not([type="file"]) {
  border: none;
}

form input[type="text"],
form input[type="email"],
article form input[type="text"],
article form input[type="number"],
article form input[type="email"],
.wpcf7-form textarea {

  padding: 15px;
  height: 50px;
  border: #ccc 1px solid;
  width: 100%;
}

.wpcf7-form textarea,
textarea.message-comments {
  width: 288px;
  height: 200px;
 
}

article form .form-row p {
  display: flex;
  align-items: center;
  margin: 0
}

article form .form-row label {
  width: 220px;
  line-height: 140%;
  padding-right: 20px;
}

article form.wpcf7-form .form-row label {
  width: 270px;
  font-weight: 400;
  color: #fff;
}

article form .form-row.submit {
  padding-left: 0;
}

article form .form-row {
  margin-top: 20px;
  margin-bottom: 20px;
  display: table;
  width: 100%;
}

article form .form-row input[type="checkbox"],
article form .form-row input[type="radio"] {
  display: inline-block;
  -webkit-appearance: checkbox;
}

input.wpcf7-form-control.wpcf7-date.wpcf7-validates-as-date {
  border: 1px solid #ccc;
  padding: 10px;
  width: 288px;
}

article form .form-row .wpcf7-form-control-wrap {
  position: relative;
  float: left;
  width: 100%;
}

article form .form-row span.wpcf7-list-item {
  display: block;
  clear: both;
  line-height: 200%;
}

article form .form-row.submit {
  padding-left: 0;
}

.page.page-template-page-franchise article form .form-row.submit {
  padding-left: 290px;
}

.page-template-page-franchise article form.wpcf7-form .form-row label {
  width: 270px;
}

form .select-wrap select {
  background: transparent;
  width: 195px;
  padding: 5px;
  line-height: 1;
  border: 0;
  border-radius: 0;
  height: 48px;
  -webkit-appearance: none;
  margin-left: 3px;
  color: #444;
}

.form-row.captcha label {
  line-height: 22px;
}

.form-row.captcha label img {
  margin-left: 15px;
}

form .select-wrap {
  width: 195px;
  height: 48px;
  overflow: hidden;
  border: 0;
  background: url(../images/select-drop.png) no-repeat right var(--ssh-white);
  float: left;
}

#mc_embed_signup input[type="email"] {
  width: 200px;
}

.mc-field-group {
  float: left;
}
.content-wrap article .maxbutton.maxbutton-book-now .mb-text,
div.cta,
a.cta-button,
a.cta,
#mc_embed_signup input[type="submit"],
.quote-form .submit-button,
a.cta-button,
a.cta.small,
.form-row input[type="submit"],
input.wpcf7-form-control.wpcf7-submit,
.wp-block-button .wp-block-button__link,
input[type="submit"] {
  display: inline-block;
  background-color: var(--ssh-light-blue);
  border: none;
  transition: all ease 0.5s;
  padding: 15px 40px 13px 40px;
text-transform: uppercase;
  color: var(--ssh-white);
  line-height: 100%;
  text-align: center;
  font-size: 18px;
  font-weight: 800;
  border-radius: 90px;
  transition: all ease 0.5s;
  text-align: center;
  line-height: initial;
  white-space: nowrap;
  width: fit-content;
  
}
.content-wrap article .maxbutton.maxbutton-book-now{background: transparent !important; border: none !important; box-shadow: none !important}

.wp-block-button {
  position: relative
}

.signup-form form {
  margin: auto;
  display: flex;
  column-gap: 40px;
  row-gap: 20px;
  width: fit-content;
  flex-wrap: wrap;
}

article .signup-form form input[type="text"],
article .signup-form form input[type="email"] {
  flex: 1 0 45%;
  padding: 25px;
  box-sizing: border-box
}

.signup-form input[type="submit"] {
  display: table;
  margin: 20px auto 40px auto;

}

article .signup-form form input[type="text"],
article .signup-form form input[type="number"],
article .signup-form form input[type="email"] {
  border: none
}

.wp-block-button.is-style-outline.returning-customer a::after,
.wp-block-button.is-style-outline .wp-block-button__link::after {
  content: " \00bb";
  font-size: 23px;
  position: absolute;
  right: 10px;
  top: 9px;
  color: var(--ssh-light-blue);
  font-weight: 500;
  transition: all ease 0.5s;
}

.wp-block-button.is-style-outline.returning-customer a::after {
  color: var(--ssh-white)
}

.wp-block-button.is-style-outline.has-ssh-white-color:hover {
  color: var(--ssh-black);
}

.wp-block-button.is-style-outline.has-ssh-white-color a:hover::after {
  color: var(--ssh-black)
}


.wp-block-button.is-style-outline.business-opportunity a,
.wp-block-button.is-style-outline.business-opportunity a:hover {
  font-weight: 700
}

.wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button {
  padding-left: 10px;
}

.wp-block-button.is-style-outline.returning-customer::after {
  color: var(--ssh-white)
}

.page.commercial-services .cta-button {
  width: 187px;
}

a.cta-button.spaced {
  margin: 20px 0;
  display: table;
}

.quote-form .submit-button {
  padding: 0;
}


.form-row input[type="submit"]:hover,
input.wpcf7-form-control.wpcf7-submit:hover,
.signup-form input[type="submit"]:hover,
#mc_embed_signup input[type="submit"]:hover,
.quote-form .submit-button:hover,
a.cta-button:hover,
.wp-block-button .wp-block-button__link:hover {
  background-color: var(--ssh-dark-blue);
  color: var(--ssh-white);
}

.wp-block-button .wp-block-button__link.has-ssc-white-color.has-ssh-light-blue-background-color:hover {
  color: var(--ssh-dark-blue);
  text-decoration: none
}

.quote-form .submit-button {
  width: 48px;
  margin: 0px;
}

.header-content-wrap .wp-block-column {
  margin-top: 0;
  width: fit-content;
  position: relative
}

.header-content-wrap {
  display: flex;
  column-gap: 40px
}

.header-content-wrap .wp-block-column:first-child,
.header-content-wrap .wp-block-column:last-child {
  max-width: fit-content;
}

header .phone-number-cta {
  position: absolute;
  top: -30px;
  right: -15px;
  float: right;
  text-transform: uppercase;
  font-size: 14.25px;
  white-space: nowrap
}

.header-content-wrap .wp-block-button.book-appointment a {
  margin-top: 17px;
  padding: 15px 25px 12px 25px;
  font-size: 14px
}

.content-wrap label {
  cursor: text;
  cursor: default;
  pointer-events: none;
}

article a.phone-number {
  color: #000;
}


footer .business-opportunity-link {
  font-weight: 600;
  text-transform: uppercase;
  color: var(--ssh-black)
}






.col {
  float: left;
}

body ul li {
  float: none;
  text-align: left;
}

.company-name.col.n1 {
  width: 145px;
  margin-right: 45px;
  float: left;
  height: 200px;
}

article#contact {
  min-height: 300px;
}
article#contact .phone-number::before{top: -6px}
article#contact ul li {
  margin: 0;
}

.page-id-1167.page-template-page-franchise .content-block-sidebar,
#contact .happy-team {
  width: 300px;
  height: 355px;
  background-image: url(../images/shack-shine-about-us.jpg);
  background-size: 300px;
}

.contact-form {
  clear: both;
}

#contact .address {
  margin-top: 20px;
  margin-bottom: 20px;
}

#contact .col.n1 {
  width: 30%;
  margin-right: 40px;
}

#contact .col.n2 {
  width: calc(70% - 40px);
  margin-right: 0;
}

#contact .col.n2 li {
  font-weight: 400;
}

#contact .col.n1 label {
  margin-right: 10px;
  width: 60px;
  float: left;
}

#contact {
  line-height: 27px;
  margin-top: -5px;
}

#contact .col.n3 {
  width: 275px;
  margin-right: 0;
}

.col.n1 h3 {
  font-size: 27px;
  line-height: 120%;
  margin-bottom: 20px;
}

.col.n2.navigation-inner {
  float: left;
  width: 510px;
}

article#contact ul li {
  list-style: none;
}

article#contact ul {
  margin: 0;
}

.footer-navigation-wrap {
  float: left;
  width: 154px;
  margin-right: 16px;
}

.footer-wrap-inner.navigation.is-style-mid-width {
  max-width:1280px;
  margin: auto;
  display: flex;
  column-gap: 160px;
}

.footer-wrap.navigation h2.shack-shine-white {
  text-indent: -9000px;
  background-image: url(../images/shack-shine-logo-white.png);
  width: 330px;
  height: 0;
  margin-left: auto;
  margin-right: auto;
  padding-top: 60px;
  padding-bottom: 60px;
  background-repeat: no-repeat;
  background-position: center bottom;
}

.footer-navigation-wrap ul,
.footer-navigation-wrap li {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-navigation-wrap li a,
.col.n3.social-links h4 {
  color: var(--ssh-black);
  text-transform: none;
  font-size: 16px;
  font-weight: normal;
  margin-bottom: 8px;
  display: block;
  transition: all ease 0.5s
}

.footer-navigation-wrap li a:hover {
  color: var(--ssh-light-blue);
}

.col.n3.social-links h4 {
  margin-bottom: 15px;
}

.col.n3.social-links h4 {
  display: none
}

.shack-shine-logo {
  display: block
}

.footer-wrap.navigation {
  background-color: #fff;
  height: initial;
}



.social-links-list li a {
  background-image: url('../images/footer-social-icons-blue.svg');
  background-size: 200px auto;
}



.col.n3.social-links,
.col.n2.navigation-inner {
  width: 50%;
}

.footer-navigation-wrap {
  width: calc(50% - 16px);
}

.footer-wrap-inner.navigation {
  padding: 60px 0 70px 0;
  display: flex;

}

.footer-copyright p,
.footer-copyright a {
  color: var(--ssh-mid-grey);
  font-size: 12px;

}

.footer-wrap-inner.brands h4 {
  font-size: 16px;
  color: #888888;
}

.brand-list li a {
  padding-top: 100px;
  background-position: center top
}

.footer-navigation-wrap li a {
  margin-top: 20px;

}

.footer-navigation-wrap li:first-child a {
  margin-top: 0;
}

.footer-navigation-wrap li li a {
  color: var(--ssh-dark-grey);
  text-transform: none;
  display: block;
  font-size: 14px;
  margin-bottom: 15px
}

.footer-navigation-wrap li li:last-child a {
  margin-bottom: 20px;
}

#header-wrap {
  height: 80px;
  padding-top: 0;
  margin-bottom: 0;
  background-color: var(--ssh-white);
  position: relative;
  z-index: 999;
}

#footer-wrap {
  padding-top: 0;
  padding-bottom: 0;
  clear: both;
  margin-bottom: -23px;
  background-color: var(--ssh-light-grey)
}

.footer-wrap.primary-cta {
  background-color: var(--ssh-light-grey);
  height: 225px;
}

.footer-wrap.primary-cta .wp-block-columns.is-style-mid-width {
  height: 100%;
  max-width: 1080px;
  text-align: center
}

.shack-shine-van-and-team {
  position: absolute;

  width: 410px;
  height: auto;
  margin-top: -175px;
  margin-left: 40px;

}

.footer-wrap-inner.primary-cta form.quote-form {
  height: 190px;
  padding: 0;
  margin-left: 110px;
  width: 390px;
  text-align: center;
  padding-top: 50px;
  float: left;
}

.footer-wrap.call-to-action-phone {
  text-align: center;
  background-color: var(--ssh-dark-grey);
  padding: 15px 0;
  color: var(--ssh-white);
  font-weight: 800;
  font-size: 22px;
}

.footer-wrap a.phone-number {

  color: var(--ssh-white);
}


.footer-wrap.brands {
  background-color: var(--ssh-white);
}



article p,
#introductory-copy p {
  margin-bottom: 30px;
  
  line-height: 140%
}

a.shack-shine-logo {
  float: left;
  height: 45px;
  width: 250px;
  /* background-image: url(../images/shack-shine-logo-265.svg); */
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-indent: -9000px;
  position: relative;
  z-index: 999;
  margin: 18px 0 5px 0;
}

footer a.shack-shine-logo {
  float: none;
  height: 60px;
  width: 185px;
  /* background-image: url(../images/shack-shine-logo-stacked-tagline.svg); */
}

h1 {
  font-size: 41px;
  margin-bottom: 50px;
}

.hero-banner h1.dynamic-headline {
  margin: -10px auto 10px;
  font-size: 45px;
  width: 85%;
}


.hero-banner {
  background-size: cover;
  background-position: top center;
}

.hero-banner .content-wrap {
  height: fit-content;
  width: 400px
}



footer h5 {
  font-size: 19px;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.col.n3.social-links {
  width: 70%;
}

ul.social-links-list {
  padding: 0;
  height: 50px;
}

/*ul.social-links-list::before {
  content: 'Follow Us';
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 10px;
  display: block;
  text-align: left;
}*/

.social-links-list li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.social-links-list li a {
  text-indent: -9000px;
  margin-right: 4px;
  display: block;
  width: 50px;
  height: 50px;
  background-image: url('../images/footer-social-icons-blue.svg');
  background-position: 0 0;
  position: relative;
  transition: opacity 0.5s ease-in-out;
}

.social-links-list li a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-image: url('../images/footer-social-icons-blue.svg');
  background-position: 0 -50px;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  background-size: 200px;
  background-repeat: no-repeat;
}

.social-links-list li a:hover::before {
  opacity: 1;
}

.social-links-list li.social-instagram a {
  background-position: -50px 0;
}

.social-links-list li.social-instagram a::before {
  background-position: -50px -50px;
}

.social-links-list li.social-linkedin a {
  background-position: -150px 0;
}

.social-links-list li.social-linkedin a::before {
  background-position: -150px -50px;
}


.footer-wrap-inner.navigation {
  padding-top: 40px;
}

h3.shack-shine-home-services {
  background-image: url(../images/shack-shine-logo-desaturate-300.png);
  height: 55px;
  width: 290px;
  margin-bottom: 30px;
  background-size: 100%;
}

div#mc_embed_signup {
  float: left;
  width: 100%;
}

#mc_embed_signup_scroll h4 {
  margin-bottom: 5px;
  margin-top: 20px;
}

.footer-wrap-inner.brands {
  padding-top: 35px;
}

.footer-wrap-inner.brands h4 {
  text-align: center;
  font-size: 12px;
}

ul.brand-list {
  padding: 0;
  margin: auto;
  display: flex;
  column-gap: 70px;
  margin-bottom: 0;
  width: fit-content;
}




.brand-list li a {
  width: 160px;
  height: 0;
  padding-top: 100px;
  text-align: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center top;
  display: table;
  color: var(--ssh-black);
  font-size: 14px;
  text-transform: uppercase;
}

.brand-list li.brand-1-800-got-junk-junk-removal a {
  background-image: url(../images/van-1-800-got-junk-junk-removal.webp);
}

.brand-list li.brand-wow-1-day-painting a {
  background-image: url(../images/van-wow-1-day-painting.webp);
}

.brand-list li.brand-shack-shine-home-services a {
  background-image: url(../images/van-shack-shine-home-services.webp);
}


.footer-o2e-brands a {
  width: 100%;
  height: 100%;
  display: block;
}

.footer-copyright {
  clear: both;
  color: var(--ssh-mid-grey);

  font-size: 12px;
  padding-top: 25px;
  text-align: center;
  padding-bottom: 25px;
}



.footer-o2e-wrap {
  margin-left: auto;
  margin-right: auto;
}
.brand-list li.footer-o2e-brands a{
  background-image: url(../images/footer-logo-o2e-brands.svg);
  width: auto;
  margin: 30px auto 0 auto;
  background-position: center top;
  background-size: 80% auto;
  clear: both;
  float: none;
  height: 100px;
  margin-top: 20px;
  margin-bottom: 0;
  display: block
}

.footer-o2e-wrap h4 {
  font-size: 12px;
  color: var(--ssh-white);
  text-align: center;
  margin: 0;
  padding: 0;
  line-height: 100%;
  font-weight: 100;
  clear: both;
  display: block;
}

.number-reviews-washer h2.wp-block-heading {

  margin: 20px 0 0 0;
  font-weight: 700
}

.number-reviews-washer p {
  font-size: 20px
}



.page.page-template-page-cobrand .hero-banner {
  background-image: url(../images/1.webp);
}

.page.franchise-information .hero-banner {
  background-position: center top;
}



.flex-direction-nav {
  display: block;
}

.flexslider .flex-direction-nav a {
  text-indent: -9000px;
  height: 50px;
  width: 25px;
  display: block;
  float: left;
  line-height: 200px;
  overflow: hidden;
}

.flexslider .flex-direction-nav a.flex-prev {
  background-image: url(../images/flex-nav-left.png);
}

.flexslider .flex-direction-nav a.flex-next {
  background-image: url(../images/flex-nav-right.png);
}

.flexslider.testimonials .flex-direction-nav a.flex-prev {
  left: -40px;
}

.flexslider.testimonials .flex-direction-nav a.flex-next {
  right: -40px;
}

.flexslider .flex-direction-nav a.flex-prev:before {
  display: none;
}

.hero-banner h1 {
  font-size: 65px;
  line-height: 110%;
  font-weight: 800;
  margin-bottom: 5px;
  color: var(--ssh-white);
}

.hero-banner h2 {
  font-size: 22px;
  font-weight: 400;
  color: var(--ssh-white);
}


a.cta.book-again {
  display: block;
  padding: 0 10px;
  font-size: 13px;
  line-height: 35px;
  color: var(--ssh-white);
  margin-left: 3px;
  height: 54px;
  line-height: initial;
  transition: all ease 0.5s;
  position: relative;
  bottom: 0;
  left: 0;
  width: 105px;
  text-align: center;
}

.hero-banner-form .returning-customer {
  position: relative;
  width: 115px;
  height: 48px;
  display: inline-block;
  float: right;
  margin-left: 3px;
}



span.form-wrap-bg {
  display: inline-block;
  background-color: var(--ssh-light-grey);
  border: 3px var(--ssh-light-grey) solid;
  height: 48px
}

.quote-form {
  padding-top: 25px;
  padding-bottom: 0;
  line-height: 40px;
}

.quote-form h3 {
  font-size: 27px;
  font-weight: 100;
  color: var(--ssh-white);
  line-height: 48px;
  margin-right: 20px;
}

.footer-wrap.primary-cta .quote-form h3 {
  margin-right: 0;
  color: #00aeff;
  display: block;
  clear: both;
}

.quote-form input#zip {
  float: left;
  margin-right: 3px;
  width: 120px;
}

.hero-banner-form h3.service-headline {
  float: left;
}

.quote-form h5 {
  text-transform: none;
  clear: both;
  display: block;
  font-weight: 100;
  font-size: 14px;
  padding-top: 45px;
}

.shack-shine-advantage {
  text-align: center;
}

.shack-shine-advantage h3 {
  color: #00aeef;
  font-weight: 100;
  font-size: 45px;
}

.shack-shine-advantage h4 {
  color: #000;
  font-weight: 400;
  font-size: 20px;
}

h4.tertiary-subheadline {
  margin-top: 30px;
  margin-bottom: 30px;
}

.shack-shine-advantage ul.collage {
  margin-left: 0;
  margin-right: 0;
  margin-top: 70px;
  margin-bottom: 50px;
  padding: 0;
  clear: both;
  display: table;
  height: 1005px
}

.shack-shine-advantage ul.collage li {
  margin: 0;
  padding: 0;
  list-style: none;
  float: left;
  display: table;
  background-size: 100%;
}

.shack-shine-advantage ul.collage li a {
  display: table-cell;
  vertical-align: middle;
  color: var(--ssh-white);
}

.collage-image.n2,
.collage-image.n5 {
  text-align: center
}

.shack-shine-advantage a h5 {
  font-size: 24px;
  margin-top: 30px;
  margin-bottom: 10px;
  font-weight: 700;
}

.shack-shine-advantage ul.collage li a .button.cta {
  display: none;
  background-color: #00aeef;
  padding-left: 15px;
  padding-right: 15px;
  line-height: 25px;
  padding-top: 5px;
  padding-bottom: 5px;
  width: 105px;
  margin-left: auto;
  margin-right: auto;
}

.shack-shine-advantage ul.collage li.n1 {
  background-image: url(../images/shack-shine-collage-01.jpg);
  /*	background-image:url(images/shackshine-christmas-lights-tile.jpg);*/
  /* background-image: url(images/house-washing-month.jpg);*/
  height: 665px;
  width: 675px;
  margin-right: 15px;
  margin-bottom: 15px;
}

.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column,
.wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column {
  border-radius: 10px;
  margin: 0px 0px 25px 0px;
  padding: 10px;
}

.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column .wp-block-button,
.wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column .wp-block-button {
  margin-bottom: -30px;
}

.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column img,
.wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column img {
  margin-bottom: 20px
}

.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column p,
.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column p {
  margin-bottom: 0
}

.how-it-works-wrap p img,
.how-christmas-lights-work-wrap p img {
  display: inline-block;
  float: left;
  margin-right: 20px;
}
.how-it-works-wrap a.cta{white-space: wrap;}
.page-id-3185 .shack-shine-advantage ul.collage li.n1 {
  background-image: none;
}

.shack-shine-difference-christmas-wrap h3 {
  font-size: 20px;
  margin: 30px 0 15px 0;
}

.page-id-3185 .shack-shine-advantage ul.collage li.n1 img {
  width: 100%;
}

.page-id-3185 .hero-banner li.carousel-slide:first-child h1 {
  color: #000;
}

.shack-shine-advantage ul.collage li.n2 {
  /* background-image: url(../images/shack-shine-collage-02.jpg); */
  height: 325px;
  width: 335px;
  margin-bottom: 15px;
}

.shack-shine-advantage ul.collage li.n3 {
  /* background-image: url(../images/shack-shine-collage-03.png); */
  height: 325px;
  width: 335px;
  text-indent: -9000px;
}

.shack-shine-advantage ul.collage li.n3 a {
  vertical-align: top;
}

.shack-shine-advantage ul.collage li.n1 a h5,
.shack-shine-advantage ul.collage li.n3 a h5 {
  text-indent: -9000px;
}

.shack-shine-advantage ul.collage li.n4 {
  background-image: url(../images/shack-shine-collage-04.jpg);
  height: 325px;
  width: 475px;
  margin-right: 15px;
  text-align: left;
  padding-left: 30px;
  font-weight: 700;
}

.shack-shine-advantage ul.collage li.n4 .cta-h4.button {
  text-transform: uppercase;
  font-size: 25px;
  font-weight: 700;
}

.shack-shine-advantage ul.collage li.n4 .cta-h4.button:after {
  content: "»";
  font-size: 33px;
  margin-left: 5px;
  font-weight: 400;
}

li.collage-image.n4.franchise h5 {
  text-transform: uppercase;
  font-size: 45px;
  line-height: 98%;
}

.shack-shine-advantage ul.collage li.n5 {
  background-image: url(../images/shack-shine-collage-05.jpg);
  height: 325px;
  width: 505px;
}


.content-wrap {
  min-height: 300px;
}

.content-wrap.with-sidebar article {
  float: left;
  width: 640px;
}

.competitive-advantage {
  display: block;
  width: 100%;
  clear: both
}

.competitive-advantage .competitive-advantage-image {
  display: block;
  width: 300px;
  height: 300px;
  float: left;
  margin-right: 40px;
  margin-bottom: 40px;
  background-size: 300px 300px;
}

.competitive-advantage .competitive-advantage-description,
.team-member-description,
.content-block-description {
  display: block;
  float: left;
  width: calc(100% - 340px);
  border-bottom: #cacaca 1px solid;
  min-height: 300px;
  padding-bottom: 70px;
  margin-bottom: 80px;
}

.competitive-advantage-description h3,
.team-member-description h3,
.content-block-secondary-description h3,
.latest-posts h3,
h2.entry-title,
.entry-content h2,
.page.page-template-page-franchise .content-block-description h3,
.single.single-metro .content-block-description h2,
article h1,
.col.n2 h3,
.rbchome .entry-content h3,
.housemaster .entry-content h3,
.movesnap .entry-content h3,
.royallepage .entry-content h3,
.page.page-template-page-cobrand .entry-content h3 {

  font-size: 27px;
  margin-top: -8px;
  margin-bottom: 20px;
  line-height: 130%;
}

.col.n2 h3 {
  margin-top: 0;
}

article h1 {
  font-size: 35px;
}


.content-wrap article h2,
h2.wp-block-heading {
  font-size: 42px;
  line-height: 120%;
  font-weight: 800;
  margin: 0 0 40px 0;
  color: initial;
}

.content-wrap article .has-ssh-dark-blue-background-color h2 {
  color: var(--ssh-white);
}

h3.wp-block-heading {
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 20px;
}

h4.wp-block-heading {
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 800;
  margin: 10px 0;
}
.content-wrap article ol{margin-left: 25px;}
/* No Margin (No top or bottom margin) */
.content-wrap article .wp-block-heading.is-style-no-margin {
  margin-top: 0;
  margin-bottom: 0;
}

/* Small Margin (20px) */
.content-wrap article .wp-block-heading.is-style-margin-s {
  margin-top: 20px;
  margin-bottom: 20px;
}

.content-wrap article .wp-block-heading.is-style-top-margin-s {
  margin-top: 20px;
  margin-bottom: 0;
}

.content-wrap article .wp-block-heading.is-style-bott-margin-s {
  margin-top: 0;
  margin-bottom: 20px;
}

/* Medium Margin (40px) */
.content-wrap article .wp-block-heading.is-style-margin-m {
  margin-top: 40px;
  margin-bottom: 40px;
}

.content-wrap article .wp-block-heading.is-style-top-margin-m {
  margin-top: 40px;
  margin-bottom: 0;
}

.content-wrap article .wp-block-heading.is-style-bott-margin-m {
  margin-top: 0;
  margin-bottom: 40px;
}

/* Large Margin (60px) */
.content-wrap article .wp-block-heading.is-style-margin-l {
  margin-top: 60px;
  margin-bottom: 60px;
}

.content-wrap article .wp-block-heading.is-style-top-margin-l {
  margin-top: 60px;
  margin-bottom: 0;
}

.content-wrap article .wp-block-heading.is-style-bott-margin-l {
  margin-top: 0;
  margin-bottom: 60px;
}


.wp-block-button.is-style-outline a {
  font-weight: 400;
  font-size: 16px;
  text-transform: uppercase;

  background-color: transparent
}

.is-style-outline .wp-block-button__link.wp-element-button {
  color: var(--ssh-black);
}

.hero-banner .is-style-outline .wp-block-button__link.wp-element-button {
  color: var(--ssh-white)
}

.wp-block-button.is-style-outline a:hover {
  background: transparent;
  color: var(--ssh-light-blue);
}

.wp-block-button.is-style-outline.has-ssh-white-color a:hover {
  background: transparent;
  color: var(--ssh-black);
}

.entry-content h3 {
  font-size: 18px;
}

.latest-posts h3 {
  margin-bottom: 0;
}

.latest-posts time {
  margin-bottom: 10px;
  display: block;
}

.team-member-description h3 {
  margin-bottom: 5px;
}

h5.competitive-advantage-primary-description,
.team-member-description h5,
.content-block-secondary-description h5,
.content-block-description h5,
#contact h5 {
  font-size: 20px;
  font-weight: 400;
}

.team-member-description h5,
.content-block-secondary-description h5,
.content-block-description h5 {
  margin-bottom: 20px;
}

article .content-block form.wpcf7-form .form-row label {
  width: 270px;
  font-size: 13px;
}

article .content-block form .form-row.submit {
  padding-left: 290px;
}

input.wpcf7-form-control.wpcf7-submit {
  margin-left: 270px;
}

fieldset h2 {
  font-size: 30px;
  font-weight: 200;
}

#sidebar {
  float: left;
  width: 280px;
  margin-right: 30px;
}

.breadcrumbs {
  text-transform: lowercase;
  margin-bottom: 55px;
  font-size: 21px;
  color: #555;
}

.career-opportunities {
  margin-bottom: 40px;
}

#headline-intro h1 {
  margin-bottom: 15px;
}

#testimonials {
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 14px;
  color: #000;
}



#testimonials a.cta-link {
  text-decoration: underline;
  color: #000;
  margin-left: 20px;
}


#testimonials .flexslider {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
  background: transparent;
  border: none;
}

#testimonials .flex-control-paging li a {
  height: 7px;
  width: 7px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}

#testimonials .flex-control-paging li a {
  background: var(--ssh-white);
}

#testimonials .flex-control-paging li a.flex-active {
  background: #008bb6;
}

#testimonials .flex-control-nav {
  text-align: left;
}

#testimonials-wrap {
  background-color: #00aeef;
  background-image: url(../images/shack-shine-testimonials.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

#testimonials .testimonial-content div[itemprop="reviewBody"] {
  color: var(--ssh-white);
  font-size: 45px;
  font-weight: 100;
  margin-top: 40px;
  margin-bottom: 20px;
  line-height: 120%;
}

#testimonials h4 {
  line-height: 45px;
  background-image: url(../images/icon-testimonials.png);
  background-repeat: no-repeat;
  padding-left: 65px;
  font-weight: 100;
}

.testimonial-rating {
  width: 100%;
  height: 25px;
  background-image: url('../images/star-rating-with-google.svg');
  margin: 10px 0 20px 0;
  background-repeat: no-repeat
}

a.cta {
  color: var(--ssh-white);
  background: var(--ssh-light-blue);
  padding-top: 15px;
  padding-right: 30px;
  padding-bottom: 12px;
  padding-left: 30px;
  float: left;
  text-transform: uppercase
}

a.cta.read-more {
  margin-bottom: 40px;
}
div.cta:hover,
a.cta:hover {
  background-color: var(--ssh-dark-blue);
}

.expanding-sf {
  position: absolute;
  top: -13px;
  width: 50px;
  right: -30px;

}

.form-wrap {
  margin: 0 auto;
  position: relative;
  top: 0;
  width: inherit;
  z-index: 999;
}

/** Essentials **/
.toggle {
  background: url(../images/icon-search-black.svg) no-repeat scroll center center transparent;
  border: medium none;
  background-size: 17px auto;
  color: var(--ssh-white);
  cursor: pointer;
  display: block;
  height: 38px;
  position: absolute;
  right: -5px;
  top: -2px;
  width: 50px;
}

#searchform {
  float: right;
  height: 38px;
  margin: 0;
  opacity: 0;
  padding: 0;
  transition: all 0.2s ease-in-out 0;
  visibility: hidden;
  width: 10px;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  position: absolute;
  right: 0;
}

.form-wrap:hover #searchform {
  display: block;
  opacity: 1;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  visibility: visible;
  width: 250px;
}

#searchform #s {
  background: none repeat scroll 0 0 var(--ssh-light-grey);
  border: medium none;
  color: var(--ssh-dark-grey) !important;
  float: right;
  outline: none;
  font-size: 12px;
  height: 100%;
  padding: 0 15px;
  width: 100%;
}

#searchform #s::-webkit-input-placeholder,
#searchform #s:-moz-placeholder,
#searchform #s::-moz-placeholder,
#searchform #s:-ms-input-placeholder {
  color: var(--ssh-white);
  opacity: 1
}

#searchform #searchsubmit {
  background: url(../images/icon-search-white.svg) no-repeat scroll center center #00aeef;
  border: medium none;
  background-size: 20px auto;
  color: var(--ssh-white);
  cursor: pointer;
  display: block;
  height: 38px;
  position: absolute;
  right: 0;
  width: 50px;
  border-radius: 0;
  padding: 0
}

article ul,
article ol {
  margin-left: 40px;
  margin-top: 15px;
  margin-bottom: 25px;
}
article .wpcf7-form ol{margin: 0}

article ul li,
article ol li {
  list-style: disc;
  margin-bottom: 10px;
  
}

ul.wp-block-list {
  width: fit-content;
  margin-left: 0;
}

ul.wp-block-list li {
  list-style: none;
  padding-left: 20px;

  position: relative
}

ul.wp-block-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 10px;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background-color: var(--ssh-light-blue);
  border-radius: 50%;
}

ul.wp-block-list.is-style-col-2 {
  column-count: 2;

}

ul.wp-block-list.is-style-col-3 {
  column-count: 3;

}

article ol li {
  list-style: decimal;
}

.team-member {
  width: 100%;
  clear: both;
}

.content-block .content-block-image,
.team-member-image,
.placeholder-image,
.content-block-sidebar,
.content-block-image-placehold {
  float: left;
  width: 300px;
  margin-right: 40px;
}

.content-block-image-placehold {
  height: 300px;
}

.placeholder-image {
  background-color: #e6e6e6;
  height: 300px;
  color: var(--ssh-white);
  text-align: center;
  font-size: 14px;
  text-transform: uppercase;
  line-height: 300px;
  background-image: url(../images/shack-shine-icon.svg);
  background-size: 60px auto;
  background-position: center center;
  background-repeat: no-repeat;
  text-indent: -9000px;
}

.single article h1 {
  margin-bottom: 10px;
}

.single article time {
  margin-bottom: 50px;
  display: block;
}

span.heart {
  background-image: url(../images/shack-shine-heart.png);
  background-size: 19px;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  background-repeat: no-repeat;
  background-position: center -21px;
  color: var(--ssh-white);
  font-size: 19px;
  padding-left: 0;
  padding-right: 0;
  line-height: 18px;
  color: transparent;
  display: inline-block;
}

span.heart.blue {
  background-position: center 5px;
  color: var(--ssh-white);
  font-size: 19px;
  padding-left: 0;
  padding-right: 0;
  line-height: 18px;
  color: transparent;
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-bottom: -5px;
}

h2 span.heart.blue {
  background-size: 30px;
  width: 30px;
  height: 30px;
  font-size: 50px;
  background-position: center top;
}

.when-its-time {
  font-size: 18px;
  line-height: 25px;
}

.map_image {
  height: auto;
  width: 100%;
  margin-bottom: 30px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.canada-wrap h3,
.united-states-wrap h3 {
  margin-bottom: 20px;
}

h2.entry-title {
  margin-bottom: 5px;
}

.back-nav a {
  margin-bottom: 20px;
  display: block;
}

article #franchise-testimonials ul {
  margin: 0;
  padding: 0;
  margin-bottom: 40px;
}

article #franchise-testimonials ul li {
  list-style: none;
  border-bottom: #ccc 1px solid;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

article #franchise-testimonials ul li .testimonial-content hr {
  display: none !important;
}

article #franchise-testimonials ul li .testimonial-content p {
  margin-bottom: 5px;
}

article #franchise-testimonials ul li .customer {
  margin-left: 5px;
  font-style: italic;
  color: #666;
}

.canada-wrap,
.united-states-wrap {
  width: 48%;
  float: left;
  margin-top: 20px;
  margin-bottom: 60px;
}

.country-list {
  margin-left: 0;
}

.canada-wrap ul,
.united-states-wrap ul {
  margin-left: 0;
  margin-bottom: 30px;
}

.canada-wrap ul li,
.united-states-wrap ul li {
  margin-left: 20px;
}

.canada-wrap h3,
.united-states-wrap h3 {
  margin-bottom: 5px;
  font-size: 18px;
}

.page.page-template-page-franchise .hero-banner {
  /* background-image: url(../images/shack-shine-franchise-development.jpg); */
}

.page.page-template-page-franchise a.cta {
  clear: both;
  float: none;
  margin-bottom: 20px;
  display: inline-block;
}

.page.page-template-page-franchise .content-block-wrapper {
  margin-top: 50px;
}

article .content-block-primary-description p {
  font-weight: 400;
  font-size: 20px;
}

.page.page-template-page-franchise .content-wrap.entry-content {
  margin-top: 40px;
}

.page.page-template-page-franchise .content-block-description h3 {
  margin-top: 0;
  margin-bottom: 5px;
}

.page.page-template-page-franchise table {
  margin-bottom: 20px;
  width: 100%;
}

.page.page-template-page-franchise table td,
.page.page-template-page-franchise table th {
  padding: 8px;
  text-align: left;
  width: 33%;
}

p.sidebar-franchisee-title-location,
.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-testimonial-content {
  font-size: 13px;
  color: #666;
}

article .cities-serviced ul,
article .services ul {
  -moz-column-count: 3;
  -moz-column-gap: 20px;
  -webkit-column-count: 3;
  -webkit-column-gap: 20px;
  column-count: 3;
  column-gap: 60px;
  font-size: 18px;
}

article .cities-serviced ul li,
article .services ul li {
  list-style: none;
  padding-left: 25px;
  padding-top: 0;
  padding-bottom: 0;
  background-image: url(../images/checkmark-icon.png);
  background-repeat: no-repeat;
  background-position: 0 18px;
  line-height: 50px;
}

.page.page-template-page-franchise table tr:nth-child(even) {
  background: #f3f4f6;
}

.page-template-page-franchise .content-block {
  display: table;
}

.page-template-page-franchise .content-block-image,
.page-template-page-franchise .content-block-sidebar {
  display: table-cell;
}

.page-template-page-franchise .content-block-sidebar {
  padding-top: 0;
  width: 270px;
  font-size: 14px;
}

.page-template-page-franchise .content-block-sidebar img {
  height: 270px;
  width: 270px;
  margin-bottom: 25px;
}

.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-name {
  font-size: 22px;
  font-weight: 600;
  color: #333;
}

.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-title-location {
  margin-bottom: 20px;
}

.page-template-page-franchise .content-block-sidebar .sidebar-franchisee-testimonial-content {
  line-height: 140%;
}

.page-template-page-franchise .content-block-secondary-description {
  display: table-cell;
  vertical-align: top;
}

body.rbc-2x-rewards article ol {
  list-style-type: decimal;
}

.page.home :where(.value-props.wp-block-columns.is-layout-flex),
.page.home :where(.collage-top-row.wp-block-columns.is-layout-flex),
.page.home :where(.collage-second-row.wp-block-columns.is-layout-flex),
.page.page-template-page-home-2023 :where(.value-props.wp-block-columns.is-layout-flex),
.page.page-template-page-home-2023 :where(.collage-top-row.wp-block-columns.is-layout-flex),
.page.page-template-page-home-2023 :where(.collage-second-row.wp-block-columns.is-layout-flex) {
  gap: 10px;
}

.value-props .wp-block-column p {
  margin-bottom: 0
}

.collage-top-row .wp-block-column p,
.collage-second-row .wp-block-column p {
  display: none;
}

.collage-second-row .wp-block-cover {
  min-height: initial;
  aspect-ratio: 1 /1;
  overflow: hidden;

}



#fancybox-wrap #fancybox-outer {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--ssh-white);
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}

#fancybox-outer #fancybox-close,
#fancybox-outer #fancybox-right-ico,
#fancybox-outer #fancybox-left-ico {
  background-image: url('../images/fancybox.png');
  width: 40px;
  height: 40px;
}

#fancybox-outer #fancybox-left-ico {
  background-position: -40px -120px;
}

.housemaster .phone-number-cta,
.rbchome .phone-number-cta,
.housemaster #cssmenu-search-wrap,
.rbchome #cssmenu-search-wrap,
.movesnap .phone-number-cta,
.movesnap #cssmenu-search-wrap,
.royallepage .phone-number-cta,
.royallepage #cssmenu-search-wrap,
.page.page-template-page-cobrand .phone-number-cta,
.page.page-template-page-cobrand #cssmenu-search-wrap {
  display: none;
}

.housemaster header:after,
.rbchome header:after,
.movesnap header:after,
.royallepage header:after,
.page.page-template-page-cobrand header:after {
  content: "";
  float: right;
  display: block;
  width: 300px;
  height: 55px;
  background-size: auto 100%;
  background-repeat: no-repeat;
  margin-top: 10px;
  background-position: right center;
}

.rbchome header:after {
  background-image: url(../images/rbc-logo.svg);
}

.housemaster header:after {
  background-image: url(../images/housemaster-logo.png);
  width: 285px;
}

.movesnap header:after {
  background-image: url(../images/movesnap-logo.png);
  width: 264px;
  height: 45px;
  margin-top: 15px;
}

.royallepage header:after {
  background-image: url(../images/logo-royal-lepage.svg);
  width: 150px;
  height: 45px;
  margin-top: 15px;
}

.housemaster h4,
.rbchome h4,
.movesnap h4,
.royallepage h4,
.page.page-template-page-cobrand .entry-content h4 {
  font-weight: 700;
  display: block;
  clear: both;
}

.housemaster .entry-content a.cta,
.rbchome .entry-content a.cta,
.movesnap .entry-content a.cta,
.royallepage .entry-content a.cta,
.page.page-template-page-cobrand .entry-content a.cta {
  display: table;
  margin: 40px auto;
  float: none;
}

.housemaster .entry-content p,
.rbchome .entry-content p,
.movesnap .entry-content p,
.royallepage .entry-content p,
.page.page-template-page-cobrand .entry-content p {
  font-size: 20px;
}

.housemaster .terms-and-conditions h4,
.rbchome .terms-and-conditions h4,
.movesnap .terms-and-conditions h4,
.royallepage .terms-and-conditions h4,
.page.page-template-page-cobrand .terms-and-conditions h4 {
  font-size: 12px;
}

.housemaster .terms-and-conditions p,
.rbchome .terms-and-conditions p,
.movesnap .terms-and-conditions p,
.royallepage .terms-and-conditions p,
.page.page-template-page-cobrand .terms-and-conditions p {
  font-size: 12px;
}

.housemaster .entry-content h2,
.rbchome .entry-content h2,
.movesnap .entry-content h2,
.royallepage .entry-content h2,
.page.page-template-page-cobrand .entry-content h2 {
  margin-bottom: 30px;
  font-size: 35px;
  margin-top: -30px;
}

.housemaster .entry-content h2 {
  margin-top: 0;
}

.housemaster .entry-content h3,
.rbchome .entry-content h3,
.movesnap .entry-content h3,
.royallepage .entry-content h3,
.page.page-template-page-cobrand .entry-content h3 {
  font-size: 26px;
}

.housemaster .content-wrap.entry-content img,
.rbchome .content-wrap.entry-content img,
.movesnap .content-wrap.entry-content img,
.royallepage .content-wrap.entry-content img,
.page.page-template-page-cobrand .content-wrap.entry-content img {
  max-width: 80%;
  height: auto;
}

.housemaster .promo-code-details,
.rbchome .promo-code-details,
.movesnap .promo-code-details,
.royallepage .promo-code-details,
.page.page-template-page-cobrand .promo-code-details {
  margin-bottom: 40px;
}

.page.page-template-page-cobrand .promo-code-details p {
  font-size: 15px;
}

.housemaster .entry-content article h3 {
  font-size: 2px 7px;
  color: #000;
  font-weight: 400;
  margin-bottom: 40px;
}

.full-width,
.is-style-full-width {
  position: relative;
  width: 100vw;
  /* Subtracting container padding */
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  box-sizing: border-box;
}


.gallery {
  margin: 0 0 40px;
  display: table;
  width: 100%;
}

article img {
  max-width: 100%;
  height: auto;
}

.gallery img {
  float: left;
  margin: 0 5px 5px 0;
  width: 145px;
  height: 145px;
}

.video-container {
  position: relative;
  padding-bottom: 51.3%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

div.feature-video-width {
  width: 770px;
  margin: 0 auto;
  border-radius: 15px;
  overflow: hidden
}

.intro-video.video-container {
  position: relative;
  padding-bottom: 53.3%;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.header-alert-content {
  text-align: center;
  color: var(--ssh-white);
  background: #00adee;
  padding: 15px;
  line-height: 140%;
  position: relative;
}

.header-alert-content a {
  color: var(--ssh-white);
  text-decoration: underline;
}

.mid-width-border {
  border-top: 1px solid var(--ssh-mid-grey);
  max-width: 1170px;
  clear: both;
  margin: 0 auto 30px auto;
}

.cf7mls_next.action-button,
.cf7mls_back.action-button,
.fieldset-cf7mls .wpcf7-form-control.wpcf7-cf7mls_preview_step {
  background-color: #27ae60;
  border: 0 none;
  border-radius: 0px;
  color: white;
  cursor: pointer;
  font-weight: 400;
  font-size: 16px;
  margin: 10px 5px;
  padding: 13px 5px;
  min-width: 100px;
  position: relative;
}
footer .footer-description {
  margin: 20px 0;
  max-width: 300px;
}
footer .footer-description p{font-size: 16px}
footer .footer-description
footer .phone-number-cta a.phone-number,
article#contact a.phone-number,
.location-details a.phone-number,
.phone-number {
  color: transparent;
  /* Hide the original number */
  position: relative;
  white-space: nowrap;
}

footer .phone-number-cta a.phone-number::before,
.location-details a.phone-number::before,
.phone-number::before {
  content: "1-888-808-7751";
  /* Display the formatted number */
  position: absolute;
  left: 0;
  top: -3px;
  color: var(--ssh-light-blue);
}

footer .phone-number-cta a.phone-number::before {
  color: var(--ssh-light-blue);
}

.testimonials-outer-wrap .main-carousel .flickity-page-dots {
  display: none
}

.wide-linear-gallery-images-outer-wrap {
  position: relative
}

.main-carousel .flickity-button.flickity-prev-next-button.next,
.main-carousel .flickity-button.flickity-prev-next-button.previous,
.carousel-outer-wrap .carousel-counter {
  position: absolute;
  right: 0;
  top: -40px;
  left: auto;
  display: block
}

.testimonials-outer-wrap .testimonials-wrap {
  padding-bottom: 40px
}

.testimonials-outer-wrap.carousel-outer-wrap .carousel-counter {
  display: block
}

.main-carousel .flickity-button.flickity-prev-next-button.previous {
  right: 90px;
}

.main-carousel .flickity-button.flickity-prev-next-button.next {
  right: 50px;
}

.main-carousel .flickity-button-icon {

  border: 1px solid var(--ssh-black);
  border-radius: 50%;
  padding: 7px !important;
  fill: var(--ssh-black);
}

.footer-wrap.primary-cta,
.footer-wrap.call-to-action-phone {
  display: none
}

.wp-block-columns.is-style-rounded-24px.bordered-light-blue.margins-wide.has-ssh-very-light-blue-background-color {
  margin-bottom: 40px
}

.wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column,
.wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column {
  padding: 40px 0 20px 0
}

.wp-block-columns.is-style-full-width.shiny-results-wrap {
  margin: 40px 0 80px 0;
}

.wp-block-image.size-full.is-style-rounded {
  width: fit-content
}

.wp-block-columns.is-style-full-width.bordered-light-blue.has-ssh-very-light-blue-background-color {
  padding: 60px 0;
}

.hero-banner .wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button {
  color: var(--ssh-dark-blue);
}

.wp-block-button .wp-block-button__link,
.hero-banner .wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button {
  font-size: 14px !important;
  text-transform: uppercase;
  font-weight: 700;
}

.wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-9 :where(.wp-block-columns.is-layout-flex) {
  row-gap: 0;
}



#outer-wrap .hero-banner h1 {
  font-size: 44px;
}

#fancybox-outer #fancybox-close {
  background-image: none
}

.hero-banner {
  height: 650px;
  /* background-position: bottom center; */
}

.wp-block-columns.bordered-light-blue h3 {
  font-size: 21px;
  margin: 0 0 10px 0;
  font-weight: 700;
}

.wide-linear-gallery-images-outer-wrap .flickity-viewport[style] {
  height: 500px !important;
}

.is-style-boxed-width.side-bordered.wp-block-columns .wp-block-column img {
  display: block;
  float: none;
  margin: 0 auto 40px auto;
}

.wp-block-group.christmas-light-products-we-offer img {
  margin-bottom: 10px;
}

.side-bordered.wp-block-columns .wp-block-column {
  position: relative;
}

.side-bordered .wp-block-separator {
  width: 135px;
  transform: rotate(90deg);
  position: absolute;
  left: 0;
  top: -10px;
  height: 370px;
  border-color: #c7cacd;
}

.shack-shine-other-services img {
  margin-bottom: 10px;
}

/* #outer-wrap .hero-banner .hero-content-wrap {
  top: 80px
} */

.wp-image-10938.lazyloaded {
  position: absolute;
  margin-left: 30px;
}


@media (max-width: 1280px) {
  #outer-wrap .wide-linear-gallery-images-outer-wrap .flickity-viewport[style] {
    height: 380px !important
  }
}

@media (max-width: 460px) {

  /* #outer-wrap .hero-banner {
    background-position: bottom 0 left;
  } */

  /* #outer-wrap .hero-banner {
    height: 500px;
  } */

}

@media (max-width: 760px) {
  /* #outer-wrap .hero-banner {
    background-position: bottom -10vw left;
  } */

  .wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column,
  .wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column {
    padding: 0
  }

  .wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column .wp-block-button,
  .wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column .wp-block-button {
    margin: 30px 0 -20px 0;
  }

  .wp-block-columns.is-style-boxed-width.shack-shine-other-services-list.is-layout-flex.wp-container-core-columns-is-layout-21.wp-block-columns-is-layout-flex {
    max-width: 250px;
  }

  .wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column:last-child .wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column:last-child {
    margin-bottom: 0;
  }

  .wp-image-10848.lazyloaded {
    width: 180vw !important;
    max-width: 180vw;
    margin-left: -50vw;
    margin-right: -50vw;
  }

  article p,
  #introductory-copy p {
    font-size: 16px;
  }

  /* #outer-wrap .hero-banner .hero-content-wrap {
    padding-top: 20px;
    top: 0
  } */

  .content-wrap h2.wp-block-heading {
    font-size: 28px
  }

  body .content-wrap .has-medium-font-size {
    font-size: 14px !important;
    font-weight: 600
  }

  .is-style-boxed-width.side-bordered.wp-block-columns .wp-block-column img,
  .wp-block-group.how-it-works-wrap .wp-block-columns .wp-block-column img,
  .wp-block-group.how-christmas-lights-work-wrap .wp-block-columns .wp-block-column img {
    float: left;
    margin-right: 35px;
  }

  .wp-image-10938.lazyloaded {
    float: right;
    margin-top: -30px;
    position: relative
  }

  #outer-wrap .hero-banner h1 {
    width: 100%;
    font-size: 34px;
    text-align: left;
  }

  .hero-banner {
    background-position: center left;
  }

  .side-bordered .wp-block-separator {
    width: 100%;
    transform: none;
    position: relative;
    left: 0;
    top: auto;
    height: 1px;
    margin: 30px auto 10px auto;
  }

  .is-style-full-width .wp-block-columns .wp-block-columns {
    max-width: 100%;
  }

  #outer-wrap .wide-linear-gallery-images-wrap .carousel-cell {
    width: 100%;
  }

  /* #outer-wrap .hero-banner {
    height: 500px;
    margin-bottom: 190px
  } */

  /* #outer-wrap .hero-banner .hero-ctas {
    bottom: -320px;
  } */

  .shiny-results-wrap .flickity-button.flickity-prev-next-button {
    display: block;
  }

  #outer-wrap .wide-linear-gallery-images-outer-wrap .flickity-viewport[style] {
    height: 70vw !important
  }

  #mc_embed_signup input[type="submit"],
  .quote-form .submit-button,
  a.cta-button,
  a.cta.small,
  .form-row input[type="submit"],
  input.wpcf7-form-control.wpcf7-submit,
  .wp-block-button .wp-block-button__link,
  input,
  [type="submit"],
  #outer-wrap .hero-banner .wp-block-button.is-style-outline.returning-customer .wp-block-button__link.wp-element-button {
    font-size: 15px;
  }

  article .shiny-results-wrap p {
    margin-top: -10px;
  }

  div.carousel-outer-wrap {
    margin-top: 70px
  }

  div .main-carousel .flickity-button.flickity-prev-next-button.previous,
  div .flickity-button.flickity-prev-next-button.previous {
    right: auto;
    display: block;
    left: 0
  }

  div .main-carousel .flickity-button.flickity-prev-next-button.next,
  div .flickity-button.flickity-prev-next-button.next {
    right: auto;
    left: 40px;
  }


  div.carousel-outer-wrap .carousel-counter {
    right: auto;
    top: -50px;
    left: 115px;
  }

  .wp-container-core-columns-is-layout-6 {
    flex-wrap: wrap !important;
    column-gap: 16px;
  }

  .wp-block-group.christmas-light-products-we-offer .wp-block-columns .wp-block-column {
    flex-basis: calc(50% - 16px) !important;
    box-sizing: border-box;
  }

  .wp-block-group.christmas-light-products-we-offer .wp-block-columns .wp-block-column figure {
    margin: auto;
  }

  .christmas-light-products-we-offer {
    margin-bottom: 40px
  }

  .christmas-light-products-we-offer p {
    margin-bottom: 0;
  }

  .christmas-light-products-we-offer img {
    width: 100%;
    height: auto;
  }

  .wp-block-columns.is-style-rounded-24px {
    position: relative;
    width: 100vw;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    box-sizing: border-box;
    padding: 10px;
    border-radius: 0
  }

  .wp-block-columns.is-style-rounded-24px.bordered-light-blue.margins-wide.has-ssh-very-light-blue-background-color .wp-block-column {
    padding: 20px
  }

  .wp-block-columns.is-style-rounded-24px.bordered-light-blue.margins-wide.has-ssh-very-light-blue-background-color {
    margin-bottom: 0
  }

  article .shack-shine-other-services-list p {
    margin: 10px 0 0 0;
  }

  article .shack-shine-other-services-list {
    margin-bottom: 30px;
  }

  .wp-block-columns.is-style-full-width.shiny-results-wrap {
    margin: 0 0 40px 0;
  }

  .content-wrap article .shack-shine-other-services .wp-block-heading.is-style-top-margin-l {
    margin-bottom: 10px
  }
}