/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Vars
# Global
# Navigation
# Home
# Footer
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Vars
--------------------------------------------------------------*/

:root {
  --color-dark-green: #193f2e;
  --color-medium-green: #01714d;
  --color-light-green: #27a982;
  --color-pale-green: #bddfb8;
  --color-light-blue: #92d8f3;
  --color-blue: #0296d0;
  --color-medium-blue: #0967b2;
  --color-dark-blue: #121442;
  --color-yellow: #f5d169;
  --color-pink: #e58fbc;
  --color-coral: #f26e67;
  --color-orange: #faa21b;
  --color-cream: #f1e9df;
  --color-white: #fff;
  --color-black: #000;
  --transition: 0.35s ease all;
}

/*--------------------------------------------------------------
# Global
--------------------------------------------------------------*/

html {
  font-size: 16px;
}

html.no-smooth-on-load {
  scroll-behavior: auto !important;
}

body * {
  scroll-margin-top: 0;
  -webkit-font-smoothing: antialiased;
}

body {
  font-family: 'Poppins', sans-serif;
  overflow-x: hidden !important;
}

.vsfy p {
  font-size: 16px;
  color: var(--color-black);
  line-height: 1.25;
  font-weight: 400;
  margin: 15px 0;
  padding: 0;
}

.vsfy p strong {
  font-weight: 700;
}

.vsfy h2 {
  font-size: 51px;
  padding: 0;
}

.vsfy h3 {
  font-size: 35px;
  padding: 0;
}

.vsfy h4 {
  padding: 0;
  margin-bottom: 5px;
  font-size: 20px;
  letter-spacing: -0.4px;
}

ul,
ol {
  margin: 15px 0 0;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.5;
  padding-left: 25px;
}

.vsfy ul,
.vafy ol {
  margin: 15px 0 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
  padding-left: 18px;
  list-style: inherit;
  color: var(--color-black);
}

a,
a:active,
a:focus {
  outline: none;
}

.post,
.page {
  margin: 0;
}

.home .entry-header,
.entry-footer {
  display: none;
}

.entry-content,
.hentry {
  margin: 0;
}

.max-width {
  max-width: 1355px;
  margin: 0 auto;
  padding: 0 30px;
}

body:not(.home) #primary > .max-width {
  margin: 160px auto 70px;
}

body:not(.home) #primary > .max-width h1 {
  color: var(--color-dark-blue);
}

.flex {
  display: flex;
}

.flex-wrap {
  flex-wrap: wrap;
}

.space-between {
  justify-content: space-between;
}

.align-center {
  align-items: center;
}

.grid {
  display: grid;
}

.fade-in-up,
.fade-in-down,
.fade-in-left,
.fade-in-right {
  opacity: 0;
}

.buttons {
  margin-top: 25px;
}

.buttons .vsfy-button {
  margin-right: 6px;
  margin-bottom: 6px;
}

.buttons .vsfy-button.large {
  margin-right: 10px;
  margin-bottom: 10px;
}

.buttons .vsfy-button:last-child {
  margin-right: 0 !important;
}

.vsfy-button {
  font-family: 'NT Wagner', sans-serif;
  display: inline-block;
  text-decoration: none;
  background-color: transparent;
  letter-spacing: 0;
  border: 2px solid;
  padding: 9px 20px;
  font-size: 16px;
  font-weight: 700;
  text-shadow: none;
  box-shadow: none;
  cursor: pointer;
  border-radius: 30px;
  line-height: 1.5;
  transition: var(--transition);
}

.vsfy-button.large {
  font-size: 20px;
}

.vsfy-button.dark-green {
  background-color: var(--color-dark-green);
  border-color: var(--color-dark-green);
  color: var(--color-white);
}

.vsfy-button.medium-green {
  background-color: var(--color-medium-green);
  border-color: var(--color-medium-green);
  color: var(--color-cream);
}

.vsfy-button.light-green {
  background-color: var(--color-light-green);
  border-color: var(--color-light-green);
  color: var(--color-white);
}

.vsfy-button.pale-green {
  background-color: var(--color-pale-green);
  border-color: var(--color-pale-green);
  color: var(--color-dark-green);
}

.vsfy-button.dark-blue {
  background-color: var(--color-dark-blue);
  border-color: var(--color-dark-blue);
  color: var(--color-white);
}

.vsfy-button.medium-blue {
  background-color: var(--color-medium-blue);
  border-color: var(--color-medium-blue);
  color: var(--color-white);
}

.vsfy-button.blue {
  background-color: var(--color-blue);
  border-color: var(--color-blue);
  color: var(--color-white);
}

.vsfy-button.light-blue {
  background-color: var(--color-light-blue);
  border-color: var(--color-light-blue);
  color: var(--color-dark-blue);
}

.vsfy-button.orange {
  background-color: var(--color-orange);
  border-color: var(--color-orange);
  color: var(--color-dark-blue);
}

.vsfy-button.coral {
  background-color: var(--color-coral);
  border-color: var(--color-coral);
  color: var(--color-white);
}

.vsfy-button.yellow {
  background-color: var(--color-yellow);
  border-color: var(--color-yellow);
  color: var(--color-dark-blue);
}

.vsfy-button.pink {
  background-color: var(--color-pink);
  border-color: var(--color-pink);
  color: var(--color-dark-blue);
}

.vsfy-button.white {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-dark-blue);
}

.vsfy-button.white:hover {
  background-color: transparent;
  border-color: var(--color-white);
  color: var(--color-white);
}

.vsfy-button.white-outline {
  background-color: transparent;
  border-color: var(--color-white);
  color: var(--color-white);
}

.vsfy-button.white-outline:hover {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-dark-blue);
}

.vsfy.dark-blue,
.faq.vsfy.blue {
  background-color: var(--color-dark-blue);
}

.vsfy.dark-blue {
  background-color: var(--color-dark-blue);
}

.vsfy.medium-blue {
  background-color: var(--color-medium-blue);
}

.vsfy.light-blue {
  background-color: var(--color-light-blue);
}

.vsfy.dark-green,
.faq.vsfy.green {
  background-color: var(--color-dark-green);
}

.vsfy.medium-green {
  background-color: var(--color-medium-green);
}

.vsfy.light-green {
  background-color: var(--color-light-green);
}

.vsfy.pale-green {
  background-color: var(--color-pale-green);
}

.vsfy.orange {
  background-color: var(--color-orange);
}

.vsfy.coral {
  background-color: var(--color-coral);
}

.vsfy.pink {
  background-color: var(--color-pink);
}

.vsfy.yellow {
  background-color: var(--color-yellow);
}

.vsfy.cream {
  background-color: var(--color-cream);
}

.vsfy.dark-green h2,
.vsfy.dark-green h3,
.vsfy.dark-green h4,
.vsfy.dark-green p,
.vsfy.dark-blue h2,
.vsfy.dark-blue h3,
.vsfy.dark-blue h4,
.vsfy.dark-blue p,
.faq.vsfy.blue h2,
.faq.vsfy.green h2 {
  color: var(--color-white);
}

.vsfy.light-blue h2,
.vsfy.light-blue h3,
.vsfy.light-blue h4 {
  color: var(--color-dark-blue);
}

.faq.vsfy.blue p {
  color: var(--color-light-blue);
}

.faq.vsfy.green p {
  color: var(--color-pale-green);
}

.vsfy.pale-green h2,
.vsfy.pale-green h3,
.vsfy.pale-green h4 {
  color: var(--color-dark-green);
}

.vsfy.light-blue p,
.vsfy.pale-green p {
  color: var(--color-black);
}

.vsfy.line-dark-blue::before,
.vsfy.line-dark-blue::after {
  background-color: var(--color-dark-blue);
}

.vsfy.line-medium-blue::before,
.vsfy.line-medium-blue::after {
  background-color: var(--color-medium-blue);
}

.vsfy.line-blue::before,
.vsfy.line-blue::after {
  background-color: var(--color-blue);
}

.vsfy.line-light-blue::before,
.vsfy.line-light-blue::after {
  background-color: var(--color-light-blue);
}

.vsfy.line-dark-green::before,
.vsfy.line-dark-green::after {
  background-color: var(--color-dark-green);
}

.vsfy.line-medium-green::before,
.vsfy.line-medium-green::after {
  background-color: var(--color-medium-green);
}

.vsfy.line-light-green::before,
.vsfy.line-light-green::after {
  background-color: var(--color-light-green);
}

.vsfy.line-pale-green::before,
.vsfy.line-pale-green::after {
  background-color: var(--color-pale-green);
}

.vsfy.line-orange::before,
.vsfy.line-orange::after {
  background-color: var(--color-orange);
}

.vsfy.line-coral::before,
.vsfy.line-coral::after {
  background-color: var(--color-coral);
}

.vsfy.line-yellow::before,
.vsfy.line-yellow::after {
  background-color: var(--color-yellow);
}

