@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&display=swap');
@import url('https://use.typekit.net/qxj6shw.css');


:root {
    --main-font-size: 15px;
    --main-line-height: 1.8;
    --main-heading-line-height: 1.3;
    --main-heading-font: "georgiapro",sans-serif;
    --main-body-font: "Nunito Sans", sans-serif;
	--main-body-font-weight:500;

    --tekano-charcoal: #28282D;
    --tekano-grey: #4b5055;
    --tekano-grey-text: #d9d8d6;
    --tekano-gold: #c79e3c;
    --tekano-gold-highlight: #d0ab51;
    --tekano-gold-text: #5d3600;


    --main-text-color: #4a4f54;
    --main-text-color:#303336;
    --main-link-color: var(--tekano-gold);
    --main-link-hover-color: var(--tekano-gold-highlight);
    --main-highlight-color: var(--main-link-color);
    --main-input-label-color: var(--main-link-color);


    --main-progress-loader-color: var(--main-link-hover-color);

    --main-product-price-text-color: var(--main-link-color);
    --main-product-detail-card-highlight-color: var(--main-link-color);
    --main-member-portal-membership-item-highlight-text-color: var(--main-link-color);
    --main-input-border-color: var(--main-link-color);

    --main-product-toggle-filter-background-color: var(--tekano-grey);
    --main-product-toggle-filter-background-highlight-active-color: var(--main-link-hover-color);
    --main-product-toggle-filter-background-active-color: var(--main-link-color);
    --main-button-primary-highlight-border-color: var(--main-link-hover-color);
    --main-button-primary-highlight-background-color: var(--main-link-hover-color);


    --main-header-secondary-region-dropdown-background: var(--main-light-background-color);
    --main-header-secondary-region-dropdown-background-highlight-color: #ebeadf;
    --main-header-secondary-region-dropdown-background: var(--main-light-background-color);

    --main-site-header-navigation-container-inner-background-color: #fff;
    --main-site-header-navigation-container-background-color: #fff;

    --main-header-primary-region-dropdown-background-box-shadow: transparent;
    --main-header-secondary-font: var(--main-body-font);
    --main-header-secondary-region-dropdown-background-highlight-color: #efefef;

    --main-header-secondary-region-dropdown-text-color: var(--tekano-gold);
    --main-header-secondary-region-dropdown-background: #fff;

    --main-page-header-banner-padding: 4.5rem;


    --main-button-primary-background-color: var(--main-link-color);
    --main-button-primary-text-color: #ffffff;
    --main-button-primary-border-color: var(--main-link-color);

    --main-light-background-color: #f4f4f4;
    --main-middle-background-color: #eaeae5;
    --main-feature-background-color: #fffef4;

    /*logo sizing */
    --main-logo-width-lg: 240px;
    --main-logo-width-md: 185px;
    --main-logo-width-sm: 185px;
    --main-logo-width: 145px;


    --main-mobile-logo-width: 260px;
    --main-mobile-logo-width-sm: 250px;
    --main-mobile-logo-width-md: 260px;
    --main-mobile-logo-width-lg: 320px;


    /*banner */
    --main-banner-padding: 4.25em;
    --main-banner-description-font-size: 1.4em;
    --main-banner-title-font-size: 1.8em;
    --main-banner-title-font-weight: 700;
    --main-banner-title-font: var(--main-body-font);

    --main-banner-content-width-sm: 75%;
    --main-banner-content-width-md: 55%;
    --main-banner-content-width-lg: 60%;
    --main-banner-content-width-xl: 60%;

    /*header */
    --header-menu-button-size: 2.25em;
    --header-menu-button-icon-size: 2.5em;
    --main-site-header-icon-size: 2.5em;
    --main-header-secondary-font-size: .9em;
    --main-header-secondary-font-weight: 500;
    --main-cart-count-background: var(--main-link-color);
    --main-cart-count-text: var(--tekano-gold-text);
    --main-site-header-height: 7em;

    /*footer*/
    --main-footer-background-color: #080808;
    --main-footer-link-color: #fff;
    --main-footer-text-color: #b3b3b3;


    /*default theme */
    --vc-dark-color: #28282D;
    --vc-dark-contrast-color: #3e3e42;

    --vc-light-color: #f4f4f4;
    --vc-light-contrast-color: #e4e0e0;

    --vc-accent-color: #BC9C45;
    --vc-accent-contrast-color: #ab8a33;

    --neutral-1: #d8d8d8;
    --neutral-2: #4b4b4b;
    --neutral-3: #e6e6e6;

}

