/*
Theme Name: Visionflex
Author: Tour De Force
Version: 1.1.0
Domain Path: /languages
Text Domain: visionflex
*/

/**
* Table Of Contents
* -----------------
* 1.0 Normalize
* 2.0 Reset
* 3.0 Base Styles
* * * 3.1 Header Styles
* 4.0 Homepage
* 5.0 Breadcrumbs
* 6.0 Solutions
* - Responsive
*/

.wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
    display: none !important;
    content: none !important;
}

/* Cookie banner */
.hs-cookie-notification-position-bottom {
	box-shadow: 0 -1px 15px #eaf0f6 !important;
    font-family: 'Stolzl' !important;
    font-size: 7pt !important;
    line-height: 10pt !important;
}

.hs-eu-cookie-confirmation .hs-eu-cookie-confirmation-inner{
	max-width: 2500px !important;
}

.hs-en-cookie-confirmation-buttons-area {
	margin-right: 0px !important;
    justify-content: center !important; 
}

.hs-eu-close-button-container .hs-eu-close-button-container .hs-eu-close-button {
	display: block !important;
	font-size: 25pt !important;
	color: #013844 !important;
}

/* Force styles on the specific Add to Cart button */
.product-hero-buttons .add_to_cart_button,
.product-hero-buttons a.add_to_cart_button,
.woocommerce .add_to_cart_button,
.woocommerce a.add_to_cart_button,
.woocommerce div.product form.cart .button,
p.product.woocommerce.add_to_cart_inline a.button {
    color: #013844 !important;
    font-family: 'Stolzl', sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 18px !important;
    letter-spacing: 2px !important;
    width: 170px !important;
    padding: 13px 16px !important;
    border-radius: 100px !important;
    background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%) !important;
    text-transform: uppercase !important;
    margin-right: 12px !important;
    margin-bottom: 24px !important;
    display: inline-block !important;
    text-align: center !important;
    transition: all 0.4s ease !important;
    border: none !important;
}

/* Hover Effect */
.product-hero-buttons .add_to_cart_button:hover,
.product-hero-buttons a.add_to_cart_button:hover,
.woocommerce a.add_to_cart_button:hover,
.woocommerce .add_to_cart_button:hover,
p.product.woocommerce.add_to_cart_inline a.button:hover {
    color: #3cdbc0 !important;
    background: #013844 !important;
    transition: all 0.4s ease !important;
}

/* Ensure AJAX Add to Cart Buttons Follow the Same Style */
.product-hero-buttons .add_to_cart_button.ajax_add_to_cart {
    position: relative !important;
    overflow: hidden !important;
}

/* Loading Effect When Adding to Cart */
.product-hero-buttons .add_to_cart_button.loading {
    opacity: 0.6 !important;
    pointer-events: none !important;
}

/* Remove the border and padding from the price + button wrapper */
p.product.woocommerce.add_to_cart_inline {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: start !important; /* Aligns price to the left */
    gap: 0px !important; /* Adds spacing between price & button */
}

/* Ensure price and button are stacked properly */
p.product.woocommerce.add_to_cart_inline .woocommerce-Price-amount {
    font-size: 18px !important; /* Adjust font size as needed */
    font-weight: 400 !important
    color: #000 !important; /* Adjust color if needed */
	margin-bottom: 8px !important;
}

/* Fix button alignment */
p.product.woocommerce.add_to_cart_inline a.button {
    width: auto !important; /* Adjust width dynamically */
    min-width: 164px !important;
}

.woocommerce-price-suffix {
	padding-bottom: 10px;
    font-style: italic;
}


/* Fix Kadence 'latest post' padding */
.kb-post-list-item {
	padding-left: 0px!important;
}

.clearfix:after, 
.nav:after,
.media:after
{
  content: "";
  display: table;
  clear: both; 
}

/**
 * 1.0 - Normalize
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background: transparent; 
  text-decoration: none;
}

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; 
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 0; }

hr {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/**
 * 2.0 - Reset
 */