.vsfy.line-pink::before,
.vsfy.line-pink::after {
  background-color: var(--color-pink);
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

header .et_pb_section_1_tb_header.et_pb_section:nth-child(2) {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background-color: #12144266 !important;
}

header .et_pb_section_1_tb_header.et_pb_section:nth-child(2) p {
  margin: 8px 0;
}

header
  #mega-menu-wrap-primary-menu
  #mega-menu-primary-menu
  > li.mega-menu-item.menu-custom-button-1
  > a.mega-menu-link,
header
  #mega-menu-wrap-primary-menu
  #mega-menu-primary-menu
  > li.mega-menu-item.menu-custom-button-2
  > a.mega-menu-link {
  line-height: 1.5;
  height: unset;
  text-transform: capitalize;
  margin-top: 4px;
  padding: 12px 20px !important;
  font-size: 17px !important;
  transition: var(--transition);
}

/*--------------------------------------------------------------
# Home
--------------------------------------------------------------*/

body {
  background-color: var(--color-cream);
}

.landing-banner {
  height: 100vh;
  background-size: cover;
  background-position: center;
  position: relative;
}

.landing-banner.has-carousel .landing-carousel {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.landing-banner.has-carousel .landing-carousel img {
  width: 100%;
  object-fit: cover;
  object-position: center;
  height: 110vh;
}

.landing-carousel::before,
.landing-banner.vsfy::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #0000004f;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.landing-banner .max-width {
  position: absolute;
  top: 53%;
  transform: translateY(-50%);
  z-index: 1;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.landing-banner h1 {
  color: var(--color-white);
  font-size: 83px;
}

.landing-banner h1.small {
  font-size: 62px;
  line-height: 0.8;
}

.landing-banner p {
  font-size: 31px;
  color: var(--color-white);
  font-weight: 400;
  line-height: 1.2;
}

.landing-banner .buttons {
  margin-top: 35px;
}

.landing-content {
  text-align: center;
  max-width: 960px;
  margin: 0 auto;
}

.page-id-1105735 .landing-content,
.page-id-1105780 .landing-content {
  max-width: 1140px;
}

.product-blocks {
  margin-top: -80px;
  position: relative;
  z-index: 3;
}

.product-blocks .two .product-block {
  width: 48.5%;
}

.product-blocks .three .product-block {
  width: 31.5%;
}

.product-blocks .product-block {
  border-radius: 24px;
  overflow: hidden;
}

.product-blocks .product-block .content-wrap {
  padding: 40px 35px 32px;
  position: relative;
}

.product-blocks .product-block .content-wrap .buttons {
  align-self: end;
  margin-top: 35px;
}

.product-blocks .product-block img {
  display: block;
  align-self: end;
  width: 100%;
  height: 205px;
  object-fit: cover;
  object-position: center;
}

.product-blocks .product-block h4 {
  width: 100%;
}

.product-blocks .product-block.light-green h4,
.product-blocks .product-block.medium-green h4 {
  color: var(--color-pale-green);
}

.product-blocks .product-block.blue h4 {
  color: var(--color-light-blue);
}

.product-blocks .product-block h3 {
  font-size: 28px;
  color: var(--color-white);
  padding: 0;
}

.product-blocks .product-block p {
  color: var(--color-white);
  font-size: 15px;
  line-height: 1.25;
}

.product-block.light-green {
  background-color: var(--color-light-green);
}

.product-block.medium-green {
  background-color: var(--color-medium-green);
}

.product-block.blue {
  background-color: var(--color-medium-blue);
}

.content-row {
  margin: 80px 0;
}

.content-row .content-row-content {
  width: 55%;
  align-self: center;
}

.content-row .content-row-image {
  width: 40%;
}

.content-row p:first-of-type {
  margin-top: 25px;
}

.content-row .buttons {
  margin-top: 40px;
}

.content-row .content-row-image {
  width: 40%;
  border-radius: 24px;
  overflow: hidden;
  position: relative;
}

.content-row .content-row-image::before {
  content: '';
  display: block;
  width: 20px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.content-row .content-row-image img {
  display: block;
  width: 100%;
}

.content-row.background .max-width {
  padding: 0;
  max-width: 1295px;
  border-radius: 24px;
  position: relative;
}

.content-row.background.standalone .content-row-content {
  width: 53%;
}

.content-row.background .content-row-image {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.content-row.background .content-row-content {
  padding-left: 5%;
  padding-top: 45px;
  padding-bottom: 45px;
}

.content-row.background.standalone .content-row-image {
  width: 19%;
  position: initial;
}

.content-row.background.standalone .content-row-image::before {
  left: auto;
}

.content-row.background.standalone .content-row-image img {
  position: absolute;
  right: 0;
  width: 50%;
  top: 50%;
  transform: translateY(-50%);
  height: auto;
  object-fit: contain;
}

.content-row h3 {
  margin-bottom: 5px;
}

.home .content-row h3 {
  color: var(--color-coral);
}

.content-row .yellow h3 {
  color: var(--color-light-green);
}

.content-row.background .yellow h3 {
  color: var(--color-medium-green);
}

.content-row .yellow h2 {
  color: var(--color-dark-green);
}

.content-row.background .coral h2,
.content-row.background .coral p {
  color: var(--color-white);
}

.home .content-row.background h3 {
  color: var(--color-medium-green);
}

.advantages {
  padding: 80px 0;
  border-radius: 25px;
  position: relative;
  z-index: 2;
}

.page-id-1105724 .advantages.cream,
.page-id-1105780 .advantages.cream {
  padding-top: 0;
}

.advantages h2 {
  margin-bottom: 45px;
}

/*.advantages.theme-green h2 {
  color: var(--color-dark-green);
}*/

.advantages.theme-green.dark-blue h2 {
  color: var(--color-white);
}

.advantages .column-1 {
  width: 27%;
  position: relative;
  border-radius: 26px;
  overflow: hidden;
}

.advantages .column-1 .wrap {
  padding: 32px 35px 100px;
  height: calc(100% - 140px);
  border-radius: 25px;
  margin-top: -20px;
  position: relative;
  z-index: 2;
}

.column-1.left.standalone .wrap {
  padding-top: 60px;
  height: calc(100% - 170px);
}

.advantages .column-1 img {
  height: 160px;
  width: 100%;
  display: block;
  object-fit: cover;
  object-position: top;
}

.column-1.left.standalone img {
  width: auto;
  height: auto;
  margin: 20px auto -50px;
  object-fit: contain;
  max-height: 200px;
  position: relative;
  z-index: 3;
}

.advantages .vsfy-button {
  margin-top: 12px;
  position: absolute;
  bottom: 45px;
}

.advantages .right {
  width: 70.5%;
}

.advantages h4 {
  margin: 6px 0;
  line-height: 1.2;
}

.advantages .light-green h4,
.advantages .medium-green h4,
.advantages .dark-green h4 {
  color: var(--color-pale-green);
}

.advantages .dark-blue h4,
.advantages .medium-blue h4 {
  color: var(--color-light-blue);
}

/*.page-id-1105717 .advantages .stat h4,*/
.page-id-1105724 .advantages .stat h4,
.page-id-1105735 .advantages .stat h4 {
  color: var(--color-dark-green);
}

.advantages .coral h4 {
  color: var(--color-dark-blue);
}

.page-id-1105717 .advantages .coral h4,
.page-id-1105724 .advantages .coral h4,
.page-id-1105735 .advantages .coral h4 {
  color: var(--color-dark-green);
}

.stats-top .stats {
  margin-bottom: 5px;
}

.stats-bottom .stats {
  margin-top: 5px;
  order: 2;
}

.stat {
  width: 22%;
  margin: 30px 0 20px;
}

.stat p {
  font-size: 14px;
  margin: 10px 0 0;
}

.stat .icon-wrap {
  height: 53px;
  position: relative;
  margin-bottom: 15px;
}

.stat .icon-wrap img {
  display: block;
  align-self: flex-end;
}

.advantages .column-2,
.advantages .column-3,
.advantages .column-4 {
  width: 31%;
}

.advantages .column-2 {
  border-radius: 24px;
  padding: 35px 32px 90px;
  position: relative;
  overflow: hidden;
}

.advantages .column-3 {
  border-radius: 24px;
  overflow: hidden;
}

.advantages .column-3 img {
  display: block;
  width: 100%;
  object-fit: cover;
  object-position: center;
  height: 100%;
}

.advantages .column-4 {
  border-radius: 24px;
  padding: 35px 32px 35px;
  position: relative;
  overflow: hidden;
}

.advantages h3 {
  font-size: 28px;
}

.page-id-1105724 .advantages .column-4 h3,
.page-id-1105735 .advantages .column-4 h3 {
  color: var(--color-white);
}

.page-id-1105780 .advantages .column-4 h3 {
  color: var(--color-medium-blue);
}

.advantages .column-2::after,
.advantages .column-4::after {
  content: '';
  display: block;
  width: 100%;
  height: 16px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.reviews {
  padding: 30px 0;
}

.reviews .max-width > div {
  margin: 20px -20px 0;
}

.reviews.theme-green h3 {
  color: var(--color-light-green);
}

.reviews.theme-green h2 {
  color: var(--color-dark-green);
}

.reviews.theme-blue h3 {
  color: var(--color-blue);
}

.reviews.theme-blue h2 {
  color: var(--color-dark-blue);
}

.brands {
  margin-top: -25px;
  position: relative;
  padding: 110px 0 90px;
  border-bottom-left-radius: 50px;
  border-bottom-right-radius: 50px;
}

.page-id-1105724 .brands {
  margin-bottom: 50px;
}

.brands h2 {
  color: var(--color-white);
  margin-bottom: 45px;
}

.brands-carousel .slick-track,
.brands-carousel .slick-list {
  display: flex !important;
  align-items: center;
}

.brands-carousel .slick-list {
  margin: 0 40px;
}

.brands-carousel .slick-arrow {
  z-index: 10;
  width: 16px;
  height: 30px;
  cursor: pointer;
  filter: brightness(0) invert(1);
}

.brands-carousel .slick-prev {
  left: 0;
}

.brands-carousel .slick-next {
  right: 0;
}

.slick-arrow::before,
.slick-arrow::after {
  display: none !important;
}

.brands-carousel .brand {
  text-align: center;
  padding: 0 25px;
}

.brands-carousel .brand img {
  max-height: 60px;
  width: auto;
  display: block;
  margin: 0 auto;
}

.faq {
  padding: 80px 0;
  border-top-left-radius: 50px;
  border-top-right-radius: 50px;
}

.faq h2 {
  max-width: 500px;
}

.faq .faq-content {
  width: 42%;
}

.faq .faq-content .buttons {
  margin-top: 40px;
}

.faq .faq-accordion {
  width: 52%;
}

.accordion-item {
  padding: 30px 35px;
  border-radius: 20px;
}

.accordion-item:not(:last-child) {
  margin-bottom: 15px;
}

.accordion-header {
  cursor: pointer;
  position: relative;
}

.accordion-header::after {
  content: '';
  display: block;
  width: 22px;
  height: 13px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: var(--transition);
}

.accordion-header.active::after {
  opacity: 0;
}

.faq.blue .accordion-header::after {
  background-image: url('/wp-content/uploads/2025/10/blue-arrow-down.svg');
}

.accordion-header p {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
  padding-right: 28px;
}

.accordion-header span {
  font-family: 'NT Wagner', sans-serif;
  font-size: 30px;
  margin-right: 18px;
}

.accordion-content p:last-child {
  margin-bottom: 0;
}

.accordion-content p a {
  font-weight: 600;
  text-decoration: underline;
}

.faq.blue .accordion-item {
  background-color: var(--color-light-blue);
}

.faq.blue .accordion-header span {
  color: var(--color-dark-blue);
}

.faq.blue .accordion-header p {
  color: var(--color-medium-blue);
}

.faq.blue .accordion-content p {
  color: var(--color-dark-blue);
}

.faq.blue .accordion-content p a {
  font-weight: 600;
  text-decoration: underline;
  color: var(--color-dark-blue);
}

.faq.green .accordion-item {
  background-color: var(--color-pale-green);
}

.faq.green .accordion-header span {
  color: var(--color-dark-green);
}

.faq.green .accordion-header p {
  color: var(--color-medium-green);
}

.faq.green .accordion-content p {
  color: var(--color-dark-green);
}

.faq.green .accordion-content p a {
  font-weight: 600;
  text-decoration: underline;
  color: var(--color-dark-green);
}

.posts-section {
  margin-top: 70px;
  margin-bottom: 80px;
}

.page-id-1105780 .posts-section {
  margin-top: 0;
}

.posts-section.theme-green h3 {
  color: var(--color-light-green);
}

.posts-section.theme-blue h3 {
  color: var(--color-blue);
}

.posts-section.theme-green h2 {
  color: var(--color-dark-green);
}

.posts-section.theme-blue h2 {
  color: var(--color-dark-blue);
}

.posts-section h2 {
  margin-bottom: 45px;
}

.posts-section .slick-track,
.posts-section .slick-list {
  display: flex !important;
}

.pc-card {
  padding: 0 12px;
}

.pc-thumb {
  border-top-left-radius: 24px;
  border-top-right-radius: 24px;
  overflow: hidden;
}

.pc-card .pc-thumb-link .pc-img {
  display: block;
  height: 220px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.pc-card .pc-thumb-link::after {
  display: block;
  content: '';
  width: 100%;
  height: 10px;
}

.pc-card.medium-blue .pc-thumb-link::after {
  background-color: var(--color-blue);
}

.pc-card.coral .pc-thumb-link::after {
  background-color: var(--color-coral);
}

.pc-card.pale-green .pc-thumb-link::after {
  background-color: var(--color-pale-green);
}

.pc-card.yellow .pc-thumb-link::after {
  background-color: var(--color-yellow);
}

.pc-body {
  background-color: var(--color-white);
  position: relative;
  padding: 40px 35px 105px;
  border-bottom-left-radius: 24px;
  border-bottom-right-radius: 24px;
  height: calc(100% - 230px);
}

.pc-body .vsfy-button {
  position: absolute;
  bottom: 40px;
}

.pc-title a {
  font-size: 29px;
  line-height: 1.1;
  color: var(--color-dark-green);
  display: block;
  margin-bottom: 20px;
}

.pc-body .pc-tags {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.pc-tags .pc-tag {
  background-color: var(--color-cream);
  border-radius: 6px;
  margin-right: 6px;
  padding: 4px 8px;
  font-size: 12px;
  margin-bottom: 6px;
  text-transform: capitalize;
}

.pc-meta {
  list-style: none;
  margin: 0 0 35px;
  padding: 0;
}

.pc-meta li {
  font-size: 15px;
  font-weight: 400;
}

.pc-meta li .pc-label {
  font-weight: 600;
}

.pc-meta p:last-of-type {
  margin-bottom: 0;
}

.pc-view-all-wrap {
  text-align: center;
  margin-top: 50px;
}

.process {
  padding: 70px 0;
  border-radius: 50px;
}

.page-id-1105724 .process {
  position: relative;
  z-index: 2;
  margin-bottom: -45px;
}

.page-id-1105735 .process,
.page-id-1105780 .process {
  margin-bottom: 50px;
}

.process h2 {
  color: var(--color-white);
  max-width: 400px;
  margin-bottom: 40px;
}

.process-content {
  width: 40%;
}

.process-wrap {
  width: 55%;
}

.process-steps .slick-prev {
  display: none;
}

.process-steps .slick-arrow {
  z-index: 10;
  width: 16px;
  height: 30px;
  cursor: pointer;
  filter: brightness(0) invert(1);
}

.process-steps .slick-next {
  right: 0;
}

.process-item.flex {
  display: flex !important;
}

.step-content {
  width: 43%;
  align-content: center;
}

.step-content h4 {
  width: 100%;
  color: var(--color-white);
  margin-bottom: 8px;
}

.step-content h3 {
  color: var(--color-white);
  font-size: 30px;
  margin-bottom: 10px;
}

.step-content p {
  color: var(--color-white);
  font-size: 15px;
  margin: 5px 0;
}

.step-content p a {
  color: var(--color-white);
  font-weight: 600;
}

.step-content ul {
  font-size: 15px;
  font-weight: 400;
  color: var(--color-white);
  padding-left: 5px;
  list-style: inside;
  line-height: 1.3;
  margin: 0;
}

.step-image {
  width: calc(52% - 30px);
  overflow: hidden;
  border-radius: 30px;
  margin-right: 40px;
}

.step-image img {
  display: block;
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center;
}

.slick-progress {
  display: flex;
  align-items: center;
  gap: 0;
  margin-bottom: 30px;
  user-select: none;
}

.slick-progress__dot {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid var(--color-orange);
  background: var(--color-orange);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
  cursor: pointer;
}

.slick-progress__dot::after {
  content: '';
  width: 60%;
  height: 60%;
  border-radius: 50%;
  background: var(--color-orange);
  opacity: 0;
  transition: opacity 160ms ease;
}

.slick-progress__dot[aria-current='true'] {
  transform: scale(2.5);
  background: var(--color-orange);
}

.slick-progress__dot[aria-current='true']::after {
  opacity: 1;
}

.slick-progress__line {
  flex: 1 1 0%;
  height: 3px;
  background: var(--color-orange);
  border-radius: 999px;
  position: relative;
  overflow: hidden;
}

.slick-progress__line > span {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0%;
  background: var(--color-orange);
  transition: width 240ms ease;
}

.footer-banner.full .footer-banner {
  width: 100%;
}

.footer-banner.split .footer-banner {
  width: 50%;
}

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

.footer-banner .max-width {
  padding-top: 120px;
  padding-bottom: 80px;
}

.footer-banner.split .max-width {
  max-width: 620px;
}

.footer-banner h2,
.footer-banner p {
  color: var(--color-white);
}

.footer-banner p {
  max-width: 550px;
}

.footer-banner .buttons {
  margin-top: 50px;
}

.payment-options {
  padding: 80px 0;
  border-radius: 50px;
}

.page-id-1105735 .payment-options {
  margin-bottom: -45px;
  position: relative;
  z-index: 2;
}

.payment-options.vsfy.green {
  background-color: var(--color-medium-green);
}

.payment-options.vsfy.blue {
  background-color: var(--color-medium-blue);
}

.payment-options.green h2,
.payment-options.blue h2 {
  color: var(--color-white);
}

.payment-options h2 {
  margin-bottom: 45px;
}

.columns-2 .payment-option {
  width: 48.5%;
}

.columns-3 .payment-option {
  width: 31.5%;
}

.columns-2 .content-column {
  column-count: 2;
  margin-top: 15px;
}

.columns-2 .content-column p:first-child {
  margin-top: 0;
}

.payment-options .content-wrap {
  padding: 38px 34px 105px;
  border-radius: 24px;
  align-content: baseline;
}

.payment-options.green .content-wrap {
  background-color: var(--color-pale-green);
}

.payment-options.blue .content-wrap {
  background-color: var(--color-light-blue);
}

.payment-options .icon-wrap {
  height: 48px;
  position: relative;
}

.payment-options .icon-wrap img {
  display: block;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.payment-options h3 {
  width: 100%;
  margin-top: 18px;
  font-size: 29px;
}

.payment-options.green h3,
.payment-options.green h4 {
  color: var(--color-dark-green);
}

.payment-options ul {
  margin: 15px 0;
}

.payment-options h4 {
  margin-top: 5px;
  width: 100%;
}

.payment-options em {
  font-size: 14px;
  display: block;
  font-weight: 300;
}

.payment-options .buttons {
  position: absolute;
  bottom: 38px;
}

.packages-carousel {
  margin-top: 30px;
}

.packages-overview {
  padding: 70px 0 80px;
  border-radius: 50px;
  position: relative;
  z-index: 3;
  margin-top: -50px;
}

.packages.green .packages-overview {
  background-color: var(--color-dark-green);
}

.packages.blue .packages-overview {
  background-color: var(--color-dark-blue);
}

.packages-overview h2 {
  color: var(--color-cream);
  max-width: 400px;
}

.packages-overview .wrap p {
  color: var(--color-white);
  max-width: 450px;
}

.select-spend {
  width: 250px;
  text-align: right;
}

.page-id-1105735 .packages .select-spend {
  display: none;
}

.select-spend p {
  font-size: 18px;
}

.packages.green .select-spend p {
  color: var(--color-pale-green);
}

.packages.blue .select-spend p {
  color: var(--color-light-blue);
}

.select-spend .packages-select {
  font-family: 'NT Wagner', sans-serif;
  background-color: transparent;
  border: 1.5px solid var(--color-yellow);
  border-radius: 30px;
  color: var(--color-yellow);
  font-size: 17px;
  padding: 10px 20px;
  outline: none;
  cursor: pointer;
}

.single-package {
  padding: 40px;
  border-radius: 24px;
  margin: 0 15px;
  overflow: hidden;
  position: relative;
}

.single-package h3,
.single-package p,
.single-package ul {
  color: var(--color-white);
}

.page-id-1105735 .single-package h3 {
  display: none;
}

.page-id-1105735 .single-package h4 {
  font-size: 30px;
}

.single-package .buttons,
.single-package .vsfy-button {
  margin-top: 35px;
}

.single-package .buttons .vsfy-button {
  margin-top: 0;
}

.packages-carousel .slick-track,
.packages-carousel .slick-list {
  display: flex !important;
  align-items: center;
}

.packages.water .slick-arrow img {
  filter: hue-rotate(450deg);
}

.packages.green .single-package {
  background-color: var(--color-medium-green);
}

.packages.green .single-package.slick-current {
  background-color: var(--color-pale-green);
}

.packages.green .single-package.slick-current h3 {
  color: var(--color-dark-green);
}

.packages.blue .single-package {
  background-color: var(--color-blue);
}

.packages.blue .single-package.slick-current {
  background-color: var(--color-light-blue);
}

.packages.blue .single-package.slick-current h3 {
  color: var(--color-dark-blue);
}

.single-package.slick-current p,
.single-package.slick-current ul {
  color: var(--color-black);
}

.packages-carousel .single-package img {
  display: none;
  margin: -40px -40px 35px;
  width: calc(100% + 80px);
  max-width: unset;
  object-fit: cover;
  object-position: center;
  height: 185px;
}

.single-package.slick-current img {
  display: block;
}

.packages .single-package.slick-current img + h4::before {
  content: '';
  display: block;
  width: 100%;
  height: 11px;
  background-color: var(--color-coral);
  position: absolute;
  top: 185px;
  left: 0;
}

.packages h3 {
  font-size: 30px;
}

.packages.green .single-package h4 {
  color: var(--color-pale-green);
}

.packages.green .single-package.slick-current h4 {
  color: var(--color-medium-green);
}

.packages.green .single-package h3 .packages.green .single-package p {
  color: var(--color-white);
}

.packages.green .single-package.slick-current h3 {
  color: var(--color-dark-green);
}

.packages.green .single-package.slick-current p {
  color: var(--color-black);
}

.packages.green .single-package.slick-current .vsfy-button.orange {
  background-color: var(--color-coral);
  border-color: var(--color-coral);
  color: var(--color-white);
}

.packages.blue .single-package h4 {
  color: var(--color-light-blue);
}

.packages.blue .single-package.slick-current h4 {
  color: var(--color-medium-blue);
}

.packages.blue .single-package h3 .packages.blue .single-package p {
  color: var(--color-white);
}

.packages.blue .single-package.slick-current h3 {
  color: var(--color-dark-blue);
}

.packages.blue .single-package.slick-current p {
  color: var(--color-black);
}

.packages.blue .single-package.slick-current .vsfy-button.pink {
  background-color: var(--color-orange);
  border-color: var(--color-orange);
  color: var(--color-dark-blue);
}

.packages-carousel .slick-prev {
  left: -40px;
}

.packages-carousel .slick-next {
  right: -40px;
}

.package-info {
  padding: 80px 0;
}

.package-info .column-left {
  width: 29%;
}

.package-info .column-right {
  width: 69%;
}

.about-package {
  border-top-left-radius: 24px;
  border-top-right-radius: 24px;
  padding: 38px 35px 42px;
  height: 46%;
}

.packages.blue .about-package {
  height: auto;
  padding-bottom: 50px;
}

.packages.green .about-package h4 {
  color: var(--color-medium-green);
}

.packages.blue .about-package h4 {
  color: var(--color-medium-blue);
}

.package-brands {
  padding: 38px 35px 48px;
  border-radius: 24px 24px 14px 14px;
  margin-top: -24px;
  position: relative;
  overflow: hidden;
  height: calc(54% + 24px);
}

.package-brands.dark-blue {
  height: auto;
  padding-bottom: 65px;
}

.package-brands::after {
  content: '';
  display: block;
  height: 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.package-brands .brand-tabs {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 35px;
}

.package-brands .brand-tab {
  border: 0;
  background: var(--color-white);
  cursor: pointer;
  padding: 10px;
  border-radius: 8px;
  width: 100%;
  transition: var(--transition);
}

.package-brands .brand-tab img {
  display: block;
  margin: 0 auto;
  max-height: 35px;
}

.package-brands .brand-tab.active {
  outline: 2px solid var(--color-orange);
  background-color: var(--color-light-green);
}

.packages.water .package-brands .brand-tab.active {
  background-color: var(--color-blue);
  color: var(--color-white);
}

.packages.water .ideal-for {
  padding: 38px 35px 48px;
  border-radius: 24px 24px 14px 14px;
  margin-top: -30px;
  position: relative;
  overflow: hidden;
  height: auto;
}

.packages.water .ideal-for::after {
  content: '';
  display: block;
  height: 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.backup-time {
  border-radius: 24px;
  padding: 38px 25px;
  width: 31.5%;
  position: relative;
  overflow: hidden;
}

.backup-time::after {
  content: '';
  display: block;
  width: 100%;
  height: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.backup-time h4 {
  color: var(--color-pale-green);
}

.backup-time h3 {
  color: var(--color-white);
}

.backup-time p {
  color: var(--color-white);
  font-size: 14px;
}

.column-right .image {
  width: 31.5%;
  border-radius: 24px;
  overflow: hidden;
}

.column-right .image img {
  display: block;
  width: 100%;
  object-fit: cover;
  object-position: center;
  height: 180px;
}

.packages.water .column-right .image img {
  height: 100%;
}

.services-included {
  width: 31.5%;
  border-radius: 24px;
  overflow: hidden;
  padding: 38px 35px;
  position: relative;
}

.services-included::after {
  content: '';
  display: block;
  width: 100%;
  height: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.services-included h4 {
  color: var(--color-white);
}

.services-included ul {
  color: var(--color-white);
  margin: 10px 0;
  list-style-type: none;
  padding-left: 10px;
}

.services-included ul li {
  padding-left: 5px;
}

.services-included ul li::marker {
  content: '+';
  font-size: 13px;
  font-weight: 600;
}

.brand-features-panes {
  width: 100%;
}

.packages.water .brand-features-panes {
  width: 66%;
}

.packages.water .column-right .brand-pane {
  height: calc(100% - 25px);
  margin-top: 25px;
}

.key-features {
  border-radius: 24px;
  padding: 35px;
}

.packages .key-features.blue {
  width: 100%;
  background-color: var(--color-blue);
  height: 100%;
  margin-top: 0;
}

.packages .key-features.blue .feature {
  width: 48%;
  text-align: center;
  position: relative;
}

.packages .key-features {
  width: 100%;
  margin-top: 3%;
}

.key-features h4 {
  text-align: center;
  width: 100%;
  color: var(--color-white);
  margin-bottom: 25px;
}

.packages .feature {
  width: 31%;
  text-align: center;
  position: relative;
}

.packages.electricity .feature::after {
  content: '';
  display: block;
  width: 120px;
  height: 120px;
  background-color: var(--color-pale-green);
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.packages.water .feature::after {
  content: '';
  display: block;
  width: 120px;
  height: 120px;
  background-color: var(--color-light-blue);
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.key-features .feature img {
  display: block;
  margin: 0 auto;
  max-height: 135px;
  position: relative;
  z-index: 2;
}

.key-features .feature p {
  color: var(--color-white);
  font-weight: 600;
  margin-bottom: 0;
}

.bottom-package-info {
  margin-top: 2%;
}

.payment {
  width: 100%;
  border-radius: 24px;
  padding: 25px 7px;
  position: relative;
  margin-bottom: 2%;
}

.payment.dark-blue {
  width: 100%;
  border-radius: 24px;
  margin-top: 3%;
  padding: 25px 7px;
}

.payment .option {
  width: 33%;
  display: inline-block;
  padding: 25px 28px 20px;
  position: relative;
}

.payment.dark-blue .option {
  width: 49%;
}

.packages.green .payment .option:not(:last-child)::after {
  content: '';
  display: inline-block;
  width: 2px;
  height: 100%;
  position: absolute;
  right: -2px;
  background-color: var(--color-medium-green);
  top: 0;
}

.packages.blue .payment .option:not(:last-child)::after {
  content: '';
  display: inline-block;
  width: 2px;
  height: 100%;
  position: absolute;
  right: -2px;
  background-color: var(--color-medium-blue);
  top: 0;
}

.payment .option .payment-info {
  width: 52%;
  display: inline-block;
  vertical-align: middle;
}

.payment .option .payment-info p {
  margin: 0 0 8px;
}

.payment-links {
  width: 46%;
  display: inline-block;
  vertical-align: middle;
  text-align: right;
}

.payment-links .vsfy-button {
  font-size: 15px;
}

.payment-links a.agreement {
  display: block;
  margin-top: 8px;
}

.packages.green .payment-links a.agreement {
  color: var(--color-pale-green);
}

.packages.blue .payment-links a.agreement {
  color: var(--color-light-blue);
}

/* remove later */
a.agreement {
  display: none !important;
}

.bottom-package-info .column-left {
  width: 68%;
}

.bottom-package-info .items {
  width: 100%;
  padding: 30px 35px;
  border-radius: 24px;
  margin-top: 2%;
}

.bottom-package-info .items h4 {
  width: 100%;
  text-align: center;
  color: var(--color-white);
  margin-bottom: 30px;
}

.bottom-package-info .item p {
  color: var(--color-white);
  font-weight: 600;
  text-align: center;
}

.bottom-package-info .item .wrap {
  height: 56px;
  text-align: center;
  position: relative;
}

.bottom-package-info .item .wrap img {
  display: block;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.packages.electricity .ideal-for {
  width: 36%;
  padding: 0 15px;
  position: relative;
  border-right: 2px solid rgba(0, 0, 0, 0.1);
  margin: 20px 0;
}

.packages.electricity .ideal-for h4 {
  color: var(--color-dark-green);
}

.ideal-for h4 {
  margin-bottom: 10px;
}

.packages.blue .ideal-for h4 {
  color: var(--color-light-blue);
}

.ideal-for p {
  margin: 3px 0 3px 8px;
}

.packages.blue .ideal-for p {
  color: var(--color-white);
}

.benefits {
  width: 55%;
  margin-top: 20px;
}

.benefits .benefit {
  width: 30%;
}

.benefits .benefit .wrap {
  height: 38px;
  position: relative;
}

.benefits .benefit img {
  display: block;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.benefits .benefit p {
  margin: 8px 0 0;
  font-size: 15px;
  max-width: 122px;
}

.bottom-package-info .column-right {
  width: 30%;
}

.any-questions {
  width: 100%;
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  height: 100%;
}

.packages.water .any-questions {
  width: 31%;
  padding: 35px;
  height: auto;
  padding-bottom: 80px;
  margin-top: 3%;
}

.any-questions .wrap {
  padding: 32px 35px 100px;
  height: calc(100% - 140px);
  border-radius: 25px;
  margin-top: -20px;
  position: relative;
  z-index: 2;
}

.any-questions img {
  height: 160px;
  width: 100%;
  display: block;
  object-fit: cover;
  object-position: top;
}

.any-questions h3 {
  max-width: 300px;
  margin-bottom: 20px;
}

.packages.water .any-questions h3 {
  color: var(--color-white);
  font-size: 28px;
}

.any-questions .vsfy-button {
  margin-top: 12px;
  position: absolute;
  bottom: 40px;
}

.brand-panes .brand-pane,
.packages .package-info {
  display: none;
}

.brand-panes .brand-pane.active,
.packages .package-info.active {
  display: block;
}

.site-visit {
  padding: 30px 0 50px;
}

.site-visit .max-width {
  background-color: var(--color-pale-green);
  border-radius: 50px;
  padding: 70px 70px 80px;
}

.site-visit h2 {
  color: var(--color-dark-green);
}

.site-visit p {
  font-size: 18px;
  color: var(--color-dark-green);
}

body .grav-form .gfield--type-section {
  border: none;
  padding: 0;
}

.grav-form .gsection_title {
  color: var(--color-dark-green);
  font-size: 30px;
}

body .grav-form .gform_required_legend {
  display: none;
}

.grav-form .gf_progressbar_wrapper,
.grav-form .gf_page_steps {
  margin-bottom: 45px;
  margin-top: 45px;
}

.grav-form .gf_page_steps {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

body .grav-form .gform-body.gform_body label,
body .grav-form .gform-body.gform_body legend {
  font-family: 'Poppins', sans-serif;
  position: relative;
  font-size: 16px;
  font-weight: 700;
  line-height: 19px;
  color: var(--color-dark-green) !important;
}

body .grav-form .gform-body.gform_body label .gfield_required,
body .grav-form .gform-body.gform_body legend .gfield_required {
  color: var(--color-dark-green);
  font-size: 14px;
}

body .grav-form .gform-body.gform_body fieldset label {
  margin-top: 15px;
}

body .grav-form .gform_wrapper .gform_body .gform_fields .gfield input[type='text'],
body .grav-form .gform_wrapper .gform_body .gform_fields .gfield input[type='email'],
body .grav-form .gform_wrapper .gform_body .gform_fields .gfield input[type='tel'],
body .grav-form .gform_wrapper .gform_body .gform_fields .gfield input[type='url'],
body .grav-form .gform_wrapper .gform_body .gform_fields .gfield select,
body .grav-form .gform_wrapper .gform_body .gform_fields .gfield textarea {
  border-radius: 10px !important;
  background-color: var(--color-white) !important;
  padding: 0 14px !important;
  font-weight: 400 !important;
  height: 52px !important;
  outline: none !important;
}

body .grav-form .gform_wrapper .gform_body .gform_page_footer .gform_previous_button,
body .grav-form .gform_wrapper .gform_body .gform_page_footer .gform_next_button {
  background-color: var(--color-orange) !important;
  color: var(--color-dark-green) !important;
  width: 100% !important;
  outline: none !important;
}

body .grav-form .gform_wrapper .gform_body .gform_page_footer .gform_previous_button {
  display: none !important;
}

body .grav-form .gform_wrapper .gform_body .gform_page_footer .gform_button {
  width: 100% !important;
  outline: none !important;
}

.grav-form .gform-body.gform_page_fields .gform_fields {
  --gf-form-gap-x: 45px !important;
}

.grav-form .gform-body .gform-page-footer {
  margin-top: 22px;
  display: block !important;
}

.grav-form .gf_page_steps {
  display: flex;
  flex-wrap: nowrap !important;
  font-size: 1em;
  padding: 0;
  position: relative;
  width: 100%;
  gap: 0px !important;
}

.grav-form .gf_page_steps .gf_step {
  flex-direction: row;
  justify-content: center;
  margin: 0;
  border-radius: 50%;
  display: block;
  position: relative;
  width: 50%;
}

.grav-form .gf_page_steps .gf_step::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #27a982;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
}

.grav-form .gf_page_steps .gf_step.gf_step_pending span,
.grav-form .gf_page_steps .gf_step.gf_step_completed span {
  width: 12px !important;
  height: 12px !important;
  min-inline-size: 12px !important;
  top: -4px;
}

.grav-form .gf_page_steps .gf_step.gf_step_active span,
.grav-form .gf_page_steps .gf_step.gf_step_completed span {
  background: #faa21b !important;
  border-color: #faa21b !important;
}

.grav-form .gf_page_steps .gf_step.gf_step_completed::before {
  background-color: #faa21b !important;
}

.grav-form .gf_page_steps .gf_step.gf_step_completed span::after {
  content: unset;
}

.grav-form .gf_page_steps .gf_step.gf_step_last::after {
  content: '';
  right: 0;
  width: 12px !important;
  height: 12px !important;
  min-inline-size: 12px !important;
  background: #27a982;
  position: absolute;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
}

.grav-form .gf_page_steps .gf_step .gf_step_label {
  display: none;
}

.grav-form .gf_page_steps .gf_step span {
  background-color: #27a982;
  border: 2px solid #27a982;
  font-size: 0;
  position: relative;
}

.grav-form .gf_page_steps .gf_step:last-child {
  width: 12px;
}

.grav-form .gf_page_steps .gf_step:last-child::before,
.grav-form .gf_page_steps .gf_step:last-child::after {
  display: none;
}

.grav-form .gf_page_steps .gf_step.gf_step_active:last-child span {
  margin-left: -32px;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_description {
  font-size: 12px;
}

/*--------------------------------------------------------------
# Quote
--------------------------------------------------------------*/

.quote-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 9999;
}

.quote-modal.is-open {
  display: block;
}

.quote-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}

.quote-dialog {
  position: relative;
  max-width: 1300px;
  border-radius: 50px;
  padding: 0;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  max-height: 90%;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.quote-dialog::-webkit-scrollbar {
  display: none;
}

button.quote-close {
  position: absolute;
  top: 12px;
  right: 25px;
  font-size: 32px;
  background: none;
  border: 0;
  cursor: pointer;
}

.quote-options {
  display: flex;
  flex-wrap: wrap;
  margin: 12px 0 16px;
  justify-content: space-between;
}

.quote-opt {
  border: none;
  padding: 30px 35px;
  border-radius: 22px;
  cursor: pointer;
  background: var(--color-cream);
  width: 31.5%;
  text-align: left;
  transition: var(--transition);
}

.quote-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 12px;
}

.quote-actions .quote-next[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.packages-list {
  display: flex;
  gap: 20px;
}

.quote-modal [hidden] {
  display: none !important;
}

.quote-step {
  padding: 50px;
  border-radius: 50px;
}

.quote-content h3 {
  font-size: 30px;
}

.quote-step.step-1 .quote-opt h3 {
  margin-bottom: 22px;
}

.quote-step.step-1 .quote-progress {
  display: none;
}

.quote-step.step-1 {
  background-color: var(--color-dark-blue);
}

.quote-step.step-1 h2 {
  color: var(--color-white);
}

#quoteTitle {
  color: var(--color-white);
  text-align: center;
  margin: 40px 0 30px;
}

.quote-opt.is-selected h3,
.quote-opt.is-selected p {
  color: var(--color-white);
}

.quote-opt.is-selected[data-context='solar_residential'] {
  background-color: var(--color-light-green);
}

.quote-opt.is-selected[data-context='solar_business'] {
  background-color: var(--color-medium-green);
}

.quote-opt.is-selected[data-context='water'] {
  background-color: var(--color-blue);
}

.quote-back,
.quote-next {
  width: 100%;
  margin-top: 10px;
}

#quote-lightbox.theme-green .vsfy-button.orange.quote-back,
#quote-lightbox.theme-green .vsfy-button.orange.quote-next {
  color: var(--color-dark-green);
}

#quote-lightbox.theme-green .quote-step.step-2,
#quote-lightbox.theme-green .quote-step.step-3 {
  background-color: var(--color-pale-green);
}

#quote-lightbox.theme-blue .quote-step.step-2,
#quote-lightbox.theme-blue .quote-step.step-3 {
  background-color: var(--color-light-blue);
}

#quote-lightbox.theme-green .quote-step.step-2 h2,
#quote-lightbox.theme-green .quote-step.step-3 h2 {
  color: var(--color-dark-green);
}

#quote-lightbox.theme-green .quote-step.step-2 .step-title,
#quote-lightbox.theme-green .quote-step.step-3 .step-title {
  color: var(--color-medium-green);
  margin: 30px 0;
}

.quote-step.step-2 .step-title,
.quote-step.step-3 .step-title {
  margin: 30px 0;
}

.sel-btn {
  margin-top: 15px;
}

.quote-opt.is-selected .vsfy-button.coral.sel-btn {
  background-color: var(--color-yellow);
  border-color: var(--color-yellow);
  color: var(--color-dark-blue);
}

.pkg-card,
.po {
  width: 100%;
  border: none;
  border-radius: 25px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: var(--transition);
}

.pkg-card {
  position: relative;
  padding: 30px 27px 100px;
}

#quote-lightbox.theme-green .pkg-card,
#quote-lightbox.theme-green .po {
  background-color: var(--color-medium-green);
}

#quote-lightbox.theme-blue .pkg-card,
#quote-lightbox.theme-blue .po {
  background-color: var(--color-medium-blue);
}

.pkg-card h3,
.po h3 {
  color: var(--color-white);
  font-size: 28px;
  margin: 0;
}

.pkg-card p,
.po p,
.po ul {
  color: var(--color-white);
  font-size: 14px;
}

#quote-lightbox.theme-green .pkg-card.is-selected,
#quote-lightbox.theme-green .po.is-selected {
  background-color: var(--color-dark-green);
}

#quote-lightbox.theme-blue .pkg-card.is-selected,
#quote-lightbox.theme-blue .po.is-selected {
  background-color: var(--color-dark-blue);
}

#quote-lightbox.theme-green .pkg-card.is-selected h3,
#quote-lightbox.theme-green .po.is-selected h3 {
  color: var(--color-pale-green);
}

#quote-lightbox.theme-blue .pkg-card.is-selected h3,
#quote-lightbox.theme-blue .po.is-selected h3 {
  color: var(--color-light-blue);
}

span.unsure {
  display: block;
  text-align: center;
  margin-top: 25px;
}

a.quote-close {
  color: var(--color-black);
}

.quote-step .payment-options {
  display: flex;
  gap: 20px;
  padding: 0;
  margin-bottom: 0;
}

.po .po-products {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}

.po-product {
  border: 2px solid var(--color-white);
  border-radius: 18px;
  padding: 12px;
  text-align: center;
  cursor: pointer;
  width: 100%;
  background-color: var(--color-white);
  transition: var(--transition);
}

#quote-lightbox.theme-green .po-product.is-selected {
  background-color: var(--color-light-green);
  border-color: var(--color-medium-green);
}

#quote-lightbox.theme-blue .po-product.is-selected {
  background-color: var(--color-blue);
  border-color: var(--color-medium-blue);
}

#quote-lightbox.theme-green .po-product.is-selected .price {
  color: var(--color-pale-green);
}

#quote-lightbox.theme-blue .po-product.is-selected .price {
  color: var(--color-light-blue);
}

