﻿@font-face {
    font-family: 'Pathway Gothic One';
    src: url("../../fonts/PathwayGothicOne.woff");
}

@font-face {
    font-family: 'Open Sans';
    src: url("../../fonts/OpenSans-Regular.woff");
}

@font-face {
    font-family: 'Open Sans';
    src: url("../../fonts/OpenSans-Italic.woff");
}

@font-face {
    font-family: 'Open Sans';
    src: url("../../fonts/OpenSans-Bold.woff");
}

@font-face {
    src: url("../../fonts/OstrichSans-Black.woff");
}

@font-face {
    font-family: 'OstrichSans Medium';
    src: url("../../fonts/OstrichSans-Medium.woff");
}

@font-face {
    font-family: 'BlackJackRegular';
    src: url("../../fonts/blackjack.woff");
}

/* Roboto */
@font-face {
    font-family: 'RobotoRegular';
    src: url("../../fonts/Roboto/Roboto-Regular.ttf");
}

@font-face {
    font-family: 'RobotoLight';
    src: url("../../fonts/Roboto/Roboto-Light.ttf") format('truetype');
}

@font-face {
    font-family: 'RobotoBold';
    src: url("../../fonts/Roboto/Roboto-Bold.ttf") format('truetype');
}

@font-face {
    font-family: 'RobotoLightItalic';
    src: url("../../fonts/Roboto/Roboto-LightItalic.ttf") format('truetype');
}

@font-face {
    font-family: 'RobotoMedium';
    src: url("../../fonts/Roboto/Roboto-Medium.ttf") format('truetype');
}

@font-face {
    font-family: 'RobotoMediumItalic';
    src: url("../../fonts/Roboto/Roboto-MediumItalic.ttf") format('truetype');
}

/* Neo Sans Std */
@font-face {
    font-family: 'NeoSansStdBold';
    src: url("../../fonts/NeoSansStd/Neo_Sans_Std_Bold.otf") format('opentype');
}

@font-face {
    font-family: 'NeoSansStdMedium';
    src: url("../../fonts/NeoSansStd/Neo_Sans_Std_Medium.otf") format('opentype');
}

@font-face {
    font-family: 'NeoSansStdRegular';
    src: url("../../fonts/NeoSansStd/Neo_Sans_Std_Regular.otf") format('opentype');
}

/* Source Sans 3 */
@font-face {
    font-family: 'SourceSans3Bold';
    src: url("../../fonts/SourceSans3/SourceSans3-Bold.ttf");
}

@font-face {
    font-family: 'SourceSans3Black';
    src: url("../../fonts/SourceSans3/SourceSans3-Black.ttf") format('truetype');
}

@font-face {
    font-family: 'SourceSans3ExtraBold';
    src: url("../../fonts/SourceSans3/SourceSans3-ExtraBold.ttf") format('truetype');
}

@font-face {
    font-family: 'SourceSans3Medium';
    src: url("../../fonts/SourceSans3/SourceSans3-Medium.ttf") format('truetype');
}

html {
    -webkit-font-smoothing: antialiased;
}

body {
    line-height: 24px;
}

h1,
h2,
h3,
h4 {
    line-height: 1.4em;
    font-weight: normal;
    margin: 0;
}

h1,
h2 {
    line-height: 1;
}

.h1-holder,
.html-wrapper h1 {
    padding-top: 13px;
    margin-bottom: 6px;
}

    .h1-holder h1 {
        display: inline;
    }

    .h1-holder .additional {
        margin-left: 56px;
    }

.h1-link {
    float: right;
}

.combined-description {
    padding-bottom: 10px;
}

.font-lowercase {
    text-transform: lowercase;
}

a {
    cursor: pointer;
    outline: none;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

button {
    outline: none;
}

button::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    resize: none;
}

.tbx textarea {
    height: 50px;
    width: 98%;
    background: #eee;
    border-color: #eee;
}

sup {
    top: -0.7em;
    font-size: 50%;
}

img {
    max-width: 100%;
}

.hide {
    display: none !important;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    display: table;
    content: " ";
}

.clearfix:after {
    clear: both;
}

