/* Extended CSS Styles */

/* Typography */
body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
li,
tfoot td,
tfoot th,
thead td,
thead th,
tbody td,
tbody th {
  font-family: "Montserrat", sans-serif;
}

/* Layout */
.full-height {
  min-height: 100vh;
}
.section-container {
  padding-top: 178px;
}

/* Global */

.page-title h1 {
  font-size: 50px;
  margin-bottom: 5px;
  line-height: 0px;
  padding: 100px 0 40px 0;
}

.page-title.banner h1 {
  line-height: 56px;
  margin-bottom: 20px;
  padding: 0;
}
.page-title.banner .single {
  position: relative;
}
.page-title.banner .wave {
  position: absolute;
  width: 100%;
  bottom: -60px;
  height: auto;
  z-index: 1;
  max-height: 50%;
  overflow: hidden;
}
.page-title.banner .wave > svg {
  display: block;
}

/* Header */
.top-header .menu > li i {
  margin-right: 10px;
}
.top-header .social {
  float: right;
  padding: 7px 0;
  margin-left: 20px;
}
header .logo {
  padding-top: 15px;
}
header .main-header .button {
  font-size: 12px;
  font-weight: 700;
  padding: 13px 15px;
}
header .main-header #mega-menu-wrap-header {
  float: right;
  margin-top: 0px;
}

header .custom-header-text {
  float: left;
}

@media (max-width: 1024px) {
  .main-header .large-9.small-6.cell.lazyloaded {
    display: flex;
  }
  .main-header .large-9.small-6.cell.lazyloaded > div {
    width: 100%;
  }
  header .custom-header-text {
    float: right;
  }

  header .main-header .grid-x.grid-padding-x.lazyloaded {
    display: flex;
    align-items: center;
  }
}

@media (max-width: 768px) {
  header .main-header #mega-menu-wrap-header {
    margin-top: 10px;
  }
  .main-header .large-9.small-6.cell.lazyloaded {
    display: inline;
    text-align: right;
  }
}

header .top-header ul.menu li.lightblue a {
  background: rgba(255, 255, 255, 0.15);
}
header .top-header ul.menu li.purple a {
  background: #81375f;
  color: #ffffff;
}
#mega-menu-wrap-header
  .mega-menu-toggle
  .mega-toggle-block-0
  .mega-toggle-animated-inner,
#mega-menu-wrap-header
  .mega-menu-toggle
  .mega-toggle-block-0
  .mega-toggle-animated-inner::before,
#mega-menu-wrap-header
  .mega-menu-toggle
  .mega-toggle-block-0
  .mega-toggle-animated-inner::after {
  background-color: #1f2d43;
}

/* Header Cart */
.xoo-wsc-body a,
.xoo-wsc-ft-buttons-cont a {
  color: #ffffff !important;
  font-size: 14px !important;
}

.wpcf7 .ajax-loader {
  display: block;
  margin: 10px auto;
}

/* Footer */
footer h4 {
  margin-bottom: 20px;
}
footer .contact p {
  margin: 0;
  font-size: 13px;
}
footer .social {
  margin-top: 40px;
}
footer .widget_nav_menu {
  margin-bottom: 40px;
}
footer .cell .widget_nav_menu:last-child {
  margin: 0;
}
footer .contact-links.email p:before {
  font-family: "FontAwesome";
  content: "\f0e0";
  padding-right: 10px;
}
footer .contact-links.telephone p:before {
  font-family: "FontAwesome";
  content: "\f095";
  padding-right: 10px;
}

.remodal .wpcf7 {
  float: left;
  width: 100%;
  padding-top: 20px;
}

/* Menu */

#mega-menu-wrap-header
  #mega-menu-header
  > li.mega-menu-item:last-child
  > a.mega-menu-link {
  padding-right: 15px;
}

/* Home */
.overlap-block {
  z-index: 1;
  position: relative;
}