.po-product img {
  max-height: 30px;
  width: 100%;
  display: block;
}

.po-product .title {
  display: none;
}

.po-product .price {
  font-family: 'NT Wagner', sans-serif;
  text-align: center;
  display: block;
  margin-top: 8px;
  font-size: 18px;
}

#quote-lightbox.theme-green .po-product .price {
  color: var(--color-medium-green);
}

#quote-lightbox.theme-blue .po-product .price {
  color: var(--color-medium-blue);
}

.po-content {
  margin-bottom: 20px;
}

.po-product input[type='radio'] {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
}

.po-product .btn-toggle {
  margin: 6px 0 auto;
  padding: 5px 16px;
}

.po-badge {
  font-weight: 600;
  color: var(--color-dark-blue);
}

.po-product.is-selected .vsfy-button.coral.btn-toggle {
  background-color: var(--color-orange);
  border-color: var(--color-orange);
}

#quote-lightbox.theme-green .po-product.is-selected .vsfy-button.coral.btn-toggle {
  color: var(--color-dark-green);
}

#quote-lightbox.theme-blue .po-product.is-selected .vsfy-button.coral.btn-toggle {
  color: var(--color-dark-blue);
}

.pkg-card .pkg-actions {
  position: absolute;
  bottom: 40px;
}