header {
    position: fixed;
    width: 100%;
    z-index: 2;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.no-script {
    margin: 0;
}

.content {
    position: relative;
    top: 120px;
    z-index: 1;
}

    .content.animate {
        top: 200px;
    }

.bluegrey {
    background: #9fbfb4;
}

.center-1000 {
    margin: 0 auto;
    max-width: 1000px;
    position: relative;
}

.quote {
    color: #323232;
    background-image: url(../../files/icons/quote@2x.png);
    background-size: 6%;
    background-repeat: no-repeat;
}

.testimonials-list .quote {
    background: none;
}

.testimonials-list .quote-desc {
    font-size: 16px;
    font-style: normal;
}

.testimonials-list .testimonials img.quote-img.fr-tag.fr-fin {
    display: block;
    margin: 0 auto 20px auto;
    max-width: 100%;
    width: auto;
    padding: 0;
}

img.quote-img.fr-tag.fr-fin {
    width: 30%;
    padding: 5% 0 0 0;
    display: block;
    margin: 0;
}

.quote-desc {
    font-style: italic;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: 0.5px;
}

.quote-author {
    letter-spacing: 1px;
    font-weight: 900;
    font-size: 10px;
    margin: 15px 0 0 0;
}

.quote-unit {
    letter-spacing: 0.2px;
    font-size: 12px;
}

.center {
    margin: 0 auto;
    max-width: 1000px;
}

footer .center {
    max-width: 1000px;
}

footer .columns-general {
    margin: 0;
    width: 100%;
}

.center:before,
.center:after {
    content: " ";
    display: table;
}

.center:after {
    clear: both;
}

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.btn-icon-left.btn-big {
    padding: 0 54px 0 73px;
}

.btn-icon-left.btn-medium {
    padding: 0 40px 0 55px;
}

.btn-icon-right.btn-big {
    padding: 0 73px 0 54px;
}

.btn-icon-right.btn-medium {
    padding: 0 55px 0 40px;
}

.product-action .wishlist-add-to-basket {
    display: table;
    margin: auto;
    min-width: 60px;
    line-height: 34px;
}

.variant-quantity-holder {
    display: inline-flex;
}

.add-to-wishlist-cnt, .select-variants,
.simple-product-add, .variant-product-add {
    display: table-cell;
    vertical-align: middle;
}

    .add-to-wishlist-cnt .hyp-add-to-wishlist {
        display: inline-block;
        width: 15px;
        height: 14px;
        background-image: url(../../files/icons/favorite@2x.png);
        background-size: 15px 14px;
    }

    .select-variants .btn,
    .simple-product-add .btn {
        display: inline-block;
        line-height: 14px;
        padding: 0;
        background: none;
        border: none;
        overflow: visible;
        line-height: 35px;
    }

        .variant-product-add .btn:hover,
        .simple-product-add .btn:hover {
            background: none;
            border: none;
        }

        .select-variants .btn .btn-cnt,
        .simple-product-add .btn .btn-cnt {
            display: inline-block;
            width: 14px;
            height: 14px;
        }

        .select-variants .btn:not(.no-icon) .btn-cnt:before,
        .simple-product-add .btn:not(.no-icon) .btn-cnt:before {
            background-image: url(../../files/icons/cart-yellow@2x.png);
            background-size: 14px 14px;
            width: 14px;
            height: 14px;
            left: 0;
        }

.checkout-h1 {
    text-align: center;
    margin-top: 30px;
}

.checkout-ordersubmit-page .checkout-h1 {
    margin-top: 30px;
}

.video-container-wrapper .btn {
    width: 100%;
    padding: 0 18px;
    margin: 0 0 42px 0;
}

.checkout-h1 h1,
.one-step-checkout-header h2 {
    font-size: 28px;
}

.basket-steps {
    display: flex;
    border-radius: 40px;
    border: 1px solid #9fbfb4;
    margin: 30px 0;
}

.basket-step {
    display: inline-flex;
    border-radius: 40px;
    width: 20%;
    height: 36px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 2px;
    color: #9fbfb4;
}

.basket-step-1 .basket-step:nth-child(1),
.basket-step-2 .basket-step:nth-child(2),
.basket-step-3 .basket-step:nth-child(3),
.basket-step-4 .basket-step:nth-child(4),
.basket-step-5 .basket-step:nth-child(5) {
    background: #9fbfb4;
}

    .basket-step-1 .basket-step:nth-child(1) a,
    .basket-step-2 .basket-step:nth-child(2) a,
    .basket-step-3 .basket-step:nth-child(3) a,
    .basket-step-4 .basket-step:nth-child(4) a,
    .basket-step-5 .basket-step:nth-child(5) a {
        color: #fff;
    }

.basket-step-holder {
    margin: auto;
}

.multi-address-question {
    text-align: center;
}

.btn {
    border: none;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    box-sizing: border-box;
    height: 35px;
    line-height: 34px;
    padding: 0 40px 0 14px;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
    white-space: nowrap;
    border-radius: 40px;
    letter-spacing: 2px;
}

    .btn.btn-gray {
        background: #9b9b9b;
    }

        .btn.btn-gray.no-icon {
            padding-left: 30px;
            padding-right: 30px;
        }

    .btn:not(.no-icon) .btn-cnt:before {
        content: '';
        position: absolute;
        width: 27px;
        height: 35px;
        background: url(../../files/icons/next@2x.png) center center no-repeat;
        background-size: 20px auto;
    }

.order-box .btn.btn-add-to-basket:not(.no-icon) .btn-cnt:before {
    content: '';
    position: absolute;
    width: 27px;
    height: 44px;
    background: url(../../files/icons/cart@2x.png) center center no-repeat;
    background-size: 16px auto;
}

.order-box .ui-selectmenu-menu {
    display: block;
    position: static !important;
    margin: 0 0 20px 0;
}

.order-box .ui-selectmenu-button, .order-box .ui-menu {
    background: none;
    border: none;
}


.order-box .ui-selectmenu-button {
    visibility: hidden;
}

    .order-box .ui-selectmenu-button .ui-selectmenu-text {
        padding: 0;
        line-height: 0;
    }

.order-box .ddlb {
    height: auto;
}

.order-box .ui-selectmenu-menu .ui-menu .ui-menu-item {
    display: inline-block;
    padding: 0 15px;
    line-height: 20px;
    border-radius: 3px;
    border: 1px solid;
    margin: 0 10px 10px 0;
    font-size: 12px;
    min-width: 85px;
}

.order-box .ui-menu-item.ui-state-focus {
    background-color: #fff;
}

.order-box .ui-selectmenu-menu .ui-menu {
    max-height: none;
    width: 100% !important;
    border: none;
}

.variants-slider {
    position: relative;
    padding: 9px 0;
}

.variants-bar {
    width: 100%;
    height: 2px;
    background: #9b9b9b;
}

.variants-pointer {
    border: 2px solid;
    width: 16px;
    height: 16px;
    border-radius: 20px;
    position: absolute;
    top: 0;
    background-color: #fff;
    cursor: pointer;
}

.btn.btn-back:not(.no-icon) .btn-cnt:before {
    background: url(../../files/icons/back@2x.png) center center no-repeat;
    background-size: 20px auto;
}

.btn.btn-footer-email .btn-cnt:before {
    background: url(../../files/icons/btn-icon-arrow.png) center center no-repeat;
    width: 20px;
    height: 20px;
    background-size: 8px 12px;
    left: 0;
}

.btn.btn-discount .btn-cnt:before {
    background: url(../../files/icons/arrow-right@2x.png) center center no-repeat;
    width: 20px;
    height: 20px;
    background-size: 6px 9px;
    left: 0;
}

.btn-small {
    height: 30px;
    line-height: 30px;
    padding-right: 14px;
}

    .btn-small .btn-cnt:before {
        display: none;
    }

.btn-medium {
    height: 40px;
    line-height: 40px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    padding: 0 40px;
}

.btn.btn-medium.no-icon {
    padding: 0 40px;
}

.btn.btn-medium .btn-cnt:before {
    width: 30px;
    height: 40px;
    background-size: 16px auto;
    margin-left: -30px;
}

.btn-big {
    height: 45px;
    line-height: 45px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    padding: 0 54px;
    font-weight: 900;
}

    .btn-big.btn-print-id {
        font-weight: 500;
    }

.btn-print-id .btn-id {
    font-weight: 900;
}

.btn.btn-big.btn-icon-left .btn-cnt:before,
.btn.btn-big.btn-icon-right .btn-cnt:before {
    width: 38px;
    height: 45px;
}

.btn.btn-big.btn-icon-left .btn-cnt:before {
    margin-left: -38px;
}

.btn.btn-big.btn-icon-left.btn-back .btn-cnt:before {
    margin-left: 38px;
    left: 0;
}

.btn.btn-big.btn-icon-right .btn-cnt:before {
    width: 38px;
    height: 45px;
    margin-right: 38px;
    right: 0;
}

.btn.btn-big.btn-icon-right-corner .btn-cnt:before {
    width: 38px;
    height: 45px;
    margin-right: 10px;
    right: 0;
}

.btn.btn-add-address {
    padding: 0 54px;
}

    .btn.btn-add-address:not(.no-icon) .btn-cnt:before {
        background: url(../../files/icons/add-icon.png) center center no-repeat;
        background-size: 20px auto;
        left: 20px;
    }

a.btn:hover {
    text-decoration: none;
}

.btn.no-icon {
    padding-right: 14px;
}

.btn-big.no-icon {
    padding-right: 18px;
}

.btn.no-icon:after,
.btn.no-icon .btn-cnt:after {
    display: none;
}

.btn-disabled {
    cursor: default;
    pointer-events: none;
    text-shadow: none;
}

.btn.btn-disabled .btn-cnt:after {
    background: url(../../files/icons/btn-icon-arrow-disabled.png) center center no-repeat;
}

.btn-load-more:after {
    background-image: url(../../files/icons/btn-icon-rev-bg.png);
}

.btn-load-more .btn-cnt:after {
    background-image: url(../../files/icons/btn-icon-arrow-down.png);
}

.btn-load-more.loading {
    cursor: default;
    pointer-events: none;
}

    .btn-load-more.loading .btn-cnt:after {
        background-image: url(../../files/icons/btn-loading.gif);
    }

.font-btn {
}

.btn-back,
.btn-cancel {
    background: none;
    border: none;
    display: inline-block;
    vertical-align: middle;
}

    .btn-back:hover,
    .btn-cancel:hover {
        text-decoration: none;
    }

.btn-plus {
    padding: 0 14px 0 40px;
}

    .btn-plus:after {
        background: url(../../files/icons/_btn-icon-bg.png) right bottom no-repeat;
        left: 0;
    }

    .btn-plus .btn-cnt:after {
        background-image: url(../../files/icons/increase.png);
        left: 0;
    }

.btn-show-hide {
    width: 25px;
    height: 25px;
    padding: 0;
}

    .btn-show-hide:after {
        display: none;
    }

    .btn-show-hide:before {
        background-image: url(../../files/icons/increase.png);
        margin-top: -5px;
        margin-left: -5px;
        height: 11px;
        width: 10px;
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
    }

    .expanded > .btn-show-hide:before,
    .btn-show-hide.expanded:before {
        background-image: url(../../files/icons/decrease.png);
        height: 3px;
        width: 7px;
        margin-top: -1px;
        margin-left: -3px;
    }

.hyp-btn {
    cursor: pointer;
    line-height: 16px;
    vertical-align: top;
}

    .hyp-btn:hover {
        text-decoration: none;
    }

    .hyp-btn:before {
        content: '';
        display: inline-block;
        margin-right: 16px;
        vertical-align: top;
    }

.hyp-clear:before,
.hyp-clear-multiaddress:before {
    background: url(../../files/icons/clear.png) no-repeat scroll 0 0 transparent;
    height: 13px;
    width: 11px;
}

.hyp-btn-disabled.hyp-clear:before,
.hyp-btn-disabled.hyp-clear-multiaddress:before {
    background: url(../../files/icons/clear-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-update:before,
.hyp-update-multiaddress:before {
    background: url(../../files/icons/refresh.png) no-repeat scroll 0 0 transparent;
    height: 14px;
    width: 12px;
}

.hyp-btn-disabled.hyp-update:before,
.hyp-btn-disabled.hyp-update-multiaddress:before {
    background: url(../../files/icons/refresh-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-wishlist:before {
    background: url(../../files/icons/wishlist.png) no-repeat scroll 0 0 transparent;
    height: 12px;
    width: 14px;
}

.hyp-btn-disabled.hyp-wishlist:before {
    background: url(../../files/icons/wishlist-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-save:before {
    background: url(../../files/icons/save.png) no-repeat scroll 0 0 transparent;
    height: 12px;
    width: 12px;
}

.hyp-btn-disabled.hyp-save:before {
    background: url(../../files/icons/save-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-load:before {
    background: url(../../files/icons/load.png) no-repeat scroll 0 0 transparent;
    height: 13px;
    width: 15px;
}

.btn-like-link {
    background: none;
    border: none;
}

    .btn-like-link:hover {
        text-decoration: underline;
    }

.semicolumn {
    width: 60%;
}


/*          flexi controls           */
.html-wrapper {
    word-wrap: break-word;
}

.flow-img-tiles .column {
    margin-bottom: 20px;
}
/*          END flexi controls           */


/*          text boxes           */
.tbx,
.tar {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-radius: 3px;
    position: relative;
}

    .tbx.tbx-main-search {
        border-radius: 40px 0 0 40px;
        border: none;
    }

    .tbx.tbx-email-newsletter,
    .tbx.tbx-email-newsletter.focused,
    .tbx.tbx-promotion,
    .tbx.tbx-promotion.focused {
        border-radius: 40px;
        background-color: transparent;
        border: 1px solid #666154;
    }

.tbx-main-search + .btn-search {
    border-radius: 0 40px 40px 0;
    background: #fff;
    border-color: transparent;
}

.tbx.tbx-email-newsletter + .btn {
    background: transparent;
    border-color: transparent;
    padding: 0;
    position: absolute;
    top: 0;
    right: 20px;
}

.tbx.tbx-promotion + .btn {
    background: transparent;
    border-color: transparent;
    padding: 0;
    position: absolute;
    top: 5px;
    right: 20px;
}

    .tbx.tbx-email-newsletter + .btn:after,
    .tbx.tbx-promotion + .btn:after {
        content: none;
    }

    .tbx.tbx-email-newsletter + .btn .btn-cnt,
    .tbx.tbx-promotion + .btn .btn-cnt {
        display: block;
        width: 20px;
        height: 20px;
    }

.tbx-main-search + .btn-search:hover,
.tbx-main-search + .btn-search.hover {
    background: #fff;
    border-color: #fff;
}

textarea:focus, input:focus {
    outline: none;
}

.tbx input,
.tar textarea {
    display: block;
    border: 0 none;
    background: transparent;
    box-sizing: border-box;
    width: 100%;
    outline: none;
    padding: 0 18px;
}

.tbx input {
    height: 46px;
}

.tar textarea {
    height: 100px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.tbx-date {
    padding-right: 19px;
}

.tbx-date:after {
    background: url(../../files/icons/date.png);
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 16px;
    height: 16px;
    margin-top: -8px;
}

.tbx-date button {
    display: none;
}

.tbx-search input {
    height: 39px;
}

.tbx-search:after {
    background: url(../../files/icons/btn-quickorder-search.png) center center no-repeat;
    content: '';
    width: 40px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
}

.arrow-blue,
.arrow-grey,
.arrow-black,
.arrow-red {
    display: inline-block;
    padding-left: 7px;
    position: relative;
}

    .arrow-blue:before,
    .arrow-grey:before,
    .arrow-black:before,
    .arrow-red:before {
        content: 'â€º ';
        display: inline;
        position: absolute;
        top: 50%;
        left: 0;
        line-height: 0;
    }

    .arrow-blue:before {
        color: #1f7bc9;
    }

    .arrow-grey:before {
        color: #b2b2b2;
    }

    .arrow-black:before {
        color: #000;
    }

    .arrow-red:before {
        font-size: 14px;
        color: #323232;
        font-weight: bold;
    }

.sign-plus,
.sign-minus {
    padding-left: 10px;
    position: relative;
}

    .sign-plus:before {
        content: '+';
        display: inline;
        position: absolute;
        left: 0;
    }

    .sign-minus:before {
        content: '-';
        display: inline;
        position: absolute;
        left: 0;
    }

/*          jquery ui menus            */
.ui-menu .ui-menu-item {
    padding: 0;
    list-style: none;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
    margin: 0;
}

/*          loading indicator            */
.loading-indicator {
    box-shadow: 0 0 3px rgba(0,0,0,0.15);
    display: none;
    text-align: center;
}

.main-loading {
    padding: 20px;
    position: fixed;
    margin-left: -100px;
    margin-top: -50px;
    top: 50%;
    left: 50%;
    width: 150px;
    z-index: 1000004;
}

/*          grids           */
.gvi {
    line-height: 20px;
    width: 100%;
}

    .gvi td {
        border-width: 0;
        border-style: solid;
        padding: 9px 5px;
        font-size: 12px;
    }

    .gvi.gvi-basket-overview td {
        padding: 18px 5px;
    }

    .gvi th {
        font-weight: 900;
        padding: 9px 5px;
        white-space: nowrap;
        font-size: 10px;
        letter-spacing: 0.2px;
    }

.total-cell .price-node {
    font-weight: 900;
}

.gvi-basket tr td,
.gvi-basket-overview tr td {
    position: relative;
}

.filtered-addresses-wrapper .gvi th {
    white-space: normal;
}

.gvi .col-img {
    width: 90px;
}

.gvi .title {
    font-weight: bold;
}

.gvi .product-title-super {
    font-weight: 900;
}

.action-links .hyp {
    line-height: 20px;
}

    .action-links .hyp + .hyp {
        margin-left: 10px;
    }

.inner-row td {
    border: none;
}

.gvi-name-value td {
    padding: 5px;
    vertical-align: top;
}

.gvi-name-value .name {
    width: 35%;
}

.gvi-represent .customer-name {
    font-weight: bold;
}

/*          product tile            */
.flow-products .product-description {
    margin-bottom: 13px;
}

.product-tile {
    display: table;
    width: 100%;
}

    .product-tile .product-img {
        display: table-cell;
        vertical-align: top;
        width: 75px;
    }

    .product-tile .hyp-thumbnail {
        height: 64px;
        width: 64px;
    }

    .product-tile .product-info {
        display: table-cell;
        vertical-align: top;
    }

    .product-tile .product-title {
        display: inline-block;
        font-weight: bold;
        line-height: 16px;
        font-size: 12px;
    }

.font-product-title {
    word-break: break-word;
    font-family: 'Lato', sans-serif;
    margin-left: -4px;
}

.product-tile .prices {
    margin-bottom: 7px;
}

.product-tile .lbl-price {
    font-weight: bold;
}

.product-tile .msg-not-available {
    line-height: 35px;
}

.lbl-stock {
    font-weight: bold;
}

/*          top header           */
.top-header {
    box-sizing: border-box;
    display: table;
    padding: 0 10px;
    position: relative;
    width: 100%;
    z-index: 3;
}

    .top-header > div {
        display: table-cell;
    }

.top-info {
    margin-top: 5px;
    vertical-align: middle;
}

.top-info.phone-icon:before {
    background: url('../../files/icons/phone.png');
    content: '';
    display: inline-block;
    margin-right: 9px;
    height: 18px;
    width: 18px;
    vertical-align: middle;
}

.top-header .top-action {
    vertical-align: top;
    text-align: right;
}

.top-action > div {
    text-align: left;
}

.top-action .impersonated .opener {
    width: 218px;
}

.top-dropdown,
.top-hyp {
    display: inline-block;
    vertical-align: middle;
}

.top-dropdown {
    z-index: 14;
    height: 100%;    
    border-radius: 6px;
}

.top-dropdown .summary {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    border-radius: 6px;
    display: none;
    position: absolute;
    top: 100%;
    z-index: 11;
}

.top-dropdown:hover {
    margin-top: 0;
    margin-bottom: 0;
}

.top-dropdown:hover .summary {
    display: block;
}

.top-dropdown:hover .opener {
    z-index: 12;
}

.top-dropdown.service {
    width: 44px;
}

.service.top-dropdown .opener:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 12px;
    margin: auto;
}

.service .opener:before {
    content: "";
    display: inline-block;
    background-image: url(../../files/icons/support.png);
    background-size: 19px 20px;
    width: 19px;
    height: 19px;
    vertical-align: middle;
}

.top-dropdown.service a {
    display: block;
    height: 100%;
}

.top-hyp {
    padding: 0 15px;
}

.top-dropdown .opener {
    background: transparent;
    height: 100%;
}

.opener {
    position: relative;    
}

/*           language            */
.language.top-dropdown .opener {
    min-width: 44px;
}

.language .flag {
    margin-right: 13px;
}

.language.top-dropdown .opener .flag {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 17px;
}

.language.top-dropdown .summary {
    padding-top: 4px;
    left: -1px;
    min-width: 127px;
}

.language .hyp {
    display: block;
    padding: 0 30px 0 18px;
    line-height: 40px;
    white-space: nowrap;
}

    .language .hyp:hover {
        text-decoration: none;
    }

.service .hyp {
    display: block;
    padding-left: 20px;
    line-height: 34px;
    font-size: 10px;
}

    .service .hyp:hover {
        text-decoration: none;
    }

/*          login            */
.fake-btn {
    position: absolute;
    width: 46px;
    height: 46px;
    border-radius: 23px;
    top: 50%;
    -webkit-transform: translate(-23px, -50%);
    transform: translate(-23px, -50%);
    background-color: #323232;
}

.fake-btn:after {
    content: "";
    position: absolute;
    background-image: url(../../files/icons/next@2x.png);
    background-repeat: no-repeat;
    background-size: 25px 23px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 25px;
    height: 23px;
}

.forgot-password-icon {
    background-image: url(../../files/icons/arrow-right@2x.png);
    background-repeat: no-repeat;
    background-size: 5px 8px;
    background-position: right center;
    padding: 0 10px 0 0;
}

.login .opener {
    min-width: 44px;
}

.login .person {
    margin-left: 17px;
    margin-right: 55px;
    vertical-align: middle;
}

.login .user-name {
    font-weight: 900;
}

.login .opener:before {
    background-image: url('../../files/icons/account@2x.png');
    background-size: 19px 19px;
    content: '';
    display: inline-block;
    height: 19px;
    width: 19px;
    vertical-align: middle;
}

.login.top-dropdown .opener:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 12px;
    margin: auto;
}

.impersonated .opener:before {
    background: url('../../files/icons/login-blue.png');
}

.login.top-dropdown .summary {
    width: 180px;
    padding: 0 0 20px 0;    
}

.login .hyp {
    display: block;
    padding-left: 20px;
    line-height: 34px;
    font-size: 10px;
}

    .login .hyp:hover {
        text-decoration: none;
    }

#loginFailurePage {
    width: 80%;
    margin: 0 auto;
}

.login-failure-message-holder {
    margin-top: 100px;
    background-color: #fff;
    padding: 10px;
}

    .login-failure-message-holder p {
        color: #000;
        font-size: 22px;
    }

    .login-failure-message-holder .msg-block-error {
        border: 3px solid #000;
    }

    .login-failure-message-holder a {
        font-size: 16px;
        color: #000;
    }

p.login-failure-errorid {
    font-size: 10px;
    font-style: italic;
}

.login-failure-message-holder h1 {
    color: #000 !important;
}

.center-sso-button {
    margin: 0 auto;
    margin-top: 10px;
    width: 400px;
    text-align: center;
}

.center-login-button {
    margin: 0 auto;
    margin-top: 10px;
    width: 400px;
    text-align: center;
}


.RecaptchaContainer {
    margin-bottom: 20px;
    margin-left: 13%;
}

div.validation-recaptcha .field-validation-error {
    padding-left: 0px;
}

.login-button {
}

.alt-login-button {
    margin-top: 25px;
}

.btn-pearlcard {
    width: 350px;
}

    .btn-pearlcard:before {
        background-image: url(../../files/icons/login-pearlcard.png) !important;
        background-size: 24px auto !important;
    }

.btn-sso:before {
    background-image: url(../../files/icons/login-sso.png) !important;
    background-size: 24px auto !important;
}

.icon-profile:before, .icon-wishlist:before,
.icon-logout:before {
    content: "";
    background-repeat: no-repeat;
    background-size: 15px 15px;
    display: inline-block;
    position: relative;
    padding: 0 10px 0 0;
    width: 15px;
    height: 15px;
    top: 2px;
}

.icon-profile:before {
    background-image: url(../../files/icons/dropdown-profile@2x.png);
}

.icon-wishlist:before {
    background-image: url(../../files/icons/dropdown-wishlist@2x.png);
}

.icon-logout:before {
    background-image: url(../../files/icons/dropdown-logout@2x.png);
}

.welcome {
    padding: 15px 20px 5px 20px;
    font-weight: 900;
    letter-spacing: 1px;
    font-size: 12px;
    white-space: normal;
}

.budget {
    font-weight: normal;
    letter-spacing: 1px;
    line-height: 16px;
    font-size: 12px;
    white-space: normal;
    color: #ffffff;
}

    .budget.animate {
        visibility: hidden;
        padding: 0;
    }

    .budget span.animated {
        visibility: hidden;
        padding-bottom: 20px;
        padding-left: 50px;
    }


    .budget.animate span.animated {
        visibility: visible;
    }

.service .welcome {
    font-size: 10px;
}

.stop-representing {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    margin: 0 20px;
}

.logout {
    border-top-width: 1px;
    border-top-style: solid;
    line-height: 43px;
    margin: 5px 20px 0;
}

/*          middle header            */
.middle-header {
    position: relative;
    display: table;
    width: 100%;
    height: 80px;
    margin: 0 10px;
    -webkit-transition: height 0.2s;
    transition: height 0.2s;
    z-index: 2;
}

.middle-header-wrapper {
    padding: 0 4%;
}

.middle-header.animate {
    height: 80px;
}

.bottom-header.animate nav .hyp-top-lvl,
.bottom-header.carousel-header nav .hyp-top-lvl {
    color: #000;
}

.bottom-header.carousel-header nav .hyp-top-lvl {
    text-shadow: none;
}

.middle-header > div {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
}

.middle-header .search {
    padding: 0 10%;
}

.middle-header .top-action {
    text-align: right;
    white-space: nowrap;
}

/*          logo            */
.logo {
    position: relative;
    z-index: 2;
}

    .logo a {
        display: block;
        line-height: 0;
        max-width: 100%;
    }

.middle-header .logo {
    margin-right: 15px;
}

/* search */
.search {
    position: relative;
    margin: 0 auto;
    width: 50%;
    top: 0;
    -webkit-transition: top 0.2s;
    transition: top 0.2s;
}

.middle-header.animate .search {
    top: -40px;
}

.middle-header .logo img {
    -webkit-transition: max-width 0.2s;
    transition: max-width 0.2s;
}

.middle-header.animate .logo img {
    max-width: 46%;
}

.btn-search {
    border: none;
    border-radius: 0 2px 2px 0;
    position: absolute;
    right: 0;
    top: 0;
    height: 40px;
    min-width: 55px;
}

.btn.btn-search {
    padding-right: 40px;
}

.btn-search:before {
    background: url(../../files/icons/search.png);
    background-size: 19px 19px;
    content: '';
    display: inline-block;
    margin-top: 11px;
    height: 19px;
    width: 19px;
}

.btn-search span {
    display: none;
}

.search-wrapper {
    position: relative;
    padding-right: 55px;
}

.tbx-main-search {
    overflow: hidden;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

    .tbx-main-search input {
        height: 40px;
        padding: 0 16px;
    }

.suggest-item {
    display: table;
    line-height: normal;
    padding: 7px 0;
    width: 100%;
}

    .suggest-item > span {
        display: table-cell;
        vertical-align: middle;
    }

.suggest-img {
    width: 50px;
}

    .suggest-img img {
        height: 40px;
        width: 40px;
    }

.suggest-title-id {
    display: block;
}

/*          basket           */
.basket {
    position: relative;
}

.over-summary {    
    background: transparent;
    position: relative;
    height: 100%;
}

.over-summary .hyp {
    background-image: url(../../files/icons/cart@2x.png);
    background-repeat: no-repeat;
    height: 17px;
    width: 17px;
    display: block;
    margin: 0 9px;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.basket:hover .over-summary:not(.is-empty) {
    z-index: 6;
}

.over-summary .over-summary-number {
    position: absolute;
    top: -50%;
    left: 50%;
    display: inline-block;
    padding: 0 2px;
    border-radius: 20px;
    background-color: #e2bf31;
    min-width: 12px;
    min-height: 12px;
    text-align: center;
    line-height: 16px;
}

.summary-footer {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    line-height: 58px;
    table-layout: fixed;
}

    .summary-footer .value-total {
        float: right;
    }

footer {
    position: relative;
    top: 200px;
}

/*          basket modal popup            */
.basket-summary {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    display: none;
    overflow-y: auto;
    position: absolute;
    padding: 0 14px 11px 16px;
    top: 100%;
    right: 0;
    width: 318px;
    z-index: 5;
}

.basket-summary .products-list {
    display: table;
    border-collapse: collapse;
    width: 100%;
}

.basket:hover .basket-summary {
    display: block;
}

.summary-title {
    margin: 15px 0;
}

.summary-title.alt,
.just-added .summary-title.main {
    display: none;
}

.just-added .summary-title.alt {
    display: block;
}

.btn.js-search-address {
    position: absolute;
    right: 5px;
    top: 10px;
    height: 28px;
    line-height: 28px;
    padding: 0 10px;
    letter-spacing: 1px;
}

.tbx.search-address-input input {
    padding-right: 80px;
}

.basket-loading {
    position: absolute;
    top: 100%;
    right: 0;
    padding: 15px 20px;
    width: 200px;
    z-index: 2;
}

.qty-price {
    text-align: right;
}

.added-product {
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

    .added-product .quantity {
        float: left;
    }

    .added-product .product-img,
    .added-product .product-info {
        padding: 15px 0;
    }

    .added-product .variant-title {
        line-height: 1.6;
    }

    .added-product .lbl-price {
        font-size: inherit !important;
        font-weight: normal;
    }

.product-extra-main {
    display: flex;
    width: 100%;
    margin: 40px 0 30px 0;
    flex-flow: row wrap;
}

.main-image, .main-description,
.main-action {
    vertical-align: top;
}

.description-title {
    font-weight: 900;
    margin: 5px 0;
    font-size: 12px;
}

.description-size {
    margin: 5px 0;
    font-size: 12px;
}

.description-price {
    font-weight: bold;
    margin: 5px 0 28px 0;
    font-size: 12px;
}

.main-added-extra + .main-action .description-price {
    margin: 5px 0 10px 0;
}

.action-description {
    font-size: 16px;
    letter-spacing: 0.2px;
    margin: 0 0 65px 0;
}

.description-arrow {
    position: relative;
    padding-right: 5px;
}

    .description-arrow:after {
        content: "";
        background-image: url(../../files/icons/arrow-extra@2x.png);
        background-repeat: no-repeat;
        background-size: 36px 64px;
        width: 36px;
        height: 64px;
        position: absolute;
        top: 100%;
        left: 100%;
    }

.product-extra-subheader {
    margin: 15px 0;
    font-size: 24px;
    font-weight: bold;
    font-family: 'RobotoRegular';
}

.product-extra-additional {
    margin: 15px 0 30px 0;
    text-align: center;
    position: relative;
    font-size: 12px;
    vertical-align: top;
}

.additional-image {
    padding: 0 20px;
}

.main-image img {
    padding: 0 20px 0 0;
    box-sizing: border-box;
}

.product-extra-additional-wrapper {
    display: flex;
    flex-flow: row wrap;
}

.service-row .product-info img {
    max-width: 64px;
}

.main-added-extra .additional-image {
    text-align: center;
}

.main-added-extra .additional-add {
    margin: 0;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.main-added-extra {
    position: relative;
    flex: 1 1 50%;
}

.additional-title, .additional-price {
    margin: 10px 0;
}

.additional-add {
    position: absolute;
    right: 0;
    width: 36px;
    height: 36px;
    margin-top: -36px;
}

.additional-title {
}

#productExtraPage {
    margin: 20px 0 45px 0;
}

/*          bottom header            */
.mCustomScrollbar {
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.25);
    border-radius: 8px;
}

.mCustomScrollbar .mCSB_inside > .mCSB_container {
    padding: 1px 4% 4% 4%;    
}

.bottom-header {
    position: absolute;
    width: 100%;
    opacity: 0.95;
    word-wrap: break-word;
    text-overflow: ellipsis;
}

.bottom-header .nav-wrapper {
    width: 98%;
}

/*          top menu            */
nav {
    position: relative;
}

nav .hyp-top-lvl {
    text-decoration: none;
}

.bottom-header.animate .nav-item-arrow:after,
.bottom-header.carousel-header .nav-item-arrow:after {
    /* background-image: url(../../files/icons/right-arrow.png); */
}

.nav-item.selected .hyp-top-lvl span {
    position: relative;
}

.nav-item.selected .hyp-top-lvl span:after {
    content: '';
    position: absolute;
    height: 3px;
    bottom: -6px;
    left: -6px;
    right: -6px;
}

.nav-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

/*          menu level 2             */
.nav-wrapper {
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    display: none;
    position: absolute;
    max-height: 400px;
    right: 1%;
    z-index: 5;
}


.nav-lvl-2 {
    columns: 4;
    column-gap: 5px;
    -webkit-columns: 4;
    -moz-columns: 4;
    background-color: #fff;
    max-width: 1340px;
    margin-left: auto;
    margin-right: auto;
}

    .nav-lvl-2 li {
        -webkit-column-break-inside: avoid;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .nav-lvl-2 .wrapper {
        position: relative;
        height: 100%;
        width: 100%;
    }

.nav-item-block {
    box-sizing: border-box;
    padding: 10px 15px 30px 15px;
    vertical-align: top;
    height: 100%;
}

/* navigation items blocks row system */
.nav-lvl-2 .separator {
    display: none;
}

.nav-lvl-3 .nav-item {
    padding: 1px 0;
}

.nav-lvl-3 .hyp {
    line-height: 23px;
    font-size: 11px;
    letter-spacing: 0.5px;
}

.img-in-row {
    box-sizing: border-box;
    display: table-cell;
    text-align: right;
    line-height: 0;
    padding-right: 20px;
    padding-left: 10px;
    vertical-align: bottom;
}

.img-in-row.push-right-bottom .wrapper {
    height: inherit;
}

.img-in-row.push-right-bottom .wrapper img {
    margin-right: -20px;
    margin-bottom: -22px;
}

.img-in-row.size-original img {
    max-width: inherit;
}

.img-in-row.size-adapt img {
    width: 100%;
}

.nav-more {
    position: absolute;
    line-height: 24px;
    bottom: -24px;
    width: 100%;
}

    .nav-more a {
        width: 100%;
        vertical-align: bottom;
    }

/*          mini nav            */
.nav-list-sub {
    border-width: 1px;
    border-style: solid;
    display: none;
    position: absolute;
    width: 198px;
    z-index: 5;
    padding: 7px 0;
    margin-top: -1px;
}

.mini .nav-item-root {
    position: relative;
}

.ribbon-header .nav-list-sub {
    margin-top: 0;
}

.nav-cell .nav-list-sub {
    top: 0;
    left: 100%;
}

.nav-list-sub .nav-list-sub {
    padding: 17px 0;
    top: -17px;
    left: 100%;
}

.nav-item-sub:first-child .nav-list-sub {
    top: -7px;
}

.nav-item.hover > .nav-list-sub {
    display: block;
}

.nav-item-sub {
    padding-left: 30px;
    position: relative;
}

    .nav-item-sub .hyp {
        display: block;
        line-height: 40px;
        text-decoration: none;
    }

header .font-h4 {
    font-weight: 900;
    letter-spacing: 1px;
}

/* footer */
footer {
    position: relative;
    top: 200px;
}

    footer .font-h4 {
        display: block;
        line-height: 1.4em;
        padding-bottom: 12px;
    }

    footer ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    footer .top {
        padding-top: 40px;
        padding-bottom: 70px;
    }

    footer .bottom {
        padding-top: 20px;
        padding-bottom: 38px;
    }

/*          sitemap          */
.sitemap-nav li {
    float: left;
    padding-right: 13px;
    width: 150px;
}

    .sitemap-nav li.sitemap-first-child {
        font-size: 10px;
        display: inline-block;
        float: none;
        padding-right: 10px;
        width: 46%;
    }

.sitemap-first-child > .hyp {
    font-weight: 900;
    letter-spacing: 0.6px;
}

.sitemap-first-child > ul {
    margin: 5px 0 0 0;
}

.sitemap-second-child {
    font-size: 12px;
}

/*          bottom footer          */
.footer-nav {
    text-align: right;
}

    .footer-nav .hyp {
        padding-left: 10px;
        text-decoration: none;
    }

.column.contact-info,
.column.newsletter {
    color: #fff;
}

.column.copyright {
    font-size: 12px;
}

.newsletter-bottom-info {
    font-size: 12px;
    line-height: 22px;
    margin: 10px 0 20px 0;
}

.contact-info-header {
    font-size: 12px;
    letter-spacing: 1.5px;
    font-weight: 900;
}

.contact-info-address {
    font-size: 14px;
    line-height: 22px;
    margin: 5px 0 0 0;
}

.contact-info-phone {
    font-size: 10px;
    letter-spacing: 2px;
    margin: 8px 0 0 0;
}

.contact-info-social {
    margin: 30px 0 0 0;
}

.contact-info-facebook {
    width: 24px;
    height: 24px;
    display: inline-block;
}

.contact-info-twitter {
    width: 24px;
    height: 24px;
    display: inline-block;
    margin: 0 0 0 8px;
}

.order-overview-shipping {
    margin: 20px 0 0 0;
}

.order-overview-purchase-approval {
    margin: 20px 0 0 0;
}

.address-header {
    position: relative;
    width: 100%;
    padding: 0 0 5px 0;
    font-weight: 900;
    letter-spacing: 2px;
    font-size: 10px;
}

.date-header {
    position: absolute;
    width: 66%;
    margin-top: 8px;
    padding: 0 0 1px 0;
    font-weight: 900;
    letter-spacing: 2px;
    font-size: 10px;
}

.comment-header {
    position: relative;
    margin-top: -1.2%;
    padding: 0 0 5px 0;
    font-weight: 900;
    letter-spacing: 2px;
    font-size: 10px;
    margin-top: 10px;
}

.comment-list {
    padding-top: 3px;
}

.address-list, .date-general {
    margin: 20px 0 0 0;
    letter-spacing: 0.2px;
    line-height: 1.33;
}

.address-section {
    display: table-cell;
    float: left;
    margin-right: 30px;
}

.address-excel-upload-message {
    margin: 35px 0 0 0;
    letter-spacing: 0.1px;
    line-height: 1.83;
    font-size: 12px;
}

.address-upload-explanation {
    padding: 20px;
    margin-bottom: 15px;
}

.btn-address-upload {
    margin-top: 15px;
}

.address-excel-upload-message img {
    margin: 0 0 0 4px;
}

.shipping-address, .shipping-date {
    text-align: left;
}

.comment-header:after,
.address-header:after,
.date-header:after {
    content: "";
    background-image: linear-gradient(to right, #323232 20%, rgba(255,255,255,0) 0%);
    background-position: bottom;
    background-size: 5px 1px;
    background-repeat: repeat-x;
    height: 1px;
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
}

.box.has-advanced-upload {
    display: inline-block;
    padding: 24px 10px;
    background-color: #eee;
    outline: 2px dotted #323232;
}

.box__input {
    font-size: 16px;
    letter-spacing: 0.2px;
    color: #323232;
}

.box.has-advanced-upload .box__dragndrop {
    display: block;
    text-align: center;
    color: #9b9b9b;
    margin: 10px 0;
}

.box {
    position: relative;
    -webkit-transition: opacity .2s;
    transition: opacity .2s;
    opacity: 1;
}

    .box.is-dragover {
        opacity: 0.5;
    }

    .box:after {
        content: "+";
        color: #000;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate3d(-50%, -50%, 0);
        font-size: 60px;
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        opacity: 0;
    }

    .box.is-dragover:after {
        opacity: 1;
    }

.box__file {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.box__dragndrop,
.box__uploading,
.box__success,
.box__error {
    display: none;
}

.box.is-uploading .box__input {
    visibility: hidden;
}

.box__input {
    text-align: center;
}

    .box__input label {
        display: block;
        margin: 0;
        cursor: pointer;
    }

.box.is-uploading .box__uploading {
    display: block;
}

/*          newsletter          */
.newsletter {
    display: table-cell;
}

.tbx-email-newsletter {
    margin-right: 5px;
}

.tbx.tbx-email-newsletter input::-webkit-input-placeholder {
    color: #fff;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-email-newsletter input::-moz-placeholder {
    color: #fff;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-email-newsletter input:-moz-placeholder {
    color: #fff;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-email-newsletter input:-ms-input-placeholder {
    color: #fff;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-promotion input::-webkit-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-promotion input::-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-promotion input:-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 12px;
}

.tbx.tbx-promotion input:-ms-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 12px;
}

.tbx input::-webkit-input-placeholder {
    color: #b1b1b1;
    font-style: normal;
    font-size: 12px;
}

.tbx input::-moz-placeholder {
    color: #b1b1b1;
    font-style: normal;
    font-size: 12px;
}

.tbx input:-moz-placeholder {
    color: #b1b1b1;
    font-style: normal;
    font-size: 12px;
}

.tbx input:-ms-input-placeholder {
    color: #b1b1b1;
    font-style: normal;
    font-size: 12px;
}

.tbx-email-newsletter input {
    padding: 0 20px;
    color: #fff;
    height: 34px;
}

.floating-label {
    position: absolute;
    top: 14px;
    left: 18px;
    opacity: 0;
    font-size: 12px;
    color: #bcb5b9;
    color: var(--warm-gray);
    transform-origin: left top;
    transition: transform 200ms ease;
    will-change: transform;
    pointer-events: none;
    cursor: text;
}

.tbx.typed .floating-label {
    opacity: 1;
    transform: translate(-18px, -31px) scale(0.9);
}

.tbx.focus .floating-label {
}

.has-value + .floating-label {
    top: -25%;
    -webkit-transition: top .2s;
    transition: top .2s;
}

.newsletter-line {
    display: table;
    margin-top: 8px;
    width: 100%;
}

.comments-label {
    margin-bottom: 12px;
}

.newsletter-line li {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    position: relative;
}

/*          price         */
.lbl-price {
    white-space: nowrap;
}

.list-price {
    margin-right: 20px;
    text-decoration: line-through;
    white-space: nowrap;
}

/* columns layout */
.home-page .content .columns-general {
    padding: 0;
}

.columns-general {
    box-sizing: border-box;
    padding: 12px 0;
    height: 100%;
}

.columns-general > .column {
    box-sizing: border-box;
    height: 100%;
}

.columns-general.rtl {
    direction: rtl;
}

.columns-general.rtl > .column {
    direction: ltr;
}

.column > .wrapper {
    padding: 12px 0;
}

/* forms general styles */
form label {
    line-height: normal;
}

.form-holder {
    padding-top: 18px;
}

.form-row,
.form-button {
    margin-bottom: 20px;
}

    .form-row .control {
        display: table;
        table-layout: fixed;
        width: 100%;
    }

.form-row-login-links {
    margin-bottom: 0px !important;
}

.form-row .label,
.form-row .field {
    display: table-cell;
    vertical-align: middle;
}

.order-address-wrapper .form-row .field,
.order-info-wrapper .form-row .field {
    width: 100%;
}

.order-address-wrapper .form-row .label,
.order-info-wrapper .form-row .label {
    line-height: 1.2;
}

.order-address-wrapper .form-row .tooltip-sign,
.order-info-wrapper .form-row .tooltip-sign {
    position: relative;
    top: 10px;
    right: -2px;
    z-index: 1;
}

.form-row .label {
    width: 36%;
    padding-right: 3%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.row-comments .label {
    vertical-align: top;
    padding-top: 5px;
}

.form-row .validation:not(.left),
.form-row .description,
.form-button {
    padding-left: 36%;
    margin-top: 0px;
}

.checkout-step .form-row .validation {
    padding-left: 0;
}

.row-under-columns {
    margin-top: -12px;
}

.field-validation-valid {
    display: none;
}

.basket-details-page .form-row .field-validation-error,
.upper-row .field-validation-error,
.form-row .feedback-message {
    display: block;
    line-height: 12px;
    padding: 4px 0px 4px 24px;
    margin-top: 4px;
}

.quantity-error-message,
.basket-details-page .upper-row .field-validation-error,
.form-row .field-validation-error {
    background: url(/content/files/icons/form-icon-invalid.png) no-repeat scroll left center;
}

.form-row .feedback-message {
    background: url(/content/files/icons/form-icon-description.png) no-repeat scroll left center;
}

.msg-not-available {
    font-weight: bold;
    text-transform: lowercase;
    white-space: nowrap;
}

.add-to-wishlist-cnt + .msg-not-available-wrapper {
    padding: 0 0 0 12px;
}

.msg-not-available-wrapper {
    display: table-cell;
}

.form-row .in-line {
    display: inline-block;
    line-height: 40px;
    vertical-align: middle;
}

    .form-row .in-line.left-part {
        width: 48%;
    }

.form-inline {
    display: inline-block;
    vertical-align: middle;
}

.skip-order-address .form-row .label {
    width: 51%;
    padding-right: 3%;
}

.skip-order-address .form-row:first-child .label {
    height: 46px;
}

.form-button-register {
    margin: 5px;
    padding: 7px;
}

/*          message blocks          */
.msg-block {
    font-style: italic;
    margin: 45px 0;
    line-height: 60px;
    text-align: center;
}

.msg-block-multiline {
    line-height: 24px;
    text-align: left;
    padding: 15px;
    padding-left: 25px;
}

.msg-block-error,
.validation-summary-errors,
.msg-block-confirm,
.msg-block-info,
.msg-block-alert {
    position: relative;
    margin: 20px 0;
    padding: 15px 20px 15px 36px;
    line-height: normal;
}

    .msg-block-error:before,
    .validation-summary-errors:before,
    .msg-block-confirm:before,
    .msg-block-info:before,
    .msg-block-alert:before {
        content: '';
        position: absolute;
    }

    .msg-block-error:before,
    .validation-summary-errors:before {
        background: url(../../files/icons/error.png);
        top: 18px;
        left: 10px;
        height: 12px;
        width: 12px;
    }

    .msg-block-confirm:before {
        background: url(../../files/icons/msg-confirm.png);
        top: 15px;
        left: 9px;
        height: 16px;
        width: 14px;
    }

    .msg-block-info:before {
        background: url(../../files/icons/msg-info.png);
        top: 16px;
        left: 12px;
        height: 16px;
        width: 8px;
    }

    .msg-block-alert:before {
        background: url(../../files/icons/msg-alert.png);
        top: 15px;
        left: 13px;
        height: 14px;
        width: 5px;
    }

    .msg-block-error ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .validation-summary-errors ul {
        display: none;
    }

.ifrm {
    padding: 5px;
}

    .ifrm iframe {
        height: 300px;
        overflow: auto;
        width: 100%;
    }

/* custom checkbox */
label .chb {
    vertical-align: middle;
}

    label .chb ins {
        display: inline-block;
        vertical-align: sub;
        width: 18px;
        height: 18px;
        overflow: hidden;
        background: url(/content/files/icons/form-checkbox.png) -10px 0 no-repeat;
        margin-right: 4px;
        margin-top: -1px;
        cursor: pointer;
    }

    label .chb input[type="checkbox"] {
        display: none;
    }

label:hover .chb ins {
    background-position: -10px -38px;
}

label .chb input[type="checkbox"]:checked + ins {
    background-position: -10px -19px;
}

label:hover .chb input[type="checkbox"]:checked + ins {
    background-position: -10px -19px;
}

.checkout-step label .chb ins {
    background-position: 0 0;
}

.checkout-step label:hover .chb ins {
    background-position: 0 -38px;
}

.checkout-step label .chb input[type="checkbox"]:checked + ins {
    background-position: 0 -19px;
}

.checkout-step label:hover .chb input[type="checkbox"]:checked + ins {
    background-position: 0 -19px;
}

/* custom radiobox */
.timeframe-radio {
    margin: 0 0 8px 0;
}

    .timeframe-radio label {
        font-size: 12px;
    }

    .timeframe-radio .rdb {
        margin-right: 10px;
    }

.timeframes-title,
.notification-title {
    font-size: 12px;
    margin: 0 0 15px 0;
    font-weight: 900;
}

label .rdb {
    display: inline-block;
    vertical-align: middle;
    width: 18px;
    height: 18px;
    padding: 2px;
    margin-right: 5px;
    margin-top: -3px;
}

label .rdb ins {
    display: block;
    width: 16px;
    height: 16px;
    overflow: hidden;
    border-radius: 16px;
    position: relative;
    cursor: pointer;
}

label .rdb input[type="radio"] {
    display: none;
}

label .rdb input[type="radio"]:checked + input + ins:after,
label .rdb input[type="radio"]:checked + ins:after {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    overflow: hidden;
    position: absolute;
    top: 1px;
    left: 1px;
}

.from-price-wrapper {
    position: relative;
}

.from-label {
    position: absolute;
    font-style: italic;
    color: #c4c0c1;
    margin: 0 5px 0 0;
    right: 100%;
}

/* breadcrumbs */
.breadcrumbs li {
    display: inline-block;
    vertical-align: middle;
}

    .breadcrumbs li:first-child .hyp {
        margin-left: 0;
    }

.breadcrumbs .hyp {
    margin: 0 10px;
    font-size: 10px;
    letter-spacing: 1px;
}

/*          ribbon header           */
.ribbon-header {
    border-width: 1px 0;
    border-style: solid;
    top: 0;
    width: 100%;
    transition: all 0.4s ease-out 0s;
}

    .ribbon-header.animate {
        top: 0;
        transition: .1s ease-out;
    }

.sticky-elements {
    display: table;
    position: relative;
    width: 100%;
    z-index: 2;
}

    .sticky-elements > div {
        display: table-cell;
        vertical-align: middle;
    }

.logo-cell {
    padding-top: 14px;
}

.ribbon-header .logo img {
    height: 32px;
}

.search-cell {
    padding-top: 7px;
    width: 40%;
}

    .search-cell .search {
        width: 100%;
    }

.search-results .font-title {
    font-size: 24px;
    font-weight: bold;
}

.search-results-qnt {
    font-size: 9px;
    border-radius: 3px;
    padding: 2px 14px;
    color: #fff;
    position: relative;
    top: -3px;
    margin: 0 0 0 10px;
}

.top-action-cell {
    text-align: right;
    min-width: 195px;
}

.top-action-cell > div {
    text-align: left;
}

.sticky-elements .person {
    display: none;
}

.ribbon-header .stop-representing {
    margin-top: 10px;
    padding-bottom: 10px;
}

.top-action-cell .basket {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.top-action-cell .over-summary {
    height: 100%;
    min-width: 44px;
}

    .top-action-cell .over-summary .hyp {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

.nav-cell {
    border-width: 0 1px;
    border-style: solid;
    height: 60px;
    width: 64px;
}

.nav-opener {
    cursor: pointer;
    position: relative;
    height: 60px;
    width: 64px;
    z-index: 1;
}

    .nav-opener:before {
        background: url('../../files/icons/nav-open.png') no-repeat -9999px -9999px;
        content: '';
        position: absolute;
        top: 22px;
        left: 22px;
        height: 17px;
        width: 22px;
    }

    .nav-opener:after {
        background: url('../../files/icons/nav-close.png') no-repeat -9999px -9999px;
        content: '';
        position: absolute;
        top: 19px;
        left: 23px;
        height: 19px;
        width: 18px;
    }

.nav-is-closed .nav-opener:before,
.nav-is-opened .nav-opener:after {
    background-position: 0 0;
}

.ribbon-header nav {
    display: none;
    position: absolute;
    top: 100%;
    width: 25%;
    margin-top: -1px;
}

.nav-is-opened nav {
    display: block;
}

.nav-cell .nav-list-root {
    padding: 11px 0;
    margin-left: -1px;
    width: 100%;
}

.nav-cell .nav-wrapper {
    top: 0;
    left: 100%;
    min-height: 100%;
    overflow-y: auto;
    width: 299%;
}

.nav-cell .nav-item-block {
    width: auto;
}

.nav-cell .nav-lvl-2 {
    table-layout: fixed;
}

.nav-cell .img-in-row {
    display: none;
}

/*          login page             */
.profile-login-page,
.profile-samlresponse-page {
    background-image: url(../../files/images/login-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.login-page-cnt {
    display: flex;
    width: 100%;
    height: auto;
}

    .login-page-cnt h1 {
        color: #fff;
    }

    .login-page-cnt .h1-holder,
    .login-container {
        display: table-cell;
        vertical-align: top;
    }

    .login-page-cnt .h1-holder {
        width: 51%;
        padding: 26px 25px 0 0;
    }

.login-container {
    width: 49%;
    position: relative;
    overflow: hidden;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.35);
}

.login-container-blur {
    position: absolute;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: -51vw;
    filter: blur(20px);
    background-image: url(../../files/images/login-background.jpg);
    background-size: cover;
    z-index: -1;
}

.login-logo {
    text-align: right;
}

    .login-logo img {
        max-width: 119px;
        display: inline-block !important;
    }

    .login-logo:after {
        content: "";
        display: block;
        clear: both;
    }

.login-container label .chb ins {
    background: url(/content/files/icons/form-checkbox.png) -28px 0 no-repeat;
}

.login-container label .chb input[type="checkbox"]:checked + ins {
    background-position: -10px -57px;
}

.login-container label:hover .chb input[type="checkbox"]:checked + ins {
    background-position: -10px -57px;
}

.remember-forgot label,
.remember-forgot a {
    font-size: 12px;
}

.login-container .form-row .in-line {
    width: 50%;
    margin-right: -2px;
    line-height: 37px;
}

    .login-container .form-row .in-line + .in-line {
        text-align: right;
    }

.tbx-password,
.tbx-pincode {
    margin: 0 0 45px 0;
    position: relative;
}

.tbx.tbx-password,
.tbx .tbx-pincode,
.tbx.tbx-password.focused,
.tbx.tbx-pincode.focused {
    background: none;
    border: none;
}

.tbx-email,
.tbx-cardnumber {
    margin: 0 0 80px 0;
    position: relative;
}

.tbx.tbx-email,
.tbx .tbx-cardnumber,
.tbx.tbx-email.focused,
.tbx.tbx-cardnumber.focused {
    background: none;
    border: none;
}

.tbx-email .floating-label,
.tbx-cardnumber .floating-label,
.tbx-pincode .floating-label,
.tbx-password .floating-label {
    color: #323232;
    font-size: 18px;
    left: 33px;
    font-weight: 300;
}

.tbx-email .field-validation-error {
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0;
}

.tbx-email input,
.tbx-cardnumber input,
.tbx-pincode input,
.tbx-password input {
    width: 100%;
    border: none;
    border-bottom: solid 2px #323232;
    padding: 5px 5px 5px 33px;
    font-size: 18px;
    box-sizing: border-box;
    background: transparent;
}

.tbx-email:before {
    background-image: url(../../files/icons/login-email.png);
}

.tbx-pincode:before {
    background-image: url(../../files/icons/login-pincode.png);
}

.tbx-cardnumber:before {
    background-image: url(../../files/icons/login-cardnumber.png);
}

.tbx-email:before {
    background-image: url(../../files/icons/login-email.png);
}

.tbx-password:before {
    background-image: url(../../files/icons/login-password.png);
}

.tbx-email:before,
.tbx-cardnumber:before,
.tbx-pincode:before,
.tbx-password:before {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: 24px 24px;
    background-position: left center;
    width: 24px;
    height: 24px;
    top: 5px;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    transition: background-color ease-in-out 0s;
    transition-delay: 50000s;
}

.tbx-email input {
    background-image: url(../../files/icons/);
}

.tbx-pincode input {
    background-image: url(../../files/icons/);
}

.tbx-cardnumber input {
    background-image: url(../../files/icons/);
}

.tbx-password input {
    background-image: url(../../files/icons/);
}

.tbx-email input::-webkit-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-password input::-webkit-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-pincode input::-webkit-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-cardnumber input::-webkit-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-email input::-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-password input::-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-pincode input::-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-cardnumber input::-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-email input:-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-password input:-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-pincode input:-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-cardnumber input:-moz-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-email input:-ms-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-password input:-ms-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-pincode input:-ms-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.tbx-cardnumber input:-ms-input-placeholder {
    color: #323232;
    font-style: normal;
    font-size: 18px;
}

.login-page-cnt .validation-summary-errors {
    margin-top: 0;
}

.btn-login {
}

.login-container .form-holder {
    padding-top: 110px;
}

/*          tabs             */
.tab-control .reviews,
.tab-control .variants,
.tab-control .prepacks,
.tab-control .specifications,
.tab-control .description {
    min-height: 195px;
}

.ui-tabs {
    padding: 0;
}

    .ui-tabs .ui-tabs-nav {
        padding: 0;
    }

        .ui-tabs .ui-tabs-nav li {
            margin: 0;
            outline: none;
        }

.ui-tabs-nav li:not(:first-child) {
    margin-left: 70px;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    padding: 0;
    font-weight: bold;
}

.hidden-tabs-name {
    display: none;
    cursor: default;
    margin-bottom: 15px;
}

.ui-tabs-active .ui-tabs-anchor:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
}

.no-underline .ui-tabs-anchor:after {
    display: none;
}

.ui-tabs .ui-tabs-panel {
    padding: 25px 0;
}


/*          text boxes with spinners          */
.tbx-quantity {
    display: inline-block;
    vertical-align: middle;
    margin: 0 35px;
    width: 62px;
    border: 1px solid #323232;
    border-radius: 0;
}

.tbx.tbx-quantity {
    background: #fff;
    border-color: #323232;
}

    .tbx.tbx-quantity.focused {
        border-color: #323232;
    }

.tbx-quantity input {
    text-align: center;
    padding: 0 18px 0 3px;
    height: 44px;
}

.qty-error {
    line-height: 0;
    position: absolute;
    left: -10px;
    top: -9px;
    z-index: 1;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ui-spinner-input {
    margin: 0;
}

.ui-spinner-button {
    position: absolute;
    height: 22px;
    width: 18px;
    line-height: normal;
}

.btn.ui-spinner-button {
    background: none;
    border-color: transparent;
    padding: 0;
}

    .btn.ui-spinner-button:hover {
        background: none;
        border-color: transparent;
        cursor: pointer;
    }

.ui-spinner-up {
    top: 0;
    right: 0;
}

.ui-spinner-down {
    bottom: 0;
    right: 0;
}

.ui-spinner-button:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.ui-button-text-only .ui-button-text {
    display: none;
}

.ui-spinner-up:before {
    background-image: url(../../files/icons/arrow@2x.png);
    height: 4px;
    width: 6px;
    background-size: 6px 4px;
}

.ui-spinner-down:before {
    background-image: url(../../files/icons/arrow-down@2x.png);
    height: 4px;
    width: 6px;
    background-size: 6px 4px;
}

/* order details */
.orders-details-page .columns-general .column.wide {
    width: 77%;
}

.history-details .hyp-print-preview {
    margin-left: 15px;
}

.history-details .btn {
    margin: 0 15px;
}

.lines-inside {
    margin-top: 45px;
}

.gvi-order-lines tbody td:last-child,
.gvi-order-lines thead th:last-child {
    padding-right: 7px;
}

.gvi-order-lines tfoot td {
    padding: 12px 20px;
}

.gvi-order-lines tfoot .cell-value {
    font-weight: bold;
}

.gvi-order-lines tfoot .hyp,
.gvi-order-lines .toggle-hyp-inside {
    float: right;
}

.gvi-order-lines.collapsed tbody,
.gvi-order-lines.collapsed .toggle-hyp-inside .sign-minus,
.gvi-order-lines.expanded .toggle-hyp-inside .sign-plus {
    display: none;
}

.gvi-order-lines .col-price,
.gvi-order-lines .col-total {
    white-space: nowrap;
}

.gvi-totals {
    text-align: right;
    margin-bottom: 30px;
}

.gvi-totals .cell-value {
    width: 75px;
}

.gvi-totals .cell-name {
    font-size: 10px;
    font-weight: bold;
}

.gvi-totals td {
    border: none;
    padding: 5px 7px;
}

.gvi-totals tr:first-child td {
    border-top-width: 1px;
    border-top-style: solid;
    padding-top: 15px;
}

.gvi-totals tr:last-child td {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    padding-bottom: 15px;
}

.gvi-totals.gvi-totals-basket-overview tr:first-child td,
.gvi-totals.gvi-totals-basket-overview tr:last-child td {
    border: none;
}

.basket-page-cnt .gvi-totals.gvi-totals-basket-overview.gvi td {
    font-size: 10px;
}

.gvi-totals.gvi-totals-basket-overview.gvi td {
    font-size: 12px;
    letter-spacing: 0.2px;
    font-weight: 900;
}

.row-promotion {
    line-height: 20px;
}

.basket-page-cnt .row-promotion .title-discount {
    display: inline-block;
    padding: 13px 0 7px;
}

.row-promotion .title-discount {
    display: inline-block;
    padding: 0;
}

.row-promotion .enter-discount {
    display: inline-block;
}

#promotionForm {
    position: relative;
}

/* general panel */
.panel-general {
    padding-top: 30px;
    margin-bottom: 30px;
}

.basket-page-cnt > .panel-general {
    padding-top: 0;
}

.panel-header {
    margin-bottom: 11px;
}

.panel-footer > div {
    padding-top: 6px;
}

.panel-footer > .more-inside {
    padding-top: 0;
}

/* thumbNails */
.hyp-thumbnail {
    display: inline-block;
    position: relative;
    height: 75px;
    width: 75px;
}

.thumbnail {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    height: 100%;
    width: 100%;
}

    .thumbnail img {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        max-height: 100%;
        max-width: 100%;
        width: auto;
        height: auto;
    }

/*          facets           */
.facet {
    word-break: break-all;
}

.facet-border, .facet-top-border {
    background-image: linear-gradient(to right, #323232 20%, rgba(255,255,255,0) 0%);
    background-position: bottom;
    background-size: 5px 1px;
    background-repeat: repeat-x;
    height: 1px;
}

.facet-border {
    margin: 20px 0;
}

.facet-top-border {
    margin: 0 0 20px 0;
}

.facet .hdr {
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 6px 4px;
    cursor: pointer;
}

.facet .cnt {
    margin: 12px 0 0 0;
}

.column-facets h4 {
    font-family: 'RobotoRegular';
    font-weight: 900;
    letter-spacing: 1.5px;
}

.client-service {
    padding: 56px 0 0 0;
}

    .client-service h4,
    .product-keywords h4 {
        margin: 0 0 5px 0;
        font-family: 'RobotoRegular';
        font-weight: 900;
    }

.product-keywords .keyword {
    display: inline-block;
    border-radius: 3px;
    color: #fff;
    font-size: 12px;
    line-height: 12px;
    padding: 5px 15px;
    margin: 10px 12px 5px 0;
}

.client-service .description {
    font-size: 16px;
    color: #666;
}

.client-service .phone {
    color: #323232;
    letter-spacing: 0.2px;
    font-weight: 700;
    margin-left: 12px;
}

.client-links {
    text-align: center;
}

    .client-links a {
        text-decoration: none;
    }

.client-link-chat img.fr-tag.fr-fin,
.client-link-email img.fr-tag.fr-fin {
    margin: 15px 10px;
    display: inline;
    padding: 0;
}

.facet .hdr.collapsed {
    background-image: url(../../files/icons/arrow-down@2x.png);
}

.facet .hdr.expanded {
    background-image: url(../../files/icons/arrow@2x.png);
}

.facet .hyp-toggle {
    display: inline-block;
    font-weight: bold;
}

.list-facets li {
    position: relative;
    white-space: nowrap;
}

.facet-selected li,
.multiselect-mode .facet li {
    padding-left: 24px;
}

.facet li {
    padding-right: 20px;
    line-height: 28px;
}

.list-facets li .chb {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.list-facets .count {
    margin-left: 4px;
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.facet-item {
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
    font-size: 10px;
    letter-spacing: 1px;
}

.list-facets.limited li:nth-of-type(n+6) {
    display: none;
}

.limited + .hyp-toggle .collapse,
.unlimited + .hyp-toggle .expand {
    display: none;
}

.facet-selected .facet-title {
    font-weight: bold;
}

.facet-selected .hyp-remove {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -12px;
    font-weight: bold;
}

.clear-facets-selection {
    margin-bottom: 37px;
    font-weight: bold;
}

/*           product page            */
.back-wrapper {
    height: 25px;
    float: left;
}

.back-wrapper + .breadcrumbs {
    float: left;
    padding-left: 41px;
    margin-left: 44px;
}

.hyp-back:hover {
    text-decoration: none;
}

.hyp-back.arrow-red:before {
    content: 'â€¹ ';
}

.has-aside {
    box-sizing: border-box;
    width: 85%;
}

aside .hyp {
    float: left;
    clear: both;
}

#matricesPopup,
#volumePricesPopup,
#bomPopup {
    display: none;
}

.product {
    padding-top: 32px;
}

    .product .main {
        margin-bottom: 45px;
    }

.has-aside > div,
.no-aside > div {
    display: table-cell;
    padding: 0 1%;
    vertical-align: top;
}

.no-aside {
    width: 100%;
}

/*           product images             */
.has-aside .details-img {
    width: 40%;
}

.no-aside .details-img {
    width: 60%;
}

.carousel-image {
    overflow: hidden;
    position: relative;
    margin: 0 auto;
    z-index: 1;
}

    .carousel-image .no-image {
        max-width: 100%;
    }

.carousel-content {
    position: absolute;
    top: 0;
    margin-left: 0;
    width: 33440px;
    z-index: 1;
}

.carousel-item {
    float: left;
    margin-right: 137px;
    overflow: hidden;
    position: relative;
    text-align: center;
}

.carousel-item img {
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: auto;
    height: auto;
    max-height: 100%;
    max-width: 100%;
}

.carousel-legend {
    padding: 10px 0;
    text-align: center;
}

.carousel-image-slider {
    margin: 30px 0;
}

.carousel-content {
    margin: 0;
    padding: 0;
    list-style: none;
}

.carousel-centering {
    margin: 0 auto;
    padding: 0 15px;
    position: relative;
    height: 100px;
}

.carousel-positioning {
    position: relative;
}

.carousel-cutter {
    overflow: hidden;
    height: 100%;
}

.list-thumbs {
    position: absolute;
    top: 0;
    width: 33440px;
}

.list-thumbs li {
    float: left;
}

.list-thumbs .hyp-thumbnail {
    box-sizing: border-box;
    display: block;
    margin: 0 10px;
    height: 100px;
    width: 100px;
}

.list-thumbs .thumbnail {
    display: block;
}

.list-thumbs .hyp-thumbnail:hover .thumbnail:after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: -1px;
    right: -1px;
}

.btn-prev-img,
.btn-next-img {
    background-image: url(../../files/icons/arrows-thumbnail.png);
    background-repeat: no-repeat;
    background-size: 31px auto;
    cursor: pointer;
    height: 28px;
    position: absolute;
    margin-top: -13px;
    top: 50%;
    width: 15px;
    display: none;
}

.btn-prev-img {
    background-position: 0 -54px;
    left: 0;
}

.btn-next-img {
    background-position: -16px -54px;
    right: 0;
}

.btn-prev-img:hover {
    background-position: 0 -27px;
}

.btn-prev-img.disabled {
    background-position: 0 -54px;
}

.btn-next-img:hover {
    background-position: -16px -27px;
}

.btn-next-img.disabled {
    background-position: -16px -54px;
}

.zoomContainer {
    z-index: 1;
}

/*          lightbox image slider          */
.slider-wrapper {
    position: relative;
    top: 0;
    left: 0;
    width: 1000px;
    height: 748px;
    overflow: hidden;
}

.slider-list {
    cursor: move;
    position: absolute;
    overflow: hidden;
    left: 0;
    top: 0;
    width: 1000px;
    height: 748px;
}

.slider-list-item {
    position: relative;
}

.slider-list-item img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-height: 100%;
    max-width: 90%;
}

.slider-al,
.slider-ar,
.slider-aldn,
.slider-ardn {
    position: absolute;
    cursor: pointer;
    display: block;
    background: url(../../files/icons/arrows-thumbnail.png) no-repeat;
    overflow: hidden;
    width: 15px;
    height: 25px;
}

.slider-al,
.slider-aldn {
    background-position: 0 0;
    left: 8px;
}

.slider-ar,
.slider-ardn {
    background-position: -16px 0;
    right: 8px;
}

.slider-al:hover {
    background-position: 0 -26px;
}

.slider-ar:hover {
    background-position: -16px -26px;
}

.slider-b {
    position: absolute;
    bottom: 6px;
    right: 6px;
}

.slider-b div {
    position: absolute;
    width: 12px;
    height: 12px;
}

.slider-b div,
.slider-b div:hover,
.slider-b .av {
    filter: alpha(opacity=70);
    opacity: .7;
    overflow: hidden;
    cursor: pointer;
    border-radius: 10px;
}

.slider-b div {
    background-color: #ccc;
}

    .slider-b div:hover,
    .slider-b .av:hover {
        background-color: #999;
    }

.slider-b .av {
    background-color: #000;
}

.slider-b .dn,
.slider-b .dn:hover {
    background-color: #000;
}

/*          product details          */
.details-info .description {
    display: inline-block;
    margin-top: 22px;
    width: 100%;
    word-wrap: break-word;
}

.hyp-read-description + .hyp-print-preview {
    margin-left: 50px;
}

.details-info .product-id .name {
    display: inline-block;
    width: 73px;
}

.rating-reviews {
    margin-top: 10px;
}

    .rating-reviews .hyp {
        margin-left: 10px;
    }

        .rating-reviews .hyp + .hyp {
            padding-left: 15px;
        }

/* productRatingControl (jQuery.Rating Plugin CSS - http://www.fyneworks.com/jquery/star-rating/) */
.rating {
    display: inline-block;
    vertical-align: middle;
}

.rating-cancel,
.star-rating {
    background: transparent;
    cursor: pointer;
    display: block;
    font-size: 0;
    float: left;
    height: 16px;
    overflow: hidden;
    text-indent: -999em;
    width: 16px;
}

.rating-cancel,
.rating-cancel a {
    background: url(../../files/icons/rating-cancel.png) no-repeat scroll 0 0 transparent !important;
}

.rating-cancel a,
.star-rating a {
    border: 0;
    display: block;
    height: 100%;
    width: 16px;
}

.star-rating a {
    background: url(../../files/icons/rating-star.png) no-repeat scroll 0 0 transparent;
}

.star-rating-on a {
    background: url(../../files/icons/rating-star-on.png) no-repeat scroll 0 0 transparent;
}

.star-rating-hover a {
    background: url(../../files/icons/rating-star-on.png) no-repeat scroll 0 0 transparent;
}

.star-rating-readonly a {
    cursor: default !important;
}

.star-rating {
    background: transparent !important;
    overflow: hidden !important;
}

.row-button-wrapper {
    margin-top: 20px;
}

.order-box {
    margin-top: 20px;
}

.order-box .lbl-price {
    font-weight: bold;
}

.order-box .form-row .label {
    width: 23%;
}

.order-box .after-btn-links {
    vertical-align: middle;
}

.order-box .row-quantity .field {
    white-space: nowrap;
}

.order-box select {
    visibility: hidden;
}

.product-advantages-list,
.delivery-times-dates {
    margin: 30px 0 0 0;
}

.product-advantage {
    background-image: url(../../files/icons/u-s-p-circle@2x.png);
    background-size: 24px 25px;
    background-repeat: no-repeat;
    padding: 0 0 2px 40px;
    margin: 7px 0;
    font-size: 16px;
    letter-spacing: 0.2px;
    font-weight: 300;
}

.product .hyp.hyp-add-to-wishlist {
    background-image: url(../../files/icons/add-to-wishlist.png);
    background-size: 25px 25px;
    background-repeat: no-repeat;
    display: inline-block;
    text-decoration: underline;
    padding: 0 0 2px 40px;
    margin: 7px 0;
    color: #323232;
    font-size: 16px;
}

.has-aside .field-btn-add {
    text-align: right;
}

.order-box .prices-action {
    margin-bottom: 30px;
}

.no-aside .field-btn-add {
    text-align: left;
}

.prices-action {
    display: table;
    width: 100%;
}

.prices-action > div {
    display: table-cell;
    vertical-align: bottom;
}

.after-prices {
    padding: 0 7px;
    line-height: 20px;
    width: 100%;
}

/* last viewed products */
.hyp-clear-viewed {
    padding-left: 20px;
    margin-left: 20px;
}

.last-viewed {
    margin: 70px 0;
}

.last-viewed .ui-tabs-nav {
    padding-bottom: 10px;
}

.hyp-tab-action {
    font-weight: bold;
    float: left;
    margin: 15px 0 0 45px;
}

/* related info */
.simple-product-tile {
    box-sizing: border-box;
    text-align: center;
    padding: 0 3%;
}

.simple-product-tile .hyp-thumbnail {
    max-width: 100%;
    height: 180px;
    width: 180px;
}

.tabs-horizontal {
    position: relative;
    overflow: hidden;
}

.tabs-horizontal .ui-tabs-nav {
    position: relative;
    width: 300%;
}

.tabs-horizontal .ui-tabs-nav li:not(:first-child) {
    margin-left: 33px;
}

.opacity-left,
.opacity-right {
    position: absolute;
    top: 0;
    height: 100%;
    width: 65px;
    z-index: 1;
}

.opacity-left {
    background: -webkit-linear-gradient(left,rgba(255,255,255,1),rgba(255,255,255,0.5));
    background: -moz-linear-gradient(right,rgba(255,255,255,1),rgba(255,255,255,0.5));
    background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0.5));
    left: 0;
}

.opacity-right {
    background: -webkit-linear-gradient(left,rgba(255,255,255,0.5),rgba(255,255,255,1));
    background: -moz-linear-gradient(right,rgba(255,255,255,0.5),rgba(255,255,255,1));
    background: linear-gradient(to right, rgba(255,255,255,0.5), rgba(255,255,255,1));
    right: 0;
}

.btn-prev,
.btn-next {
    cursor: pointer;
    background: url(../../files/icons/arrows.png);
    position: absolute;
    top: 10px;
    height: 19px;
    width: 12px;
    z-index: 1;
}

.btn-prev {
    background-position: 0 0;
    left: 0;
}

.btn-next {
    background-position: -13px 0;
    right: 0;
}

.btn-prev:hover {
    background-position: 0 -20px;
}

.btn-next:hover {
    background-position: -13px -20px;
}

/*          social sharing */
.add-this {
    text-align: center;
    margin-top: 10px;
}

.addthis_toolbox {
    display: inline-block;
}

/*          matrices            */
.matrices {
    overflow: visible;
}

.matrices .ui-dialog-titlebar {
    display: none;
}

.matrices .ui-dialog-content {
    overflow: visible;
}

.matrices .ui-tabs-nav {
    position: absolute;
    margin-bottom: 10px;
    bottom: 100%;
    right: 0;
}

.matrices .ui-tabs-nav li {
    box-shadow: 0 0 5px rgba(0,0,0,0.15);
    margin-left: 2px;
}

.matrices .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    padding: 15px 56px;
    line-height: 1;
    text-align: center;
    position: relative;
    margin-bottom: -3px;
}

.matrices .ui-tabs-active .ui-tabs-anchor:after {
    bottom: 10px;
    left: 56px;
    right: 56px;
}

.matrices .btn-back {
    line-height: 44px;
}

.grid-inside {
    clear: both;
    height: 100%;
    margin: 49px 0 23px 0;
    overflow: auto;
    position: relative;
    width: 100%;
    max-height: 450px;
}

.add-box {
    display: table;
    float: right;
}

    .add-box li {
        display: table-cell;
        padding-right: 18px;
        vertical-align: top;
    }

.quantity-selected {
    line-height: 22px;
}

.quantity-selected .name {
    display: inline-block;
    text-align: right;
    width: 150px;
}

.quantity-selected .value {
    display: inline-block;
    padding-left: 15px;
    width: 80px;
}

/* variants & prepacks */
.variants h2 {
    line-height: 1;
}

.variants .product-id .name {
    margin-right: 35px;
}

.corner-cell .lbl-uom-title {
    line-height: 28px;
    vertical-align: middle;
}

.gvi-variants .th-col,
.gvi-prepacks thead th {
    text-align: center;
    padding: 15px;
}

.gvi-variants td,
.gvi-prepacks td {
    text-align: center;
    padding: 23px 15px 10px;
}

.gvi-variants .th-row,
.gvi-prepacks tbody th {
    text-align: left;
    padding-right: 23px;
    padding-left: 19px;
}

.gvi-variants .tbx-quantity,
.gvi-prepacks .tbx-quantity {
    width: 70px;
}

/* variants */
.cell .tbx-quantity {
    margin-bottom: 10px;
}

.cell .stock-indication,
.cell .lbl-price {
    margin: 0 10px;
}

.cell .msg-not-available {
    line-height: 28px;
}

.variants-row {
    font-weight: bold;
    padding-top: 10px;
}

/* prepacks */
.gvi-prepacks .price {
    text-align: left;
}

.prepack-selection {
    margin-top: 20px;
}

.ddlb-prepack-selector {
    display: inline-block;
    margin-left: 25px;
    min-width: 250px;
    vertical-align: middle;
}

/* volume prices and bom */
.gvi-volume-prices th,
.gvi-bom th {
    text-align: left;
}

.gvi-volume-prices th,
.gvi-volume-prices td,
.gvi-bom th,
.gvi-bom td {
    border-bottom: none;
}

.gvi-volume-prices .cell-qty,
.gvi-volume-prices .cell-uom,
.gvi-volume-prices .cell-discount,
.gvi-bom td {
    font-weight: bold;
}

/* bom product grid */
.gvi-bom td {
    vertical-align: top;
}

.gvi-bom .bom-title {
    padding-left: 15px;
    padding-right: 15px;
}

.gvi-bom .variant {
    width: 240px;
}

.gvi-bom .qty {
    width: 60px;
    text-align: right;
}

.bom-nested {
    display: table;
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}

.bom-nested li {
    display: table-row;
}

.bom-nested .lbl-variant {
    display: table-cell;
    width: 80%;
}

.bom-nested .lbl-qty {
    display: table-cell;
    text-align: right;
    width: 20%;
}

/* product reviews */
.list-reviews li {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    margin-top: 10px;
    padding-bottom: 10px;
}

.list-reviews .rating {
    float: right;
}

.review-title {
    font-weight: bold;
    margin-right: 5px;
}

/*          product list page           */
.btn-add-inside {
    padding-top: 30px;
}

.counter-inside {
    line-height: 35px;
}

.btn-view {
    cursor: pointer;
    display: inline-block;
    margin: 5px 10px;
    height: 24px;
    width: 24px;
    vertical-align: middle;
}

.btn-view:hover {
    background-position: 0 -25px;
}

.changer-grid-mode .to-grid,
.changer-list-mode .to-list {
    cursor: default;
    pointer-events: none;
}

.to-list {
    background: url(../../files/icons/view-list.png);
    background-position: 0 -50px;
}

.changer-list-mode .to-list {
    background-position: 0 0;
}

.to-grid {
    background: url(../../files/icons/view-grid.png);
    background-position: 0 -50px;
}

.changer-grid-mode .to-grid {
    background-position: 0 0;
}

/* sorting */
.ddlb-sorting {
    display: inline-block;
    vertical-align: middle;
    text-align: left;
}

.sorting a {
    font-size: 10px;
    color: #323232;
}

.sorting a:after {
    content: "";
    background-image: url(../../files/icons/sort@2x.png);
    background-size: 20px 17px;
    width: 20px;
    height: 17px;
    display: inline-block;
    margin: 0 0 0 10px;
    position: relative;
    top: 4px;
}

/* paging */
.btn-paging {
    padding: 0;
    height: 21px;
    width: 21px;
    display: inline-block;
    position: relative;
}

.btn-paging:after {
    display: none;
}

.btn-page-prev:before,
.btn-page-next:before {
    content: '';
    position: absolute;
    background-image: url(../../files/icons/arrow-left@2x.png);
    background-size: 4px 6px;
    width: 4px;
    height: 6px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%,-50%,0);
    transform: translate3d(-50%,-50%,0);
}

.btn-page-next:before {
    background-image: url(../../files/icons/arrow-right@2x.png);
}

.btn-paging-disabled {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}

.paging {
    padding: 15px 0;
}

ul.pager-list {
    display: inline-block;
    line-height: 20px;
    margin: 0 2px;
    vertical-align: top;
}

.pager-list li:first-child {
    border-left: 1px solid;
}

.pager-list li {
    display: inline-block;
    border-right: 1px solid;
    border-left: 1px solid #fff;
}

.pager-list li a,
.pager-list li span {
    padding: 6px 12px;
    font-size: 12px;
}

.pager-selected {
    font-weight: bold;
}

/*          products list grid            */
.selected-quantity {
    display: none;
    line-height: 12px;
    text-transform: lowercase;
}

.edit-selected {
    padding-left: 17px;
    margin-left: 17px;
}

.product-list .product-id {
    margin-right: 17px;
    padding-right: 17px;
    vertical-align: middle;
}

.list-mode {
    display: table;
    width: 100%;
}

.list-mode > li {
    display: table-row;
}

.list-mode li:first-child .product-tile {
    border-top-width: 1px;
    border-top-style: solid;
}

.list-mode .product-tile {
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.list-mode .product-tile .product-img,
.list-mode .product-tile .product-info {
    padding: 15px 0;
}

.list-mode .product-tile .product-img {
    padding-right: 15px;
}

.list-mode .product-tile .prices {
    line-height: 33px;
}

.list-mode .list-price {
    vertical-align: top;
    position: relative;
    top: -5px;
}

.list-mode .product-action {
    white-space: nowrap;
}

.list-mode .product-description {
    display: table-cell;
    width: 100%;
    vertical-align: top;
}

.product-details-description {
    margin-right: 30px;
    letter-spacing: 0.2px;
    font-size: 16px;
    font-weight: 300;
}

.get-call-support,
.product-keywords {
    margin: 30px 0;
}

.details-info .get-call-support .description {
    margin-top: 0;
}

.product-stock-available {
    background-image: url(../../files/icons/u-s-p-circle@2x.png);
    background-size: 24px 25px;
    background-repeat: no-repeat;
    letter-spacing: 0.2px;
    font-weight: bold;
    font-size: 16px;
    padding: 0 0 4px 35px;
    display: inline-block;
    position: relative;
    top: -2px;
}

.login-to-view-price-link {
    background-image: url(../../files/icons/Euro-Icon.png);
    background-size: 24px 25px;
    background-repeat: no-repeat;
    letter-spacing: 0.2px;
    font-weight: bold;
    font-size: 16px;
    padding: 0 0 4px 35px;
    display: inline-block;
    position: relative;
    top: -2px;
    color: #323232;
    text-decoration: underline;
}

.order-box .prices-action .prices {
    margin: 0 20px 10px 0;
    display: inline-block;
}

.get-call-support .client-links {
    text-align: left;
}

.get-call-support .client-link-chat img.fr-tag.fr-fin {
    margin-left: 0;
}

.get-call img {
    width: 115px;
}

.get-support .client-service {
    padding: 0;
}

.get-support, .get-call {
    vertical-align: top;
}

.list-mode .selected-quantity {
    margin-top: 7px;
}

ul.grid-mode {
    margin: 0 -1.4%;
    position: relative;
}

.grid-mode > li {
    box-sizing: border-box;
    float: left;
    text-align: center;
    margin-top: 18px;
    padding: 0 1.4% 13px 1.4%;
    height: 360px;
}

.grid-mode .product-tile {
    display: block;
    padding: 2px;
    min-height: 100%;
    width: auto;
}

.grid-mode .product-img {
    display: block;
    padding-top: 12px;
    width: auto;
}

.grid-mode .product-info {
    display: block;
}

.grid-mode .product-img .hyp-thumbnail {
    display: block;
    margin: 0 auto;
    height: 230px;
    max-width: 100%;
    width: 230px;
}

.special-label {
    position: absolute;
    top: 3px;
    left: 3px;
    font-size: 14px;
    padding: 3px 15px !important;
    color: #fff;
    border-radius: 3px;
    background-color: #e2bf31;
    display: inline;
    line-height: 18px !important;
    z-index: 1;
}

.grid-mode .product-description {
    padding-top: 3px;
    margin-bottom: 3px;
}

.grid-mode .product-id,
.grid-mode .product-attributes {
    display: none;
}

.grid-mode .product-action .form-quantity {
    padding-top: 3px;
}

.grid-mode .hide-for-grid {
    display: none;
}

.variants-selected .selected-quantity {
    display: table-cell;
    vertical-align: middle;
}

.select-variants + .selected-quantity .font-title {
    padding-left: 17px;
    margin-left: 17px;
}

.variants-selected .select-variants {
    display: none;
}

/*          orders          */
.orders {
    margin: 60px 0;
}

.gvi-orders {
    margin-top: 15px;
}

.gvi-orders th {
    text-align: left;
}

.gvi-orders td {
    border-bottom: none;
}

/* custom select styles */
.ddlb {
    height: 46px;
    position: relative;
}

.ddlb-small {
    height: 28px;
}

.ddlb-small .ui-selectmenu-button span.ui-selectmenu-text {
    line-height: 27px;
}

.ui-selectmenu-button {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-radius: 3px;
    outline: none;
}

.ui-selectmenu-menu .ui-menu {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    max-height: 240px;
}

.ui-selectmenu-button span.ui-selectmenu-text {
    line-height: 46px;
    padding: 0 28px 0 18px;
}

.ui-selectmenu-menu .ui-menu .ui-menu-item {
    padding: 7px 28px 7px 12px;
    line-height: 20px;
    box-sizing: border-box;
}

.ui-selectmenu-button span.ui-icon {
    border-top: 4px solid #4d4d4d;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    right: 10px;
    margin-top: -2px;
}

.unit-of-measure {
    display: inline-block;
    vertical-align: middle;
}

.tbx-quantity + .unit-of-measure {
    margin-left: 8px;
    vertical-align: top;
}

.ddlb-uom {
    display: inline-block;
    vertical-align: middle;
    text-align: left;
}

.lbl-uom {
    display: inline-block;
    line-height: 28px;
}

/*          my account          */
.aside-links {
    margin-top: 80px;
}

.order-info-inside {
    margin-top: 65px;
}

.order-info-inside h2 {
    display: inline-block;
    margin-right: 25px;
}

.account-name {
    margin: 13px 0 20px;
}

.hyp-account {
    padding-top: 5px;
    padding-bottom: 5px;
    float: left;
    clear: both;
}

.account-info-inside {
    margin-top: 65px;
}

.account-info-inside .sub-title {
    font-weight: bold;
    margin-right: 40px;
}

.account-info-content {
    margin-bottom: 35px;
}

.btn-prospect {
    margin-top: 15px;
}

.tracking-link {
    display: inline-block;
    max-width: 145px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.tracking-text {
    display: inline-block;
    max-width: 150px;
    word-break: break-word;
}

.gvi-orders th,
.gvi-orders td {
    padding-left: 5px;
}

.gvi-orders th:first-child,
.gvi-orders td:first-child {
    padding-left: 0px;
}

/*          order templates         */
.cell-check-box {
    width: 30px;
}

.templates-action {
    padding-top: 10px;
}

.templates-action .hyp {
    padding-left: 15px;
    margin-left: 15px;
}

.template-header {
    margin-bottom: 10px;
}

.template-header .value {
    font-weight: bold;
}

.gvi-order-details .product-title {
    font-weight: bold;
}

.rush-order-message {
    display: table;
    margin: 25px 0 50px 0;
    font-size: 12px;
    line-height: 18px;
}

.order-info-wrapper .rush-order-message {
    margin: 5px 0 0 0;
}

.rush-order-cell {
    display: table-cell;
    vertical-align: middle;
}

.rush-order-image {
    width: 34px;
}

.video-container-wrapper .client-links {
    text-align: left;
}

.video-container-wrapper {
    max-width: 575px;
    margin: auto;
}

.video-container-wrapper .table {
    margin: 0 0 60px 0;
}

.video-container {
    margin: 0 auto 60px auto;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
}

.video-container-wrapper .client-service {
    padding: 0;
}

.video-container-wrapper .table-cell {
    vertical-align: top;
}

.video-container iframe {
    border: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.video-container-play {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../../files/images/e_support_pimm.jpg);
    background-size: cover;
    background-position-x: 50%;
    cursor: pointer;
}

.video-container-play:before {
    content: "";
    background-color: rgba(68, 19, 68, 0.4);
    position: absolute;
    width: 100%;
    height: 100%;
}

.video-container-play:after {
    content: "";
    background-image: url(../../files/icons/play-icon@2x.png);
    background-size: 84px 84px;
    width: 84px;
    height: 84px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.submit-order-header {
    font-weight: 900;
    font-size: 12px;
    margin: 15px 0;
}

.submit-order-details {
    letter-spacing: 0.2px;
}

.submit-order-icon-holder {
    text-align: center;
    position: relative;
}

.submit-order-content {
    line-height: 20px;
    letter-spacing: 0.2px;
}

.submit-order-icon {
    max-width: 60px;
    display: block;
    position: relative;
    z-index: 1;
    margin-left: calc(50% - 30px);
}

.submit-order-columns .submit-order-cell:first-child .submit-order-icon {
    background-color: #fff;
    margin-left: 0;
}

.submit-order-columns .submit-order-cell:last-child .submit-order-icon {
    background-color: #fff;
    margin-left: calc(50% - 30px);
}

.submit-order-icon-holder:after {
    content: "";
    background-image: linear-gradient(to right, #9fbfb4 20%, rgba(255,255,255,0) 0%);
    background-position: bottom;
    background-size: 5px 1px;
    background-repeat: repeat-x;
    height: 1px;
    display: block;
    position: absolute;
    top: 50%;
    bottom: 0;
    width: 100%;
}

/*          datepicker           */
.checkout-orderoverview-page .ui-datepicker .ui-datepicker-header {
    position: relative;
}

.checkout-orderoverview-page .ui-datepicker td span, .checkout-orderoverview-page .ui-datepicker td a {
    font-size: 14px;
}

.delivery-calendar,
.delivery-calendar-content {
    position: relative;
}

.delivery-calendar .ui-datepicker {
    width: 100%;
    height: calc(100% - 63px);
    box-sizing: border-box;
    padding: 63px 0 0 0;
    font-size: 18px;
}

.delivery-calendar #datepicker {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.calendar-placeholder {
    width: 100%;
}

.delivery-calendar .ui-datepicker .ui-datepicker-header {
    padding: 20px 0;
    position: absolute;
    width: 100%;
    top: 0;
}

.delivery-calendar .ui-datepicker table {
    height: 100%;
    table-layout: fixed;
}

.ui-state-disabled {
    background: #f5f5f5;
}

.ui-datepicker.ui-widget-content {
    margin-top: 1px;
    border-radius: 3px;
    background-color: #fff !important;
}

.delivery-calendar .ui-datepicker .ui-datepicker-title {
    font-weight: 900;
}

.delivery-calendar .ui-datepicker th {
    font-weight: 900;
    padding: .7em;
    font-size: 12px;
    line-height: 2.5em;
    border: 1px solid #eee;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: none;
}

.ui-datepicker .ui-datepicker-prev {
    background: url(../../files/icons/arrow-left@2x.png) center center no-repeat;
    left: 0;
}

.ui-datepicker .ui-datepicker-next {
    background: url(../../files/icons/arrow-right@2x.png) center center no-repeat;
    right: 0;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 16px;
    height: 24px;
    background-size: 6px 9px;
}

.ui-datepicker .ui-datepicker-prev-hover {
    left: 0;
}

.ui-datepicker .ui-datepicker-next-hover {
    right: 0;
}

.ui-datepicker .ui-datepicker-today {
    font-weight: bold;
}

.ui-datepicker td span, .ui-datepicker td a {
    font-weight: bold;
    font-size: 12px;
    display: inline;
}

.ui-datepicker td span {
    color: #9b9b9b;
}

.ui-datepicker td a {
    color: #323232;
}

.ui-datepicker-current-day {
    background-color: #9fbfb4;
}

    .ui-datepicker-current-day .ui-state-active {
        color: #fff;
    }

.ui-datepicker td {
    border: 1px solid #eee;
    padding: 0;
    text-align: center;
    cursor: pointer;
}

/*          basket            */
.gvi-basket td {
    vertical-align: middle;
}

.gvi-basket th {
    padding-right: 0;
    padding-left: 0;
}

.gvi-basket .upper-row td,
.gvi-wish-list .upper-row td {
    padding: 15px 3px;
}

.gvi-basket .inner-row td,
.gvi-wish-list .inner-row td {
    padding: 15px 3px;
}

.gvi-basket .vertical-line {
    position: relative;
}

.gvi-basket .vertical-line:before {
    border-left-width: 2px;
    border-left-style: solid;
    content: '';
    position: absolute;
    top: 0;
    bottom: -15px;
    left: -125px;
}

.gvi-basket .last-in-group .vertical-line:before {
    bottom: 0;
}

.gvi-basket .col-price {
    width: 90px;
}

.gvi-basket .col-quantity {
    width: 130px;
}

.gvi-basket .col-total {
    width: 95px;
}

.gvi-basket .col-price,
.gvi-basket .lbl-quantity,
.gvi-basket .product-total {
    line-height: 28px;
}

.gvi-basket .product-total {
    font-weight: 900;
}

.id-variant-aria .product-variant {
    font-size: 12px;
    letter-spacing: 0.2px;
}

.product-total {
    white-space: nowrap;
}

.price-node {
    white-space: nowrap;
}

.cell-total-value,
.cell-price-value {
    display: inline-block;
    text-align: right;
}


.gvi-basket .product-img {
    float: left;
}

/*  start b2c basket lines */
.basket-b2c-mode .gvi-basket .col-first {
    width: 120px;
}

.basket-b2c-mode .gvi-basket .hyp-thumbnail {
    height: 84px;
    width: 84px;
}

/*  start b2b basket lines */
.basket-b2b-mode .gvi-basket .col-first {
    width: 65px;
}

.basket-b2b-mode .gvi-basket .product-img,
.basket-b2b-mode .gvi-basket .hyp-thumbnail {
    height: 50px;
    width: 50px;
}

.gvi-basket .vertical-line {
    margin-left: 70px;
    min-height: 50px;
}

.gvi-basket .btn-show-hide {
    float: left;
    margin-top: 15px;
}

.hyp-recalculate {
    text-decoration: underline;
}

.hyp-reload {
    text-decoration: underline;
}

.block-actions {
    height: 47px;
}

.block-actions .hyp-btn {
    display: inline-block;
    margin-top: 15px;
    margin-bottom: 15px;
}

.gvi-basket .extended-text {
    margin: 7px 0;
}

.checkout-offers {
    margin: 70px 0;
}

.checkout-offers .ui-tabs-nav {
    padding-bottom: 10px;
}

.basket-details h2 {
    margin-bottom: 15px;
}

ul.list-totals {
    margin: 30px 0;
}

.list-totals li {
    line-height: 30px;
    clear: both;
}

.list-totals .total-price {
    padding-top: 7px;
}

.list-totals .total-unit {
    line-height: 1;
}

.list-totals .name {
    float: left;
    max-width: 60%;
}

.list-totals .value {
    display: block;
    text-align: right;
    margin-left: 40%;
}

.list-totals .total-value,
.list-cart .total-value,
.gvi-totals .cell-price-value {
    display: inline-block;
}

.basket-page-cnt .gvi-totals.gvi-totals-basket-overview.gvi td.cell-total {
    font-size: 24px;
    font-weight: bold;
}

.basket-page-cnt .gvi-totals.gvi-totals-basket-overview.gvi .row-shipping .price-node,
.basket-page-cnt .gvi-totals.gvi-totals-basket-overview.gvi .row-promotion .price-node {
    font-size: 12px;
    font-weight: bold;
}

.basket-buttons {
    margin-bottom: 25px;
}

    .basket-buttons .hyp-btn {
        clear: both;
        float: left;
        margin: 13px 0;
    }

.hyp-btn-disabled {
    cursor: default;
    pointer-events: none;
}

.basket-details .btn-checkout {
    margin-bottom: 58px;
    width: 100%;
}

.msg-empty-basket {
    display: none;
}

.basket-empty .msg-empty-basket {
    display: block;
}

.basket-empty .msg-basket-recalculate {
    display: none;
}

.basket-empty .gvi-basket,
.basket-empty .block-actions,
.basket-empty .enter-discount,
.basket-empty .gvi-totals,
.basket-empty .list-totals {
    display: none;
}

.row-expanded .product-total,
.row-expanded .lbl-quantity {
    visibility: hidden;
}

/*          checkout            */
.checkout-page-cnt .wide .h1-holder {
    padding-top: 0;
    margin-bottom: 35px;
}

.checkout-page-cnt .wide h2 {
    margin-top: 10px;
}

.checkout-step {
    padding-top: 20px;
    margin-bottom: 60px;
}

#basketPage #basketContent {
    margin: 30px 0 60px 0;
}

    #basketPage #basketContent.js-onestepcheckoutbasket {
        margin: 30px 0;
    }

.checkout-text {
    margin-bottom: 10px;
}

.terms-row {
    padding-top: 10px;
    margin-bottom: 12px;
}

.pay-row .btn-back {
    float: left;
    line-height: 45px;
}

.shipping-separator {
    text-align: center;
    position: relative;
    margin: 15px 0;
}

.next-inside .btn {
    margin-top: 20px;
}

.shipping-separator:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
}

.shipping-separator .text {
    cursor: pointer;
    display: inline-block;
    padding: 0 15px;
    position: relative;
}

.gvi-methods {
    margin-bottom: 20px;
}

.gvi-methods tr {
    line-height: 24px;
}

.gvi-methods td {
    vertical-align: top;
    padding: 12px 0;
}

.gvi-methods th {
    padding: 4px 0;
}

.gvi-methods .method-title {
    vertical-align: middle;
}

.gvi-methods .rdb {
    margin-top: 0;
    margin-left: -2px;
}

.gvi-methods .radio {
    display: inline-block;
    line-height: 24px;
    margin-right: 15px;
    vertical-align: bottom;
}

.gvi-methods .cell-price {
    text-align: right;
    width: 60px;
    padding-right: 16px;
}

.gvi-methods .cell-price-value {
    min-width: 45px;
}

.method-img {
    max-height: 24px;
    margin-right: 7px;
    vertical-align: middle;
}

.weight-value {
    font-weight: bold;
}

.cart-summary {
    margin-bottom: 40px;
}

.cart-summary-header {
    margin-bottom: 28px;
    position: relative;
}

.cart-summary-header h2 {
    display: inline;
}

.cart-summary-header .hyp-edit {
    text-decoration: underline;
    position: absolute;
    bottom: 0;
    right: 0;
}

ul.list-cart {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    padding-bottom: 15px;
}

.list-cart .name {
    float: left;
}

.list-cart .value {
    display: block;
    text-align: right;
    margin-left: 60%;
}

.list-cart .subtotal {
    margin-top: 8px;
    padding-top: 7px;
}

.list-cart .total .name {
    font-weight: bold;
}

.checkout-summary h2 {
    margin-bottom: 10px;
}

ul.list-step {
    margin-bottom: 26px;
}

.list-step-title {
    font-weight: bold;
}

.list-step .hyp-edit {
    text-decoration: underline;
    float: right;
}

.service-info {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    padding-bottom: 25px;
    margin-bottom: 30px;
}

.additional-info {
    margin-bottom: 66px;
}

.additional-info h4 {
    margin-bottom: 10px;
}

.additional-option-img-basket {
    font-size: 0;
    color: transparent;
}

.gvi-basket-overview td {
    vertical-align: top;
}

.gvi-basket-overview td:last-child,
.gvi-basket-overview th:last-child {
    padding-right: 7px;
}

.gvi-big-basket.collapsed tbody,
.gvi-big-basket.collapsed .sign-minus,
.gvi-big-basket.expanded .sign-plus {
    display: none;
}

.gvi-big-basket tfoot td {
    padding: 12px 20px;
}

.gvi-big-basket tfoot .cell-value {
    font-weight: bold;
}

.gvi-big-basket .toggle-hyp-inside {
    float: right;
}

.checkout-footer .usp {
    margin: 40px 0;
}

/*          totals          */
.enter-discount {
    line-height: 20px;
}

.enter-discount .hyp {
    display: inline-block;
    padding-top: 8px;
    padding-bottom: 7px;
    vertical-align: middle;
}

.tbx-promotion {
    display: inline-block;
    vertical-align: middle;
    height: 44px;
}

.tbx.tbx-promotion input {
    height: 44px;
}

.shipping-cost {
    display: inline-block;
}

.shipping-cost .tooltip-sign {
    cursor: pointer;
}

.ui-tooltip {
    box-shadow: 0 0 5px rgba(0,0,0,0.15);
    padding: 10px;
    line-height: 18px;
    width: 250px;
}

/* FAQ page */
.accordion {
    margin: 20px 0;
}

.accordion-header {
    cursor: pointer;
    padding: 15px 0 15px 40px;
}

.accordion-section {
    padding-left: 40px;
}

.accordion-header .btn-show-hide {
    float: left;
    margin: 2px 0 0 -40px;
}

.accordion-header.collapsed + .accordion-section {
    display: none;
}

/* news */
.list-news li {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    margin-top: 10px;
    padding-bottom: 10px;
}

.news-title {
    font-weight: bold;
    margin-right: 5px;
}

.list-news-header {
    margin: 15px 0;
}

.hyp-more {
    font-weight: bold;
}

/* general popup layout */
.ui-widget-overlay {
    opacity: 0.50;
}

.ui-dialog {
    box-shadow: 0 0 5px rgba(0,0,0,0.15);
    box-sizing: border-box;
    padding: 10px 0 25px;
    position: fixed;
}

.ui-dialog-scroll {
    max-height: 100%;
    overflow: auto;
}

.fix-dialog-scroll-helper {
    overflow: hidden;
}

.ui-dialog .ui-dialog-titlebar,
.ui-dialog .ui-dialog-content {
    margin: 0 auto;
    max-width: 1000px;
    padding: 0 4%;
}

.ui-dialog-titlebar {
    text-align: right;
}

.ui-dialog .ui-dialog-titlebar-close {
    border: none;
    background: none;
    padding: 0 11px 0 0;
    position: relative;
    top: 0;
    right: 0;
    margin: 0;
    height: auto;
    width: auto;
}

.ui-dialog-titlebar-close .ui-button-text {
    text-indent: inherit;
}

.ui-dialog-titlebar-close .ui-icon {
    background: url(../../files/icons/close.png);
    left: auto;
    right: 0;
    margin-top: -6px;
    height: 14px;
    width: 11px;
}

.popup-cnt h2 {
    margin: 14px 0 24px 0;
}

.popup-cnt .strong-header {
    text-align: center;
    margin-bottom: 30px;
}

.popup-cnt .cnt-column {
    display: table;
    margin: 0 auto;
    min-width: 520px;
}

.popup-cnt .ftr-column {
    text-align: center;
    margin-top: 17px;
    padding: 20px 0;
}

    .popup-cnt .ftr-column .btn {
        margin: 0 30px;
    }

.popup-ftr {
    text-align: right;
}

/*          Quick order         */
.qo-input-area .tbx-search {
    width: 60%;
}

.choose-product {
    display: table;
    padding: 4px 0;
    margin: 29px -10px 0;
    width: 100%;
}

    .choose-product > div {
        display: table-cell;
        padding: 10px;
        vertical-align: middle;
    }

.hyp-qo-title {
    line-height: 34px;
    font-weight: bold;
}

.qo-input-area .ui-autocomplete a {
    min-height: 25px;
    padding-top: 11px;
    padding-bottom: 11px;
}

/* autocomplete */
.ui-autocomplete {
    overflow-y: auto;
}

    .ui-autocomplete a {
        display: block;
        padding: 0 15px;
    }

        .ui-autocomplete a:hover,
        .ui-autocomplete a.ui-state-focus {
            text-decoration: none;
        }

/*        Content blocks         */
/*          our payment          */
.our-methods {
    margin-bottom: 20px;
}

    .our-methods img {
        margin: 5px;
        vertical-align: middle;
    }

/*          usp         */
.usp {
    max-width: 1000px;
    margin: auto;
}

    .usp .separator-dark {
        display: block;
        height: 39px;
        width: 12px;
    }

ul.usp-list {
    display: table;
    padding: 27px 0;
    width: 100%;
    table-layout: fixed;
}

.usp-list .usp-ico,
.usp-list .usp-text {
    vertical-align: middle;
}

.usp-list .usp-ico {
    min-width: 44px;
    padding-right: 30px;
}

.usp-list .usp-text {
    line-height: 20px;
}

.usp-list li {
    display: table-cell;
    text-align: center;
    position: relative;
    vertical-align: middle;
    letter-spacing: 0.2px;
}

.usp-list .table .table-cell:last-child {
    padding-right: 30px;
}

.usp-list li:first-child {
    text-align: left;
}

.usp-list li:last-child {
    text-align: right;
}

.home-page .content .center {
    max-width: 1000px;
    padding: 0;
}

.home-page .columns-general.flow-img-tiles {
    margin: auto;
    width: 100%;
    table-layout: auto;
    max-width: 1000px;
}

    .home-page .columns-general.flow-img-tiles > .column .banner-content-inside {
        -webkit-transition: opacity 0.2s;
        transition: opacity 0.2s;
        background: rgba(50,50,50,0.3);
        opacity: 0;
    }

    .home-page .columns-general.flow-img-tiles > .column:hover .banner-content-inside {
        opacity: 1;
    }

.home-page .content .columns-general > .column {
    position: relative;
}

.home-page .columns-general.flow-img-tiles img {
    display: block;
}

.addOption-wrapper {
    margin: 0 0 15px 0;
}

    .addOption-wrapper > label {
        display: block;
        margin: 0 0 5px 0;
    }

.addOption-chb {
    margin: 0 0 10px 0;
}

.chars-left {
    margin: 0 0 0 5px;
}

.custom-file-upload-hidden {
    display: none;
    visibility: hidden;
    position: absolute;
    left: -9999px;
}

.custom-file-upload {
    display: block;
    width: auto;
    font-size: 16px;
}

.file-upload-wrapper {
    position: relative;
    margin-bottom: 5px;
    margin-top: -5px;
}

.file-upload-input {
    font-size: 12px;
    padding: 11px 17px;
    border: none;
}

    .file-upload-input:focus {
        outline: 0;
    }

.file-upload-button {
    cursor: pointer;
    display: inline-block;
    font-size: 17px !important;
    height: 27px;
    line-height: 10px;
}

/*          START usp           */
.basket-page-cnt .usp-list {
    padding: 0;
}

#quickOrder .ddlb .ui-selectmenu-button {
    min-width: 250px;
}

.add-item-tooltip {
    right: -20px;
    top: 4px;
}

.tooltip-sign {
    cursor: pointer;
}

.addOption-wrapper .form-row .validation {
    padding-left: 0;
}

#addressBookPopupBody td {
    padding: 3px 10px;
}

.shipping-addresses-chb {
    margin: 20px 0;
}

    .shipping-addresses-chb label {
        font-size: 10px;
        letter-spacing: 1px;
    }

.default-address {
    margin: 5px 0 0 0;
}

.shipping-addresses-btn {
    margin: 0 8px 0 0;
}

.product-additional-info {
    width: 220px;
    overflow-wrap: break-word;
    word-break: break-all
}

.checkout-step .product-additional-info {
    width: auto;
}

.italic {
    font-style: italic;
}


.borderless > td {
    border: none;
}

.delivery-days span:not(:last-child)::after {
    content: ",";
}


#customShippingAddress .field-shippingaddress-preferredsupplier {
    display: none;
}

.home-carousel {
    width: calc(100vw - 17px);
    margin-left: calc((100% - 100vw + 17px) / 2);
    overflow: hidden;
    max-height: 540px;
}

.ui-touch-device .home-carousel {
    width: 100vw;
    margin-left: calc((100% - 100vw) / 2);
}

.home-carousel .banner {
    position: relative;
}

.carousel-content-item {
    display: none;
}

.home-carousel.has-carousel {
    height: 540px;
}

.productlist-list-page .home-carousel.has-carousel {
    top: 40px;
    margin-bottom: 40px;
}

.table {
    display: table;
}

    .table.fixed {
        table-layout: fixed;
    }

.table-cell.quarter {
    width: 25%;
}

.usp-list .table-cell {
    text-align: left;
}

.table-cell {
    display: table-cell;
}

    .table-cell.middle {
        vertical-align: middle;
    }

.banner-content-inside {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 19% 14.8%;
    box-sizing: border-box;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    flex-flow: column;
    -webkit-flex-flow: column;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    z-index: 1;
}

.image-tile-item .banner-content-inside h3 {
    font-size: 24px;
    line-height: 38px;
    margin-bottom: 15px;
    font-weight: normal;
    letter-spacing: 0.6px;
    font-family: 'BlackJackRegular';
}

.image-tile-item .banner-content-inside h2 {
    font-size: 42px;
    margin-bottom: 5px;
    letter-spacing: 0;
    font-family: 'OstrichSans Medium';
}

.banner-content-inside .btn {
    border: 1px solid;
    background: none;
    font-size: 26px;
    padding-left: 25px;
    padding-right: 25px;
}

    .banner-content-inside .btn .btn-cnt:after {
        content: none;
    }

.image-tile-item {
    position: relative;
    width: 100%;
    float: left;
}

    .image-tile-item .banner-content-inside h2,
    .image-tile-item .banner-content-inside h3 {
        color: #fff !important;
    }

    .image-tile-item .banner-content-inside .tile-link {
        color: #fff !important;
        font-size: 10px;
        letter-spacing: 0.5px;
        font-family: 'RobotoRegular';
        position: relative;
    }

        .image-tile-item .banner-content-inside .tile-link:after {
            content: '';
            width: 4px;
            height: 6px;
            background: url(../../files/icons/btn-icon-arrow.png) no-repeat;
            background-size: auto 6px;
            position: absolute;
            right: -10px;
            top: 0;
            bottom: 0;
            margin: auto;
        }

.image-tile-item-wrapper-link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: url(../../files/content/empty.png);
    z-index: 2;
}

.small-tiles-block {
    width: 100%;
    float: left;
}

.banner-content-inside.center {
    align-items: center;
    -webkit-align-items: center;
}

.image-tile-item .banner-content-inside.center h2 {
    margin-bottom: 10px;
}

.image-tile-item .banner-content-inside.center h3 {
    margin-bottom: 20px;
}

.ImageTilesContentBlock {
    padding-top: 20px;
    padding-bottom: 20px;
}

    .ImageTilesContentBlock.not-first {
        padding-top: 0px;
        margin-top: -40px;
    }

/* FullWidthBanner */
.banner {
    position: relative;
    min-height: 200px;
    height: 540px;
    text-align: right;
}

    .banner .banner-full-width {
        height: 540px;
    }

.productlist-list-page .banner,
.productlist-list-page .banner .banner-full-width {
    height: 460px;
}

.banner .banner-full-width img {
    display: block;
    height: 100%;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: inherit;
}

.banner-full-width {
    position: relative;
}

.banner-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    max-width: 1000px;
    width: 100%;
    height: 100%;
    margin: auto;
    padding: 64px 24px 24px 24px;
    box-sizing: border-box;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    flex-flow: column;
    -webkit-flex-flow: column;
}

    .banner-content.center-position {
        align-content: center;
        -webkit-align-content: center;
    }

.banner-content-text-wrapper {
}

.banner-content-text {
    width: 50%;
    float: right;
    text-align: left;
    padding-right: 8%;
    box-sizing: border-box;
    opacity: 0;
    margin-bottom: -50px;
    transition: all 0.5s ease-in-out 0s;
}

.animated .banner-content-text {
    opacity: 1;
    margin-bottom: 0;
}

.banner-content.center-position .banner-content-text {
    width: 100%;
    text-align: center;
    padding-left: 8%;
}

.banner h1 {
    color: #fff;
    font-size: 62px;
    line-height: 62px;
    font-family: 'OstrichSans Black';
}

.banner h2 {
    font-size: 36px;
    line-height: 44px;
    color: #fff;
}

.banner-icon-image {
    position: absolute;
    left: 2%;
    bottom: 0;
    max-height: 412px;
    opacity: 0;
    margin-left: -50px;
    transition: all 0.5s ease-in-out 0s;
}

.animated .banner-icon-image {
    opacity: 1;
    margin-left: 0;
}

.banner-full-width.overlay:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(50, 50, 50, 0.3);
}

.banner h1 {
    font-family: 'OstrichSans Black';
}

.banner h2 {
    font-family: 'BlackJackRegular';
}

.productlist-list-page .banner h2 {
    max-width: 380px;
    font-size: 20px;
    line-height: 32px;
    margin: auto;
}

.banner .btn {
    position: relative;
    overflow: visible;
    margin-top: 40px;
}

    .banner .btn:after {
        content: '';
        position: absolute;
        right: -44px;
        bottom: 24px;
        width: 32px;
        height: 58px;
        background: url(../../files/icons/carousel-arrow.png) no-repeat 0 bottom;
        background-size: 32px auto;
    }

.home-carousel.has-carousel + .above-content {
    top: 0;
}

.facet-range {
    max-width: 175px;
    margin: auto;
}

.range-from-to {
    margin: 12px 0 0 0;
}

.facet-range .range-from {
    text-align: left;
}

.facet-range .range-to {
    text-align: right;
}

.range-button {
    margin: 10px 0 0 0;
    text-align: center;
}

.facet-range .range-from input,
.facet-range .range-to input {
    width: 45px;
    text-align: center;
    border-radius: 3px;
    border: 1px solid #323232;
    font-size: 13px;
    height: 22px;
    line-height: 22px;
    padding: 0;
}

.table {
    display: table;
    width: 100%;
}

.table-cell:not(:first-child) {
    display: table-cell;
    padding-left: 10px;
}

.slider-range.ui-widget-content, .slider-range.ui-widget-content {
    background: #323232;
}

.slider-range.ui-corner-all, .slider-range .ui-corner-all {
    border-radius: 0;
}

.ui-slider .ui-slider-handle {
    top: -.6em;
    border-radius: 50%;
}

.slider-range .ui-state-default {
    background: #9fbfb4;
    border-color: #9fbfb4;
    outline: none;
}

.slider-range .ui-widget-header {
    background: #9fbfb4;
    border: none;
}

.slider-range.ui-widget.ui-widget-content {
    border-top: 4px solid #fff;
    border-bottom: 4px solid #fff;
    border-left: none;
    border-right: none;
}

.ui-slider-horizontal {
    height: 2px;
}

.receiver, .receivers-alert {
    display: table-row;
}

.receivers-alert {
    display: none;
}

    .receivers-alert .receiver-cell {
        padding-top: 30px;
    }

.receiver-name {
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 2px;
}

.receiver .receiver-cell {
    padding-bottom: 10px;
}

.receiver-cell {
    display: table-cell;
    vertical-align: middle;
}

    .receiver-cell:first-child {
        width: 25px;
        text-align: center;
        padding-right: 10px;
    }

.receiver-alert-message {
    font-size: 12px;
    line-height: 16px;
    padding-left: 10px;
}

.receiver-remove img {
    display: block;
}

/* START Custom checkbox */
.toggler {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    .toggler input[type="checkbox"] {
        position: absolute;
        opacity: 0;
    }

        .toggler input[type="checkbox"] + i {
            display: inline-block;
            background: #9b9b9b;
            width: 50px;
            height: 25px;
            border-radius: 15px;
            vertical-align: middle;
            cursor: pointer;
            position: relative;
            margin: 0 5px 0 0;
        }

            .toggler input[type="checkbox"] + i:after {
                content: '';
                display: block;
                background: #fff;
                border-radius: 50%;
                position: absolute;
                top: 2px;
                left: 2px;
                height: 21px;
                width: 21px;
                transition: all 100ms linear;
            }

            .toggler input[type="checkbox"] + i .on {
                display: none;
            }

        .toggler input[type="checkbox"]:checked + i {
            background: #9fbfb4;
        }

            .toggler input[type="checkbox"]:checked + i:after {
                left: 100%;
                margin-left: -23px;
            }

            .toggler input[type="checkbox"]:checked + i .off {
                display: none;
            }

            .toggler input[type="checkbox"]:checked + i .on {
                display: block;
            }

        .toggler input[type="checkbox"][disabled] + i {
            cursor: default;
        }

            .toggler input[type="checkbox"][disabled] + i:after {
                border-color: #d4d8dd;
            }

        .toggler input[type="checkbox"][disabled]:checked + i {
            background-color: rgba(23, 161, 134, 0.6);
        }

    .toggler .on,
    .toggler .off {
        color: #919da8;
        font-style: initial;
        font-weight: normal;
        position: absolute;
        top: -3px;
        left: 100%;
        padding-left: 15px;
    }

label + .toggler {
    margin-left: 15px;
}

.order-info-left,
.order-info-right {
    vertical-align: top;
}

.time-frame-time {
    font-weight: bold;
}

.service.top-dropdown .summary {
    min-width: 180px;
    padding: 0 0 20px 0;    
}

.product-list-page-banner .banner {
    height: auto;
}

    .product-list-page-banner .banner .banner-full-width {
        height: auto;
    }

        .product-list-page-banner .banner .banner-full-width img {
            position: static;
            left: inherit;
            -webkit-transform: inherit;
            transform: inherit;
            height: auto;
            max-width: 100%;
        }

.delivery-seletion {
    display: flex;
    justify-content: space-between;
}

    .delivery-seletion a {
        flex-basis: 48%;
    }

.upload-excel:hover {
    cursor: pointer;
}

.btn-checkout.disabled {
    pointer-events: none;
    cursor: default;
    background-color: lightgrey;
    border: none;
}

.tbx-quantity .qty-error[data-image-view="true"] > span,
.tbx-quantity .qty-error[data-image-view="true"] {
    line-height: 16px;
    width: 16px;
    height: 16px;
}

    .tbx-quantity .qty-error[data-image-view="true"] > span {
        display: block;
        background: url(../../files/icons/form-icon-invalid.png) no-repeat center center !important;
    }

.btn-order:disabled,
.btn-order:disabled:hover {
    background-color: lightgray;
    border: none;
}

.oci-order .multi-address-selection,
.edit-order .multi-address-selection {
    display: none;
}

.oci-order #customShippingAddress,
.edit-order #customShippingAddress {
    width: 50%;
    display: block;
}

.ui-datepicker-current-day {
    background-color: #9fbfb4 !important;
}

.ui-state-disabled {
    background: #f5f5f5 !important;
}

.delivery-calendar .ui-datepicker-current-day .ui-state-active {
    color: #323232;
}

.order-box .ddlb-component:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
}

.order-box .ddlb-component.unlocked:after {
    content: none;
}

.quantity-error-message {
    padding: 2px 0 2px 10px;
    margin-bottom: 15px;
}

.row-error .quantity-error {
    display: block;
}

.row-passed .quantity-error {
    display: none;
}

.quantity-error {
    padding-left: 20px;
}

.additional-options-info-text-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    margin-left: 5px;
}

    .additional-options-info-text-container * {
        cursor: pointer;
    }

.additional-options-info-text-container {
    border: dashed 1px #323232;
    min-height: 44px;
    text-align: right;
}

.additional-options-info-text-edit-icon {
    width: 12px;
    height: 12px;
    background-size: 12px 12px;
    margin-left: 5px;
    margin-right: 7px;
    flex-shrink: 0;
    text-align: right;
}

.additional-options-info-text-value {
    padding: 5px;
    line-height: 1.4;
    text-align: left;
    min-width: 180px;
}

.edit-additional-option-text-popup-buttons {
    margin-top: 20px;
}

.field-validation-error {
    padding: 2px 0 2px 20px;
}

.choco-popup-header-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}

li.suppliersearch_item {
    height: 125px;
}

#supplierSearchPage_wrapper {
    display: table;
    table-layout: fixed;
    width: 100%;
}