/* Page Blocks */
#accordion tbody,
#accordion tfoot,
#accordion thead,
#accordion table tbody tr > td {
  border: none;
}
#accordion tbody tr:nth-child(even),
#accordion tbody tr:first-child > td {
  background: none !important;
}
#accordion tbody tr:nth-child(odd) > td {
  background-color: #f1f1f1;
}
#accordion table tbody tr > td {
  border-right: 15px solid #ffffff;
  border-left: 15px solid #ffffff;
}
#accordion table tbody tr > td .button {
  margin-top: 10px;
}
#accordion .accordion-block i {
  color: #08af0b;
  margin-right: 10px;
}
#icons li.light h5 {
  font-weight: 600;
  margin-bottom: 0;
}
#text ul {
  list-style: none;
}
#text ul > li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  color: #4dd44d;
  padding-right: 10px;
}
.add-icon-padding #icons .icon-content {
  padding: 10px 20px;
}
.add-icon-padding #icons .icon-content h5 {
  font-size: 17px;
}
.contact-options #icons .cell:hover .icon {
  color: #009fe3 !important;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
}
#expert-advice #tabs.ui-tabs .ui-tabs-panel {
  padding: 0;
}
#expert-advice #tabs.ui-tabs .ui-tabs-nav li {
  padding: 10px 0;
  width: 100%;
  border-bottom: 1px solid #d8d8d8;
}
#expert-advice #tabs.ui-tabs .ui-tabs-nav li:last-child {
  border: none;
  padding-bottom: 0;
}
#expert-advice #tabs.ui-tabs .ui-tabs-nav li a {
  padding: 0;
  text-align: left;
  background: none;
  font-size: 14px;
  color: #1f2d43;
}
#expert-advice #tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a {
  color: #009fe3;
}
#expert-advice #tabs.ui-tabs .ui-tabs-panel .cell {
  min-height: auto !important;
}

/* Custom Contact Block */

#contact {
  padding: 90px 0;
}
#contact .contact-form {
  padding: 40px 60px;
  border-radius: 5px;
}
#contact .contact-form .frm_forms {
  padding: 0 50px;
}
#contact .contact-form .frm_primary_label {
  display: none;
}
#contact .contact-form .form-field {
  margin-bottom: 10px;
}
#contact .contact-form input.wpcf7-text {
  height: 45px;
  border: none !important;
  background-color: #f5f5f5 !important;
  font-family: "Montserrat";
  font-weight: 600;
  margin-bottom: 0;
  font-size: 14px;
}
#contact .contact-form textarea {
  border: none !important;
  background-color: #f5f5f5 !important;
  font-family: "Montserrat";
  font-weight: 600;
  margin-bottom: 0;
  font-size: 14px;
}
#contact .contact-form input.wpcf7-submit {
  display: table;
  margin: auto;
  margin-top: 20px;
  border: none !important;
}
#contact .contact-form input.wpcf7-submit:hover {
  border: none !important;
}
#contact .contact-form input.wpcf7-submit:focus {
  outline: none;
  border: none;
}
#contact #icons {
  margin-top: 60px;
}
#contact #icons ul > li {
  padding: 10px 0;
}
#contact #icons ul > li .icon-content {
  padding: 0;
  padding-bottom: 20px;
  margin-left: 80px;
}
#contact #icons ul > li:first-child .icon-content {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* Product Category */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce ul.products li.product .price {
  display: none;
}
.woocommerce ul.products li.first,
.woocommerce-page ul.products li.product {
  -webkit-box-shadow: 0px 0px 5px 4px #f5f5f5;
  box-shadow: 0px 0px 5px 4px #f5f5f5;
  list-style: none;
  padding: 30px !important;
}
.woocommerce-page ul.products li div > ul {
  min-height: 150px;
}
.woocommerce ul.products li.product .button {
  color: #ffffff !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  border-top: 1px solid #ebebeb;
  padding-top: 20px;
  padding-bottom: 0;
}
.woocommerce ul.products li.product p {
  font-size: 16px;
}
.woocommerce ul.products li.product ul > li {
  font-size: 14px;
}
.woocommerce ul.products li.product ul > li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  color: #4dd44d;
  padding-right: 10px;
}
.woo-variation-swatches .wvs-archive-variation-wrapper .variations li:before {
  display: none;
}
.woo-variation-swatches .wvs-archive-variation-wrapper .variations {
  min-height: auto;
}
.woo-variation-swatches
  .wvs-archive-variation-wrapper
  .variations
  .reset_variations {
  display: none;
}
.category-content {
  padding: 140px 0 60px 0;
}
.category-content h2 {
  margin-bottom: 40px;
}
.category-content h5 {
  margin-bottom: 20px;
}
.extra-category-description {
  padding: 40px 60px;
  border-radius: 10px;
  box-shadow: 0 0 16px rgba(204, 204, 204, 0.5);
}
.extra-category-description > ul {
  margin: 0;
  list-style: none;
}
.extra-category-description > ul > li {
  padding: 10px 0;
  font-weight: 700;
  color: #1f2d43;
}
.extra-category-description > ul > li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  color: #4dd44d;
  padding-right: 10px;
}
.tax-product_cat h1.page-title,
.tax-product_cat .term-description {
  display: none;
}
.category-content .term-description {
  display: block !important;
}
.post-type-archive-product h1.page-title {
  display: none;
}
.post-type-archive-product .page-title {
  margin-bottom: 120px;
}
.post-type-archive-product .product-category {
  display: none;
}
.wc-nested-category-layout-category-title {
  margin: 40px 0 20px 0;
}
.wc-nested-category-layout-category-title a {
  color: #1f2d43;
}
.subcategory-term_description {
  margin-bottom: 60px;
}
.woocommerce ul.subcategory-products {
  padding-bottom: 40px;
  border-bottom: 3px solid #009fe3;
}