.pkg-actions .vsfy-button.coral.btn-toggle {
  margin-top: 18px;
}

.pkg-card.is-selected .pkg-actions .vsfy-button.coral.btn-toggle {
  background-color: var(--color-orange);
  border-color: var(--color-orange);
}

#quote-lightbox.theme-green .pkg-card.is-selected .pkg-actions .vsfy-button.coral.btn-toggle {
  color: var(--color-dark-green);
}

#quote-lightbox.theme-blue .pkg-card.is-selected .pkg-actions .vsfy-button.coral.btn-toggle {
  color: var(--color-dark-blue);
}

.quote-steps {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 30px 0;
  flex-wrap: wrap;
  justify-content: space-between;
}

.quote-steps li {
  width: calc(20% - 2px);
  position: relative;
}

.quote-steps li:last-child {
  width: 10px;
}

.quote-steps li::before {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  position: relative;
  z-index: 2;
}

.quote-step li.is-active::before,
.quote-step li.is-active::after,
.quote-step.step-2 li:nth-child(1)::after,
.quote-step.step-2 li:nth-child(1)::before,
.quote-step.step-2 li:nth-child(2)::before,
.quote-step.step-3 li:nth-child(1)::after,
.quote-step.step-3 li:nth-child(1)::before,
.quote-step.step-3 li:nth-child(2)::after,
.quote-step.step-3 li:nth-child(2)::before,
.quote-step.step-3 li:nth-child(3)::before {
  background-color: var(--color-orange) !important;
}