#supplierSearchPage_form {
    display: table-cell;
    width: 50%;
}


#supplierSearchPage_result {
    margin-top: 40px;
}

.supplier-search-query {
    width: 60%;
    float: left;
}

.supplier-search-option {
    margin-right: 5px;
    width: 30%;
    float: left;
}

li.suppliersearch_item {
    padding: 5px;
    cursor: pointer;
}

.selectedPickUpSubsupplier {
    background-color: #eeeeee;
}

.ddlb .floating-label {
    opacity: 1;
    transform: translate(-18px, -31px) scale(0.9);
}

.one-step-checkout-steps {
    margin-bottom: 80px;
}

    .one-step-checkout-steps .checkout-step {
        padding-top: 15px;
        margin-bottom: 20px;
    }

    .one-step-checkout-steps .dotted-frame {
        background-image: linear-gradient(to right, #323232 20%, rgba(255,255,255,0) 0%);
        background-position: top;
        background-size: 5px 1px;
        background-repeat: repeat-x;
    }

.one-step-checkout-header {
    text-align: center;
    margin-bottom: 30px;
}

.one-step-checkout-steps .rush-order-image {
    padding-left: 15px;
}

.one-step-checkout-steps .order-info-wrapper {
    width: 100%;
    display: block;
}

.one-step-checkout-steps .order-info-right {
    width: 100%;
    display: block;
}

span.jetSelectionHeader {
    font-weight: bold;
}

ul.jetSelectionList1 {
    list-style-type: none;
    padding-left: 5px;
    padding-top: 0px;
    margin-top: 0px;
}

ul.jetSelectionList2, ul.jetSelectionList3 {
    list-style-type: none;
    padding-left: 15px;
}

.jetDeliveryInfo,
.jetOrderRemark {
    display: block;
}

.use-multi-address-radio {
    -ms-transform: scale(1.5); /* IE 9 */
    -webkit-transform: scale(1.5); /* Chrome, Safari, Opera */
    transform: scale(1.5);
}

.use-multi-address-selection {
    padding-right: 20px;
}

    .use-multi-address-selection label {
        padding-left: 5px;
    }

.multi-address-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media screen and (min-width: 640px) {
    .checkout-orderinfo-page .order-info-left .form-row {
        margin-left: 0;
        margin-right: 4%;
    }

        .checkout-orderinfo-page .order-info-left .form-row:nth-child(2n),
        .checkout-orderinfo-page .order-info-left .js-moment-configuration,
        .checkout-orderinfo-page .order-info-left .field-reference,
        .checkout-orderinfo-page .order-info-left .field-reference {
            margin-right: 0;
        }

    .basket-details-page .quantity-error {
        position: absolute;
        bottom: 10px;
        right: -40%;
        min-width: 250px;
        padding-left: 15px;
        margin-right: 50px;
    }
}

@media screen and (max-width: 639px) {
    .basket-details-page .quantity-error {
        float: left;
        margin-top: 10px;
        clear: both;
        margin-left: -9px;
        margin-right: 0;
    }
}

#address-cards-container {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}

    #address-cards-container .card {
        width: 10rem;
        background-color: #f2f2f2;
        border-radius: 10px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        padding: 2%;
        position: relative;
        font-size: 0.9rem;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    #address-cards-container .delete-btn {
        top: 5px;
        right: 5px;
        width: 15px;
        height: 15px;
        padding: 3px;
    }

    #address-cards-container .edit-btn {
        cursor: pointer;
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        width: 20px;
        height: 20px;
        padding: 4px;
    }