/* Single Product */
.single-product .product_title {
  color: #1f2d43;
}
.single-product form.cart {
  margin-bottom: 40px !important;
}
.single-product table.variations tbody {
  border: none;
}
.single-product table.variations tbody td.label {
  background: none;
}
.single-product table.variations tbody td.label span {
  color: #009fe3;
}
.single-product .single_variation_wrap .woocommerce-variation-availability {
  background-color: #08af0b;
  padding: 10px;
  margin-bottom: 15px;
  border-radius: 2px;
  text-align: center;
  display: none;
}
.single-product
  .single_variation_wrap
  .woocommerce-variation-availability
  .stock {
  margin: 0;
  color: #ffffff;
  font-weight: 700;
}
.single-product .product_meta {
  display: none;
}
.single-product .left-section {
  width: 50%;
  float: right;
  position: absolute;
  right: 0;
  top: -85px;
  padding-left: 30px;
}
.single-product .right-section {
  width: 50%;
  float: left;
}
.single-product .product.type-product {
  padding: 50px 0;
}
.single-product .left-section .images .flex-viewport {
  box-shadow: 0 0 16px rgba(204, 204, 204, 0.5);
}
.single-product .left-section .images .flex-control-thumbs {
  margin-top: 40px !important;
}
.single-product .left-section .images .flex-control-thumbs > li {
  padding: 10px;
}
.single-product .right-section .single_variation_wrap .button {
  height: auto;
  width: 100%;
  margin: 0;
}
.single-product .right-section .single_variation_wrap {
  float: left;
  width: 100%;
}
.single-product
  .right-section
  .single_variation_wrap
  .woocommerce-variation-add-to-cart {
  border: 1px solid #ccc;
  width: 48%;
  border-radius: 5px;
  padding: 15px 20px;
  float: left;
}
.single-product
  .right-section
  .single_variation_wrap
  .woocommerce-variation-add-to-cart.installation {
  margin-left: 2%;
}
.single-product
  .right-section
  .single_variation_wrap
  .woocommerce-variation-add-to-cart
  p {
  min-height: 50px;
  line-height: 21px;
  margin: 0;
}
.single-product
  .right-section
  .single_variation_wrap
  .woocommerce-variation-add-to-cart
  h4 {
  margin-bottom: 30px;
}
.single-product .right-section .variations .label,
.single-product .right-section .variations .value {
  float: left;
}
.single-product
  .right-section
  .woocommerce-product-details__short-description
  ul {
  list-style: none;
  margin-left: 0;
}
.single-product
  .right-section
  .woocommerce-product-details__short-description
  ul
  > li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  color: #4dd44d;
  padding-right: 10px;
}
.single-product .right-section p.price {
  font-weight: 700;
  font-size: 24px !important;
  padding: 10px 0;
  float: left;
}
.single-product .right-section p.price span {
  color: #1f2d43;
}
.single-product .right-section .quantity {
  float: right !important;
}
.single-product .custom-tabs-heading {
  float: left;
  width: 100%;
  padding: 50px 0 100px 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-top: 40px;
}
.single-product #page-blocks {
  margin-top: -54px;
}
.single-product a.added_to_cart {
  display: none;
}
.single-product .npwpMessage {
  margin: 40px 0;
}
.single-product .npwpMessage .woocommerce-info {
  padding: 20px;
  border: none;
  font-weight: 700;
}
.single-product .npwpMessage .woocommerce-info::before {
  display: none;
}
.single-product div.product form.cart .variations td ul {
  margin-top: -5px !important;
}
.single-product .woocommerce-product-gallery__image {
  background: #ffffff;
}
.single-product .purchase-options {
  margin: 40px 0;
}
.single-product .purchase-options .box {
  width: 48%;
}
.single-product .purchase-options .box:first-of-type {
  margin-right: 2%;
}
.single-product .purchase-options .box-content {
  padding: 20px;
}
.single-product .purchase-options .box-content .subtitle {
  margin: 0;
  font-size: 12px;
}
.single-product .purchase-options .box-content .button {
  margin-top: 20px;
}
.single-product .product-callback {
  padding: 25px;
  margin: 40px 0;
  border-radius: 10px;
  border: 1px solid #cccccc;
}
.woocommerce div.product p.stock {
  display: none;
}