.quote-step.step-2 li:nth-child(2)::before,
.quote-step.step-3 li:nth-child(3)::before {
  transform: scale(2.8);
  transform-origin: center;
}

#quote-lightbox.theme-green .quote-steps li::before {
  background-color: var(--color-light-green);
}

#quote-lightbox.theme-blue .quote-steps li::before {
  background-color: var(--color-medium-blue);
}

.quote-steps li:not(:last-child)::after {
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}

#quote-lightbox.theme-green .quote-steps li:not(:last-child)::after {
  background-color: var(--color-light-green);
}

#quote-lightbox.theme-blue .quote-steps li:not(:last-child)::after {
  background-color: var(--color-medium-blue);
}

.quote-mini-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 10000;
}

.quote-mini-modal.is-open {
  display: block;
}

.qmm-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}

.qmm-dialog {
  position: relative;
  max-width: 500px;
  margin: 0 auto;
  background: var(--color-cream);
  border-radius: 20px;
  padding: 35px;
  top: 50%;
  transform: translateY(-50%);
}

.qmm-actions {
  display: flex;
  gap: 8px;
  margin-top: 25px;
  flex-wrap: wrap;
}

.qmm-actions .vsfy-button {
  width: 100%;
}

.business-reviews .slick-track,
.business-reviews .slick-list {
  display: flex !important;
}