.fullpage-modal-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    text-align: center;
}

.close-btn {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}

.btn.btn-add-address1 {
    display: block;
    margin: 0 auto;
    padding: 8px 16px;
}

.dataTables_wrapper {
    text-align: left !important;
}

    .dataTables_wrapper table {
        text-align: left !important;
    }

    .dataTables_wrapper th,
    .dataTables_wrapper td {
        text-align: left !important;
    }

.custom-modal {
    position: fixed;
    z-index: 99999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    justify-content: center;
}

    .custom-modal.hidden {
        display: none;
    }

.custom-modal-content {
    background-color: white;
    padding: 20px 30px;
    border-radius: 10px;
    text-align: center;
    position: relative;
    max-width: 400px;
    width: 100%;
    box-shadow: 0 0 15px rgba(0,0,0,0.3);
    font-size: 16px;
}

    .custom-modal-content.success {
        border-left: 5px solid #28a745;
    }

    .custom-modal-content.error {
        border-left: 5px solid #dc3545;
    }

.custom-modal-close {
    position: absolute;
    top: 8px;
    right: 12px;
    font-size: 24px;
    color: #aaa;
    cursor: pointer;
}

#multi-address-wrapper .form-row .validation:not(.left),
#multi-address-wrapper .form-row .description,
#multi-address-wrapper .form-button {
    padding-left: 0;
}

