@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Roboto+Condensed:wght@400;500;700&display=swap');

:root {
    --desen-green: #9dbf31;
    --desen-green-dark: #6f8f1f;
    --desen-blue: #80d0ea;
    --desen-blue-dark: #337f98;
    --desen-gray: #676665;
    --desen-text: #353535;
    --desen-soft: #f5f8ef;
    --desen-border: #dce4cf;
    --desen-tab: #6f8f1f;
    --desen-page-max: 1320px;
    --desen-content-max: 1170px;
    --primary: #9dbf31;
    --secondary: #676665;
    --success: #9dbf31;
    --info: #80d0ea;
    --warning: #9dbf31;
    --dark: #353535;
}

html,
body {
    min-height: 100%;
    color: var(--desen-text);
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
    letter-spacing: 0;
}

input,
button,
select,
textarea {
    color: var(--desen-text);
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
    letter-spacing: 0;
}

html:root,
body {
    --primary: var(--desen-green);
    --secondary: var(--desen-gray);
    --success: var(--desen-green);
    --info: var(--desen-blue);
    --warning: var(--desen-green);
    --dark: var(--desen-text);
}

body {
    background: #dbeaf2 url("../../images/branding/background.jpg") center top / cover fixed no-repeat;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.nav-link,
.btn,
.dropdown-item,
.productbox-title,
.productlist-filter-headline {
    font-family: "Roboto Condensed", "Roboto", "Helvetica Neue", Arial, sans-serif;
    font-weight: 500;
    letter-spacing: 0;
}

a,
.text-primary,
.product-info a,
.breadcrumb a,
.breadcrumb-link {
    color: var(--desen-green-dark);
}

a:hover,
a:focus,
.product-info a:hover,
.product-info a:focus,
.breadcrumb a:hover,
.breadcrumb a:focus,
.breadcrumb-link:hover,
.breadcrumb-link:focus,
.btn-link:hover,
.btn-link:focus,
.page-link:hover,
.page-link:focus,
.dropdown-item:hover,
.dropdown-item:focus,
footer a:hover,
footer a:focus,
footer .nav-link:hover,
footer .nav-link:focus,
.link:hover,
.link:focus {
    color: var(--desen-blue-dark);
}

#header-top-bar a:not(.dropdown-item):not(.btn):hover,
#header-top-bar a:not(.dropdown-item):not(.btn):focus,
header a:not(.dropdown-item):not(.btn):hover,
header a:not(.dropdown-item):not(.btn):focus,
#footer a:hover,
#footer a:focus,
#footer .nav-link:hover,
#footer .nav-link:focus {
    color: var(--desen-green-dark) !important;
}

#page,
header,
#main-wrapper,
#content-wrapper,
footer {
    max-width: var(--desen-page-max);
    margin-right: auto;
    margin-left: auto;
    background-color: #fff;
}

header,
#main-wrapper,
footer {
    box-shadow: 0 0 32px rgba(64, 91, 110, .14);
}

header.sticky-top {
    position: relative !important;
    top: auto !important;
    z-index: 1020;
}

header {
    position: relative;
    overflow: visible;
    border-bottom: 0 !important;
}

body > .modal-backdrop.zindex-dropdown {
    background-color: transparent !important;
    opacity: 0 !important;
}

header::before {
    content: "";
    display: block;
    width: 100%;
    height: clamp(130px, 16.75vw, 221px);
    background: #edf5f8 url("../../images/branding/header.jpg") center top / cover no-repeat;
}

header .container-fluid-xl,
.container-fluid-xl {
    max-width: var(--desen-content-max);
}

#content-wrapper .container,
#content-wrapper .container-fluid-xl,
footer .container,
footer .container-fluid-xl {
    max-width: var(--desen-content-max);
}

header .navbar,
.navbar,
.navbar-collapse {
    border-color: transparent;
    background-color: #fff;
}

header .navbar,
header .navbar-collapse,
header #mainNavigation,
#jtl-nav-wrapper {
    border-bottom: 0 !important;
    box-shadow: none !important;
}