.business-reviews .slick-prev {
  left: 0;
  margin: 0 !important;
}

.business-reviews .slick-next {
  right: 0;
  margin: 0 !important;
}

.business-reviews {
  margin: 50px 0 !important;
  padding: 0 50px;
}

.business-review {
  background-color: var(--color-white);
  padding: 20px 30px;
  margin: 0 12px;
  text-align: center;
  display: flex !important;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}

.business-review img {
  margin: 0 auto;
  max-width: 190px;
  max-height: 90px;
  margin-bottom: 12px;
}

.business-review .reviewer-name {
  display: block;
  text-align: center;
  font-weight: 600;
  font-size: 19px;
  color: var(--color-black);
  width: 100%;
}

.review p {
  font-size: 14px;
  margin: 8px 0 5px;
}

.star-rating {
  display: inline-block;
  font-size: 1.7rem;
  line-height: 1;
  text-align: center;
  margin: 0 auto;
}

.star-rating .star {
  display: inline-block;
  margin-right: 0;
}

.star-rating .is-filled {
  color: #f5b301;
}

.star-rating .is-empty {
  color: #d9d9d9;
}

/*--------------------------------------------------------------
# Booking Form
--------------------------------------------------------------*/
.booking-form {
  position: relative;
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #f1e9df;
  .header-wrap {
    position: relative;
    h2 {
      margin-bottom: 15px;
      padding: 0;
      font-family: 'NT Wagner', sans-serif;
      font-size: 51px;
      font-weight: 700;
      line-height: 56px;
      letter-spacing: -0.561px;
      color: #193f2e;
      @media (max-width: 550px) {
        font-size: 35px;
        font-weight: 700;
        line-height: 35px;
      }
      span {
        color: #27a982;
      }
    }
    p {
      font-family: Poppins, sans-serif;
      font-size: 19px;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: -0.209px;
      color: #193f2e;
      margin: 0;
      @media (max-width: 550px) {
        font-size: 17px;
        line-height: 19px;
      }
    }
  }
  .max-width {
    background: #bddfb8;
    padding: 80px 74px;
    border-radius: 50px;
    @media (max-width: 550px) {
      padding: 40px 30px;
    }
  }
}