.drop-zone-success {
    border: 2px solid #4CAF50 !important;
    background-color: #e8f5e9;
    color: #2e7d32;
}

.drop-zone-error {
    border: 2px solid #f44336 !important;
    background-color: #ffebee;
    color: #c62828;
}

.drop-zone-message {
    margin-top: 10px;
    font-size: 14px;
}


.invalid-row {
    background-color: #ffdddd !important;
    border: 1px solid red !important;
}

.row.address-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding-top: 50px;
    padding-bottom: 10px;
}

@media (max-width: 768px) {
    .row.address-controls {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px !important;
        padding-top: 20px !important;
        padding-bottom: 5px !important;
        overflow: hidden !important;
    }

        /* Alle drie de divs naast elkaar, gelijke ruimte */
        .row.address-controls > div {
            flex: 1 1 auto !important;
            min-width: 0 !important;
        }

        /* Titel iets kleiner en niet breken */
        .row.address-controls .address-title u {
            font-size: 14px !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

    /* Knoppen kleiner, text niet breken */
    #view-toggle-buttons button.btn,
    #deletemultiadresses.btn {
        padding: 1px 5px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    /* Zorg dat buttons niet uitrekken */
    .row.address-controls button.btn {
        flex-shrink: 1 !important;
        min-width: 0 !important;
    }

    /* Zorg dat view-toggle-buttons netjes uitgelijnd blijven */
    #view-toggle-buttons {
        justify-content: center !important;
    }
}