/* Cart */
.woocommerce-cart tbody tr:nth-child(even) {
  background: none;
}
.woocommerce-cart table.cart th {
  color: #ffffff;
  height: 50px;
}
.woocommerce-cart table.cart img {
  width: 140px;
}
.woocommerce table.cart td.actions .coupon {
  float: left;
  width: 50%;
}
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .button {
  float: left;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
  width: 30%;
  font-size: 14px;
  height: 40px;
}
.woocommerce-cart table.cart td {
  font-weight: 700;
}
.woocommerce .cart .button {
  height: 40px;
  border-radius: 20px;
  margin-left: 10px;
  font-size: 12px;
}

/* Blog */

.single-post .page--title {
  background-color: #e7ecf3;
}
.single-post .post-image {
  margin-bottom: 50px;
}
.post {
  margin-bottom: 40px;
}
.post .post-content {
  padding: 20px 0;
}
.post .post-content h3 {
  margin-bottom: 24px;
}
.post .blog-image {
  max-height: 250px;
  overflow: hidden;
  border-radius: 5px;
}
.post .blog-image img {
  width: 100%;
}

/* Text */

.section.reduced {
  padding: 30px 0;
}

.section-title {
  margin-bottom: 60px;
}

.section-introduction {
  float: left;
  width: 100%;
  margin-bottom: 30px;
}

.section-introduction p {
  float: left;
  width: 75%;
}

/* Backgrounds */

.blue-bg {
  background: #0a1389;
  color: #ffffff;
}

.blue-bg,
.blue-bg h1,
.blue-bg h2,
.blue-bg h3,
.blue-bg h4,
.blue-bg h5,
.blue-bg h6 {
  color: #ffffff;
}

.blue-bg .section-title > span {
  color: #ffffff;
  border-color: #ffffff;
}

.grey-bg {
  background: #e7ecf3;
}

.white-bg {
  background: #ffffff;
}

/* Breadcrumbs */

#breadcrumbs,
#breadcrumbs a,
#breadcrumbs span {
  font-size: 14px;
  color: #ffffff;
}

/* Forms */
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="number"],
form input[type="url"],
form textarea {
  height: 45px;
  background: #f8f9fb;
  border-color: #e9ecf5;
  border-radius: 5px;
  box-shadow: none;
  font-size: 14px;
}
form.wpcf7-form select {
  border-radius: 5px;
  height: 45px;
}
form label {
  color: #091f4b;
}
form.wpcf7-form .wpcf7-radio .wpcf7-list-item span {
  color: #091f4b;
}
form.wpcf7-form h5 {
  color: #091f4b;
  font-weight: 700;
  margin-bottom: 20px;
}
form.wpcf7-form input[type="file"].upload-field {
  background: #f8f9fb;
  border: 1px solid #e9ecf5;
  border-radius: 5px;
  padding: 20px 10px;
}
form.wpcf7-form input[type="file"].upload-field:focus {
  outline: none;
}
form .wpcf7dtx-dynamictext {
  text-transform: capitalize;
}
form .wpcf7-form-control-wrap {
  float: left;
  width: 100%;
  margin-bottom: 10px;
}

/* Header */

header .top-header {
  padding: 10px 0;
}

header .main-header {
  padding: 20px 0;
}

header .logo {
  float: left;
  max-width: 280px;
  height: 100%;
}

header nav {
  padding-top: 10px;
}

header .menu.actions {
  list-style: none;
  float: right;
  padding: 10px 0;
}

header .menu.actions li {
  color: #ffffff;
  float: right;
}

header .menu.actions li#resources-m {
  padding-left: 20px;
}

header .menu.actions li > div {
  cursor: pointer;
  padding: 0 15px;
}

header .menu.actions li > div .fas {
  padding-left: 10px;
}

.hamburger {
  float: right;
  padding: 0;
}

.hamburger-box {
  width: 25px;
  height: 23px;
}

.hamburger > div {
  float: left;
  margin-right: 15px;
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before,
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner:after,
.hamburger.is-active .hamburger-inner:before {
  background-color: #fff;
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
  width: 20px;
  height: 3px;
}

.hamburger-inner:before {
  top: -7px;
}

.hamburger-inner:after {
  bottom: -7px;
}

.hamburger.is-active:hover,
.hamburger:hover {
  opacity: 1;
}

header .is-search-form {
  float: left;
  width: 100%;
  border-radius: 20px;
}

header .is-form-style input.is-search-input {
  border-radius: 20px 0 0 20px;
  padding-left: 20px;
  height: 45px;
  font-family: "Work Sans", sans-serif;
}

header .is-form-style button.is-search-submit {
  border-radius: 0 20px 20px 0;
  height: 45px;
}

header .is-form-style button.is-search-submit .is-search-icon {
  border-radius: 0 20px 20px 0;
  padding-right: 10px;
}

/* Footer */

footer {
  float: left;
  width: 100%;
}

footer.add-margin {
  margin-top: 100px;
}

footer .main-footer {
  padding: 100px 0;
}

footer li {
  list-style: none;
}
footer li.new:after {
  content: "New!";
  background-color: #009fe3;
  color: #ffffff;
  padding: 0px 8px;
  font-size: 10px;
  font-weight: 700;
  float: left;
  text-transform: uppercase;
  margin-left: 10px;
  border-radius: 3px;
}
#mega-menu-wrap-header
  #mega-menu-header
  > li.mega-menu-flyout
  ul.mega-sub-menu
  li.mega-menu-item.mega-new
  a::before {
  content: "New!";
  background-color: #009fe3;
  color: #ffffff;
  padding: 0px 8px;
  font-size: 10px;
  font-weight: 700;
  float: right;
  margin-left: 10px;
  border-radius: 3px;
  font-family: inherit;
}
#mega-menu-wrap-header
  #mega-menu-header
  > li.mega-menu-flyout
  ul.mega-sub-menu
  li.mega-menu-item.mega-new {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  padding: 5px 0;
  margin-bottom: 10px;
}
footer li.new a {
  float: left;
}

footer address {
  font-style: normal;
}

footer .contact a {
  font-weight: 700;
}

footer .menu {
  display: block;
}

footer .menu a {
  padding: 7px 0;
}

footer .lower-footer {
  padding: 30px 0;
}

footer .lower-footer a,
footer .lower-footer p {
  margin: 0;
}

footer .lower-footer .menu {
  float: right;
  padding-right: 30px;
}

footer .lower-footer .menu li {
  float: left;
}

footer .lower-footer .menu li a {
  padding: 5px 10px;
}

footer #mc_embed_signup input.button {
  background-color: #ffffff !important;
  color: #1f2d43 !important;
  border-radius: 25px;
  padding: 16px 25px !important;
}

/* Product Configurator */
.gf_page_steps {
  float: left;
  width: 100%;
  margin: 0 0 8px 0;
  padding: 0 0 4px 0;
  text-align: center;
}
.gf_page_steps .gf_step {
  color: #66a92a;
  border: 12px solid #66a92a;
  border-radius: 50%;
  width: 75px;
  height: 75px;
  margin: 0 15px;
  display: inline-block;
}
.gf_page_steps .gf_step_active {
  color: #009fe3;
  border-color: #009fe3;
}
.gf_page_steps .gf_step_pending {
  color: #464646;
  border-color: #464646;
  opacity: 0.5;
}
.gf_page_steps .gf_step_number {
  font-family: Roboto, sans-serif;
  font-size: 30px;
  font-weight: 900;
  color: #66a92a;
  padding: 14px 17px;
  display: inline-block;
  vertical-align: middle;
}
.gf_page_steps .gf_step_active .gf_step_number {
  color: #009fe3;
}
.gf_page_steps .gf_step_pending .gf_step_number {
  color: #464646;
}
.gf_page_steps .gf_step_label {
  float: left;
  width: 100%;
  font-weight: 700;
  margin-top: 20px;
}
.gf_page_steps .gf_step_gap {
  display: inline-block;
  height: 10px;
  width: 10px;
  background-color: #66a92a;
  border-radius: 100%;
}
.gf_page_steps .gf_step_gap.active {
  background-color: #009fe3;
}
.gf_page_steps .gf_step_gap.pending {
  background-color: #464646;
  opacity: 0.5;
}
.gf_page_steps .gf_step_gap:before {
  display: inline-block;
  height: 10px;
  width: 10px;
  background-color: #464646;
  border-radius: 100%;
  opacity: 0.5;
}
.gf_page_steps .gf_step_gap:after {
  display: inline-block;
  height: 10px;
  width: 10px;
  background-color: #464646;
  border-radius: 100%;
  opacity: 0.5;
}
.product-configurator #text {
  min-height: 280px;
}

/* Cross Sells */
.cross-sells ul.products li.product {
  width: 100% !important;
}
.cross-sells ul.products li.product a img {
  float: left;
  width: 25%;
}
.cross-sells ul.products li.product a .woocommerce-loop-product__title,
.cross-sells ul.products li.product .variations_form,
.cross-sells ul.products li.product a div,
.cross-sells ul.products li.product .price {
  float: left;
  width: 75%;
  padding-left: 40px;
}
.cross-sells ul.products li.product a .woocommerce-loop-product__title {
  border: none;
}
.cross-sells ul.products li.product a div ul {
  min-height: auto;
}
.cross-sells ul.products li.product .button {
  float: left;
  margin-left: 40px;
}

/* Contact */
.contact-column .icon-list {
  width: 100%;
}
.contact-column #icons ul.icon-list > li {
  display: table;
  margin: auto;
  float: none;
  width: auto;
}

/* Thank You */
.woocommerce-order-received .woocommerce-customer-details {
  padding: 40px 0;
}
.woocommerce-order-received
  .woocommerce-customer-details
  .woocommerce-columns--addresses
  .woocommerce-column {
  float: left;
  width: 50%;
}
.woocommerce-order-received h2.woocommerce-order-details__title,
.woocommerce-order-received h2.woocommerce-column__title {
  font-size: 24px;
  color: #1f2d43;
}