/*--------------------------------------------------------------
# Projects
--------------------------------------------------------------*/

.projects-grid article.et_pb_post {
  border-radius: 28px;
  overflow: hidden;
  border: none;
  background-color: var(--color-cream);
  padding: 30px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

.projects-grid article.et_pb_post .post-content {
  align-self: end;
  width: 100%;
}

.projects-grid article.et_pb_post .et_pb_image_container img {
  height: 230px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.projects-grid article.et_pb_post .et_pb_image_container {
  position: relative;
  margin: -30px -30px 0;
  width: calc(100% + 60px);
}

.projects-grid article.et_pb_post .et_pb_image_container::after {
  content: '';
  display: block;
  background: linear-gradient(rgba(241, 233, 223, 0) 0%, rgb(241, 233, 223) 50%);
  width: 100%;
  height: 42%;
  position: absolute;
  bottom: -30px;
}

.projects-grid article h2.entry-title {
  font-size: 34px;
  position: relative;
  z-index: 2;
  color: var(--color-dark-green);
}

.projects-grid article.et_pb_post .entry-featured-image-url {
  margin-bottom: 15px;
}

.projects-grid article.et_pb_post .vsfy-button.coral.more-link {
  background-color: #de6b5b;
  color: var(--color-cream);
  margin: 20px 0 10px;
}

.projects-grid article.et_pb_post .project-meta {
  color: #de6b5b;
  font-size: 16px;
  width: 100%;
}

.projects-grid-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, calc(33% - 33px));
  justify-content: space-between;
  grid-gap: 50px;
}

.projects-grid-wrap + div .wp-pagenavi {
  margin-top: 30px !important;
}

.projects-grid-wrap + div .wp-pagenavi .current {
  color: #DE6B5B !important;
  background: transparent !important;
  font-weight: 700 !important;
}

.projects-grid-wrap + div .wp-pagenavi > * {
  margin: 0 8px !important;
  color: #151338 !important;
  font-weight: 500 !important;
  font-size: 24px !important;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.et-l--footer {
  border-top: 20px solid var(--color-orange);
}

.et-l--footer .et_pb_module.et_pb_social_media_follow {
  max-width: 235px;
}

#mega-menu-wrap-footer-menu {
  height: auto !important;
}

.et_pb_module.et_pb_code.et_pb_code_0_tb_footer {
  margin: 0;
}

.et_pb_column_0_tb_footer, 
.et_pb_column_1_tb_footer {
  margin: 0;
}

/*--------------------------------------------------------------
# Logos
--------------------------------------------------------------*/

.mega-water-logo,
.mega-solar-logo {
  display: none !important;
}

.page-template-solar-template .mega-solar-logo,
.page-template-solar-residential-template .mega-solar-logo {
  display: inline-block !important;
}

.page-template-water-template .mega-water-logo {
  display: inline-block !important;
}

.page-template-solar-template .mega-normal-logo,
.page-template-solar-residential-template .mega-normal-logo,
.page-template-water-template .mega-normal-logo {
  display: none !important;
}

/* Mobile overrides */
@media (max-width: 1112px) {
  .page-template-solar-template .mega-solar-logo,
  .page-template-solar-residential-template .mega-solar-logo,
  .page-template-water-template .mega-water-logo {
    display: none !important;
  }
  
  .page-template-solar-template .mega-normal-logo,
  .page-template-solar-residential-template .mega-normal-logo,
  .page-template-water-template .mega-normal-logo {
    display: inline-block !important;
  }
}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/