.modal-content {
    overflow: visible !important;
    position: relative !important;
    z-index: 1050; /* hoger dan andere elementen */
    background-color: #fff;
    margin: 0 auto;
    padding: 20px;
    border: 3px solid #888;
    width: 35%;
    max-width: 90vw; /* maximaal 90% van viewport */
    min-width: 300px; /* voorkom te smal */
    border-radius: 8px;
    box-sizing: border-box;
    overflow-wrap: break-word; /* lange woorden afbreken */
    word-wrap: break-word;
}

    .modal-content * {
        max-width: 100%;
        box-sizing: border-box;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }

    .modal-content a.btn.no-icon.btn-green {
        display: inline-block;
        max-width: 100%;
        word-wrap: break-word;
        overflow-wrap: break-word;
        text-decoration: none;
        box-sizing: border-box;
    }

/* Optioneel: maak het <br> effect duidelijker (eventueel vervangen door margin) */
.box__input > br {
    display: block;
    margin: 8px 0;
}

/* Zorg dat tekst in buttons en spans ook goed breekt */
.modal-content button,
.modal-content span,
.modal-content h3,
.modal-content p {
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
}

.address-selector div {
    display: none;
}

    .address-selector div:first-child {
        display: block;
    }

/* ThreePart Banner */
.three-banners {
    display: grid;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 619.767fr 385.362fr;
    gap: 18.228px;
    height: 388px;
    margin: 20px 0;
}