/*type adjustments */

html {
    font-size: var(--main-font-size);
}

body {
	font-weight:var(--main-body-font-weight);
}

*,
*:before,
*:after {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

b,
strong {
    font-weight: 600;
}

.h1,
.h2,
h3,
h4,
h5,
h6,
h1,
h2,
h3,
h4,
h5,
h6,
.wysiwyg-content h1,
.wysiwyg-content h2,
.wysiwyg-content h3,
.wysiwyg-content h4,
.wysiwyg-content h5 {
    font-weight: 500;
}

.client-theme-1 {
    --vc-dark-color: #28282D;
    --vc-dark-contrast-color: #3e3e42;

    --vc-light-color: #f4f4f4;
    --vc-light-contrast-color: #e4e0e0;

    --vc-accent-color: var(--tekano-gold);
    --vc-accent-contrast-color: var(--tekano-gold-highlight);

    --neutral-1: #d8d8d8;
    --neutral-2: #4b4b4b;
    --neutral-3: #e6e6e6;
}

.client-theme-2 {
    --vc-dark-color: #2f2f2f;
    --vc-dark-contrast-color: #383838;

    --vc-light-color: #efefef;
    --vc-light-contrast-color: #c4c4c4;

    --vc-accent-color: #a4a4a4;
    --vc-accent-contrast-color: #656565;
}

.menu-opened,
.no-header {
    --main-site-header-background-color: #fff;
    --main-cart-count-text: var(--tekano-gold-text);
    --main-cart-count-background: var(--main-link-color);
    --header-menu-button-icon-color: var(--main-text-color);
    --header-menu-button-text-color: var(--main-text-color);
    --main-site-header-nav-link: var(--main-text-color);
}

.default-accent-2 {
    --vc-text-heading-color: var(--vc-dark-color);
    --vc-text-color: var(--vc-dark-color);
    --vc-link-color: var(--vc-accent-color);
    --vc-link-hover-color: var(--vc-accent-contrast-color);
    --vc-card-background-color: var(--vc-light-color);
    --vc-background-color: var(--neutral-light);

    --vc-border-color: var(--neutral-1);
    --vc-input-border-color: var(--neutral-1);
    --vc-input-border-hover-color: var(--vc-accent-color);
    --vc-input-placeholder-color: var(--neutral-1);

    --vc-highlight-action-background-color: var(--vc-dark-color);
    --vc-highlight-action-text-color: var(--vc-light-color);
    --vc-highlight-action-icon-color: var(--vc-highlight-action-text-color);
    --vc-highlight-action-outline-text-color: var(--vc-accent-color);
    --vc-highlight-action-outline-color: var(--vc-accent-color);
    --vc-highlight-action-outline-hover-text-color: var(--vc-light-color);
    --vc-highlight-action-outline-hover-color: var(--vc-accent-contrast-color);
}

.default-accent-2.type-2 {
    --vc-highlight-action-text-color: var(--vc-light-color);
    --vc-highlight-action-outline-text-color: var(--vc-dark-color);
    --vc-highlight-action-outline-text-color: var(--vc-dark-color);
}

.default-accent-2.type-3 {
    --vc-text-heading-color: var(--vc-dark-contrast-color);
    --vc-highlight-action-outline-hover-text-color: var(--vc-dark-color);
}

@media (min-width: 1200px) {
    :root {
        --main-header-secondary-font-size: .95em;
    }
}

@media (min-width: 992px) {
    .header .logo {
        width: var(--main-logo-width-md) !important;
    }
}

@media (min-width: 1200px) {
    .header .logo {
        width: var(--main-logo-width-lg) !important;
    }
}

/*sales-bar */
.sales-bar {
    --sales-bar-vertical-padding: 0.35em !important;
}

.sales-highlight-text-element {
    line-height: 1.2;
}

@media (max-width: 991.98px) {
    .sales-highlight-text-element[data-v-668a7848]:not(:last-child) {
        margin-bottom: 0.25em !important;
    }
}

.absolute-header.has-header .header-menu-section.menu-closed {
    --main-site-header-background-color: transparent;
    --main-site-header-dropdown-hover-link-color: #fff;
    --main-site-header-nav-link: #fff;
    --header-menu-button-icon-color: #fff;
    --header-menu-button-text-color: #fff;
}

/*scrim gradient for no contrast white banner backgrounds */
.absolute-header.has-header.header-menu-section.menu-closed {
    position: relative;
}

.absolute-header.has-header .header-menu-section.menu-closed:before {
    content: " ";
    height: 17em;
    width: 100%;
    position: absolute;
    background: linear-gradient(to bottom, hsl(0, 0%, 0%) 0%, hsla(0, 0%, 0%, 0.987) 8.1%, hsla(0, 0%, 0%, 0.951) 15.5%, hsla(0, 0%, 0%, 0.896) 22.5%, hsla(0, 0%, 0%, 0.825) 29%, hsla(0, 0%, 0%, 0.741) 35.3%, hsla(0, 0%, 0%, 0.648) 41.2%, hsla(0, 0%, 0%, 0.55) 47.1%, hsla(0, 0%, 0%, 0.45) 52.9%, hsla(0, 0%, 0%, 0.352) 58.8%, hsla(0, 0%, 0%, 0.259) 64.7%, hsla(0, 0%, 0%, 0.175) 71%, hsla(0, 0%, 0%, 0.104) 77.5%, hsla(0, 0%, 0%, 0.049) 84.5%, hsla(0, 0%, 0%, 0.013) 91.9%, hsla(0, 0%, 0%, 0) 100%);
    pointer-events: none;
    top: 0;
    opacity: .5;
}


.absolute-header .my-account-container .btn {
    padding: 0;
}

.mobile-navigation-container .main-menu-region {
    top: 0;
}

.footer-menu-region-noticebar {
    bottom: 0 !important;
}

.header.header-menu-section .navbar-nav {
    align-items: center;
}

.header.header-menu-section .navigation.nav .nav-item .nav-link:hover {
    color: var(--main-link-color);
}

.header.header-menu-section .navigation.nav .nav-item .nav-link:after {
    margin-left: 0.5em;
    opacity: .25;
}

.header.header-menu-section .dropdown-menu:before {
    z-index: -2 !important;
}

.header.header-menu-section .dropdown-menu {
    filter: drop-shadow(1px 2px 3px #5555);
}

.header.header-menu-section .header-navigation-region .mini-main-navigation .navigation.nav>li,
.header.header-menu-section .header-navigation-region .mini-main-navigation .navigation.nav>ul {
    margin-left: 1em !important;
}

@media (min-width: 1200px) {

    .header.header-menu-section .header-navigation-region .mini-main-navigation .navigation.nav>li,
    .header.header-menu-section .header-navigation-region .mini-main-navigation .navigation.nav>ul {
        margin-left: 1.1em !important;
    }
}


.absolute-header .user-actions .navbar-nav .dropdown-menu {
    position: absolute !important;
}

.header.header-menu-section-noticebar {
    top: 48px;
}

.home-intro-content {
    padding-top: 1em;
}

@media (min-width: 768px) {
    .home-intro-content {
        padding-top: 2em;
    }
}

.home-into-content .wysiwyg-content {
    max-width: 1140px;
    margin: 0 auto;
}


/* banner */
.header-region .content-gradient,
.banner-content-gradient {
    background-image: none !important;
}

.main-banner-section .banner-description {
    font-family: var(--main-heading-font);
}

.main-banner-section {
    --main-banner-description-font-size: 1.5em;    
    --main-banner-title-font-size: 1.3em;
}

@media (min-width: 992px) {
	.main-banner-section {
	    --main-banner-title-font-size: 1em;
	}
}

.main-banner-section {
    --main-banner-padding: 6rem;
}

@media (min-width: 992px) {
    .main-banner-section {
        --main-banner-padding: 7.5rem;
    }
}

.banner-description {
    line-height: var(--main-line-height) !important;
}


/*cta sections*/

.cta-section.upper-cta-section {
    padding-top: 1.5em;
    padding-bottom: 2em;
}

.cta-section.upper-cta-section .wysiwyg-content {
    margin-bottom: 3em;
}

.cta-section .wysiwyg-content {
    padding: 0 15px;
    margin: 0 auto;
    max-width: 100%;
}

@media (min-width: 768px) {
    .cta-section .wysiwyg-content {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .cta-section .wysiwyg-content {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .cta-section .wysiwyg-content {
        max-width: 1140px;
    }
}

.cta-section .banner-content-text {
    display: flex;
    flex-direction: column;
    align-items: inherit;
}

.cta-section.upper-cta-section>div:nth-child(2) {
    max-width: 1140px;
    margin: 0 auto;
    --main-banner-padding: 3em;
}

.cta-section.lower-cta-section .banner-content-inner,
.cta-section.upper-cta-section>div:nth-child(2) .banner-content-inner {
    padding: 0em 1.5em;
}

.cta-section.upper-cta-section>div:nth-child(2) .banner-content .col {
    max-width: 900px;
}

.cta-section.lower-cta-section .a-carousel {
    max-width: 1140px;
    margin: 0 auto;
    --main-banner-padding: 3em;
    padding: 0px 15px;
}


.header-region .header-content {
	text-align: left;
}

header-region-header-content {
    max-width: var(--main-banner-content-width-xl);
}

.header-region .header-content .header-title h1,
.header-carousel .banner-content h1 {
	font-size: 2em;
    font-family: var(--main-body-font);
    font-weight: var(--main-banner-title-font-weight);   
}

.header-region .header-description {
	--main-banner-description-font-size: 1.5em;
    font-family: var(--main-heading-font);
     font-size: calc(var(--main-banner-description-font-size)*1.25) !important;	
}

.header-carousel .banner-description {
	--main-banner-description-font-size: 1.5em;
    font-family: var(--main-heading-font);
     font-size: calc(var(--main-banner-description-font-size)*1.25);
}

.cta-section.lower-cta-section .banner-content h1 {
    font-size: 22px;
}

.cta-section.lower-cta-section .banner-description {
    font-size: 1.1em;
}

.cta-section.lower-cta-section .banner-content .col {
    max-width: 740px;
}

.cta-section.lower-cta-section .banner-item.card-type-photo {
    min-height: 600px;
}

.cta-section.middle-cta-section .wywisyg-content h2 {
    font-family: var(--main-body-font);
}


.cta-section .wysiwyg-content a {
    font-weight: 500;
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding-right: 1.5em;
}

.cta-section .wysiwyg-content a:after {
    content: " ";
    background-image: url(/dist/images/te-kano-chevron-right.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    height: 1.3em;
    width: 1.3em;
    right: 0em;
    display: flex;
    justify-content: center;
}

.highlight-element.highlight-content {
    margin-bottom: 2em;
}

.cta-section {
    padding-top: 0;
}

.cta-section.lower-cta-section .swiper-pagination {
    position: relative !important;
}

.cta-section.lower-cta-section .a-carousel:not(.pagination-outside) .swiper-pagination-bullet:hover,
.cta-section.lower-cta-section .a-carousel:not(.pagination-outside) .swiper-pagination-bullet,
.cta-section.lower-cta-section .a-carousel:not(.pagination-outside) .swiper-pagination-bullet-active {
    background: var(--main-link-color) !important;
}


.cta-section.lower-cta-section .card-type-wysiwyg {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    max-width: 800px;
    margin: 0 auto;
    padding: 3em 0em;
}

.cta-section.lower-cta-section .card-type-wysiwyg .ql-align-center {
    text-align: center;
}

.cta-section.lower-cta-section .banner-item.card-type-wysiwyg {
    position: relative;
}

.cta-section.lower-cta-section .banner-item.card-type-wysiwyg h3 {
    color: var(--main-link-color);
}

.cta-section.lower-cta-section .swiper-slide {
    background-color: var(--main-light-background-color);
}

.cta-section.lower-cta-section .a-carousel:not(.pagination-outside) .swiper-pagination-bullets {
    bottom: 4em;
}

.cta-section.middle-cta-section {
    padding-top: 2em;
}

.cta-section.upper-cta-section h3,
.cta-section.middle-cta-section h3,
.cta-section.cta-section-1 h3,
.cta-section.cta-section-3 h3 {
    max-width: 600px;
    padding: .75em 0em;
    margin: 0;
}

.cta-section.upper-cta-section h2,
.cta-section.middle-cta-section h2,
.cta-section.cta-section-1 h2,
.cta-section.cta-section-3 h2 {
    font-family: var(--main-body-font);
    color: var(--main-link-color);
    position: relative;
    font-weight: 600;
    font-size: 1.3em;
    margin: 0;
}

@media (max-width: 768px) {

    .cta-section.upper-cta-section h2,
    .cta-section.middle-cta-section h2,
    .cta-section.cta-section-1 h2,
    .cta-section.cta-section-3 h2 {
        margin-left: 1.25em;
    }
}

.cta-section.upper-cta-section h2:before,
.cta-section.middle-cta-section h2:before,
.cta-section.cta-section-1 h2:before,
.cta-section.cta-section-3 h2:before {
    content: " ";
    background-image: url(/dist/images/te-kano-icon.svg);
    background-repeat: no-repeat;
    position: absolute;
    height: 0.85em;
    width: 0.85em;
    margin-left: -1.2em;
    top: 0.25em;
}

.cta-section.middle-cta-section,
.cta-section.lower-cta-section {
    background: var(--tekano-charcoal);
    color: var(--tekano-grey-text);
    padding-bottom: 2em;
}


.cta-section.lower-cta-section .swiper-wrapper {
    counter-reset: number;
}

.cta-section.lower-cta-section .swiper-slide {
    counter-increment: number;
}

.cta-section.lower-cta-section .swiper-wrapper .swiper-slide h1:before {
    content: "0"counter(number)"";
    margin-right: 0.5em;
    color: var(--main-link-color);
    font-weight: 500;
}

@media (max-width: 768px) {
    .cta-section.lower-cta-section .banner-description {
        font-size: 1em;
        margin-left: 0em;
    }
}

.cta-section.cta-section-2 {
    --main-banner-padding: 2.5em;
}


.cta-section.cta-section-2 .swiper-wrapper .swiper-slide h1 {
    font-size: 2.5rem;
}

.cta-section.cta-section-2 .swiper-wrapper .swiper-slide h1:before {
    content: "0"counter(number)"";
    margin-right: 0.25em;
    color: var(--main-link-color);
    font-weight: 500;
}

section.cta-section.cta-section-2 .swiper-wrapper {
    counter-reset: number;
}

section.cta-section.cta-section-2 .swiper-slide {
    counter-increment: number;
}


.content-wrap>div {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
}

.content-wrap>div>div,
.content-wrap>div>section {
    grid-column: span 2;
}

.cta-section.cta-section-1 {
    padding: 4em 0em;
}

.cta-section.cta-section-1>div {
    justify-content: flex-end;
    display: flex;
    align-items: flex-end;
}

@media (min-width: 992px) {
    .cta-section.cta-section-1>div {
        width: 570px;
    }

    .cta-section.cta-section-1 {
        grid-column: span 1;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .cta-section.cta-section-2 {
        grid-column: span 1;
        padding: 4em 0em;
    }

    .cta-section.cta-section-1 {
        padding: 4em 0em;
    }

    .cta-section.cta-section-1 .wysiwyg-content {
        padding-right: 5em;
    }

    .cta-section.cta-section-2 .a-carousel {
        max-width: 560px;
    }
}


.cta-section.cta-section-2 .a-carousel .banner-item .banner-content .banner-content-inner {
    padding: 1em 0em 1.5em 0em;
}

@media (min-width: 1200px) {
    .cta-section.cta-section-2 .a-carousel .banner-item .banner-content .banner-content-inner {
        padding: 1em 1em 1.5em 1em;
    }
}

.cta-section.cta-section-2 .a-carousel .banner-item.card-type-photo .banner-content-gradient {
    background: none;
}

.cta-section.cta-section-2 .featured-swiper .swiper-slide {
    min-height: 720px;
}

.cta-section.cta-section-2 .banner-description {
    font-size: 1em;
}

.cta-section.cta-section-3 {
    padding: 4em 0em;
    background: var(--tekano-charcoal);
    color: var(--tekano-grey-text);
}

.cta-section.cta-section-4 .banner-item.card-type-photo {
    min-height: 600px;
}

.cta-section.cta-section-5 {

    --vc-text-color: #fff;
    --vc-accent-color: #fff;
    --vc-highlight-action-outline-color: #fff;
    --vc-highlight-action-outline-text-color: #fff;
    background: var(--tekano-gold);
    color: #fff;
    padding: 4em 0em;
    min-height: 350px;
    position: relative;
    overflow: hidden;
}

.cta-section.cta-section-5:before {
    z-index: 2;
    background: url(/dist/images/kowhai-bloom.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    position: absolute;
    top: 0;
    right: 0;
    width: 600px;
    height: 600px;
    opacity: .25;
    filter: drop-shadow(1px 2px 1px #513b04);
}

.cta-section.cta-section-5 .wysiwyg-content a {
    color: #fff;
}

.cta-section.cta-section-6 {
    padding: 3em 0em;
}

.cta-section-6 .content-card .image-container .object-contain {
    padding: 0;
    object-fit: cover;
}

.highlight-content-inner {
    margin: 0 auto;
    padding: 0 15px;
}

@media (min-width: 768px) {
    .highlight-content-inner {
        max-width: 720px;
    }
}

@media (min-width: 1200px) {
    .highlight-content-inner {
        max-width: 1140px;
    }
}

/*cookie-bar*/
.cookiebar {
    --cookie-bar-font-size: 1.1em !important;
}


/*age gate*/
#modal-age-gate .modal-content {
    --modal-content-min-height: 320px !important;
    --modal-content-padding: 1em !important;
}


.age-gate-content .age-gate-content-element .title {
    font-size: 1.5em;
}

.age-gate-content .age-gate-content-element .description {
    font-size: 1em;
}


.highlight-content {
    --highlight-content-icon-size: 4em !important;
}

/*page */
div[nid="19"] .header-title,
div[nid="31"] .header-title,
div[nid="33"] .header-title,
div[nid="47"] .header-title {
    display: none;
}

.header-carousel .banner-action .banner-btn {
    font-size: 1.75em;
}

.header-region .header-content-position,
.has-image .header-content-position {
    padding-top: calc(var(--main-page-header-banner-padding) *2) !important;
    padding-bottom: calc(var(--main-page-header-banner-padding) * 2) !important;
}

@media (min-width: 576px) {

    .header-region .header-content-position,
    .has-image .header-content-position {
        padding-top: calc(var(--main-page-header-banner-padding) *2) !important;
        padding-bottom: calc(var(--main-page-header-banner-padding) * 2) !important;
    }
}

@media (min-width: 992px) {

    .header-region .header-content-position,
    .has-image .header-content-position {
        padding-top: calc(var(--main-page-header-banner-padding) * 2.5) !important;
        padding-bottom: calc(var(--main-page-header-banner-padding) * 2.5) !important;
    }
}


/*buttons*/
.card-type-color .banner-action a.banner-btn-primary,
.header-content .header-links .btn-primary,
.card-type-photo .banner-btn.banner-btn-primary,
.card.card-photo .card-actions a.btn.btn-primary-cta,
.card.card-icon .card-actions a.btn.btn-primary-cta {

    --main-button-primary-border-color: rgba(255, 255, 255, .45);
    --main-button-primary-background-color: transparent;
    --main-button-primary-text-color: #fff;
    --main-button-primary-border-radius: 0px;
    border: 2px solid var(--main-button-primary-border-color) !important;
    font-family: var(--main-body-font);
    border-radius: var(--main-button-primary-border-radius);
    color: var(--main-button-primary-text-color);
    padding: .75em 1.5em;
    background-color: var(--main-button-primary-background-color);
}

.card-type-color .banner-action a.banner-btn-primary:hover,
.header-content .header-links .btn-primary:hover,
.card-type-photo .banner-btn.banner-btn-primary:hover,
.card.card-photo .card-actions a.btn.btn-primary-cta:hover,
.card.card-icon .card-actions a.btn.btn-primary-cta:hover {
    --main-button-primary-highlight-background-color: var(--main-link-color);
    --main-button-primary-highlight-border-color: var(--main-link-color);
    --main-button-primary-highlight-text-color: #fff;
    background-color: var(--main-button-primary-highlight-background-color);
    color: var(--main-button-primary-highlight-text-color);
    border: 2px solid var(--main-button-primary-highlight-border-color) !important;
}

.header-content .header-links .btn-secondary,
.card-type-photo .banner-btn.banner-btn-secondary,
.card.card-photo .card-actions a.btn.btn-secondary-cta,
.card.card-icon .card-actions a.btn.btn-secondary-cta,
.card-type-color .banner-btn.banner-btn-secondary {
    --main-button-secondary-border-color: var(--main-link-color);
    --main-button-secondary-background-color: var(--main-link-color);
    --main-button-secondary-text-color: #fff;
    --main-button-secondary-border-radius: 0px;
    background: var(--main-button-secondary-background-color);
    border: 2px solid var(--main-button-secondary-border-color) !important;
    font-family: var(--main-body-font);
    border-radius: var(--main-button-secondary-border-radius);
    color: var(--main-button-secondary-text-color);
    padding: .75em 1.5em;
}

.header-content .header-links .btn-secondary:hover,
.card-type-photo .banner-btn.banner-btn-secondary:hover,
.card.card-photo .card-actions a.btn.btn-secondary-cta:hover,
.card.card-icon .card-actions a.btn.btn-secondary-cta:hover,
.card-type-color .banner-btn.banner-btn-secondary:hover {
    --main-button-secondary-highlight-background-color: #ffff;
    --main-button-secondary-background-color: #fff;
    --main-button-secondary-highlight-text-color: var(--main-link-color);
    --main-button-secondary-border-color: #fff;
    background-color: var(--main-button-secondary-background-color);
    color: var(--main-button-secondary-highlight-text-color);
    border-color: var(--main-button-secondary-border-color);
}


/* low res placeholder image smoothness */
.card-type-photo .a-image img.low-res:not(.placeholder) {
    filter: blur(30px);
}

/*image patch FF */

.a-image .full-res:not(.loaded),
.a-image .low-res:not(.loaded) {
    display: none;
}

/*product hacks */

.product-image {
    padding: 0 !important;
}

.content-list .product-item .product-image .a-image,
.products-carousel .product-item .product-image .a-image,
.product-grid .product-image .a-image {
    --product-image-aspect-ratio: var(--aspect-ratio-4-3);
    padding-top: var(--product-image-aspect-ratio, 100%);
}

.content-list .product-image .image-container,
.product-list .product-image .image-container {
    height: 0;
}

.product-image .image-container {
    --product-image-aspect-ratio: var(--aspect-ratio-4-3);
    padding-bottom: var(--product-image-aspect-ratio, 100%);
}

.content-list-items .product-item .product-description,
.product-list .product-item .product-description {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


.product-item .product-region {
    font-size: .867em;
    margin-top: .75em;
}

/*product page */

.product-carousel .swiper-pagination .swiper-pagination-bullet {
    margin: 0em .25rem !important
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--vc-highlight-action-background-color);
}

/* sitegate modal override */
#modal-age-gate___BV_modal_backdrop_ {
    backdrop-filter: blur(10px);
}

.sales-modal-display.modal-image-display .sales-modal-content {
    padding: calc(var(--sales-modal-content-padding)*3.5) calc(var(--sales-modal-content-padding)*1.5) !important;
}

.sales-modal-display .sales-modal-image-inner {
    flex-grow: 1;
    width: 20em;
}

.sales-modal-display .modal-form-display.vc-form {
    padding: 0;
}

.sales-modal-display .sales-modal-content {
    width: 100%;
}

.sales-modal-display .sales-modal-image .sales-modal-logo {
    max-width: 15em;
}


/*webform */
.form-renderer-wrapper .form-buttons .btn {
    margin: 0;
    border-radius: 0px;
}

.form-renderer-wrapper form {
    background: var(--main-middle-background-color);
    padding: 1.5em;
    border-radius: 6px;
}

.form-renderer-wrapper .form-buttons>*+* {
    margin-left: 1em !important;
}

.form-renderer-wrapper .form-buttons .btn-secondary {
    display: none;
}

.footer-section .middle-footer-region .footer-region-divider {
    border: none !important;
}

@media (min-width: 768px) {
    .footer-section .middle-footer-region .row [class*="col-"]:not(:last-child) {
        border-right: 2px solid rgba(255, 255, 255, 0.15);
    }
}

.footer-section .middle-footer-region .link-list-title h3 {
    font-size: 1.55em !important;
}

.footer-section .link-list-item .link-list-item-link {
    padding: 0.25em 0;
}

.footer-section .disclaimer-footer-region .wysiwyg-content {
    font-size: .867em;
    opacity: .8;
}

/*footer background */

.footer-section {
    position: relative;
}

.footer-section:before {
    z-index: 0;
    content: " ";
    background: url(/dist/images/footer-banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    opacity: .3;
}

/* club */

.checkout-stepper .btn-success {
    background-color: var(--main-success-color);
}

.club-group .club-card .graphic {
    filter: grayscale(1);
}

.lightbox-product-details .pricing .price.club-price:only-child {
    justify-content: center !important;
}

.stepper-container .stepper-step-type {
    max-width: 15em;
}

/*product */
.top-filters .view-toggle .btn {
    border-radius: 0px !important;
}

.catalog-container .filter-header h3 {
    margin: 0;
    font-size: 1.2em;
}


/*cart */

.cart-empty-message {
    background-color: var(--main-light-background-color) !important;
}

.page.no-header .header {
    background: #f6f6f6;

}

.cart-view-buttons .btn-cart {
    border-radius: 0px !important;
}

/*page */

.header-region {
	margin-bottom: 0px !important;
}

/*page custom */

div[nid="31"] .slice:nth-child(1){
	padding:3em 0em;
}
div[nid="31"] .slice:nth-child(2){
	padding-bottom:2em;
}

div[nid="31"] .slice:nth-child(1),
div[nid="31"] .slice:nth-child(2){
	background: var(--tekano-charcoal);
    color: var(--tekano-grey-text);
}

div[nid="31"] .slice:nth-child(1) .highlight-description {
	    --main-text-color: #fff;
}


.highlight-element.highlight-content .highlight-description p,
.wysiwyg-content-region:not(h1, h2, h3, h4, h5, h6),
.wysiwyg-content:not(h1, h2, h3, h4, h5, h6) {
    font-size: 1.15rem;
}

.icon-cta-item .description {
    font-size: 1.15rem !important;
}

.page .banner-content .col {
    max-width: 800px;
}

.slice {
    padding: 1em 0em;
}

.slice .grid-item .icon-cta-item-content>div {
    width: 100%;
}

.slice .icon-cta-ghost .highlight-text .highlight-text-inner {
    background: transparent;
    padding: 1em;
}

.slice .feature-highlights .col {
    padding: 0;
}

.slice .highlight-item > div {
    padding: 0em !important;
    border: none !important;
    align-items: flex-start;
}

.slice .highlights .highlight-item:not(:first-child) {
    padding-top: 2em;
}

.slice h2 {
    color: var(--tekano-gold);
}


@media (min-width: 576px) {
	.highlight-item .highlight-image {
	    margin-bottom: 0;
	    width: auto;
	    min-width: 25%;
	    max-width: 25%;
	}
}


.speaker-item .profile-teaser .profile-info {
    opacity: 1;
}

/*contact page map */

div[nid="19"] .slice .card-type-video iframe {
    min-height: 22em;
}



/*success messages */

.message-toast-item.message-large.success {
    background-color: var(--tekano-gold);
    background: var(--tekano-gold);
}
.message-toast-item.message-large.success .icon {
    color: var(--tekano-gold);
}


/* table overrides */
.table thead th,
.table th,
.table td,
table .cart-view-table {
    border-color: var(--main-border-color) !important;
}

.table td,
.table th {
    border-top: 1px solid var(--main-border-color) !important;
}

.table thead th {
    border-bottom: 2px solid var(--main-border-color) !important;
}

.table tbody+tbody {
    border-top-color: var(--main-border-color) !important;
}

.teaser-list-item {
    border-color: var(--main-border-color) !important;
}