@media (max-width: 1350px) {
  .payment .option {
    width: 33%;
    display: inline-flex;
    padding: 25px 8px 20px;
    position: relative;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .payment-links {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    text-align: right;
    margin-top: 10px;
  }
  .content-row {
    margin: 80px 30px;
  }
  .packages-carousel .slick-prev {
    left: -20px;
  }
  .packages-carousel .slick-next {
    right: -20px;
  }
  .payment-options .content-wrap {
    padding: 38px 34px 160px;
  }
  .booking-form {
    margin: 0 30px;
  }
  .faq .accordion-item .accordion-content {
    flex-direction: column;
  }
}
@media (max-width: 1200px) {
  .content-row .content-row-image img {
    height: 100%;
    object-fit: cover;
  }
}
@media (max-width: 1110px) {
  .backup-time,
  .services-included {
    width: calc(50% - 10px);
  }
  .column-right .image {
    display: none;
  }
  .benefits {
    width: 60%;
  }
}
@media (max-width: 1024px) {
  .landing-content {
    max-width: 600px;
  }
  .landing-banner h1.small {
    font-size: 32px;
  }
  .landing-banner h1 {
    font-size: 43px;
  }
  .landing-banner p {
    font-size: 20px;
  }
  .stat {
    width: 47%;
    margin: 20px 0 20px;
  }
  .bottom-package-info .items .item {
    width: calc(33.3% - 10px);
  }
  .bottom-package-info .column-right {
    width: 100%;
    margin-top: 2%;
  }
  .bottom-package-info .column-left {
    width: 100%;
  }
  .any-questions img {
    display: none;
  }
  .any-questions .wrap {
    height: auto;
    text-align: center;
    margin-top: 0;
  }
  .any-questions h3 {
    margin: 0 auto 20px;
  }
  .any-questions .vsfy-button {
    left: 0;
    right: 0;
    max-width: 140px;
    margin: 0 auto;
  }
  .columns-3 .payment-option {
    width: 100%;
    margin-bottom: 2%;
  }
  .payment-options .content-wrap {
    padding: 38px 34px;
  }
  .payment-options .buttons {
    position: relative;
    bottom: auto;
  }
  .payment-options {
    padding: 55px 0 40px;
  }
  .content-row {
    margin: 60px 30px;
  }
  .advantages {
    padding: 50px 0 40px;
  }
  .page-id-1105724 .brands {
    margin-bottom: 0;
  }
  .booking-form {
    padding-top: 65px;
    padding-bottom: 40px;
  }
  .reviews {
    padding: 30px 0 0;
  }
  .faq {
    padding: 55px 0;
  }
  .posts-section {
    margin-top: 45px;
    margin-bottom: 60px;
  }
  .content-row.background.standalone .content-row-image {
    width: 100%;
    position: initial;
    border-bottom-left-radius: 24px;
    border-top-left-radius: 24px;
  }
  .content-row.background.standalone .content-row-image img {
    display: block;
    position: relative;
    width: 100%;
    right: auto;
  }
  .content-row.background.standalone .content-row-content {
    width: 100%;
    padding: 45px 30px;
  }
  .content-row.background.standalone .content-row-image::before {
    display: none;
  }
  .projects-grid-wrap {
    grid-template-columns: repeat(auto-fill, calc(50% - 20px));
    grid-gap: 30px;
  }
}
@media (max-width: 1023px) {
  .advantages .column-1 {
    width: 100%;
    margin-bottom: 3%;
  }
  .advantages .right {
    width: 100%;
  }
  #versofy-advantage .column-1 img {
    display: none;
  }
  .advantages .column-1 .wrap {
    padding: 32px 35px 32px;
    height: auto;
    border-radius: 25px;
    margin-top: 0;
    position: relative;
    z-index: 2;
  }
  .advantages .vsfy-button {
    margin-top: 12px;
    position: relative;
    bottom: auto;
  }
  .column-1.left.standalone .wrap {
    padding-top: 60px;
    height: auto;
  }
}
@media (max-width: 960px) {
  .packages-list {
    flex-wrap: wrap;
  }
  .quote-step .payment-options {
    flex-wrap: wrap;
  }
  .pkg-card,
  .po {
    width: calc(50% - 20px);
  }
  .packages.electricity .ideal-for {
    width: 100%;
    padding-left: 0;
    border-right: 0;
    border-bottom: 2px solid rgba(0, 0, 0, 0.1);
    padding-bottom: 20px;
  }
  .benefits {
    width: 100%;
    margin-top: 0px;
    margin-bottom: 20px;
  }
  .benefits .benefit {
    width: calc(33.3% - 10px);
  }
}
@media (max-width: 850px) {
  .payment .option {
    width: calc(50% - 10px);
  }
  .packages.green .payment .option:not(:last-child)::after {
    display: none;
  }
  .brand-pane {
    text-align: center;
  }
  .packages:not(.water) .brand-pane .option:nth-child(2) {
    border-left: 2px solid #01714d;
  }
  .brand-pane .option:nth-child(3) {
    text-align: center;
    width: 80%;
    border-top: 2px solid #01714d;
  }
  .packages.water .any-questions {
    display: none;
  }
  .packages.water .brand-features-panes {
    width: 100%;
  }
}
@media (max-width: 820px) {
  .product-blocks .three {
    gap: 20px;
  }
  .product-blocks .three .product-block {
    width: calc(50% - 10px);
  }
  .stats-top {
    flex-direction: column;
  }
  .advantages .column-1 {
    width: 100%;
  }
  .advantages .right {
    width: 100%;
  }
  .home .advantages .column-1 img {
    display: none;
  }
  .advantages .column-1 .wrap {
    padding: 40px 35px 40px;
    height: auto;
    border-radius: 25px;
    margin-top: 0;
  }
  .advantages .vsfy-button {
    position: relative;
    bottom: auto;
  }
  .quote-options {
    row-gap: 20px;
  }
  .quote-opt {
    width: calc(50% - 10px);
  }
  .quote-options .quote-opt:nth-child(3) {
    width: 100%;
  }
  .advantages .column-2,
  .advantages .column-3 {
    width: 48.5%;
  }
  .advantages .column-4 {
    width: 100%;
  }
  .advantages .column-2,
  .advantages .column-3 {
    margin-bottom: 3%;
  }
  .payment-options .columns-2 {
    flex-direction: column;
    row-gap: 20px;
  }
  .columns-2 .payment-option {
    width: 100%;
  }
  .projects-grid-wrap {
    grid-template-columns: repeat(auto-fill, 100%);
  }
  .projects-grid article.et_pb_post {
    min-height: auto;
  }
}
@media (max-width: 768px) {
  .product-blocks .product-block img {
    display: none;
  }
  .content-row .max-width {
    flex-direction: column;
  }
  .content-row .content-row-content {
    width: 100%;
    align-self: center;
  }
  .content-row.background .content-row-content {
    padding: 45px 30px;
  }
  .content-row .content-row-image {
    display: none;
  }
  .step-content {
    width: 80%;
    align-content: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
  }
  .step-image {
    display: none;
  }
  .process-wrap {
    width: 100%;
    margin-top: 30px;
  }
  .process-content {
    width: 100%;
  }
  .process-item.flex {
    justify-content: center;
  }
  .slick-progress__dot[aria-current='true'] {
    transform: scale(2);
  }
  .faq .max-width {
    flex-direction: column;
  }
  .faq .faq-content {
    width: 100%;
  }
  .faq .faq-accordion {
    width: 100%;
    margin-top: 20px;
  }
  .package-info .column-left {
    width: 100%;
    margin-top: 15px;
  }
  .package-info .column-right {
    width: 100%;
    margin-top: 20px;
  }
  .bottom-package-info {
    margin-top: 2%;
    flex-direction: column;
  }
  .bottom-package-info .column-left {
    width: 100%;
  }
  .bottom-package-info .column-right {
    width: 100%;
  }
  .any-questions img {
    display: none;
  }
  .any-questions .wrap {
    padding: 32px 35px 32px;
    height: auto;
    border-radius: 25px;
    margin-top: 0;
    position: relative;
    z-index: 2;
  }
  .any-questions .vsfy-button {
    margin-top: 12px;
    position: relative;
    bottom: auto;
  }
  .packages .feature {
    width: calc(50% - 10px);
    text-align: center;
    position: relative;
    margin-bottom: 10px;
  }
  .packages-overview .wrap {
    width: 100%;
  }
  .select-spend {
    width: 100%;
    text-align: left;
  }
  .packages-overview {
    padding: 55px 0 35px;
  }
  .package-info {
    padding: 50px 0;
  }
  .booking-form .max-width {
    padding: 40px 35px;
  }
  .footer-banner.split .footer-banner {
    width: 100%;
  }
  .key-features.blue {
    width: 100%;
    margin-bottom: 3%;
  }
  .packages.water .any-questions {
    width: 100%;
    padding-bottom: 35px;
    text-align: center;
  }
  .packages.water .any-questions {
    display: block;
    margin-top: 20px;
  }
  .packages.water .column-right .brand-pane {
    height: calc(100% - 25px);
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .pc-body {
    height: auto;
  }
  .projects-grid-wrap {
    margin: 0 30px;
  }
}

@media (max-width: 620px) {
  .product-blocks .three .product-block {
    width: 100%;
  }
  .vsfy h2 {
    font-size: 41px;
  }
  .vsfy h3 {
    font-size: 25px;
  }
  .advantages .column-2,
  .advantages .column-3 {
    width: 100%;
  }
  .advantages .column-2 {
    padding: 34px 32px 34px;
  }
  .advantages .column-2,
  .advantages .column-3 {
    margin-bottom: 10px;
  }
  .advantages .column-3 img {
    display: none;
  }
  .pkg-card,
  .po {
    width: 100%;
  }
  .quote-actions {
    flex-direction: column-reverse;
  }
  .quote-step {
    padding: 50px 30px;
  }
  .product-blocks .two .product-block {
    width: 100%;
    margin-bottom: 2.5%;
  }
  .payment-options .columns-2 .content-column {
    column-count: 1;
    margin-top: 15px;
  }
}

@media (max-width: 550px) {
  .quote-opt {
    width: 100%;
  }
  .payment .option {
    width: 100% !important;
    padding: 25px 20px 20px;
  }
  .payment .option .payment-info {
    width: 100%;
  }
  .packages.blue.water .payment .option:not(:last-child)::after {
    content: unset;
  }
  .brand-pane .option:nth-child(2),
  .brand-pane .option:nth-child(3) {
    border: none;
  }
  .packages .feature {
    width: 100% !important;
    text-align: center !important;
    position: relative !important;
    margin-bottom: 20px;
  }
  .backup-time {
    width: 100%;
    margin-bottom: 20px;
  }
  .services-included {
    width: 100%;
    margin-bottom: 10px;
  }
  .benefits .benefit {
    width: calc(50% - 10px);
  }
  .bottom-package-info .items .item {
    width: calc(50% - 10px);
  }
}

@media (max-width: 450px) {
  .landing-banner .max-width {
    top: 50%;
    transform: translateY(-36%);
  }
  .landing-banner h1.small {
    font-size: 25px;
  }
  .landing-banner h1 {
    font-size: 41px;
  }
  .product-blocks {
    margin-top: -40px;
  }
  .pc-card {
    padding: 0 5px;
  }
  .pc-body {
    padding: 32px 25px 105px;
  }
  .pc-card .pc-thumb-link .pc-img {
    height: 185px;
  }
  .pc-view-all-wrap {
    margin-top: 15px;
  }
}