header .navbar {
    border-bottom: 1px solid #e3e3e3 !important;
}

header .dropdown-menu {
    border: 1px solid rgba(53, 53, 53, .12);
    box-shadow: 0 8px 18px rgba(64, 91, 110, .08);
}

header .nav-logo-wrapper,
header .toggler-logo-wrapper {
    min-width: auto;
    position: static !important;
}

header .logo-wrapper {
    position: absolute;
    top: clamp(18px, 2.4vw, 34px);
    left: max(24px, calc((100% - var(--desen-content-max)) / 2 + 1rem));
    z-index: 4;
    display: block;
    width: clamp(180px, 19vw, 260px);
    height: clamp(104px, 11vw, 148px);
}

header .navbar-brand.desen-navbar-brand {
    display: inline-flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-top: .25rem;
    padding-bottom: .25rem;
}

header .navbar-brand.desen-navbar-brand img,
header #shop-logo {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}

header .navbar-nav .nav-link,
header .navbar-nav .nav-item > a,
header .cart-icon-dropdown .cart-icon-dropdown-price,
header .cart-icon-dropdown a,
header .dropdown-cart-items a {
    color: var(--desen-gray);
}

header .navbar-nav .nav-link:hover,
header .navbar-nav .nav-link:focus,
header .navbar-nav .nav-item > a:hover,
header .navbar-nav .nav-item > a:focus,
header .cart-icon-dropdown a:hover,
header .cart-icon-dropdown a:focus,
header .nav-link:hover,
header .nav-link:focus,
header .nav-link:hover i,
header .nav-link:focus i,
header .nav-link:hover .fas,
header .nav-link:focus .fas,
header .nav-link:hover .far,
header .nav-link:focus .far {
    color: var(--desen-green-dark);
}

.btn-primary,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-primary.disabled,
.btn-primary:disabled,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle,
.input-group-append .btn-primary,
#add-to-cart .btn-primary,
.basket-form .btn-primary {
    border-color: var(--desen-green);
    background-color: var(--desen-green);
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-primary:not(:disabled):not(.disabled):active:hover,
.show > .btn-primary.dropdown-toggle:hover {
    border-color: var(--desen-green-dark);
    background-color: var(--desen-green-dark);
    color: #fff;
}

.btn-outline-primary,
.border-primary,
.form-control:focus,
.custom-select:focus,
.custom-file-input:focus ~ .custom-file-label {
    border-color: var(--desen-green);
}

.badge-primary,
.bg-primary,
.btn-animated .btn-primary::before,
.custom-control-input:checked ~ .custom-control-label::before,
.noUi-horizontal .noUi-connect,
.noUi-horizontal .noUi-handle,
.fa-sup {
    border-color: var(--desen-green);
    background-color: var(--desen-green);
}

.text-primary,
a.text-primary:hover,
a.text-primary:focus,
.text-accent,
.page-nav-filter-item.active,
.snippets-filter-item.active,
.box-filter-category .active > a,
.box-filter-category a.active {
    color: var(--desen-green-dark) !important;
}

.dropdown-item.active,
.dropdown-item:active,
.page-item.active .page-link {
    border-color: var(--desen-green);
    background-color: var(--desen-green);
    color: #fff !important;
}

.btn-primary:focus,
.btn-primary.focus,
.btn-outline-primary:focus,
.btn-outline-primary.focus,
.form-control:focus,
.custom-select:focus,
.custom-control-input:focus ~ .custom-control-label::before,
.page-link:focus,
a.badge-primary:focus,
a.badge-primary.focus {
    box-shadow: 0 0 0 .2rem rgba(157, 191, 49, .28);
}

.badge-outline-primary {
    border-color: var(--desen-green);
    color: var(--desen-green-dark);
}

.nav-tabs .nav-link.active,
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.tab-navigation .nav-link.active,
#product-tabs .nav-link.active {
    border-top-color: var(--desen-tab);
    border-color: var(--desen-tab);
    background-color: transparent;
    color: var(--desen-tab);
}