.tpb-banner--left {
    grid-column: 1;
    grid-row: 1 / span 2;
}

.tpb-banner--right-top {
    grid-column: 2;
    grid-row: 1;
}

.tpb-banner--right-bottom {
    grid-column: 2;
    grid-row: 2;
}

.tpb-banner {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
}

.tpb-banner_content_left {
    position: absolute;
    width: 400px;
    padding: 0px;
    bottom: 25px;
    left: 20px;
    margin: 0px;
}

.tpb-banner_content-right {
    position: absolute;
    width: 240px;
    padding: 0px;
    top: 16px;
    left: 20px;
    margin: 0px;
}

.tpb-banner_title {
    color: #fff;
    font-family: 'SourceSans3Bold';
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.1;
    padding: 0px;
    margin: 0px;
}

.tpb-banner_subtitle {
    color: #fff;
    font-family: 'RobotoRegular';
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    padding: 0px;
    margin: 0px 0px 20px 0px;
    line-height: 1.2;
}

.tpb-banner_btn {
    display: inline-flex;
    justify-content: center;
    border-radius: 30px;
    padding: 10px 40px;
    flex-shrink: 0;
    color: #fff;
    font-family: 'RobotoRegular';
    font-size: 14px;
    font-style: normal;
    font-weight: 200;
    line-height: normal;
    letter-spacing: 0.05em;
}