body,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
dl, dd, ol, ul,
form, fieldset, legend,
table, th, td, caption,
hr {
  margin: 0;
  padding: 0; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

abbr[title],
dfn[title] {
  cursor: help; }

u,
ins {
  text-decoration: none; }

ins {
  border-bottom: 1px solid; }

embed {
  max-width: 100%; }

@font-face {
    font-family: 'Stolzl';
    src: url('./assets/fonts/stolzl-regular-webfont.eot');
    src: url('./assets/fonts/stolzl-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('./assets/fonts/stolzl-regular-webfont.woff2') format('woff2'),
         url('./assets/fonts/stolzl-regular-webfont.woff') format('woff'),
         url('./assets/fonts/stolzl-regular-webfont.ttf') format('truetype'),
         url('./assets/fonts/stolzl-regular-webfont.svg#stolzlregular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Stolzl';
    src: url('./assets/fonts/stolzl-medium-webfont.eot');
    src: url('./assets/fonts/stolzl-medium-webfont.eot?#iefix') format('embedded-opentype'),
         url('./assets/fonts/stolzl-medium-webfont.woff2') format('woff2'),
         url('./assets/fonts/stolzl-medium-webfont.woff') format('woff'),
         url('./assets/fonts/stolzl-medium-webfont.ttf') format('truetype'),
         url('./assets/fonts/stolzl-medium-webfont.svg#stolzlmedium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

a[href^=tel] {
  text-decoration:inherit;
  color: inherit;
}
/**
 * 3.0 - Base Styles
 */
body { font-family: 'Stolzl', 'Montserrat', Roboto, sans-serif; font-size: 13px; line-height: 23px; color: #013844; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; word-wrap: break-word; overflow-wrap: break-word; overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: 'Stolzl', sans-serif; font-weight: 400; color:#013844; margin-bottom: 15px; }
h1 { font-size: 38px; line-height: 45px; }
h2 { font-size: 26px; line-height: 32px; } 
h3 { font-size: 18px; line-height: 26px; }
h4 { font-size: 16px; }
h5 { font-size: 14px; }
h6 { font-size: 12px; }
a {
  color: #3cdbc0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;  
}
a:hover {
  color: #000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.single-blog .front-blog-content h1 { font-size: 40px; line-height: 44px; margin-bottom: 24px; }
.single-blog .front-blog-content h2 { font-size: 32px; line-height: 36px; margin-bottom: 24px; } 
.single-blog .front-blog-content h3 { font-size: 24px; line-height: 32px; margin-bottom: 24px; }
.single-blog .front-blog-content h4 { font-size: 20px; line-height: 24px; margin-bottom: 16px; }
.single-blog .front-blog-content h5 { font-size: 18px; line-height: 22px; margin-bottom: 16px; }
.single-blog .front-blog-content h6 { font-size: 16px; line-height: 20px; margin-bottom: 8px; }
.theme-row { 
  width: 100%;
  max-width: 1140px;
  padding: 56px 0 80px;
  margin: 0 auto;
}
.theme-row-zero {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.theme-row.front-blog-row { max-width: 1164px; }
.section-title { font-size: 30px; line-height: 36px; color:#013844 !important}
/**
  * 3.1 - Header Styles
  */
.logged-in .main-header { top: 33px; }
.main-header { 
    margin: 0 auto; 
    width: 100%; 
    height: 86px;
    font-family: 'Stolzl';	
    font-size: 14px;	
    line-height: 24px;    
    box-shadow: 0 0 15px 0 rgba(15,17,38,0.05);     
    position: -webkit-sticky;
    position: sticky;
    z-index: 900;
    background: #fff;
    top: 0;
}
.header-row { position: relative; width: 100%; height: 86px; margin: 0 auto; display: flex; align-items: center; padding: 0 40px; }
.site-branding { width: 192px; height: 36px; margin-right: 26px; margin-bottom: 8px; }
.disable-eventers > a { 
  pointer-events: none;
  padding-bottom: 0px !important;
  color: #FFFFFF !important;
  display: inline-block;
  font-weight: 500;
}
.main-navigation { width: calc(100% - 480px); }
.main-navigation ul { margin: 0; padding: 0; list-style: none; text-align: left; border-radius: 0px 20px 20px 20px;}
.main-navigation ul li { display: inline-block; margin: 0 15px; }
.main-navigation ul li a {
color: #013844;	
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
padding-bottom: 3px;
border-bottom: 2px solid transparent;
}

.main-navigation ul li:not(.current-menu-parent) a:hover, .main-navigation ul#menu-main > li.current-menu-ancestor:not(.current-menu-parent) > a, .main-navigation ul li.current-menu-item > a {
  color: #3cdbc0;
  border-bottom: 2px solid #3cdbc0;
  padding-bottom: 3px;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.main-navigation, .main-navigation > div, .main-navigation > div > ul {
  height: 100%; 
}
.main-navigation > div > ul > li {
  display: inline-block;
  height: 100%;
  vertical-align: top;
  padding-top: 32px;
  position: relative;
}
.main-navigation > div > ul > li:not(.mega_two) li {
 display: block;
}
/* dropdown */
@media(min-width: 1024px) {

	.main-navigation ul li .sub-menu a {
	  color: #fff;
	  line-height: 30px;	
	}
	.main-navigation ul li .sub-menu a:hover {
	  color: #000;
	}
	.main-navigation > div > ul > li > .sub-menu:before {
		content: "";
		width: 0;
		height: 0;
		border-bottom: 12px solid #3cdbc0;
		border-right: 12px solid transparent;
		position: absolute;
		top: -12px;
		left: 0;
		z-index: 205;
	}	
    .main-navigation > div > ul > li > .sub-menu {
      position: absolute;
      top: calc(100% - 8px);
      left: 0;
      width: 250px;    
	  padding: 12px 10px 17px 2px;
      z-index: 1000;
      background: #3cdbc0;
      display: block;
      visibility: hidden;
      opacity: 0;
      font-family: 'Stolzl', 'Montserrat', Roboto, sans-serif;
      font-weight: 400;
      font-size: 13px;
      letter-spacing: normal;  
      box-shadow: 0 2px 2px 0 rgba(15,17,38,0.07);
      -webkit-transform: translate(0,-30px);
      -ms-transform: translate(0,-30px);
      transform: translate(0,-30px);
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease;                
    }	
    .main-navigation > div > ul > li.mega_two > .sub-menu,
	.main-navigation > div > ul > li.mega_one > .sub-menu {
      position: absolute;
	  width: 500px;
      top: calc(100% - 8px);
      left: 0;
	  padding: 12px 10px 17px 2px;
      z-index: 1000;
      background: #3cdbc0;
      display: block;
      visibility: hidden;
      opacity: 0;
      font-family: 'Stolzl', 'Montserrat', Roboto, sans-serif;
      font-weight: 400;
      font-size: 13px;
      letter-spacing: normal;  
      box-shadow: 0 2px 2px 0 rgba(15,17,38,0.07);
      -webkit-transform: translate(0,-30px);
      -ms-transform: translate(0,-30px);
      transform: translate(0,-30px);
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease;                
    }
    .main-navigation > div > ul > li.mega_one > .sub-menu {
      height: 192px;
    }
    .main-navigation > div > ul > li:hover > .sub-menu {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0,0px);
    -ms-transform: translate(0,0px);
    transform: translate(0,0px);    
    }


    .main-navigation > div > ul > li.mega_one > .sub-menu > li > a,
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > a {
    display: none;
    }

    .main-navigation > div > ul > li.mega_one > .sub-menu > li > .sub-menu {
    width: 475px;
    position: relative;
    }

    .main-navigation > div > ul > li.mega_one > .sub-menu > li > .sub-menu  > li {
    min-width: 153px;
    display: inline-block;
    }


    .main-navigation > div > ul > li.mega_one > .sub-menu > li > a,
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > a {
    display: none;
    }

    .main-navigation > div > ul > li.mega_two > .sub-menu > li > .sub-menu {
    position: relative;
    }

    .main-navigation > div > ul > li.mega_one > .sub-menu > li > .sub-menu  > li {
    min-width: 153px;
    display: inline-block;
    }
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > .sub-menu > li:nth-child(1) {
    width: 190px;
    vertical-align: top;
	float: left;
    }
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > .sub-menu > li:nth-child(1) > ul > li {
    display: inline-block;
    width: 100%;
    margin-left: 0;
    }
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > .sub-menu > li:nth-child(2){
    width: 200px;
    vertical-align: top;
	float: right;
    }
    .main-navigation > div > ul > li.mega_two > .sub-menu > li > .sub-menu > li:nth-child(2) > ul > li {
    width: 200px;
    display: inline-block;
    margin-left: 0;
    }
    .header-featured-image {
    width: 144px;
    height: 144px;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: -219px;
    top: 4px;
    z-index: 1001;
    border-radius: 6px;
    overflow: hidden;
    }


}
.mobile-menu-icon {
  display: none;
  width: calc( 100% - 161px);
  text-align: right;  
}

.mobile-menu-container {
position: fixed; 
top: 0; 
left: -100%;
width: 100%;
height: 100vh;
visibility: hidden;
opacity: 0;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
}
.mobile-menu-row {
  background: #ffffff;
  width: calc( 100% - 40px );
  height: 100vh;
  padding: 16px;
  overflow: scroll;
}
.mobile-overlay {
  width: 40px;
  height: 100vh;
  background: #03030D;
  opacity: 0.3;
  position: absolute;
  right: 0;
  top: 0;
}
.mobile-menu-container.opened-mobile-menu {
  visibility: visible;
  opacity: 1;
  z-index: 10000;
  left: 0;
}
.mobile-search {
position: relative;
margin-bottom: 8px;
}
.mobile-search input {
height: 36px;
background-color: #F4F6F8;
border-radius: 6px;
border: 0;
width: 100%;
padding-left: 50px
}
.mobile-search .form-search-icon {
top: 10px;
}
.mobile-menu-container .mobile-header-button-col {
margin-bottom: 24px;
margin-top: 24px;
width: 100%;
text-align : left;
}
.mobile-menu-container .header-button-style {
width: calc( (100% - 11px) / 2);
font-family: 'Stolzl';
text-transform: uppercase;
}
.mobile-menu-container .header-button-style:nth-child(2) {
margin-right: 0; 
}
.mobile-menu-nav {
padding-left: 24px;
}
.mobile-menu-nav .menu-main-menu-container ul {
list-style-type: none;
color: #013844;	
font-family: 'Stolzl';	
font-size: 16px;	
line-height: 38px;
}
.mobile-menu-nav .menu-main-menu-container ul li {
position: relative;
}
.mobile-menu-nav .menu-main-menu-container ul li {
margin-bottom: 7px
}
.mobile-menu-nav .menu-main-menu-container ul li a {
color: #013844;	
font-family: 'Stolzl';	
font-size: 16px;	
line-height: 38px;
}
.mobile-menu-nav .menu-main-menu-container ul li.current-menu-ancestor > a,
.mobile-menu-nav .menu-main-menu-container ul li.current-menu-item > a {
color: #919AAB !important;
}
.mobile-menu-nav > div > ul > li.mega_one > .sub-menu > li > a, .mobile-menu-nav > div > ul > li.mega_two > .sub-menu > li > a {
display: none;
}
.mobile-menu-nav > div > ul > li > .sub-menu {
display: none;
}
.mobile-menu-nav .menu-main-menu-container .disable-eventers > .sub-menu li {
margin-bottom: 2px;
}
.mobile-menu-nav .menu-main-menu-container .disable-eventers > .sub-menu li a {
line-height: 20px;
color: #013844;
}
.mobile-menu-nav .menu-main-menu-container .disable-eventers > a {
color: #013844 !important;		
font-size: 10px;	
letter-spacing: 1px;	
line-height: 12px;
padding-bottom: 0 !important;
}

.mobile-menu-nav .visionflex-ajax-search {
display: none; 
}
.mobile-menu-nav > div > ul > li.menu-item-has-children.mobile-dropdown > a {
  color: #3cdbc0;
}
.mobile-menu-nav > div > ul > li.menu-item-has-children:before {
content: "";
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;  
border-top: 5px solid #013844;
position: absolute;
top: 18px;
left: -25px;
}
.mobile-menu-nav > div > ul > li.menu-item-has-children.mobile-dropdown:before {
border-left: 5px solid transparent;
border-right: 5px solid transparent; 
border-bottom: 5px solid #3cdbc0; 
border-top: 0;
}


/* Search */
input:focus {
border: 0;
outline: 0;
}
.main-navigation > div > ul > li.visionflex-ajax-search {
padding-top: 30px;
padding-left: 8px;
position: relative;
}

.visionflex-ajax-search img {
cursor: pointer;
}
.header-search-form {
position: absolute; 
left: 48px;
top: 27px;
height: 44px;
z-index: 1002;
font-size: 14px;
color: #013844;
line-height: 44px;
width: 0;
opacity: 1;
visibility: hidden;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
font-family: 'Montserrat', Roboto, sans-serif;
font-weight: 400;
overflow: hidden;
}
.header-search-form.search-active {
width: 475px;
left: -427px;
opacity: 1;
visibility: visible;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
}
.header-search-form img {
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
}
.header-search-form.search-active img {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
}

.header-search-form input {
padding-left: 48px;
height: 44px;	
width: 475px;	
border-radius: 6px;	
background-color: #F4F6F8;
border: 0;
position: absolute;
top: 0;
left: 0;
z-index: 1002;
}
.form-search-icon {
position: absolute;
top: 14px;
left: 16px;
width: 16px;
height: 16px;
z-index: 1003;
}
.form-search-close {
position: absolute;
width: 16px;
height: 16px;
right: 16px;
top: 16px;
z-index: 1003;
}
.visionflex-helper .searchwp-live-search-result p {
font-size: 14px;
line-height: 16px;
margin-bottom: 8px;
padding: 0 0 0 264px;
border: 0;
}
.visionflex-helper .searchwp-live-search-result p a, .visionflex-helper .searchwp-live-search-result a {
color: #013844;
}
.visionflex-helper .searchwp-live-search-results-showing:before {
content: "";
}
.visionflex-helper .searchwp-live-search-results-showing {
width: 100% !important;
height: 184px  !important;
left: 0 !important;
top: 86px !important;
border: 0 !important;
box-shadow: none !important;
}
.logged-in .searchwp-live-search-results-showing {
top: 119px !important;
}

.search-term { font-weight: 700; }

/* Header Buttons */
.header-button-col {
  /* Remove fixed width */
  width: auto;
  height: 34px;
  text-align: right;
  text-transform: uppercase;
  display: flex;
  gap: 7px; /* Replace individual margin-right with gap */
  margin-left: auto; /* Push buttons to the right */
  padding-left: 15px; /* Add some spacing from the navigation */
}

.header-button-style {
  height: 40px;
  line-height: 33px;
  width: auto;
  font-size: 12px;
  letter-spacing: 2px;
  text-align: center;
  color: #013844;
	border-radius: 100px;
background: -webkit-linear-gradient(45deg, #3cdbc0 0%, #7feac0 100%);
background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
  display: inline-flex; /* Changed from inline-block */
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  min-width: auto;
  white-space: nowrap;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header-button-style:hover {
  color: #3cdbc0;
  background: #013844;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;    
}
.header-dealer { margin-right: 7px; }
.header-log-in {
    box-sizing: border-box;
    border-radius: 100px;
    background: #013844;
    color: #3CDBC0;
	margin-right: 7px;
}
.header-log-in:hover {
	background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
	color: #013844;
}
/**
  * 4.0 - Homepage
  */

/** 
 * Gutenberg Editor
 */ 
.kt-row-column-wrap {
  max-width: 1140px;
  padding: 60px 0;
  margin: 0 auto;
}

.vf-button, .wp-block-button__link {
	letter-spacing: 2px;
    font-size: 12px;
	text-transform: uppercase;
    text-align: center;
    color: #013844;
    border-radius: 100px;
    background: -webkit-linear-gradient(45deg, #6ce1c6 0%, #3CDBC0 100%);
    background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
    display: inline-block;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;	
	font-family: 'Stolzl';
}
.vf-button:hover, .wp-block-button__link:hover {
	color: #3cdbc0;
  	background: #013844;
  	-webkit-transition: all 0.4s ease;
  	transition: all 0.5s ease;
}
p:not(:last-child) {
	margin-bottom: 24px;
}
h3 a, h2 a, h4 a, h5 a {
	color: #000;
}

.wp-block-kadence-posts .loop-entry .post-thumbnail img {
	border-radius: 20px !important;
}

/* Hero Slider */
.home-hero-slider .slick-dotted.slick-slider { margin-bottom: 0; }
.hero-slider-container .slick-slide { 
	position: relative; 
	max-height: 980px;
    display: flex;
    align-items: center;	
}
.hero-slider-container .theme-row {
	display: grid;
	grid-template-columns: 504fr 657fr;	
}
@media (min-width: 1025px) {
  .hero-slider-container .slick-slide {
  height: 562px;
  }
}
@media
only screen and (-webkit-min-device-pixel-ratio: 2)      and (min-width: 1025px),
only screen and (   min--moz-device-pixel-ratio: 2)      and (min-width: 1025px),
only screen and (     -o-min-device-pixel-ratio: 2/1)    and (min-width: 1025px),
only screen and (        min-device-pixel-ratio: 2)      and (min-width: 1025px),
only screen and (                min-resolution: 192dpi) and (min-width: 1025px),
only screen and (                min-resolution: 2dppx)  and (min-width: 1025px) { 

  .hero-slider-container .slick-slide {
    height: 562px;
  }

}
.hero-slider-container .slick-dots { bottom: 72px; text-align: left; padding-left: 10.4166667%; }
.hero-slider-container .slick-dots li { margin: 0; }
.hero-slider-container .slick-dots li button:before { opacity: 1; color: rgba(255,255,255,0.4); font-size: 40px; text-shadow: 0.1px 0.1px 0px rgba(0,0,0,0.2); }
.hero-slider-container .slick-dots li.slick-active button:before { opacity: 1; color: #3cdbc0; }
.hero-slider-container .slide-content {
    color: #FFFFFF;	
    font-family: 'Stolzl';	
    font-weight: 500;
    letter-spacing: -0.5px;
    font-size: 28px;	
    font-weight: 600;	
    line-height: 36px;
    opacity: 0;
    -webkit-transition: all 1.4s ease;
    transition: all 1.4s ease;    
}
.hero-slider-container .slick-current.slick-active .slide-content { 
  opacity: 1; 
  -webkit-transition: all 1.4s ease;
  transition: all 1.4s ease;
}
.hero-slider-container .slide-content pre { 
   	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	margin-bottom: 20px;
	font-family: 'Stolzl';
}	
.hero-slider-container .slide-content h2,
.hero-slider-container .slide-content h1 { 
   	font-size: 40px;
	line-height: 47px;
	margin-bottom: 33px;
	color: #FFFFFF;
}
.hero-slider-container .slide-content p { 
	position: relative; 
	font-size: 15px;
    line-height: 24px;
	font-weight: 400;
    color: #FFFFFF;
	font-family: 'Montserrat', Roboto, sans-serif;
	max-width: 448px;
	margin-bottom: 47px;
}
.hero-slider-button {
	height: 44px;
    line-height: 43px;
    width: 146px;
    font-size: 15px;
	font-weight: 400;
	font-family: 'Stolzl';
    text-align: center;
    color: #3cdbc0;
    border-radius: 100px;
    background: #ffffff;
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.hero-slider-button:hover {
	background: #000;
	color: #fff;
}
.hero-slider-container .slick-slide > img { width: 100%; }
.slide-img {
	display: flex;
	align-items: center;
}
/* Facts */
.home-facts {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.home-facts-container {
  background: #f9fafb;
  height: 300px; 
  overflow: hidden;;
}
.facts-column {
  width: 33.33333333%;
  float: left;
  padding: 45px 0 82px 48px;
  height: 300px;
  position: relative;
  overflow: hidden;
  z-index: 11;
}
.facts-icon { 
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.facts-column .facts-icon { right: -144px; bottom: -92px; }
.facts-column:after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: rgba(15,17,38,0.05);
  right: 0;
  bottom: -24px;
  z-index: 12;
  position: absolute;
}
.facts-column h3 {
  font-size: 42px;
  line-height: 56px;
  color: #3CDBC0;
  margin-bottom: 18px;
}

.facts-column p {
  font-size: 16px;
  line-height: 24px;
  color: #013844;
  max-width: 264px;
}

/* Front Blog */

.front-blog-grid {
	width: calc((100% - 72px) / 3);
}

.home .front-blog {
  background: #fff! important;
}
.front-blog-row h2.section-title { text-align: center; margin-bottom: 50px;}
.front-blog-item { 
  max-width: 95%;
  min-height: 441px;
  margin: 12px 12px 32px 12px; 
  background-color: #FFFFFF;
	/*
  box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
	*/
  float: left;
  position: relative;
  overflow: hidden;
}
.front-blog-content { 
  padding: 13px 0px 0px;
}
.front-blog-content h3 {
  margin-bottom: 2px; 
  padding-right: 0;
  font-size: 20px;
  line-height: 30px;
}
.front-blog-content h3 a { color: #013844; }
.front-blog-content p {
font-family: 'Stolzl', sans-serif;
font-size: 13px;	
margin-bottom: 0; 
margin-left: 2px; 
}
.front-blog-meta { line-height: 1; margin: 23px 0 23px 0; }
.front-blog-content .bt_blog_time, .front-blog-cat {
	color: #3cdbc0;	
	font-family: 'Stolzl'; 
	font-weight:400; 
	font-size: 12px; 
	line-height: 16px; 
	letter-spacing: 1px; 
	text-transform: uppercase;
}
.front-blog-item .bt_read_more { position: absolute; left: 24px; bottom: 24px; font-size: 14px; line-height: 20px; color:#3cdbc0; margin-left: 2px;} 
.front-blog-more { 
	width: 160px;
	height: 40px;
    line-height: 40px;
    padding: 0 20px;
    font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 2px;
    text-align: center;
    color: #013844;
    border-radius: 100px;
    background: -webkit-linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
    background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;	
	font-family: 'Stolzl';
	text-transform: uppercase;
    display: block;
    margin: 0 auto;
}
.front-blog-more:hover {
  background: #013844;
  color: #3cdbc0;
}
/* How it Works */
.how-it-works {
  background: #F9FAFB;
}
.home .how-it-works {
  background: #ffffff;
}
.how-it-works-row h2.section-title { margin-bottom: 29px; }
.how-it-works-row .front-video-column p {
    color: #013844;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 33px;
    width: calc(100% - 72px);
}
.front-video-column {
  width: 41.6666%;
  float: left;
}

.front-video-ss {
  position: relative;
  width: calc(100% - 72px);
}
.front-video-preview { border-radius: 6px; overflow: hidden; }
.front-video-play-icon {
  position: absolute;
  width: 62px;
  height: 62px;
  top: 50%;
  margin-top: -31px;
  left: 50%;
  margin-left: -31px;
  cursor: pointer;
}
.visionflex-video-youtube {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(0,0,0,0.7);
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  z-index: 999999;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
}

.front-video-close {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 35px;
  right: 0;
  font-size: 24px;
  color: #fff;
  z-index: 100;
  cursor: pointer;
}

.visionflex-video-youtube.open-youtube-video {
  opacity: 1;
  pointer-events: auto;
}

.front-video-column-right {
  width: 58%;
  float: left;
}

.step-column {
  width: calc( (100% - 143px) / 2);
  float: left;
}

.step-column:nth-child(2n+1) {
  margin-right: 24px; 
}
.step-icon {
  width: 46px;
  height: 46px;
  margin-bottom: 24px;
}
.step-column h3 {
	color: #013844;
	font-size: 16px;
	font-weight: 500;
  line-height: 24px;
  margin-bottom: 8px;
}
.step-column p {
	color: #013844;
	font-size: 14px;
  line-height: 20px;
  margin-bottom: 27px;
}

/* Acc */
.home-accreditations-row {
  text-align: center;
  border-bottom: 1px solid #DFE2E8;
}
.home-accreditations-row .section-title {
  margin-bottom: 33px;
}
.home-accreditations-row p {
  max-width: 556px;
  margin: 0 auto 55px;
  color: #616E83;
  font-size: 16px;
  line-height: 24px;
}
.acc-image {
  display: inline-block;
  vertical-align: top;
}
  
.acc-desc{
  color: #013844;
  font-size: 12px;
  line-height: 16px;
  width: 278px;
  margin: 27px 48px 0;
}

/* Clients */
.clients-left .section-title {
  margin-bottom: 28px;
}
.clients-left p {
  max-width: 302px;
  color: #013844;
  font-size: 15px;
  line-height: 24px;
}
.clients-left {
  width: 31%;
  float: left;
  padding-top: 32px;
}
.client-column {
  width: 69%;
  float: left;
  padding-top: 87px;
}
.client-slider {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-gap: 48px;
  justify-items: center;
  align-items: center;
}
.client-single img {
  max-height: 64px
}
/**
 * 5.0 - Breadcrumbs
 */
.visionflex-breadcrumbs {
font-size: 12px;	
line-height: 16px;
color: #C4C8D5;
margin-bottom: 15px;
}
.visionflex-breadcrumbs a {
color: #013844;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
}
.visionflex-breadcrumbs a:hover {
  color: #013844;
  opacity: 0.7;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.visionflex-breadcrumbs > span > span > span > a {
pointer-events: none;
}
.single-post .visionflex-breadcrumbs > span > span > span > a {
  pointer-events: auto;
}
/**
 * 6.0 - Solutions
 */
.solutions-caption {
  padding: 60px 0;
  background: #f5f4f1;
}
.caption-title {
max-width: 1140px;
text-align: center;
}
.caption-title h1 {
	font-size: 34px;
	line-height: 40px;
	color: #013844;
}
.solutions-container {
  padding-bottom: 80px;
}
.solutions-featured-image {
  float: right;
  width: 58.34%;
  padding-left: 69px;
}
.solutions-featured-image img { margin-top: 57px; }
.solutions-content {
  float: left;
  width: 41.66%; 
  padding: 48px 0 42px 0; 
}
.solutions-secondary-title { 
	font-size: 28px;
	line-height: 40px;
  margin-bottom: 24px;
}
.solutions-content p{
	color: #013844;
	font-size: 16px;
  line-height: 24px;
  margin-bottom: 24px;
}
.single-solutions h2 {
 font-size: 36px;
 line-height: 45px;	
}
.single-solutions h3 {
 font-size: 28px;
 line-height: 40px;
}
.single-solutions h4 {
  font-size: 20px;
	line-height: 24px;
	font-weight: 300;
}
/**
 * 7.0 - Products Peripherals
 */
.product-hero-container {
position: relative;
}
.product-hero-content {
position: static;
padding: 74px 0 74px;
margin: 0 auto; 
max-width: 1140px;
}
.product-hero-col {
max-width: 461px; 
}
.product-full-image img { width: 100%; }
.product-hero-container figure {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
}
.product-hero-container figure img {
  width: 100%; 
  height: 100%; 
  object-fit: cover;
}
.product-hero-title h1 {
line-height: 45px;
margin-bottom: 45px;
}
.products-hero-secondary-title {
color: #013844;
font-size: 20px;
font-weight: lighter;
line-height: 28px;
margin-bottom: 24px;
}
.product-hero-description p {
color: #013844;
font-size: 15px;
line-height: 24px;
margin-bottom: 24px;
}
.visionflex-button {
color: #013844;
font-family: 'Stolzl';
font-weight: 400;
font-size: 12px;
line-height: 18px;
letter-spacing: 2px;
text-transform: uppercase;
width: 164px;
padding: 13px 16px;
border-radius: 100px;
background: -webkit-linear-gradient(45deg, #6ce1c6 0%, #3CDBC0 100%);	
background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
text-transform: uppercase;
margin-right: 12px;
margin-bottom: 24px;
display: inline-block;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
} 

.visionflex-button:hover {
  color: #3cdbc0;
  background: #013844;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;  
}
.product-download-brochure a{
font-size: 16px;	
line-height: 19px;
color: #3cdbc0;
}
.visionflex-button img { vertical-align: top; margin-right: 6px;}
.product-download-brochure a img { vertical-align: top; margin-top: 3px; margin-right: 6px; }
.product-how-it-works {
background: #F9FAFB;
}
.procuct-extra-right {
float: left;
line-height: 24px;
}
.procuct-extra-right p {
margin-bottom: 24px;
}
.product-extra-right p:last-child {
margin-bottom: 0;
}
/* product 1 */
.style1 .product-extra-description .product-extra-left {
width: 54%;
margin-right: 50px;
float: left;
padding-top: 72px;
}
.style1 .product-extra-description .procuct-extra-right {
width: 32.02%;
max-width: 461px;
padding-top: 88px;
padding-bottom: 105px;
}
/* product 2 */
.style2 .product-extra-description .product-extra-left {
width: 42.5%;
margin-right: 32px;
margin-left: 88px;
float: left;
padding-top: 63px;
}
.style2 .product-extra-description .procuct-extra-right {
width:38.75%;
max-width: 558px;
padding-top: 72px;
padding-bottom: 90px;
}
.product-details { background: #F9FAFB; }

.style1 .product-details {
background: #FFFFFF;
}
.style2 .global-testimonials, .style3 .global-testimonials, .style4 .global-testimonials {
background: #fff;
}
.style2 .global-clients:before, .style3 .global-clients:before, .style4 .global-clients:before {
content: "";
width: 1140px;
height: 1px;
margin: 0 auto;
background: #DFE2E8;
display: block;
}
/* product 3 */
.style3 .product-extra-description {
  display: grid;
  grid-template-columns: 5fr 6fr 0fr;
  grid-template-areas: ". . .";
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 59px 0 80px;
}

@media all and (-ms-high-contrast:none) {
  .style3 .product-extra-description {
    display: -ms-grid;
    -ms-grid-columns: 5fr 6fr 0fr;
  }

}
.style3 .procuct-extra-right{ padding-left: 73px; }

/* product 4 */
.style4 .product-extra-description {
  display: grid;
  grid-template-columns: 6fr 1fr 5fr;
  grid-template-areas: ". . .";
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 59px 0 80px;
}

@media all and (-ms-high-contrast:none) {
  .style4 .product-extra-description {
    display: -ms-grid;
    -ms-grid-columns: 6fr 1fr 5fr;
  }

}

/* product 5 */
.style5 .product-extra-description {
  display: grid;
  grid-template-columns: 5fr 1fr 6fr;
  grid-template-areas: ". . .";
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 59px 0 80px;
}

@media all and (-ms-high-contrast:none) {
  .style5 .product-extra-description {
    display: -ms-grid;
    -ms-grid-columns: 5fr 1fr 6fr;
  }

}
/* other styles of product */
.product-extra-left .wp-caption {
  text-align: left;
  font-size: 12px;
  line-height: 16px;
  color: #013844; 
  padding: 15px 0; 
  width: auto !important;
}
.product-how-it-works .front-video-column-right {
font-size: 14px;
line-height: 20px;
width: 49%;
}
.front-video-center {
  width: 9.3334%;
  float: left;
  text-align: center;
}
.product-how-it-works .front-video-column-right h3  {
font-size: 16px;
line-height: 24px;
margin-bottom: 8px;
}

.product-how-it-works .front-video-column-right ul {
list-style-type: none;
margin-top: 37px;
}

.product-how-it-works .front-video-column-right ul li {
clear:both;
}

.product-tab-content { display: none; }
.product-tab-content.active { display: block; }

.products-details-main-title{
font-size: 28px;
line-height: 40px;
margin-bottom: 25px;
}
.product-details-tabs {
  margin-bottom: 36px;
}
.product-tab {
font-size: 16px;	
font-family: Stolzl;
line-height: 19px;
padding-bottom: 6px;
border-bottom: 3px solid transparent;
color: #3cdbc0!important;
border-radius: 1px;
cursor: pointer;
margin-right: 30px;
}
.product-tab.active {
border-color:#3cdbc0;
pointer-events: none;
}
.product-details-content {
  font-size: 15px;
  line-height: 24px;
  list-style-position: inside;
}
.product-details-content ul {
  list-style-type: none;
}
.product-details-content ul li { position: relative; padding-left: 39px;}
.product-details-content ul li:before {
  content: "•";
  position: absolute;
  left: 10px;
}

/* Products Category Pages */
.main-category .product-hero-content {
top: 149px;
}
.product-hero-container.main-category {
background: #fff;	
}
.main-category .product-hero-content {
    padding: 120px 0 140px;
	text-align: center;
}
.sub-category .product-hero-content{
    position: static;
}
.main-category .product-hero-title h1 {
  font-size: 48px;
  font-weight: 400;
  letter-spacing: -0.5px;
  line-height: 56px;
  margin-bottom: 32px;
}

.main-category .product-hero-description p {
  color: #FFFFFF;
  font-size: 16px;
  letter-spacing: 0;
  line-height: 24px;
}

.products-main-extra {
  max-width: 784px;
  margin: 0 auto;
  padding: 72px 16px;
}
.products-children-container {
  max-width: 1172px;
  margin: 0 auto;
  padding: 0 16px 90px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 50px;
  grid-row-gap: 50px;
}
.product-child {
  border-radius: 32px;
  background-color: #f7f7f7;
  overflow: hidden;
  position: relative;
}
.product-child-image {
  height: 234px;
}
.product-child-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-child a {
  color: #013844;
  font-family: Stolzl;
  font-size: 20px;
  font-weight: 400;
  letter-spacing: -0.5px;
  line-height: 28px;
  padding: 32px 36px 32px 36px;
  display: block;
}
.product-child a:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: "";
}
.product-cat-row {
display: grid;
grid-template-columns: repeat( 2, 1fr);
grid-column-gap: 24px;
grid-row-gap: 24px;
}
.product-main-cat-image {
height: 246px;
}
.product-main-cat-image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.product-main-cat-single {
border-radius: 8px;
background-color: #FFFFFF;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
overflow: hidden;
position: relative;
}
.product-main-cat-link {
  color: #013844;
  font-family: 'Stolzl', sans-serif;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.5px;
  line-height: 28px;
  padding: 16px 32px 16px 24px;
  display: block;
}
.product-main-cat-link:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: "";
}

/**
 * 8.0 - Support and Contact 
 */
 .page-template-page-support .caption-title {
   max-width: 1140px;
 }
 .support-row {
  display: grid;
  grid-template-columns: 5fr 1fr 3fr 3fr;
  grid-template-areas: ". . . .";
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 59px 0 80px;
}

@media all and (-ms-high-contrast:none) {
  .support-row {
    display: -ms-grid;
    -ms-grid-columns: 5fr 1fr 3fr 3fr;
  }

}

.loginbutton {
  border: 1px solid #C4C8D5;
  border-radius: 100px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
  box-shadow: 0 1px 0 0 rgba(22,29,37,0.05);
  color: #013844;
  font-family: Stolzl;
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 16px;
  text-align: center;
  height: 44px;  
  line-height: 44px;
  position: relative;
}
.loginbutton a {
  color: #013844;
  display: inline-block;
}
.loginicon {
  width: 22px;
  height: 20px;
  position: absolute;
  top: 12px;
  left: 10px;
}
.contact-row {
  display: grid;
  grid-template-columns: 5fr 1fr 9fr;
  grid-template-areas: ". . .";
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}

@media all and (-ms-high-contrast:none) {
  .contact-row {
    display: -ms-grid;
    -ms-grid-columns: 5fr 1fr 6fr;
  }

}
.contact-page-style {
background: none;
}
.contact-caption {
padding: 60px 0 60px 0;
background-color: #F5F4F1;
}
.page-template-page-contact .support-main-content {
background-color: #FFFFFF;
border-radius: 12px;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
padding: 48px;
font-family: 'Stolzl';
font-size: 14px;
line-height: 20px;
color: #013844;
}
.cf-salutation { 
width: calc( (100% - 16px) / 5.36 ); 
margin-right: 8px;
float: left;
}
.cf-fname {
width: calc( (100% - 16px) / 2.45 ); 
margin-right: 8px;
float: left;    
}
.cf-lname {
width: calc( (100% - 16px) / 2.47 ); 
float: left;
}
.cf-state {
width: calc( (100% - 8px) / 1.5 );
float: left;
margin-right: 8px;
}
.cf-postal {
width: calc( (100% - 8px) / 3 );
float:left;
}
.contact-form-main input[type=text],
.contact-form-main input[type=email],
.contact-form-main input[type=tel],
.contact-form-main select,
.contact-form-main textarea {
height: 36px;
width: 100%;
border: 1px solid #C4C8D5;
border-radius: 3px;
background-color: #FFFFFF;
padding: 12px;
}
.contact-form-main select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgba(15, 17, 38, 1)'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
  background-size: 12px;
  background-position: calc(100% - 6px) 14px;
  background-repeat: no-repeat;
  background-color: #FFFFFF;  
}
.contact-form-main input[type=text]:focus,
.contact-form-main input[type=email]:focus,
.contact-form-main input[type=tel]:focus,
.contact-form-main select:focus,
.contact-form-main textarea:focus,
.contact-form-main input[type=text]:active,
.contact-form-main input[type=email]:active,
.contact-form-main input[type=tel]:active,
.contact-form-main select:active,
.contact-form-main textarea:active {
border-width: 2px;
border-color: #3CDBC0;
}
.wpcf7-not-valid {
  border-color: #9E1012 !important;
  background: #FBEAE5;;

}
.wpcf7-select { padding: 0 0 0 12px !important; }
.contact-form-main textarea {
height: 107px;
}
.contact-form-main label { margin-bottom: 2px; display: inline-block;}
.contact-form-row { margin-bottom: 14px; }
.support-second-content p {
  margin-bottom: 24px;
}

[type=checkbox] {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  opacity: 0;
}
span.wpcf7-list-item { margin: 0; width: 100%; }
span.wpcf7-list-item-label { 
 margin: 0 0 0 16px; 
 font-size: 14px;
 color: #5E6E85;
 position: relative;
}
.acceptance-826 label { width: 100%; }
.wpcf7-acceptance .wpcf7-list-item-label:before {
  content:"";
  position: absolute;
  top: 0;
  left: -28px;
  height: 16px;
  width: 16px;
  line-height: 16px;
  border: 1px solid #C4C8D5;
  border-radius: 3px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
  box-shadow: 0 1px 0 0 rgba(22,29,37,0.05);
  pointer-events: none;
}
.wpcf7-acceptance input:checked ~ .wpcf7-list-item-label:before  {
  font-style: normal;
  color: #000;
  font-weight: 700;
  content: "\2713 ";
  font-size: 11px;
  line-height: 14px;
  text-align: center;
  border-color: #3CDBC0;
  color: #3CDBC0;
  border-width: 2px;
}  

input[type=submit]
{
font-size: 14px;
font-family: 'Stolzl';
text-align: center;
text-transform: uppercase;
letter-spacing: 1px;
color: #ffffff;
height: 44px;
width: 146px;
border: 0px solid #2B526B;
border-radius: 50px;
background: linear-gradient(45deg, #3cdbc0 0%, #7feac0 100%);
box-shadow: inset 0 1px 0 1px rgba(255,255,255,0.06), 0 1px 0 0 rgba(40,64,79,0.25);
}

.grecaptcha-badge { 
  visibility: hidden;
}
.page-template-page-contact .grecaptcha-badge {
  visibility: visible;
}
.store-caption {
  padding: 37px 0 14px 0;
  background: #F4F6F8;
}
.store-desc {
    max-width: 461px;
    width: 100%; 
}
.visionflex-helper #wpsl-wrap {
    margin-bottom: 0;
}
.visionflex-helper .wpsl-search {
    background: #F4F6F8;
    padding-left: calc((100% - 1140px) / 2);
    padding-bottom: 57px;
    margin-bottom: 0;
}
.visionflex-helper .wpsl-input,
.visionflex-helper .wpsl-select-wrap,
.visionflex-helper #wpsl-category,
.visionflex-helper .wpsl-search-btn-wrap {
display: block !important; 
float: left !important; 
margin-right: 8px !important; 
clear: none;
height: 61px !important;
}
.visionflex-helper #wpsl-search-btn, #wpsl-search-wrap div {
margin: 0;
}
.visionflex-helper .wpsl-input > div,
.visionflex-helper #wpsl-radius > label,
.visionflex-helper .wpsl-dropdown,
.visionflex-helper #wpsl-search-wrap,
.visionflex-helper #wpsl-category label,
.visionflex-helper .wpsl-dropdown {
float: none;
width: 100% !important;
}
.visionflex-helper .wpsl-input,
.visionflex-helper #wpsl-category {
width: 220px;
}
.visionflex-helper .wpsl-select-wrap {
width: 110px;
}
.visionflex-helper #wpsl-gmap {
width: 100%;
}
.visionflex-helper #wpsl-result-list {
position: absolute;
width: 338px;
height: 493px;
background: #fff;
left: 10.4166666%;
top: 139px;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
border-radius: 6px;
}
.visionflex-helper #wpsl-stores {
height: 493px !important;
}
.visionflex-helper #wpsl-wrap #wpsl-result-list li {
padding: 24px 24px 0 24px !important;
}

#wpsl-result-list .wpsl-store-location strong > a {
color: #013844;
font-family: Stolzl;
font-size: 16px;
font-weight: 500;
letter-spacing: -0.5px;
line-height: 24px;
margin-bottom: 7px;
display: block;
}
#wpsl-result-list .wpsl-store-location span {
color: #013844;
font-family: 'Montserrat', Roboto, sans-serif;
font-size: 14px;
line-height: 14px;
}
.wpsl-input > input, .visionflex-helper .wpsl-dropdown {
height: 36px !important;
width: 218px;
border: 1px solid #C4C8D5;
border-radius: 3px;
background-color: #FFFFFF;
box-shadow: none;
color: #013844;
}
.wpsl-input > input:focus, .visionflex-helper .wpsl-dropdown:focus,
.wpsl-input > input:active, .visionflex-helper .wpsl-dropdown:active {
  border-width: 2px;
  border-color: #3CDBC0;
}
.wpsl-dropdown .wpsl-selected-item, .wpsl-dropdown li {
  color: #013844;
}
.visionflex-helper #wpsl-search-btn {
height: 35px;
width: 79px;
border: 1px solid #2B526B;
border-radius: 3px;
background: linear-gradient(45deg, #3cdbc0 0%, #7feac0 100%);
box-shadow: inset 0 1px 0 1px rgba(255,255,255,0.06), 0 1px 0 0 rgba(40,64,79,0.25);
color: #fff;
font-family: 'Stolzl';
font-size: 12px;
margin-top: 32px;
}
#wpsl-search-wrap div label {
font-family: 'Montserrat', Roboto, sans-serif;
font-size: 14px !important;
color: #013844;
}
.wpsl-direction-wrap { display: none; }
.visionflex-helper #wpsl-stores::-webkit-scrollbar{width:12px}
.visionflex-helper #wpsl-stores::-webkit-scrollbar-track{background:#f4f6f8;border-radius:4px}
.visionflex-helper #wpsl-stores::-webkit-scrollbar-thumb{background:#dfe2e8;border-radius:4px}
/**
 * 9.0 - Testimonials
 */
.global-testimonials {
background: #F9FAFB;
padding: 70px 0 78px;
}
.testimonials-single {
	height: 296px;
  width: 558px;
  padding: 48px 73px;
  margin: 10px 16px;
	background-color: #FFFFFF;
	box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
}
.testimonials-content {
	color: #013844;
	font-size: 14px;
  line-height: 24px;
  margin-bottom: 24px; 
}
.testimonials-header {
text-align: center;
}
.testimonials-header h2.section-title {
    display: inline-block;
    margin: 0 auto 35px;
    position: relative;
}
.testimonials-header h2.section-title:before {
    content: "";
	  background-image: url('data:image/svg+xml;charset=US-ASCII,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20width%3D%22167px%22%20height%3D%22150px%22%20viewBox%3D%220%200%20167%20150%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%3E%0A%20%20%20%20%3C%21--%20Generator%3A%20Sketch%2061.2%20%2889653%29%20-%20https%3A//sketch.com%20--%3E%0A%20%20%20%20%3Ctitle%3Equotes%3C/title%3E%0A%20%20%20%20%3Cdesc%3ECreated%20with%20Sketch.%3C/desc%3E%0A%20%20%20%20%3Cg%20id%3D%22Main%22%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22S02_ProductShot%22%20transform%3D%22translate%28-87.000000%2C%20-284.000000%29%22%20fill%3D%22%23013844%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Group%22%20transform%3D%22translate%280.000000%2C%2096.000000%29%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M127%2C338%20C101.4%2C338%2087%2C316.647687%2087%2C283.017794%20C87%2C214.690391%20143.533333%2C188%20143.533333%2C188%20L158.466667%2C204.548043%20C135.533333%2C225.900356%20129.133333%2C241.380783%20126.466667%2C257.928826%20C143.533333%2C258.996441%20167%2C269.13879%20167%2C297.430605%20C167%2C322.519573%20148.866667%2C338%20127%2C338%20Z%20M214%2C338%20C188.4%2C338%20174%2C316.647687%20174%2C283.017794%20C174%2C214.690391%20230.533333%2C188%20230.533333%2C188%20L245.466667%2C204.548043%20C222.533333%2C225.900356%20216.133333%2C241.380783%20213.466667%2C257.928826%20C230.533333%2C258.996441%20254%2C269.13879%20254%2C297.430605%20C254%2C322.519573%20235.866667%2C338%20214%2C338%20Z%22%20id%3D%22quotes%22%3E%3C/path%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C/g%3E%0A%20%20%20%20%20%20%20%20%3C/g%3E%0A%20%20%20%20%3C/g%3E%0A%3C/svg%3E');
	  background-repeat: no-repeat;
    color: #fff;
    width: 167px;
    height: 150px;
    display: block;
    position: absolute;
    bottom: -100px;
    left: -207px;
filter: invert(98%) sepia(3%) saturate(151%) hue-rotate(161deg) brightness(94%) contrast(104%);
    opacity: 0.3;
}
span.tname{
	color: #013844;
  font-size: 18px;
	font-weight: 500;
  line-height: 24px;
  display: block;
  margin-bottom: 2px; 
}
span.tposition {
  color: #013844;
  font-size: 12px;
  line-height: 16px;
  display: block;
}
.testimonial-image {
  float: left;
  width: 56px;
  height: 56px;
  margin-right: 18px;
  border-radius: 50%;
  overflow: hidden;
}
.testimonial-name {
  padding-top: 7px;
  float: left;
  width: calc( 100% - 74px );
}

.testimonials-slider .slick-dots {
  margin-bottom: -39px;
}
.testimonials-slider .slick-dots li button:before {
  font-size: 40px;
  color:#013844;
  opacity: 0.1;
}
.testimonials-slider .slick-dots li, .testimonials-slider .slick-dots li button {
  margin: 0;
  padding: 0;
}
.testimonials-slider .slick-dots li.slick-active button:before {
  color: #3CDBC0;
  opacity: 1;
}
/**
 * 1.0 - Blog 
 */
.main-blog { 
  background: #ffffff;
  padding-top: 80px; 
}
.main-blog-caption {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding-bottom: 10px;
}

.blog .theme-row.front-blog-row, .archive .theme-row.front-blog-row {
padding-top: 0;
}

.all-blog-posts {
	display: grid;
	grid-template-columns: repeat(3, 1fr) !important; 
}

.visionflex-category-filter {
list-style-type: none;
margin-left: 12px;
margin-bottom: 60px;
text-transform: uppercase;
letter-spacing:1px;
text-align: center;
}

.visionflex-category-filter li {
display: inline-block;
margin-right: 16px;
color: #013844;
font-family: 'Stolzl';
font-size: 12px;
line-height: 24px;
border-bottom: 2px solid transparent;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
letter-spacing:1px;
}
.visionflex-category-filter li a {
color: #013844;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
letter-spacing:1px;
}
.blog .visionflex-category-filter li.cat-item-all, .visionflex-category-filter li.current-cat, .visionflex-category-filter li:hover {
border-bottom: 0px solid #00D9B3;
-webkit-transition: all 0.4s ease;
background-color: #3cdbc0;
transition: all 0.4s ease;
letter-spacing:1px;
border-radius: 20px;
padding: 5px 18px;
}
.blog .visionflex-category-filter li.cat-item-all a, .visionflex-category-filter li.current-cat a, .visionflex-category-filter li:hover a  {
color: #fff;
-webkit-transition: all 0.4s ease;
transition: all 0.4s ease;
letter-spacing:1px;
}

.page-numbers {
list-style-type: none;
text-align: center;
margin-top: 30px;
}
.page-numbers li {
display: inline-block;
margin: 0 4px;
font-size: 14px;
}
.page-numbers li .page-numbers{
display: inline-block;
font-family: 'Stolzl';
height: 44px;
width: 44px;
border: none;
border-radius: 30px;
background: #ffffff;
box-shadow: none;
margin; 5px;
padding: 8px;
}

.page-numbers li .page-numbers.current {
border: none;
background: linear-gradient(45deg, #3cdbc0 0%, #9ef4bd 100%);
box-shadow: none;
color: #013844;
}

.single-blog-caption {
background-color: #f5f4f1;
padding: 60px 0;
}
.single .single-blog-caption {
padding: 60px 0 200px;
}
.single-blog-row {
max-width: 900px;
margin: 0 auto;
}
.single-post .caption-title {
  max-width: none;
}
.single-blog-caption .caption-title h1 {
margin-bottom: 2px;
}
.single-blog-content .front-blog-content {
padding: 30px 0 60px 0;
}
.single-blog-content .front-blog-content p {
margin-bottom: 24px;
margin-left: 0;
line-height: 24px;
color: #013844;
}

.single-blog-row .bt_blog_thumbnail img{
margin-top: -150px;
border-radius: 15px;
}

.single-blog-row .front-blog-meta, .single-blog-row .front-blog-cat{
font-size: 12px;
line-height: 20px;
}
.single-blog-row iframe{
width: 100%;
}
/**
 * 1.0 - WordPress Defaults
 */

 .wp-caption-text {
  margin-top: 16px;
  }
 .wp-caption { max-width: 100% !important; padding: 15px; text-align: center;}
 .wp-caption.align-left { padding: 15px 20px 15px 0; }
 .wp-caption.alignright { padding: 15px 0 15px 20px;; }
 .gallery img { margin-left: auto; margin-right: auto;}
 .wp-video{width: 100% !important; height: auto; }
 .disable-css { pointer-events: none; cursor: default; }
 .alignright { float:right;}
 .alignleft { float:left;}
 .aligncenter { display: block; margin-left: auto; margin-right: auto;}
 img.aligncenter { margin: 20px auto; }
 img.alignleft { margin: 15px 20px 15px 0;}
 img.alignright { margin: 15px 0 15px 20px;}
	.wp-block-columns {
	display: flex;
	margin: 20px auto;
	padding: 20px 0;
	max-width: 1140px;
	width: 100%;
	}
.wp-block-image.is-style-circle-mask img, .wp-block-image.is-style-rounded img {
	border-radius: 22px !important;
}

.wp-block-image figcaption {
	font-size:9pt;
}


/**
 * 1.0 - Footer
 */

.main-footer {
  background-color: #013844;
  color: #FFFFFF;
}
.footer-top-row {
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.footer-top-col1 {
  float: left;
  width: 25%;
}
.footer-top-col2 {
  float: left;
  width: 25%;
}
.footer-top-col3 {
  float: left;
  width: 25%;
}
.footer-top-col4 {
  float: left;
  width: 25%;
}
.footer-nav {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  font-family: 'Stolzl';
}
.footer-nav a, .footer-nav a:visited, .footer-nav a:focus {
  color: #547f89;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;  
}
.footer-nav a:hover{
  color: #567179;
  opacity: 0.7;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.footer-bot-row { 
	padding-top: 42px; 
	font-family: 'Stolzl','Montserrat', Roboto, sans-serif;
}
.footer-bot-col2 a {
color: #ffffff;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
}
.footer-bot-col2 a:hover {
opacity: 0.7;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
}
.footer-menu {
  margin: 18px 0 0;
  padding: 0; 
  list-style: none;
	font-size: 12px;
  line-height: 20px;
  font-weight: 400;
  font-family: 'Stolzl','Montserrat', Roboto, sans-serif;
}
.footer-bot-col1, 
.footer-bot-col2,
.footer-bot-col4,
.footer-bot-col5 {
  float: left;
  width: 25%;
  font-size: 12px;
  line-height: 20px;
}
.footer-bot-row p {
  margin-bottom: 20px;
}

.footer-bot-row .social-single {
margin-bottom: 16px;
}
.footer-bot-row .social-single a {
color: #fff;
}

.footer-bot-row .social-single a i {
font-size: 20px;
margin-right: 16px;
vertical-align: middle;
color: #3CDBC0;
}

.footer-copy-container {
  background: #0E0E10;
}
.footer-copy-row {
  padding: 26px 0 22px;
  font-size: 12px;	
  line-height: 16px; 
  color: #567179;  
	font-family: 'Stolzl','Montserrat', Roboto, sans-serif;
}
.footer-copy-left {
  width: 16%;
  float: left;
  min-height: 1px;
}
.footer-copy-left a {
  color: #616E83;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.footer-copy-left a {
  color: #616E83;
  opacity: 0.7;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.footer-copy-right {
  width: 50%;
  float: left;
  text-align: right;
}
.footer-acknowledgement-container {
  padding: 26px 0 22px;
  font-size: 12px;
  line-height: 16px; 
  color: #0E0E10; 
  text-align: center;
}
.footer-acknowledgement {
  width: 100%;
  text-align: center
}

footer .wp-caption-text {
	opacity: 0.5;
	color: #FFFFFF;
	font-size: 8px;
	line-height: 12px;
	text-align: right;
}
footer .wp-caption.alignright,
footer .wp-caption.alignleft {
padding:0;
}

.mailing-padding {
	padding-bottom: 100px;
}

/* Wufoo */
.product-hero-buttons { text-align: center; display: inline-block; }

.wufoo-visionflex {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  position: fixed;
  top: 0; 
  left: 0;
  z-index: 1000000;
  width: 100%;
  height: 100vh;
  background: rgba(0,0,0,0.5);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.wufoo-visionflex.open-form {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.wufoo-scroll {
  width: 530px;
  height: calc(100vh - 200px);
  overflow-y: scroll;
  top: 90px;
  left: 50%;
  margin-left: -265px;
  position: absolute;
  background: #fff;
  padding: 50px;
  border-radius: 20px;
}
.wufoo-close {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 35px;
  right: 0;
  font-size: 24px;
  color: #013844;
  z-index: 100;
  cursor: pointer;
}

/******************************/
/* Portal Page */
/******************************/
.portal-caption {
text-align: center;
}
.portal-caption .caption-title { max-width: 100%; text-align: center; }
.portal-caption .theme-row {
  padding-bottom: 45px;
}
.portal-cat .theme-row {
padding-top: 0; 
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-column-gap: 24px;
}
.portal-cat-box {
border-radius: 6px;
background-color: #FFFFFF;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
padding: 45px 24px 26px;
}

.portal-cat-image {
max-width: 62px;
margin: 0 auto 44px; 
}

.portal-cat-box h3 {
padding-top: 23.5px;
border-top: 1px solid #DFE2E8;
}

.portal-cat-desc {
  color: #013844;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 20px;
  margin-bottom: 16px;
  min-height: 40px;
}
.portal-link {
  color: #3CDBC0;
  font-family: 'Montserrat', Roboto, sans-serif;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 20px;
}
.portal-link img {
  margin-left: 7px;
}
.portal-media-assets-caption .theme-row {
padding-bottom: 0;
}
.portal-media-assets .theme-row {
padding-top: 15px;
}
.asset-titles, .asset-item {
display: grid;
grid-template-columns: 72px 1fr 1fr 145px;
grid-column-gap: 16px;
}
.asset-time {
  text-align: right;
}
.asset-titles {
  color: #013844;
  font-family: 'Montserrat', Roboto, sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid #DFE2E8;
}
.asset-item {
  padding-top: 9px;
  padding-bottom: 9px;
  border-bottom: 1px solid #DFE2E8;
  color: #013844;
  font-family: 'Montserrat', Roboto, sans-serif;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 20px;
}
.visionflex-pagination {
  padding: 24px 0 0 0;
}
.visionflex-pagination > * {
  padding: 14px 18px;
  border: 1px solid #C4C8D5;
  border-left: 0;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
  box-shadow: 0 1px 0 0 rgba(22,29,37,0.05); 
  display: inline-block;
  float: left;
}
.visionflex-pagination > *:nth-child(1) {
  border-left: 1px solid #C4C8D5;
  border-radius: 4px 0 0 4px;
}
.visionflex-pagination > *:last-child {
  border-radius: 0 4px 4px 0;
}
.visionflex-pagination > span {
  background: linear-gradient(180deg, #E0E6EB 0%, #E6EBEF 100%);
  box-shadow: 0 1px 0 0 rgba(22,29,37,0.05);
  color: #919AAB;
}

.media-cat-list {
list-style: none;
margin-bottom: 40px;
}
.media-cat-list li {
display: inline-block; 
margin-right: 24px;
font-size: 16px;
letter-spacing: 0;
line-height: 19px;
padding-bottom: 6px;
}

.media-cat-list li.current-cat {
border-bottom: 2px solid #3CDBC0;
}
/* Image Lib */
.grid-sizer {
  width: calc( (100% - 32px) / 5);
}
.image-lib-item {
  position: relative;
  overflow: hidden;
  margin-bottom: 8px;
  cursor: pointer;
}
.image-lib-hover {
  position: absolute;
  height: 56px;
  background-color: rgba(0,102,89,0.65);
  line-height: 56px;
  padding-left: 16px;
  bottom: 0; 
  width: 100%;
  color: #fff;
  bottom: -100%;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.image-lib-hover img {
  margin-left: 7px;
}
.image-lib-item:hover .image-lib-hover {
  bottom: 0;
}
.image-lib-item img {
	border: 1px solid #e6e6e6;
}
.image-lib-hover a { color: #fff; }


.image-lib-pp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.8);
	z-index: 500000;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	-webkit-transition: all 0.8s;
	transition: all 0.8s;
}
.image-lib-pp.active-big-pp {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.image-lib-close {
	position: absolute;
	top: 48px;
	right: 48px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #fff;
	text-align: center;
	line-height: 48px;
	cursor: pointer;
}
.image-lib-bigp {
text-align: center;
}
.image-lib-bigp img {
margin: 10vh auto 32px;
max-height: 70vh;
}
.image-lib-bigp a {
width: 100%;
display: block;
color: #fff;
font-weight: bold;
font-size: 32px;
}
/* warranty */
.warranty-caption {
text-align: center;
padding-bottom: 240px;
}
.warranty-caption .contact-caption {
  padding-bottom: 41px;
}
.warranty-caption .caption-title {
  margin: 0 auto;
}
.warranty-row {
width: 100%;
max-width: 460px;
background: #fff; 
padding: 48px;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
border-radius: 6px;
text-align: left;
}

.warranty-row label {
color: #013844;
font-size: 14px;
line-height: 20px;
}


/*custom log*/
.custom-reg {
max-width: 490px;
width: 100%;
margin: 0 auto 200px;
padding: 48px;
border-radius: 6px;
background-color: #FFFFFF;
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 #DFE2E8;
}
.custom-reg label, .custom-reg input[type=password], .custom-reg input[type=text], input[type=submit]  {
width: 100%;
display: block;
}

.custom-reg input[type=password],
.custom-reg input[type=text] {
height: 36px;
width: 100%;
border: 1px solid #C4C8D5;
border-radius: 3px;
background-color: #FFFFFF;
padding: 12px;
margin-bottom: 13px;
}
.custom-reg input:focus,
.custom-reg input:active {
border-width: 2px;
border-color: #3CDBC0;
}
.custom-reg .login-remember {
display: none;
}

/* Portal extra */
.page-template-page-portal #wpadminbar,
.page-template-page-media-assets #wpadminbar,
.page-template-page-image-library #wpadminbar,
.page-template-page-warrenty #wpadminbar,
.page-template-page-portal .header-dealer,
.page-template-page-media-assets .header-dealer,
.page-template-page-image-library .header-dealer,
.page-template-page-warrenty .header-dealer,
.page-template-page-portal .header-log-in,
.page-template-page-media-assets .header-log-in,
.page-template-page-image-library .header-log-in,
.page-template-page-warrenty .header-log-in  {
  display: none; 
}
.page-template-page-portal,
.page-template-page-media-assets,
.page-template-page-image-library,
.page-template-page-warrenty  {
  margin-top: -32px;
}

.page-template-page-portal.logged-in .main-header,
.page-template-page-media-assets.logged-in .main-header,
.page-template-page-image-library.logged-in .main-header,
.page-template-page-warrenty.logged-in .main-header  {
  top: 0;
}
.page-template-page-portal.logged-in .main-navigation,
.page-template-page-media-assets.logged-in .main-navigation,
.page-template-page-image-library.logged-in .main-navigation,
.page-template-page-warrenty.logged-in .main-navigation {
opacity: 0;
visibility: hidden;
}

.header-exit {
  display: none;
}
.page-template-page-portal.logged-in .header-exit,
.page-template-page-media-assets.logged-in .header-exit,
.page-template-page-image-library.logged-in .header-exit,
.page-template-page-warrenty.logged-in .header-exit {
display: inline-block;
}

/* 
 * Training
 */
.training-row {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-column-gap: 24px;
grid-row-gap: 24px;
padding-top: 17px;
padding-bottom: 32px;
}
.training-item {
border-radius: 8px;
background-color: rgba(255,255,255,1);
box-shadow: 0 1px 0 1px rgba(63,63,68,0), 0 1px 10px 0 rgba(223,226,232,1);
overflow: hidden;
cursor: pointer;
}
.traning-featured-image {
width: 100%;
height: 246px;
}
.traning-featured-image a {
width: 100%;
height: 100%;
display: block;
}
.traning-featured-image img {
object-fit: cover;
width: 100%;
height: 100%;
}
.training-meta {
padding: 16px 24px;
position: relative;
height: 80px;
}
.training-meta h3 {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.5px;
  line-height: 24px;
  max-width: 71%;
}
.training-type-logo-video {
  width: 16px;
  height: 16px;
  background-color: rgba(0,208,181,1);
  text-align: center;
  line-height: 14px;
  padding-left: 1px;
  position: absolute;
  top: 19px;
  right: 24px;
  border-radius: 2px;
}
.training-type-logo-pdf {
  width: 16px;
  height: 16px;
  position: absolute;
  top: 19px;
  right: 24px;
  font-size: 8px;
  color: #fff;
  line-height: 16px;
  text-align: center;
  border-radius: 2px;
}
.page-template-page-training .caption-title h1 {
  font-size: 48px;
  line-height: 64px;
}

.svg-loader {
  height: 30px;
}
/* Update Products */
.sub-category .product-hero-col, .product-hero-container.main-category .product-hero-col {
max-width: 100%;
}
.page-template-page-solutions-category .product-hero-container { background: #f5f4f1; }
.page-template-page-solutions-category .sub-category .product-hero-content {
padding: 70px 0 60px 0;
background: #f5f4f1;
}


/* Responsive */
@media (max-width: 1188px) {

.all-blog-posts {
	grid-template-columns: repeat(2, 1fr) !important; 
}
	
	.visionflex-helper .kt-row-column-wrap { 
	padding-left: 14px;
	padding-right: 14px;
	}
	.wp-block-columns {
	padding-left: 16px;
    padding-right: 16px;
	}
}
@media (min-width: 1024px) and (max-width: 1172px) {
  .theme-row, .theme-row-zero, .header-row, .support-row, .product-hero-content  {
    padding-left: 16px;
    padding-right: 16px; 
  }
}
@media(max-width: 1024px) {
	.product-hero-container.main-category .product-hero-col {
	max-width: 100%;
	text-align: center;
	}
	.page-template-page-solutions-category .product-hero-container.sub-category .product-hero-title h1 {
	text-align: center;
	}
	
	.page-template-page-solutions-category .sub-category .product-hero-content, 
	.page-template-page-product-category .solutions-caption{
		background: #fff;
		padding-bottom: 0 !important;
	}
	.page-template-page-product-category .support-container .theme-row  { padding-top: 24px !important; }
}
@media(max-width: 1460px) {
  .header-row { height: 64px; padding: 0 16px; }
  .theme-row-zero, .support-row, .product-cat-row, .product-hero-content { padding-left: 16px; padding-right: 16px; }
  .training-row { padding-left: 32px; padding-right: 32px; grid-template-columns: repeat(2, 1fr); }
  .main-header { height: 64px; }
  .mobile-menu-icon { display: block; }
  .site-branding { width: 144px; height: 27px; }
  .section-title, .caption-title h1 { font-size: 30px; line-height: 34px;}
  .solutions-secondary-title { font-size: 24px; line-height: 32px; }
  .main-navigation, .header-button-col { display: none; } 
  .footer-top-row { display: none; }
  .hero-slider-container .slide-content { 
    font-size: 24px;
    line-height: 28px;
  }

	
  .home-facts-container { height: 228px; }
  .facts-column {
    padding: 28px 37px 28px 25px;
    height: 228px; 
  }
  .facts-column h3 {
    font-size: 32px;
    line-height: 36px;
  }
  .facts-column .facts-icon { width: 176px; right: -84px; bottom: -54px; }
  .theme-row.front-blog-row {
    padding: 48px 22px 56px;
    text-align: center; 
  }
  .front-blog-item {
    margin: 0 10px 34px; 
    text-align: left;
    float: none;
    display: inline-block;
  }
  .home .front-blog-item:nth-child(4) { display: none; }
  .how-it-works-row {
    width: 465px; 
    padding: 48px 0 34px;
  }
  .front-video-column, .front-video-column-right, .front-video-ss {
    width: 100%; 
  }
  .front-video-column-right { padding-top: 32px; }
  .step-column { 
    width: calc( (100% - 16px) / 2);
    text-align:  center; 
  }
  .step-column:nth-child(2n+1) {
    margin-right: 16px; 
  }
  .step-icon {
    margin: 0 auto 24px;
  }
  .home-accreditations-row {
    width: 100%;
    padding: 48px 30px 58px;
  }
  .global-clients-row {
    max-width: 100%;
    padding: 32px 0 56px;
  }
  .clients-left {
    width: 464px;
    float: none;
    margin: 0 auto; 
    padding-top: 0;
    padding-bottom: 32px; 
    text-align: center;
  }
  .clients-left p { max-width: 100%; }
  .client-column {
    width: 100%;
    float: none; 
    padding: 0 24px;
  }
  .acc-image { width: 224px; }
  .acc-desc { width: 224px; margin: 27px 0 0 0; }
  .footer-bot-row {
  padding: 48px 32px 51px;
  }
  .footer-bot-col1 {
  width: 100%;
  padding-bottom: 37px;
  }
  .footer-bot-col2 {
  width: 25%;
  }
  .footer-bot-col4,
  .footer-bot-col5 {
  width: calc( 100% / 4 );
  text-align: left;
  }

  .footer-bot-col5 figure {
  float: left;
  }
  footer .wp-caption-text {
  text-align: left;
  }
  .client-slider .slick-dots {
  bottom: -55px;
  }
  .client-slider .slick-dots li {
  margin: 0;
  }
  .client-slider .slick-dots li button:before {
  width: 20px;
  height: 2px;
  content: "";
  background: #DFE2E8;
  }
  .client-slider .slick-dots li.slick-active button:before {
  background: #3CDBC0;
  }
  .solutions-caption {
  padding: 32px 0 32px 0;
  }
  .visionflex-breadcrumbs, .caption-title, .solutions-container {
  width: 100%;
  max-width: 100%;
  }
  .solutions-featured-image, .solutions-content {
  float: none;
  width: 100%;
  margin: 0;
  padding-left: 0; 
  }
  .solutions-container {
  padding: 0 0 60px 0;
  }

  .solutions-content { 
  padding-top: 34px;
  padding-bottom: 0;
  }  
  .product-hero-container {
  background-color: #F9FAFB;
  }
  .product-hero-content {
  position: static;
  width: 463px;
  margin: 0 auto; 
  padding-top: 27px;
  padding-bottom: 30px;
  }

  .product-hero-content .visionflex-breadcrumbs {
  position: absolute;
  top: 24px;
  width: 463px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  }

  .product-hero-title h1 {
  font-size: 32px;
  line-height: 36px;
  width: 82%;
  margin-bottom: 8px;
  }
	.product-hero-container.sub-category .product-hero-title h1,
	.product-hero-container.main-category .product-hero-title h1{
		width: 100%;
		margin-bottom: 0;
	}
	.product-hero-container.sub-category .product-hero-description, .product-hero-container.main-category .product-hero-description {
		margin-top: 8px;

	}	
	.product-hero-container.main-category figure { display: none; }
  .products-hero-secondary-title {
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 17px;
  }
  .product-extra-description,
  .product-how-it-works .how-it-works-row,
  .style3 .product-extra-description,
  .style4 .product-extra-description,
  .style5 .product-extra-description {
  width:463px;
  margin: 0 auto;
  padding: 32px 0; 
  display: block;
  }
  .product-extra-left,
  .procuct-extra-right {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none; 
  }
  .front-video-center, 
  .product-how-it-works .front-video-column-right {
  width: 100%;
  }
  .front-video-column {
  z-index: 9;
  position: relative;
  }
  .front-video-center {
  position: relative;
  margin-top: -35px;
  z-index: 12;
  text-align: left;
  }
  .product-details-row {
  width: 463px;
  margin: 0 auto; 
  padding: 32px 0; 
  }

  .products-details-main-title {
  font-size: 28px;
  line-height: 40px;
  }

  .product-tab { 
  margin-right: 20px;
  }
  .product-tab:last-child { 
  margin-right: 0;
  }
  .global-testimonials {
    padding: 32px 0 56px;
  }  
  .testimonials-single {
  width: 464px;
  padding: 32px 44px;
  }  
  .procuct-extra-right h2 {
    font-size:32px;
    line-height: 36px;
  }
  .product-hero-container figure {
    width: 100%;
    overflow: hidden;
  }
  .product-hero-container figure img {
    width: 170%;
    max-width: 170%;
    margin-left: -63%;
  }
  .main-blog-caption .visionflex-breadcrumbs,
  .main-blog-caption .caption-title {
  width: 100%;
  max-width: 100%;
  padding-left: 32px;
  }  
  .single-blog-row {
  max-width: 465px;
  }
  .single-blog-caption {
  padding: 24px 0 48px
  }

  .single-blog-row .bt_blog_thumbnail img {
  margin-top: -150px;
  }
  .contact-row {
  grid-template-columns: 8fr 1fr 3fr;  
  padding: 11px 32px 74px; 
  }
  .contact-caption { padding: 24px 0 0 16px; }
  .contact-caption .visionflex-breadcrumbs, .contact-caption .caption-title { width: 100%; max-width: 100%; }
  .contact-row { grid-template-columns: 8fr 1fr 3fr; }
  .visionflex-helper .searchwp-live-search-results-showing { top: 60px !important; height: 300px;}
  .visionflex-helper .searchwp-live-search-result p { padding-left: 66px; }

  .store-caption .visionflex-breadcrumbs, .store-caption .caption-title {
    width: 100%; 
    margin: 0; 
  }
  .store-caption { padding-left: 16px; }
  .visionflex-helper .wpsl-search { padding-left: 32px; }
  #wpsl-search-wrap .wpsl-input { width: 220px !important}
  .visionflex-helper #wpsl-result-list { top: 157px; }
  .footer-copy-container { padding: 0 32px; }
  .front-video-close { top: 80px; }
  .logged-in .front-video-close { top: 120px; }
	
  .product-hero-container figure {
	position: static;
	}
	.page-template-page-product-category .solutions-caption,
	.page-template-page-solutions-category .sub-category .product-hero-content{
		padding: 32px 0;
		text-align: center;
	}
}

@media(max-width: 765px) {

.front-blog-grid {
	width: 100% !important;
	}	
	
.all-blog-posts {
	grid-template-columns: repeat(1, 1fr) !important; 
}
	
  .section-title { font-size: 30px; line-height: 34px;}
  .product-hero-content .visionflex-breadcrumbs { width: 100%; padding-left: 16px; }
  .solutions-secondary-title { margin-bottom: 18px; }

  .hero-slider-container .theme-row { grid-template-columns: 100%; padding: 32px 24px 48px; text-align: center; }
  .hero-slider-container .slide-content { padding-bottom: 48px; }
  .hero-slider-container .slick-slide { max-height: unset; }
  .hero-slider-container .slide-content br { display: none; }
  .hero-slider-container .slide-content span { color: #ffffff !important; }
  .hero-slider-container .slick-dots {
    bottom: 16px;
    padding-left: 16px;
  }

  .home-facts-container { height: auto; }
  .facts-column {
    width: 100%;
    height: 220px;
    padding: 24px 16px 0 16px;
  }
  .facts-column:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(15,17,38,0.05);
    position: absolute;
    bottom: 0;
  }
  .facts-column:nth-child(3):after {
    display: none;
  }
  .theme-row.front-blog-row, .how-it-works-row, .home-accreditations-row, .global-clients-row,
  .product-extra-description, .product-how-it-works .how-it-works-row,
  .product-hero-content,
  .product-details-row {
    padding: 32px 16px 40px 16px;
    width: 100%;
  }
  .product-hero-col { width: 100%; }
  .product-extra-description { width: 100% !important; padding: 32px 16px 40px 16px !important;}
  .product-extra-left img { margin-bottom: 24px; }
  .product-hero-buttons a:first-child { margin-bottom: 8px; }
  .front-blog-item { width: 100%; margin: 0 0 16px 0;}
  .home .front-blog-item:nth-child(4) { display: inline-block; margin-bottom: 24px; }
  .front-video-column, .front-video-column-right, .how-it-works-row .front-video-column p { width: 100%; text-align: center; }
  .step-column { width: 100%; margin: 0 !important; padding: 0 11px; }
  .step-column:nth-child(4) { margin-bottom: 0; }
  .acc-image, .acc-desc { width: 100%; display: block; }
  .acc-image { margin-bottom: 32px; }
  .acc-image:nth-child(3) { margin-bottom: 0; }
  .home-accreditations-row p { text-align: left;}
  .client-slider {
    grid-template-columns: 1fr 1fr 1fr;  
    grid-gap: 24px;
  }
  .client-single {
    padding: 0 12px;
  }
  .footer-bot-row > div { width: 100%; text-align: center !important; }
  .footer-bot-col5 figure, figure { float: none; margin: 0 auto; }
  .footer-bot-col3, .footer-bot-col4, .footer-bot-col5 { margin-bottom: 24px; }
  footer .wp-caption-text { text-align: center;}
  .footer-copy-left, .footer-copy-right { width: 100%; text-align: center; }
  .footer-copy-left { padding-bottom: 16px;}
  .theme-row-zero {
  padding: 0 16px;
  }  
  .store-caption .theme-row-zero {
    padding: 0;
  }
  .store-caption .visionflex-breadcrumbs, .store-caption .caption-title { padding-left: 16px; } 
  .solutions-content { padding-top: 24px; padding-bottom: 26px; }
  .product-how-it-works .front-video-column-right img.alignleft {
    float: none;
  }
  .product-how-it-works .front-video-column-right { 
    text-align: left;
  }
  .product-how-it-works .front-video-column-right ul li { margin-bottom: 8px; }
  .product-tab { display: table; margin-bottom: 8px; }
  .testimonials-single { width: 288px; height: 348px; padding: 24px; margin: 10px 8px; }
  .clients-left { width: 100%; padding-left: 16px; padding-right: 16px; }
  .global-clients .global-clients-row { padding: 32px 0 40px 0; }
  .global-clients { overflow: hidden;}
  .visionflex-button { width: 100%; display: block; text-align: center;}
  .main-blog-caption .visionflex-breadcrumbs, .main-blog-caption .caption-title {
    padding-left: 16px; 
  }
  .single-blog-row {
  max-width: 100%;
  }
  .single-blog-caption {
  padding: 24px 16px;
  }

  .single-blog-row .bt_blog_thumbnail img {
  margin-top: -150px;
  }  
  .single-blog-content { padding: 0 16px; }
  .support-main-content { padding: 16px !important; margin-bottom: 24px; }
  .contact-row { display: block; padding: 11px 16px 40px; }
  .contact-caption { padding: 24px 0 0; }
  .cf-lname, .cf-state, .cf-postal { 
    width: 100%; float: none; margin-bottom: 14px; 
  }
  .cf-salutation { width: 65px; margin-bottom: 14px;}
  .cf-fname { width: calc( 100% - 73px); margin-right: 0; margin-bottom: 14px; }
  .support-row { display: block; padding: 0; }
  .support-second-content { padding: 0 16px 20px; }
  .page-template-page-support .solutions-caption { padding-bottom: 20px; }
  .page-template-page-support .support-main-content { margin-bottom: 0; }
  .store-caption { padding: 24px 0 0 0; }
  .store-desc { padding: 24px 16px 0 16px; background: #fff; }
  .store-caption .caption-title { padding-bottom: 16px; }
  .visionflex-helper #wpsl-result-list { position: static; width: calc( 100% - 4px); margin: 0 auto;}
  .visionflex-helper .wpsl-search { background: #ffffff; padding: 0; }
  .visionflex-helper #wpsl-search-wrap .wpsl-select-wrap { margin-bottom: 10px; }
  .visionflex-helper #wpsl-category { margin-bottom: 17px; }
  .visionflex-helper #wpsl-search-wrap .wpsl-input, .visionflex-helper #wpsl-search-wrap .wpsl-select-wrap, .visionflex-helper #wpsl-radius, .visionflex-helper #wpsl-search-input, .visionflex-helper #wpsl-category, .visionflex-helper #wpsl-category-list,
  .visionflex-helper #wpsl-search-wrap .wpsl-dropdown 
  {
    width: 100% !important;
  }
  .footer-copy-container { padding: 0 32px; }
  .wufoo-scroll { 
    width: 100%;
    margin: 0;
    left: 0;
    padding: 12px;
  }
  .wufoo-close { top: 5px; right: -21px; }
	

  /* Portal */
  .portal-cat .theme-row {
  padding-left: 24px;
  padding-right: 24px;
  grid-template-columns: 100%;
  }  
	
  .training-row { padding-left: 16px; padding-right: 16px; grid-template-columns: repeat(1, 1fr); }
  .products-children-container { grid-template-columns: repeat(1, 1fr); }	
  .product-cat-row { grid-template-columns: repeat(1, 1fr); }	
  .sub-category .product-hero-content { padding-left: 20px; padding-right: 20px; }
}


/** 
 * Visionflex - Ben Parsons 2021/11/22
 * Scale post images while preserving aspect ratio
 */ 
img.wp-post-image.size-thumbnail  {
	width: 100%;
    object-fit: cover;
	border-radius: 20px;
}

/**
 * Show all post categories on posts
 */
.cat-seperator
{
	font-family: 'Stolzl'; 
	color:#3cdbc0;
}

/* Add new cart icon styles */
.header-cart img {
  max-height: 16px;
  margin-right: 5px;
}