.tab-navigation .nav-link::after {
    border-color: var(--desen-tab);
}

header .navbar-nav > .nav-item > .nav-link::before,
header .navbar-nav .nav-link::after {
    border-color: var(--desen-green) !important;
}

header .navbar-nav > .nav-item.active > .nav-link::before,
header .navbar-nav > .nav-item:hover > .nav-link::before,
header .navbar-nav > .nav-item.hover > .nav-link::before,
header .navbar-nav .nav-link::after,
.box-filter-category .active::after,
.box-filter-category .active > a::after,
.snippets-filter-item.active::after {
    border-color: var(--desen-green) !important;
    background-color: var(--desen-green) !important;
}

.nav-tabs .nav-link:hover,
.tab-navigation .nav-link:hover,
#product-tabs .nav-link:hover {
    border-top-color: var(--desen-green);
}

.badge-primary:hover,
.badge-primary:focus,
a.badge:hover,
a.badge:focus,
a.badge-primary:hover,
a.badge-primary:focus,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn-outline-primary.dropdown-toggle {
    border-color: var(--desen-green-dark);
    background-color: var(--desen-green-dark);
    color: #fff !important;
}

.slick-lightbox-close:hover::before,
.slick-lightbox-close:focus::before,
.modal .close:hover,
.modal .close:focus,
button.close:hover,
button.close:focus,
.close:hover,
.close:focus {
    color: var(--desen-green);
    opacity: 1;
}

.slick-current .img-thumbnail,
.product-thumbnails .active,
.product-thumbnails .selected,
.js-gallery-images .active {
    border-color: var(--desen-tab);
}

.noUi-connect,
.noUi-horizontal .noUi-connect,
.noUi-horizontal .noUi-handle {
    border-color: var(--desen-green) !important;
    background-color: var(--desen-green) !important;
}

.box_login .register .fa,
.jqcloud-word a:hover {
    color: var(--desen-green-dark) !important;
}

.delivery-status .status,
.delivery-status .status-icon,
.status-2,
.availability,
.shipping-status,
.price_wrapper a {
    color: var(--desen-green-dark);
}

.product-info .price,
.product-offer .price,
.price_wrapper .price,
.productbox-price {
    color: var(--desen-text);
}

.paypal-button-custom.gold,
.ppc-paypal-button-custom.gold {
    filter: saturate(.75);
}

#ppc-productDetails-instalment-banner {
    max-width: 540px;
    margin: .75rem 0 1.25rem !important;
}

#ppc-productDetails-instalment-banner [id^="zoid-paypal-message"],
#ppc-productDetails-instalment-banner iframe {
    max-width: 100% !important;
}

#ppc-productDetails-instalment-banner [id^="zoid-paypal-message"] {
    height: 92px !important;
    min-height: 0 !important;
    overflow: hidden;
}

#ppc-productDetails-instalment-banner iframe {
    max-height: 92px !important;
}

#main-wrapper > .opc-Container:empty {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main-wrapper > .opc-Container:not(:has(*)) {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main-wrapper > .opc-Container:first-child {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main-wrapper > .opc-Container:first-child + #content-wrapper {
    padding-top: 2rem;
}

#content,
#content p,
#content li,
#content td,
#content th,
#content span,
#content font,
#content div,
.productdetails,
.productdetails *,
.tab-content,
.tab-content *,
.desc,
.desc *,
.product-attributes,
.product-attributes *,
.productlist,
.productlist *,
.productbox,
.productbox * {
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important;
}

#content .fas,
#content .far,
#content .fal,
#content .fab,
#content .fa,
.fas,
.far,
.fal,
.fab,
.fa {
    font-family: "Font Awesome 5 Free" !important;
}

#content .fab {
    font-family: "Font Awesome 5 Brands" !important;
}

.desc {
    color: var(--desen-text);
    font-size: 1rem;
    line-height: 1.55;
}

.desc p,
.desc .MsoNormal {
    margin-bottom: 1rem !important;
    line-height: 1.55 !important;
}

.desc span,
.desc font,
.desc b,
.desc strong,
.desc u {
    font-size: inherit !important;
}

.desc u,
.productbox-title a {
    text-decoration: none;
}

.desc table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: auto !important;
}

.desc table,
.desc tbody,
.desc tr,
.desc td,
.desc th {
    box-sizing: border-box;
}

.desc td,
.desc th {
    min-width: 0 !important;
    overflow-wrap: break-word;
    word-break: normal;
}

.desc col,
.desc colgroup {
    width: auto !important;
}

#consent-manager,
.consent-banner,
.consent-banner-icon {
    min-height: 0 !important;
}

.consent-banner-icon,
.consent-banner-icon button,
#consent-manager button {
    min-height: 0 !important;
}

.consent-banner-icon {
    width: 3.5rem !important;
    height: 3.5rem !important;
    border-radius: 50%;
}

.productlist-header,
.productlist-page-nav {
    margin-bottom: 1.8rem;
}

.productlist-page-nav {
    align-items: center;
    row-gap: 1rem;
}

.productlist-page-nav-top {
    margin-top: 2rem;
}

.productlist-page-nav-bottom {
    margin-top: 1.5rem;
    margin-bottom: 2rem;
}

.filter-type-FilterItemLimits {
    display: none !important;
}

.box-filter-price,
.js-price-range-box,
.box-filter-price-collapse,
.price-range-inputs,
.price-range-slide,
[id^="price-slider"],
[data-id="js-price-range"],
[data-id="js-price-range-max"],
[data-id="js-price-range-id"] {
    display: none !important;
}

.displayoptions .btn-group,
.result-option-wrapper .btn-group {
    margin-right: .65rem;
    margin-bottom: .65rem;
}

.productbox {
    margin-bottom: 3.25rem;
}

.productbox-inner {
    box-shadow: none;
}

#product-list .productbox .square-image .inner img,
#product-list .productbox .productbox-image-wrapper-inner img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center;
}

.productbox-title {
    margin-top: 1rem;
    font-size: 1.08rem;
    line-height: 1.35;
}

.productbox-title a {
    color: var(--desen-green-dark);
    font-weight: 500;
}

.productbox-title a:hover,
.productbox-title a:focus {
    color: var(--desen-blue-dark);
    text-decoration: none;
}

.productbox-price {
    margin-top: .45rem;
    color: var(--desen-text);
    font-size: 1.15rem;
    font-weight: 700;
}

.box-filter-category a,
.box-filter a,
.snippets-filter-item,
.page-nav-filter-item {
    font-weight: 500;
    text-decoration: none;
}

.box-filter-category a:hover,
.box-filter a:hover,
.snippets-filter-item:hover,
.page-nav-filter-item:hover {
    text-decoration: none;
}

aside .nav-panel > .nav > .active > .nav-link,
aside .nav-panel .active > .nav-link {
    border-bottom: .375rem solid var(--desen-green) !important;
    background-color: transparent !important;
    color: var(--desen-green-dark) !important;
}

.desen-home {
    padding: 2.75rem 0 3.5rem;
}

.desen-home > .container-fluid {
    max-width: var(--desen-content-max);
    margin-right: auto;
    margin-left: auto;
}

.desen-home__intro {
    max-width: 860px;
    margin-bottom: 2.4rem;
}

.desen-home__kicker {
    margin-bottom: .35rem;
    color: var(--desen-green-dark);
    font-size: .95rem;
    font-weight: 700;
    text-transform: uppercase;
}

.desen-home h1 {
    margin-bottom: 1rem;
    color: var(--desen-text);
    font-size: 2.35rem;
    line-height: 1.15;
}

.desen-home__intro p:last-child {
    max-width: 790px;
    color: #4e4e4e;
    font-size: 1.08rem;
    line-height: 1.6;
}

.desen-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}

.desen-category-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    overflow: visible;
    border: 0;
    border-right: 1px solid #dfdfdf;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    text-align: center;
}

.desen-category-card:nth-child(3n),
.desen-category-card:last-child {
    border-right: 0;
}

.desen-category-card__image {
    display: block;
    aspect-ratio: 1 / 1;
    background: #fff;
}

.desen-category-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.desen-category-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    padding: 1.25rem 2rem 1.75rem;
}

.desen-category-card h2 {
    margin: 0 0 .75rem;
    color: var(--desen-text);
    font-size: 1.55rem;
    line-height: 1.2;
}

.desen-category-card h2 a {
    color: var(--desen-text);
    text-decoration: none;
}

.desen-category-card h2 a:hover,
.desen-category-card h2 a:focus {
    color: var(--desen-green-dark);
}

.desen-category-card p {
    color: #444;
    font-size: 1.02rem;
    line-height: 1.45;
}

.desen-category-card__subtitle {
    margin-bottom: .55rem;
    color: var(--desen-text);
    font-weight: 700;
}

.desen-category-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    min-height: 2.35rem;
    margin-top: auto;
    padding: .45rem 1.1rem;
    border: 1px solid var(--desen-green);
    border-radius: 4px;
    background: var(--desen-green);
    color: #fff !important;
    font-weight: 700;
    text-decoration: none;
}

.desen-category-card__link:hover,
.desen-category-card__link:focus {
    border-color: var(--desen-green-dark);
    background: var(--desen-green-dark);
    color: #fff !important;
    text-decoration: none;
}

.desen-category-card__body .desen-category-card__link,
.desen-category-card__body .desen-category-card__link:visited {
    color: #fff !important;
}

#checkout .inc-billing-address-form .twitter-typeahead {
    display: block !important;
    width: 100% !important;
}

#checkout .inc-billing-address-form .tt-hint {
    display: none !important;
}

#checkout .inc-billing-address-form .tt-input {
    width: 100% !important;
}

@media (min-width: 992px) {
    #checkout #existing-customer .card,
    #checkout .checkout-existing-customer .card {
        margin-top: 1.25rem !important;
    }
}

@media (min-width: 1321px) {
    body {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (max-width: 1199.98px) {
    :root {
        --desen-content-max: 960px;
    }
}

@media (max-width: 991.98px) {
    :root {
        --desen-content-max: 720px;
    }

    header::before {
        height: clamp(118px, 23vw, 180px);
        background-position: 54% top;
    }

    header .logo-wrapper {
        top: 18px;
        left: 64px;
        width: 172px;
        height: 100px;
    }

    .desen-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .desen-category-card:nth-child(3n) {
        border-right: 1px solid #dfdfdf;
    }

    .desen-category-card:nth-child(2n),
    .desen-category-card:last-child {
        border-right: 0;
    }
}

@media (max-width: 767.98px) {
    :root {
        --desen-content-max: 540px;
    }

    body {
        background-attachment: scroll;
    }

    #content {
        width: calc(100% - 2rem);
        margin-right: 1rem;
        margin-left: 1rem;
    }
}

@media (max-width: 575.98px) {
    header::before {
        height: 112px;
        background-position: 43% top;
    }

    header .logo-wrapper {
        top: 14px;
        left: 32px;
        width: 126px;
        height: 74px;
    }

    .desen-home {
        padding-top: 1.5rem;
    }

    .desen-home h1 {
        font-size: 1.85rem;
    }

    .desen-category-grid {
        grid-template-columns: 1fr;
    }

    .desc table {
        display: block;
        overflow-x: auto;
    }

    .desen-category-card,
    .desen-category-card:nth-child(3n),
    .desen-category-card:nth-child(2n) {
        border-right: 0;
        border-bottom: 1px solid #dfdfdf;
    }

    .desen-category-card:last-child {
        border-bottom: 0;
    }

    .desen-category-card__body {
        padding-right: 1rem;
        padding-left: 1rem;
    }
}