@media (max-width:768px) {
    .three-banners {
        display: flex;
        overflow-x: auto;
        gap: 12px;
        padding-bottom: 4px;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        height: auto;
    }

        .three-banners::-webkit-scrollbar {
            display: none;
        }

        .three-banners > .tpb-banner {
            flex: 0 0 100%;
            min-width: 100%;
            min-height: 40vw;
            scroll-snap-align: start;
            scroll-snap-stop: always;
            height: auto;
        }
    /*        De onderstaande code tijdelijk uitgezet, dus niet verwijderen (02-06-2025). Deze vormen de navigatie-bolletjes onder de 3 banners in de mobiele weergave.
            .tpb-dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin: 8px auto 0;
        }

        .tpb-dots a {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #ddd;
            display: inline-block;
        }

        .tpb-dots a.active {
            background: #666;
        }*/
}

@media (min-width:769px) {
    .tpb-dots {
        display: none;
    }
}

/* wrapper voor positionering van knoppen en dots */
.tpb-carousel {
    position: relative;
}

/*    .tpb-banner {
        position: relative;
    }*/

/* container is het referentiekader */
.tpb-banner__link {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 2; /* <-- zorgt dat de link overal klikt */
}

/* Forceer carousel-modus wanneer je de class 'force-carousel' gebruikt */
.three-banners.force-carousel {
    display: flex !important;
    overflow-x: auto !important;
    gap: 12px;
    padding-bottom: 4px;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    height: auto;
    width: 100%;
}

    .three-banners.force-carousel::-webkit-scrollbar {
        display: none;
    }

    .three-banners.force-carousel > .tpb-banner {
        flex: 0 0 100%;
        min-width: 100%;
        height: auto;
        min-height: 40vw;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }
