﻿html, body {
    height: 100%;
}

html{
    -webkit-font-smoothing: antialiased;
}

body{
    line-height: 24px;
}

.recaptcha-box {
    z-index: 9999;
}

h1, .font-h1,
h2, .font-h2,
h3, .font-h3,
h4, .font-h4{
    text-transform: uppercase;
    line-height: 1.4em;
    font-weight: normal;
    margin: 0;
}

h1,
h2{
    line-height: 1;
}

.font-h4{
    text-transform: uppercase;
}

.h1-holder,
.html-wrapper h1{
    padding-top: 13px;
    margin-bottom: 6px;
}

.h1-holder h1{
    display: inline;
}

.h1-holder .additional{
    margin-left: 56px;
}

.h1-holder a{
    margin-left: 15px;
}

.combined-header{
    margin-top: 29px;
}

.combined-description{
    padding-bottom: 10px;
}

.combined-header .facets-title{
    display: block;
    text-transform: none;
}

.custom-bg{
    background-origin: content-box;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.custom-bg .center{
    position: relative;
    z-index: 1;
}

.custom-bg:before{
    background-color: rgba(200,200,200,.5);
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: auto!important;
    z-index: 0;
}

.content-header .center{
    padding-top: 22px;
}

.colored-header-desktop{
    position: relative;
}

.colored-header-desktop:before{
    box-shadow: inset 0 6px 3px -3px rgba(0,0,0,0.1);
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
}

.font-lowercase{
    text-transform: lowercase;
}

a{
    cursor: pointer;
    text-decoration: none;
    -ms-word-wrap:break-word;
    word-wrap:break-word;
}

a:hover{
    text-decoration: underline;
}

button{
    outline: none;
}

button::-moz-focus-inner{
    border: 0;
    padding: 0;
}

textarea{
	resize: none;
}

sup{
    top: -0.7em;
    font-size: 50%;
}

img{
    max-width: 100%;
}

/* fix FF bug: the border isn't visible when tbody is empty */
tbody:empty{
    display: none;
}

.hide{
	display: none !important;
}

.invisible{
    visibility: hidden;
}

.is-hidden{
    opacity: 0;
}

.is-visible{
    opacity: 1;
	transition: all .125s ease-in-out;
}

.clearfix:before,
.clearfix:after{
    display: table;
    content: " ";
}

.clearfix:after{
    clear: both;
}

ul.reset,
p.reset{
    margin: 0;
    padding: 0;
    list-style: none;
}

.text-left{
    text-align: left;
}

.text-center{
    text-align: center;
}

.text-right{
    text-align: right;
}

.no-script{
    margin: 0;
}

.site{
    display: table;
    table-layout:fixed;
    width: 100%;
    height: 100%;
    /* -MODIF */
    padding-bottom: 0px !important;
}

.content{
    position: relative;
    z-index: 1;
}

.center{
    margin: 0 auto;
    max-width: 1000px;
}

.center:before,
.center:after{
    content: " ";
    display: table;
}

.center:after{
    clear: both;
}

.ellipsis{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.btn{
    border-width: 0 0 1px 0;
    border-style: solid;
    cursor: pointer;
    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;
    text-shadow: rgba(0,0,0,0.3) 0 1px 1px;
    text-transform: uppercase;
    overflow: hidden;
    white-space: normal;
    border-radius: 2px;
}

.btn .btn-cnt{
    display: inline-block;
    line-height: 15px;
    padding-top: 3px;
}

.btn:after{
    content: '';
    display: block;
    width: 27px;
    height: 35px;
    background:
        url(../png/btn-bg-right-bottom.png) left top no-repeat,
        url(../png/btn-arrow-right.png) center center no-repeat;
    position: absolute;
    top: 0;
    right: 0;
}

.btn-small{
    height: 30px;
    line-height: 28px;
    padding-right: 14px;
}

.btn-small .btn-cnt{
    line-height: 14px;
    padding-top: 1px;
}

.btn-small:after,
.btn-small .btn-cnt:after{
    display: none;
}

.btn-medium{
    height: 40px;
    line-height: 36px;
    border-bottom-width: 2px;
    padding: 0 40px 0 15px;
}

.btn-medium .btn-cnt{
    line-height: 17px;
}

.btn-medium:after,
.btn-medium .btn-cnt:after{
    width: 30px;
    height: 40px;
}

.btn-big{
    height: 45px;
    line-height: 44px;
    text-shadow: 0 1px 0 rgba(0,0,0,0.3);
    border-bottom-width: 2px;
    padding: 0 54px 0 18px;
}

.btn-big .btn-cnt{
    line-height: 19px;
}

.btn-big:after,
.btn-big .btn-cnt:after{
    width: 38px;
    height: 45px;
}

a.btn:hover{
    text-decoration: none;
}

.btn.no-icon,
.btn.no-caption{
    padding-right: 14px;
    /* -MODIF */
    border-radius: 0 3px 3px 0;
    border: 1px solid #ffffff;
}

.btn-big.no-icon,
.btn-big.no-caption{
    padding-right: 18px;
}

.btn.no-icon:after,
.btn.no-icon .btn-cnt:after,
.btn.no-caption:after,
.btn.no-caption .btn-cnt{
    display: none;
}

.btn-selected{
    cursor: default;
    pointer-events: none;
}

.btn-selected:after,
.btn-selected .btn-cnt{
    visibility: hidden;
}

.btn-selected:before{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 14px;
    height: 16px;
    background: url(../png/confirm-white.png) center center no-repeat;
}

.btn-disabled,
.btn-disabled-ghost{
    pointer-events: none;
}

.btn-disabled,
.btn[disabled]{
    cursor: default;
    text-shadow: none;
}

.btn-disabled:after,
.btn[disabled]:after{
    background:
        url(../png/btn-bg-right-bottom.png) left top no-repeat,
        url(../png/btn-arrow-right-disabled.png) center no-repeat;
}

.btn-load-more {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.btn-load-more:after {
    background: url(../png/btn-bg-right-bottom.png) left top no-repeat, url(../png/btn-arrow-down.png) center center no-repeat;
}

.btn-configure-quick-order {
    margin-top: -3px;
    margin-bottom: 5px;
}

.btn.btn-load-more.loading,
.btn-configure-product.loading {
    cursor: default;
    pointer-events: none;
}

.btn-load-more.loading:after,
.btn-configure-product.loading:after {
    background: url(../png/btn-bg-right-bottom.png) left top no-repeat, url(../gif/btn-loading.gif) center center no-repeat;
}

.font-btn {
    text-transform: uppercase;
}

.btn-back,
.btn-cancel{
    background: none;
    border: none;
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
}

.btn-back:before{
    content: '‹';
    font-family: Arial, _serif;
    font-size: 24px;
    font-weight: bold;
    margin-right: 4px;
}

.btn-back:hover,
.btn-cancel:hover{
    text-decoration: none;
}

.btn-plus{
    padding: 0 14px 0 40px;
}

.btn-plus:after{
    background:
        url(../png/btn-bg-left-bottom.png) right bottom no-repeat,
        url(../png/increase.png) center center no-repeat;
    left: 0;
}

.btn-show-hide{
    width: 25px;
    height: 25px;
    padding: 0;
}

.btn-show-hide:after{
    display: none;
}

.btn-show-hide:before{
    background-image: url(../png/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(../png/decrease.png);
    height: 3px;
    width: 7px;
    margin-top: -1px;
    margin-left: -3px;
}

.btn-back:not(.btn-disabled) {
    cursor: pointer;
}

.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-btn.btn-disabled{
    background-color: transparent;
    border-color: transparent;
}

.hyp-clear:before{
    background: url(../png/clear.png) no-repeat scroll 0 0 transparent;
    height: 13px;
    width: 11px;
}

.hyp-btn.btn-disabled.hyp-clear:before{
    background: url(../png/clear-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-update:before{
    background: url(../png/refresh.png) no-repeat scroll 0 0 transparent;
    height: 14px;
    width: 12px;
}

.hyp-btn.btn-disabled.hyp-update:before{
    background: url(../png/refresh-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-wishlist:before{
    background: url(../png/wishlist.png) no-repeat scroll 0 0 transparent;
    height: 12px;
    width: 14px;
}

.hyp-btn.btn-disabled.hyp-wishlist:before{
    background: url(../png/wishlist-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-save:before{
    background: url(../png/save.png) no-repeat scroll 0 0 transparent;
    height: 12px;
    width: 12px;
}

.hyp-btn.btn-disabled.hyp-save:before{
    background: url(../png/save-disabled.png) no-repeat scroll 0 0 transparent;
}

.hyp-load:before{
    background: url(../png/load.png) no-repeat scroll 0 0 transparent;
    height: 13px;
    width: 15px;
}

.btn-like-link{
    background: none;
    border: none;
    cursor: pointer;
}

.btn-like-link:hover{
    text-decoration: underline;
}

.btn-white{
    border-width: 1px;
    border-style: solid;
    text-shadow: none;
}

.btn-scroll-top{
    position: fixed;
    right: 20px;
    bottom: 70px;
    padding: 0;
    opacity: 0;
    width: 45px;
    height: 45px;
    border-width: 0 0 1px 0;
    border-radius: 50%;
    -webkit-transform: translateX(0px) translateY(70px);
    -ms-transform: translateX(0px) translateY(70px);
    transform: translateX(0px) translateY(70px);
    -webkit-transition:
        opacity 300ms ease-in-out,
        -webkit-transform 300ms ease-in-out;
    -o-transition:
        opacity 300ms ease-in-out,
        transform 300ms ease-in-out;
    transition:
        opacity 300ms ease-in-out,
        -webkit-transform 300ms ease-in-out;
    transition:
        opacity 300ms ease-in-out,
        transform 300ms ease-in-out;

    will-change: transform;
    z-index: 2;
    visibility: hidden;
}

.btn-scroll-top.show{
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateX(0px) translateY(0px);
    -ms-transform: translateX(0px) translateY(0px);
    transform: translateX(0px) translateY(0px);
}

.btn-scroll-top::after{
    display: none;
}

.btn-scroll-top .arrow{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.sticky-rails .btn .icon-layer,
.btn-scroll-top .icon-layer{
    fill: #fff;
}

.sticky-rails{
    position: fixed;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 8px 0;
    background: #fff;
    border-top: 1px solid #e6e6e6;
    display: none;
    z-index: 1;
}

.sticky-rails .center{
    display: flex;
    align-items: center;
    justify-content:space-around;
}

.sticky-rails .btn{
    margin-left: auto;
}

.sticky-rails.is-visible{
    display: block;
}

.sticky-rails .btn svg{
    display:none;
    position: absolute;
    top: 2px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.sticky-rails-amount{
    margin: 0 4px 0 0;
}

.sticky-rails.is-compact{
    border: none;
    background: transparent;
    position: static;
    padding: 0;
}

.sticky-rails.is-compact .btn svg{
    display: block;
}

.sticky-rails.is-compact .btn{
    position: fixed;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    right: 20px;
    bottom: 130px;
    z-index: -1;
    opacity: 0;
    padding:0;

    -webkit-transition: opacity .25s ease;
    -o-transition: opacity .25s ease;
    transition: opacity .25s ease;
    will-change: opacity;
}

.sticky-rails.is-compact .sticky-rails-title,
.sticky-rails.is-compact .btn:after,
.sticky-rails.is-compact .btn-cnt{
    display:none;
}

.sticky-rails.is-visible .btn{
    opacity: 1;
    z-index: 1;
}

/*          jquery ui menus            */
.ui-button{
    padding: 0;
    margin: 0;
}

.semicolumn{
    width: 60%;
}

.lbl-stock{
    font-weight: bold;
}

/*          flexi controls           */
.html-wrapper{
    word-wrap: break-word;
}

.fr-view pre{
    margin: 0;
}
/*          END flexi controls           */


/*          text boxes           */
.tbx,
.tar{
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-radius: 3px;
    position: relative;
}

.tbx input,
.tar textarea{
    display: block;
    border: 0 none;
    background: transparent;
    box-sizing: border-box;
    width: 100%;
    outline: none;
    padding: 0px 14px;
}

.tbx input{
    height: 34px;
}

.tbx-small input{
    height: 27px;
}

.tar textarea{
    height: 75px;
    padding-top: 4px;
    padding-bottom: 4px;
}

::-webkit-input-placeholder{
    font-style: italic;
}

::-moz-placeholder{
    font-style: italic;
}

:-ms-input-placeholder{
    font-style: italic;
}

.tbx-date{
    padding-right: 19px;
}

.tbx-date:after{
    background: url(../png/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(../png/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: 11px;
    color: #cb2245;
}

.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;
}

.icon-status{
    line-height: 1;
}

.icon-status:before{
    display: inline-block;
    font-size: 1.4em;
    font-weight: bold;
}

.icon-status .text-status{
    display: none;
}

.ui-touch-device .icon-status .text-status{
    display: inline;
    margin-left: 5px;
}

/*          START file uploader         */
.uploader{
    box-sizing: border-box;
    position: relative;
    padding: 15px 0;
    text-align: center;
    line-height: normal;
    border-width: 2px;
    border-style: dashed;
    -webkit-transition: border-color .15s ease-in-out, background .15s linear;
    transition: border-color .15s ease-in-out, background .15s linear;
}

.uploader-file{
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.uploader-file + label{
    max-width: 80%;
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
}

.uploader-file:focus + label{
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}

.uploader-cancel{
    display: none;
    margin-left: 10px;
}

.uploader-selected-files,
.is-files-selected .uploader-choose-file,
.is-files-selected .uploader-dragndrop{
    display: none;
}

.is-files-selected .uploader-cancel,
.is-files-selected .uploader-selected-files{
    display: inline;
}
/*          END file uploader         */

/*          jquery ui menus            */
.ui-menu .ui-menu-item{
    list-style: none;
}

.ui-menu .ui-menu-item-wrapper{
    padding: 0;
}

.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;
}

.inline-loading-indicator{
    text-align: center;
}

.inline-loading-indicator .loading-indicator-img{
    margin-right: 10px;
    vertical-align: middle;
}

.loading-indicator-img{
    display:inline-block;
    width: 32px;
    height: 32px;
    -webkit-animation: spinner .48s linear infinite;
    animation: spinner .48s linear infinite;
    will-change: transform;
}

@-webkit-keyframes spinner{
    0%, 8.3332%      {transform: rotate(0deg) translate3d(0,0,0);}
    8.3333%, 16.6666%{transform: rotate(30deg) translate3d(0,0,0);}
    16.6667%,24.9999%{transform: rotate(60deg) translate3d(0,0,0);}
    25%, 33.3332%    {transform: rotate(90deg) translate3d(0,0,0);}
    33.3333%,41.6666%{transform: rotate(120deg) translate3d(0,0,0);}
    41.6667%,49.9999%{transform: rotate(150deg) translate3d(0,0,0);}
    50%,58.3332%     {transform: rotate(180deg) translate3d(0,0,0);}
    58.3333%,66.6666%{transform: rotate(210deg) translate3d(0,0,0);}
    66.6667%,74.9999%{transform: rotate(240deg) translate3d(0,0,0);}
    75%,83.3332%     {transform: rotate(270deg) translate3d(0,0,0);}
    83.3333%,91.6666%{transform: rotate(300deg) translate3d(0,0,0);}
    91.6667%,99.9999%{transform: rotate(330deg) translate3d(0,0,0);}
}

@keyframes spinner{
    0%, 8.3332%      {transform: rotate(0deg) translate3d(0,0,0);}
    8.3333%, 16.6666%{transform: rotate(30deg) translate3d(0,0,0);}
    16.6667%,24.9999%{transform: rotate(60deg) translate3d(0,0,0);}
    25%, 33.3332%    {transform: rotate(90deg) translate3d(0,0,0);}
    33.3333%,41.6666%{transform: rotate(120deg) translate3d(0,0,0);}
    41.6667%,49.9999%{transform: rotate(150deg) translate3d(0,0,0);}
    50%,58.3332%     {transform: rotate(180deg) translate3d(0,0,0);}
    58.3333%,66.6666%{transform: rotate(210deg) translate3d(0,0,0);}
    66.6667%,74.9999%{transform: rotate(240deg) translate3d(0,0,0);}
    75%,83.3332%     {transform: rotate(270deg) translate3d(0,0,0);}
    83.3333%,91.6666%{transform: rotate(300deg) translate3d(0,0,0);}
    91.6667%,99.9999%{transform: rotate(330deg) translate3d(0,0,0);}
}

/*          grids           */
.gvi{
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 20px;
	width: 100%;
}

.gvi td{
    border-width: 0 0 1px 0;
    border-style: solid;
    padding: 9px 5px;
}

.gvi th{
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-weight: normal;
    padding: 9px 5px;
    white-space: nowrap;
}

.gvi .title{
    font-weight: bold;
}

.gvi .product-title-super{
    text-transform: uppercase;
}

.action-links{
    margin-top: 10px;
}

.action-links .hyp{
    line-height: 20px;
}

.action-links .hyp + .hyp{
    margin-left: 23px;
    padding-left: 23px;
}

.inner-row td{
    border: none;
}

.upper-row td{
    border-width: 1px 0 0 0;
}

.gvi-order-lines td{
    vertical-align: top;
}

.gvi-name-value td{
    padding: 5px;
    vertical-align: top;
}

.gvi-name-value .name{
    width: 35%;
}

.gvi-represent .customer-name{
    font-weight: bold;
}

.responsive-table td:before{
    display: none;
}

.col-sort{
    cursor: pointer;
}

.sort-hint{
    display: inline-block;
    position: relative;
    margin: 0 7px;
    vertical-align: middle;
    visibility: hidden;
}

th:hover .sort-hint{
    visibility: visible;
}

th.is-col-sort-asc .sort-hint,
th.is-col-sort-desc .sort-hint{
    display: none;
}

.sort-hint:before,
.sort-hint:after{
    border: 5px solid transparent;
    content: '';
    position: absolute;
}

.sort-hint:before{
    border-top-width: 0;
    bottom: 2px;
}

.sort-hint:after{
    border-bottom-width: 0;
    top: 2px;
}

.is-col-sort-asc:after,
.is-col-sort-desc:after{
    border: 5px solid transparent;
    content: '';
    display: inline-block;
    margin: 0 5px;
    vertical-align: middle;
}

.is-col-sort-asc:after{
    border-top-width: 0;
}

.is-col-sort-desc:after{
    border-bottom-width: 0;
}

/*          product tile            */
.product-tile .product-img{
    padding-right: 10px;
    float: left;
    vertical-align: top;
    width: 65px;
    flex-shrink: 0;
}

.product-tile .hyp-thumbnail{
    height: 64px;
    width: 64px;
}

.product-tile .product-info{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.product-tile .product-description{
	margin-bottom: 13px;
    width: 100%;
}

.product-tile .product-title{
    display: inline-block;
    font-weight: bold;
    line-height: 16px;
    max-width: 100%;
}

.product-tile .prices{
    display: block;
    margin-bottom: 7px;
}

.list-mode .product-tile .prices {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-tile .lbl-price{
    font-weight: bold;
}

.product-tile .msg-not-available{
    line-height: 35px;
}

.product-tile .product-attributes .value:not(:last-child):after {
    content: ' | ';
}

.product-tile .product-id + .stock-indication{
    margin-left: 17px;
    padding-left: 17px;
}

.products-flow{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
    margin-top: 25px;
    margin-bottom: 25px;
}

.products-flow .product-tile{
    box-sizing: border-box;
    padding: 0 10px;
    margin: 20px 0;
}

.products-flow .list-prices{
    display: block;
    line-height: normal;
    margin-bottom: 4px;
}

.products-flow .list-prices .list-price,
.products-flow .list-prices .list-price-discount{
    display: block;
}

.flexi-row:not(.center) .products-flow{
    margin-right: 0;
    margin-left: 0;
    padding: 0 1.85%;
}

.products-group{
    padding-bottom: 15px;
}

.products-group + .products-group{
    margin-top: 25px;
}

.products-flow .product-tile,
.blocks-row .product-tile{
    display: flex;
}

.blocks-row .product-tile {
    height: 100%;
}

.products-flow .product-info,
.blocks-row .product-info{
    flex-direction: column;
    height: 100%;
    width: calc(100% - 65px); /* 65 pixels is fixed width of column with thumbnail image */
}

.products-flow .product-action,
.blocks-row .product-action {
    margin-top: auto;
}

.products-group .slick-track{
    margin-left: 0;
    margin-right: 0;
    display: flex;
}

.products-group .slick-slide{
    height: auto;
}

/*          START header             */
header{
    position: relative;
    z-index: 2;
}

.sana-cookiebar{
    display: none;
    text-align: center;
    padding: 5px;
    box-sizing: border-box;

    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.sana-cookiebar.is-bottom{
    position: fixed;
    z-index: 3;
    bottom: 0;
    width: 100%;
}

.sana-cookiebar.is-active{
    display: -webkit-flex;
    display: flex;
}

.sana-cookiebar .sana-cookiebar-holder{
    display: -webkit-flex;
    display: flex;
    margin: 0 10px;
}

.sana-cookiebar .sana-cookiebar-holder .btn{
    white-space: nowrap;
}

.sana-cookiebar .sana-cookiebar-holder .btn:not(:first-child){
    margin-left: 10px;
}

.top-header{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    position: relative;
    max-width: 1000px;
    z-index: 3;
}

.top-info.phone-icon:before{
    background: url('../png/phone.png');
    content: '';
    display: inline-block;
    margin-right: 9px;
    height: 18px;
    width: 18px;
    vertical-align: middle;
}

.top-hyp{
    display: inline-block;
    height: 20px;
    line-height: 20px;
    margin-top: 7px;
    margin-bottom: 7px;
    vertical-align: top;
    padding: 0 15px;
    /* -MODIF */
    color: #ffffff!important;
}

.top-dropdown{
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: transparent;
    display: inline-block;
    height: 20px;
    position: relative;
    line-height: 20px;
    margin-top: 7px;
    margin-bottom: 7px;
    vertical-align: top;
    white-space: normal;
    z-index: 14;
}

.top-dropdown:hover,
.top-dropdown.hover{
    margin-top: 0;
    margin-bottom: 0;
    height: 34px;
}

.top-dropdown .summary{
    border-width: 1px;
    border-style: solid;
    position: absolute;
    top: 100%;
    z-index: -1;
    display: block;
    visibility: hidden;
}

.top-dropdown:hover .summary,
.top-dropdown.hover .summary{
    z-index: 11;
    visibility: visible;
}

.top-dropdown:hover .opener,
.top-dropdown.hover .opener{
    height: 34px;
    z-index: 12;
}

.top-dropdown .opener{
    background: transparent;
    height: 100%;
    padding-bottom: 1px;
}

.top-dropdown .summary:after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -1px;
    bottom: 0;
    background: rgba(255,0,0,0);

    transition: none;
    pointer-events: auto;
    z-index: 12;
}

.top-dropdown.hover .summary:after,
.top-dropdown:hover .summary:after {
    z-index: -1;
    transition: z-index 400ms linear -150ms;
    opacity: 0;
}

.mob-account-btn {
    display: none;
}

.opener{
    position: relative;
}

.mob-account-btn:after,
.opener:after{
    background: url('../png/arrow-down-blk.png');
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 13px;
    margin: auto;
    height: 5px;
    width: 11px;
}
/*
.login .opener:after {
    margin-right: -50px;
}*/

.middle-header{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    min-height: 63px;
    /* -MODIF */
    margin: 0px auto;
    max-width: 1000px;
    z-index: 2;
}

.bottom-header{
    position: relative;
    z-index: 1;
}

/*           language            */
.language.top-dropdown .opener{
    width: 63px;
}

.language.top-dropdown .opener .fake-flag {
    padding: 0 5px;
}

.language.top-dropdown:hover .opener .fake-flag {
    line-height: 34px;
}

.language.top-dropdown .opener .flag{
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 17px;
}

.language.top-dropdown .summary{
    padding-top: 4px;
    left: -1px;
    overflow-y: auto;
    min-width: 127px;
}

.language.top-dropdown.state-to-left .summary{
    left: auto;
    right: -1px;
}

.language.top-dropdown .summary .flag{
    margin-right: 13px;
}

.language .hyp{
    display: block;
    padding: 0 30px 0 18px;
    line-height: 40px;
    white-space: nowrap;
}

.language .hyp:hover{
    text-decoration: none;
}

.selected-language{
    display: none;
}

/*          login            */
.login .person{
    margin-left: 17px;
    margin-right: 12px;
    vertical-align: middle;
}

/* -MODIF */

.login:hover .person{
    padding-top: 10px;
    padding-bottom: 7px;
}

.login .user-name{
    font-weight: bold;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}
/* -MODIF*/
.login .opener{
    min-width: 60px;
}

.login .opener:before{
    background: url('../png/login.png');
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 27px;
    margin: auto;
    height: 18px;
    width: 18px;
    vertical-align: middle;
    /*margin-right: -50px;*/
}

.impersonated .login-title:before{
    background: url('../png/login-blue.png');
}

.login.top-dropdown .summary{
    right: -0.5px;
    width: 218px;
}

.login .hyp{
    display: block;
    padding-left: 20px;
    line-height: 40px;
}

.login .hyp:hover{
    text-decoration: none;
}

.welcome{
    border-bottom-width: 1px;
    border-bottom-style: solid;
    line-height: 37px;
    margin: 0 20px 5px;
}

.stop-representing{
    border-bottom-width: 1px;
    border-bottom-style: solid;
    margin: 0 20px;
    padding-bottom: 4px;
}

.logout{
    border-top-width: 1px;
    border-top-style: solid;
    line-height: 43px;
    margin: 5px 20px 0;
}

.login-title{
    display: none;
}

/*          logo            */
.logo{
	position: relative;
	z-index: 2;
}

.logo a{
	display: block;
	line-height: 0;
}

/*          search           */
.search{
    position: relative;
    margin: 0 10px;
    width: 55%;
}

.btn-search{
    border: none;
    border-radius: 0 2px 2px 0;
    position: absolute;
    right: 0;
    top: 0;
    height: 43px;
    min-width: 55px;
}

.btn-search:before{
    background: url(../png/search.png);
    content: '';
    display: inline-block;
    height: 17px;
    width: 17px;
    background-repeat: no-repeat;
}

.search-wrapper{
    position: relative;
}

.tbx-main-search{
    overflow: hidden;
    /* -MODIF
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;*/
}

.tbx-main-search input{
    height: 42px;
    padding-left: 16px;
    padding-right: 65px;
}

.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;
}

/*          suggestions button           */
.btn.btn-suggestions-top{
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin: 0 5px;
    padding: 0;
    height: 44px;
    width: 44px;
}

.btn.btn-suggestions-top .btn-cnt{
    display: none;
}

.btn.btn-suggestions-top:after,
.btn.btn-suggestions-top .btn-cnt:after{
    display: none;
}

.btn.btn-suggestions-top:before{
    background: url(../png/magic.png);
    content: '';
    display: inline-block;
    margin-top: 11px;
    height: 20px;
    width: 20px;
}

/*          basket           */
.basket{
    display: inline-block;
    position: relative;
    height: 50px;
    vertical-align: top;
    white-space: normal;
}

.over-summary{
    background: transparent;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: transparent;
    padding: 0 15px 0 46px;
    position: relative;
    height: 50px;
	line-height: 48px;
}

.over-summary .hyp{
    box-sizing: border-box;
    text-decoration: none;
    text-transform: uppercase;
    text-align: center;
    overflow: hidden;
    white-space: nowrap;
}

.over-summary .hyp:before{
    background: url(../png/basket.png) no-repeat scroll 0 0 transparent;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 15px;
    margin: auto;
    height: 20px;
    width: 20px;
}

.basket:hover .over-summary:not(.is-empty){
    z-index: 6;
}

.basket-loading{
    position: absolute;
    top: 100%;
    right: 0;
    padding: 15px 20px;
    width: 200px;
    z-index: 2;
}

.summary-footer{
    border-bottom-width: 1px;
    border-bottom-style: solid;
    table-layout: fixed;
}

.summary-footer.panel-footer > div{
    padding: 17px 0;
}

.summary-footer .value-total{
    float: right;
}

/*          basket modal popup            */
.basket-summary{
    border-width: 1px;
    border-style: solid;
    display: none;
    overflow-y: auto;
    position: absolute;
    padding: 0 14px 11px 16px;
    top: 100%;
    right: 0;
    width: 318px;
    z-index: 5;
}

.basket:hover .basket-summary{
    display: block;
}

.summary-title{
    margin: 15px 0;
    text-transform: uppercase;
}

.summary-title.alt,
.just-added .summary-title.main{
    display: none;
}

.just-added .summary-title.alt{
    display: block;
}

.qty-price{
    text-align: right;
}

.added-product{
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.added-product .quantity{
    float: left;
}

.added-product .product-description{
	margin-bottom: 0;
}

.added-product .product-img {
    padding-top:15px;
    padding-bottom:15px;
}
.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;
}

/*          START header sticky mode            */
@keyframes show-header {
    from {
        opacity: 0;
        -webkit-transform: translateY(-60px);
        -ms-transform: translateY(-60px);
        transform: translateY(-60px);
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0px);
        -ms-transform: translateY(0px);
        transform: translateY(0px);
    }
}

header.sticky-mode{
    position: fixed;
    top: 0;
    width: 100%;
    border-width: 1px 0;
    border-style: solid;
    animation: show-header 300ms ease-in-out;
    will-change: transform;
    z-index: 3;
}

header.sticky-mode.nav-is-opened .nav-opener-wrapper:before{
    background: #000;
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    opacity: 0.3;
    height: 99999px;
}

header.sticky-mode .header-blocks-wrapper{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

header.sticky-mode nav{
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
}

/* -MODIF 
header.sticky-mode .nav-list-root{
    padding: 11px 0;
    width: 25%;
}*/
header.sticky-mode .nav-list-root{
    padding: 11px 0;
    width: 20%;
}

header.sticky-mode .nav-type-simple{
    overflow-x: hidden;
}

header.sticky-mode .nav-type-simple .nav-list-wrapper{
    overflow-x: hidden;
    overflow-y: scroll;
    margin-right: -17px;
}

header.sticky-mode .nav-type-multi .nav-list-root{
    overflow-x: hidden;
    overflow-y: auto;
}

header.sticky-mode .nav-wrapper{
    top: 0;
    right: 0;
    min-height: 100%;
    margin-left: 1px;
    overflow-x: hidden;
    overflow-y: auto;
    width: 75%;
}

header.sticky-mode .nav-item-block{
    width: auto;
}

header.sticky-mode .nav-lvl-2{
    table-layout: fixed;
}

header.sticky-mode .img-in-row{
    display: none;
}

header.sticky-mode .bottom-header{
    position: static;
	-webkit-box-ordinal-group: 2;
    -webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
    width: auto;
}

header.sticky-mode .middle-header{
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
	-webkit-box-ordinal-group: 3;
    -webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin: 0;
    padding: 0;
    min-height: inherit;
}

header.sticky-mode .top-header{
	-webkit-box-ordinal-group: 4;
    -webkit-order: 3;
	    -ms-flex-order: 3;
	        order: 3;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    width: auto;
}

header.sticky-mode .basket-summary-holder{
    min-width: 65px;
}

header.sticky-mode .bottom-header > .center{
    padding: 0;
}

header.sticky-mode .top-info{
    display: none;
}

header.sticky-mode .logo,
header.sticky-mode .search{
    margin: 0 5px;
}

header.sticky-mode .logo img{
    /* -MODIF */
    max-height: 48px;
}

header.sticky-mode .top-dropdown {
    height: 35px;
}

header.sticky-mode .top-dropdown:hover,
header.sticky-mode .top-dropdown:hover .opener,
header.sticky-mode .top-dropdown.hover,
header.sticky-mode .top-dropdown.hover .opener{
    height: 49px;
}

header.sticky-mode .language{
    border-right-color: transparent;
}

header.sticky-mode .login{
    border-left-color: transparent;
}

header.sticky-mode .login.impersonated .opener{
    width: auto;
}

header.sticky-mode .stop-representing{
    margin-top: 0;
    padding-bottom: 10px;
}

header.sticky-mode .over-summary .hyp{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 3px;
}

header.sticky-mode .over-summary .hyp:before{
    display: inline-block;
    position: static;
    vertical-align: middle;
}

header.sticky-mode .over-summary .over-summary-number{
    display: inline-block;
    margin-left: 3px;
    vertical-align: middle;
}

header.sticky-mode .over-summary.is-empty .over-summary-number,
header.sticky-mode .over-summary .over-summary-lbl{
    display: none;
}

header.sticky-mode.nav-is-opened nav{
    display: block;
}

header.sticky-mode .bottom-header .nav-list-root,
header.sticky-mode .bottom-header .nav-item-root{
    float: none;
}

header.sticky-mode .nav-item-root .hyp-top-lvl{
    border-width: 1px 0;
    margin-right: -1px;
    line-height: 20px;
    padding-top: 10px;
    padding-right: 26px;
    padding-bottom: 10px;
}

header.sticky-mode .nav-list-sub{
    margin-top: 0;
    top: 0;
    left: 100%;
}

header.sticky-mode .top-hyp{
    display: none;
}
/*          END header sticky mode            */

/* START general top navigation */
nav{
    position: relative;
}

nav .hyp:before {
    top:8px;
}

/* -MOD
.nav-item-sub .hyp:before {
    top:19px;
}*/
.nav-item-sub .hyp:before {
    top:11px;
}

nav .hyp-top-lvl{
    text-transform: uppercase;
    text-decoration: none;
}

.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;
}

header.sticky-mode .hyp-top-lvl.has-children:after{
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    content: '';
    background: url(../png/arrow-group-expand.png) no-repeat;
    margin-top: -3px;
    position: absolute;
    top: 50%;
    right: 13px;
    height: 5px;
    width: 11px;
}

.nav-opener-wrapper{
    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-is-opened .nav-opener{
    border-bottom-style: solid;
    border-bottom-width: 1px;
}

.nav-opener:before{
    background: url('../png/nav-open.png') no-repeat -9999px -9999px;
    content: '';
    position: absolute;
    top: 22px;
    left: 22px;
    height: 17px;
    width: 22px;
}

.nav-opener:after{
    background: url('../png/nav-close.png') no-repeat -9999px -9999px;
    content: '';
    position: absolute;
    top: 21px;
    left: 23px;
    height: 19px;
    width: 18px;
}

.nav-is-closed .nav-opener:before,
.nav-is-opened .nav-opener:after{
    background-position: 0 0;
}

.nav-is-opened nav{
    display: block;
}

.bottom-header .nav-list-root,
.bottom-header .nav-item-root{
    float: left;
}

.nav-item-root .hyp-top-lvl{
    border-width: 1px 1px 0;
    border-style: solid;
    border-color: transparent;
    padding: 0 16px;
    position: relative;
	display: block;
    line-height: 61px;
    z-index: 4;
}

.nav-item-root.hover .hyp-top-lvl{
    z-index: 6;
}
/* END general top navigation */

/* START multi dropdown navigation */
.nav-wrapper{
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    display: none;
    position: absolute;
    right: 0;
    padding: 27px 0 22px 0;
    z-index: 5;
}

header:not(.sticky-mode) .nav-wrapper{
    max-height: none !important;
}

.nav-item-block{
    box-sizing: border-box;
    display: table-cell;
    padding: 0 10px 0 25px;
    vertical-align: top;
    height: 100%;
    width: 20%;
}

.view-more-visible .nav-item-block{
    padding-bottom: 30px;
}

.nav-lvl-2{
    display: table;
    width: 100%;
}

.nav-lvl-2 .wrapper{
    position: relative;
    height: 100%;
    width: 100%;
}

.nav-lvl-2 .separator{
    display: none;
}

.nav-lvl-3 .hyp{
    line-height: 18px;
    margin-top: 6px;
    margin-bottom:6px;
}

.nav-more{
    position: absolute;
    line-height: 24px;
    bottom: -24px;
    width: 100%;
}

.nav-more a {
    width: 100%;
    vertical-align: bottom;
}

.separator + .nav-item-block,
.separator + .img-in-row{
    border-left-width: 1px;
    border-left-style: solid;
}

.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%;
}

.img-in-row img.not-handled{
    width: 0;
}
/* END multi dropdown navigation */

/* START simple dropdown navigation */
.nav-list-sub{
    border-width: 1px;
    border-style: solid;
    display: none;
    position: absolute;
    width: 203px;
    z-index: 5;
    padding: 7px 0;
    margin-top: -1px;
    box-sizing: border-box;
}

.state-to-left .nav-list-sub{
    right: 0;
}

.nav-list-sub .nav-list-sub{
    padding: 17px 0;
    top: -17px;
    left: 100%;
}

.state-to-left .nav-list-sub .nav-list-sub{
    left: auto;
    right: 100%;
}

.nav-item-sub{
    position: relative;
    padding-left: 15px;
}

.nav-item-sub:first-child .nav-list-sub{
    top: -7px;
}

/* -MOD
.nav-item-sub .hyp{
    display: block;
    padding-top: 11px;
    padding-bottom: 11px;
    padding-right: 5px;
    text-decoration: none;
    line-height: 18px;
}*/
.nav-item-sub .hyp{
    display: block;
    padding-top: 2px;
    padding-bottom: 2px;
    padding-right: 5px;
    text-decoration: none;
    line-height: 18px;
}

.nav-type-simple .nav-item-root{
    position: relative;
}
/* END simple dropdown navigation */
/*          END header            */



/* footer */
footer{
    display: table-footer-group;
    width: 100%;
}

footer .font-h4{
    display: block;
    line-height: 1.4em;
    padding-bottom: 12px;
    /* -MODIF */
    color: white;
}

footer ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

footer .top{
	padding-top: 40px;
	padding-bottom: 25px;
}

footer .bottom{
	padding-top: 20px;
	padding-bottom: 30px;
}

/*          sitemap          */
.sitemap-nav li{
    float: left;
    padding-right: 13px;
    width: 120px;
}

/* -MODIF*/
.column.sitemap{
    width: 60%;
}
.social{
    margin-top: 8%;
}

/*          bottom footer          */
.footer-nav{
    text-align: right;
}

.footer-nav .hyp{
    display: inline-block;
	padding-left: 10px;
    text-decoration: none;
}

/*          newsletter          */
.newsletter{
    display: table-cell;
    width: 38%;
}

/* selector for case when an item(.newsletter) is single child block */
.newsletter:first-child:last-child form{
    max-width: 357px;
    width: 100%;
}

.tbx-email-newsletter{
    margin-right: 5px;
}

.newsletter-line{
    display: table;
    margin-top: 12px;
    width: 100%;
}

.newsletter-line li{
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}

/*          price         */
.lbl-price{
    white-space: nowrap;
}

.list-price,
.list-price-discount {
    margin-right: 20px;
    white-space: nowrap;
}

.list-price-discount{
    font-weight: bold;
}

.list-price {
    text-decoration: line-through;
}

/* columns layout */  /* -MODIF  width: 104%; margin: 0 -2%;*/
.columns-general{
    box-sizing: border-box;
    display: table;
    table-layout: fixed;
    margin: 0;
    padding: 12px 0;
    height: 100%;
    width: 100%;
}

.columns-general > .column{
    box-sizing: border-box;
    display: table-cell;
    padding: 0 1.85%;
    height: 100%;
    outline: none;
    vertical-align: top;
}

.columns-general.compact{
    width: 104.4%;
    margin: 0 -2.3%;
}

.columns-general.compact > .column{
    padding: 0 2.2%;
    width: auto;
}

.columns-general.compact > .wide{
    /*width: 73%;*/
    width: 80%;
}

.columns-general.compressed{
    width: 102%;
    margin: 0 -1%;
}

.columns-general.compressed > .column{
    padding: 0 1%;
}

.columns-general > .column60{
    width: 60%;
}

.columns-general > .column55{
    width: 55%;
}

.columns-general.rtl{
    direction: rtl;
}

.columns-general.rtl > .column{
    direction: ltr;
}

.column > .wrapper{
    padding: 12px 0;
}

.columns-general > .column.column-inline,
.columns-general > .column.column-inline + .column{
    display: block;
}
/* END columns layout */

/* blocks layout */
.blocks-row:not(.slick-initialized){
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.blocks-row {
    margin: 0 -10px;
}

.blocks-row-item{
    box-sizing: border-box;
    outline: none;
    padding: 1px 10px 0;
    width: 25%;
}

.column .blocks-row-item{
    width: 33.3333%;
}

/* END blocks layout */

.l-columns{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

/* forms general styles */

form label{
    line-height: normal;
}

fieldset{
    border: none;
    margin: 0;
    padding: 0;
}

.form-holder{
    padding-top: 18px;
}

.form-row,
.form-button{
    margin-bottom: 20px;
}

.form-row .control{
    display: table;
    table-layout: fixed;
    width: 100%;
}

.form-row .label,
.form-row .field{
    display: table-cell;
    vertical-align: middle;
}

.form-row .label{
    width: 36%;
    padding-right: 3%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.row-comment .label{
    vertical-align: top;
    padding-top: 5px;
}

.form-row .validation,
.form-row .description,
.form-button{
    padding-left: 36%;
    margin-top: 0px;
}

.row-under-columns{
    margin-top: -12px;
    padding-left: 21%;
}

.sales-agreement-line .sales-agreement-line-label {
    display: block;
}

.ddlb-sales-agreement-lines{
    margin-top: 5px;
}

.ddlb-sales-agreement-lines .ui-menu-item-wrapper{
    white-space: normal;
}

.ddlb-sales-agreement-lines .ui-menu-item-wrapper .nowrap{
    white-space: nowrap;
}

.ddlb-sales-agreement-lines .ui-state-disabled{
    display: none;
}

.field-validation-valid{
    display: none;
}

.form-row .field-validation-error,
.form-row .feedback-message{
    display: block;
	line-height: 12px;
    padding: 4px 0px 4px 24px;
    margin-top: 4px;
}

.form-row .field-validation-error{
	background: url(../png/form-invalid.png) no-repeat scroll left center;
}

.form-row .feedback-message{
	background: url(../png/form-description.png) no-repeat scroll left center;
}

.msg-not-available{
    font-weight: bold;
    text-transform: lowercase;
    white-space: nowrap;
}

.form-inline{
    display: inline-block;
    vertical-align: middle;
}

.form-row.row-password .label{
    padding-top: 5px;
    vertical-align: top;
}

.password-strength-indicator{
    position: relative;
    height: 3px;
    margin: 3px 0 10px 0;
    text-align: right;
}

.password-strength-indicator:before{
    content: '';
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    transition: all 300ms linear;
    width: 0;
}

.password-strength-indicator [data-strength-text]{
    display: none;
}

.password-strength-indicator[data-strength="0"] [data-strength-text="0"],
.password-strength-indicator[data-strength="1"] [data-strength-text="1"],
.password-strength-indicator[data-strength="2"] [data-strength-text="2"],
.password-strength-indicator[data-strength="3"] [data-strength-text="3"],
.password-strength-indicator[data-strength="4"] [data-strength-text="4"]{
    display: inline;
}

.password-strength-indicator[data-strength="1"]:before{
    width: 25%;
}

.password-strength-indicator[data-strength="2"]:before{
    width: 50%;
}

.password-strength-indicator[data-strength="3"]:before{
    width: 75%;
}

.password-strength-indicator[data-strength="4"]:before{
    width: 100%;
}

.password-strength-hint{
    cursor: pointer;
}

/*          message blocks          */
.msg-block{
    font-style: italic;
    margin: 45px 0;
    padding: 15px 0;
    line-height: 30px;
    text-align: center;
}

.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 a,
.validation-summary-errors a,
.msg-block-confirm a,
.msg-block-info a,
.msg-block-alert a{
    text-decoration: underline;
}

.wide-msg-block-info .msg-block-info{
    margin-top: 0;
    margin-bottom: 0;
}

.msg-block-error:before,
.validation-summary-errors:before,
.msg-block-confirm:before,
.msg-block-info:before,
.msg-block-alert:before,
.msg-text-alert:before{
    content: '';
	position: absolute;
}

.msg-block-error:before,
.validation-summary-errors:before{
    background: url(../png/error.png);
    top: 18px;
    left: 10px;
    height: 12px;
    width: 12px;
}

.msg-block-confirm:before{
    background: url(../png/msg-confirm.png);
    top: 15px;
    left: 9px;
    height: 16px;
    width: 14px;
}

.msg-block-info:before{
    background: url(../png/msg-info.png);
    top: 16px;
    left: 12px;
    height: 16px;
    width: 8px;
}

.msg-block-alert:before{
    background: url(../png/msg-alert.png);
    top: 15px;
    left: 13px;
    height: 14px;
    width: 5px;
}

.msg-text-alert:before{
    background: url(../png/msg-alert.png);
    top: 50%;
    left: 13px;
    margin-top: -7px;
    height: 14px;
    width: 5px;
}

.msg-block-error ul{
	list-style: none;
    padding: 0;
    margin: 0;
}

.basket-page-cnt .msg-block-error ul {
    list-style: disc;
    padding:5px 10px;
}

.validation-summary-errors ul {
    display: none;
}

.msg-text-alert{
    position: absolute;
    left: 100%;
    top: 0;
    padding-left: 25px;
    margin: 8px;
    white-space: nowrap;
}



.ifrm{
    padding: 5px;
}

.ifrm iframe{
	height: 300px;
	overflow: auto;
	width: 100%;
}

/* END forms general styles */



/* custom checkbox */
label .chb{
    vertical-align: middle;
    position: relative;
}

label .chb ins{
    display: inline-block;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    overflow: hidden;
    margin-right: 4px;
    margin-top: -3px;
    position: relative;
    border-width: 1px;
    border-style: solid;
    text-decoration: none;
}


label .chb ins:after,
label .chb input[type="checkbox"]{
    cursor: pointer;
}

label .chb input[type="checkbox"]{
    opacity: 0;
    position: absolute;
    bottom: 2px;
    right: 5px;
    cursor: pointer;
    z-index: 2;
}

label .chb input[type="checkbox"] + ins:after{
    display: none;
    content: '';
    position: absolute;
    bottom: 3px;
    right: 0px;
    width: 5px;
    height: 11px;
    z-index: 1;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

label .chb input[type="checkbox"]:checked + ins:after{
    display: block;
}

label .chb input[type="checkbox"]:disabled + ins,
label:hover .chb input[type="checkbox"]:disabled + ins{
    opacity: 0.8;
}

/* END custom checkbox */


/* custom radiobox */

label .rdb{
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    padding: 2px;
    margin-right: 4px;
    margin-top: -3px;
}

label .rdb ins{
    display: block;
    width: 8px;
    height: 8px;
    overflow: hidden;
    border-radius: 5px;
    position: relative;
    cursor: pointer;
}

label .rdb input[type="radio"]{
    opacity: 0;
    position: absolute;
    z-index: -1;
}

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;
}

.radio + .radio {
    margin-left: 15px;
}

/* END custom radiobox */


/* breadcrumbs */
.breadcrumbs li{
    display: inline-block;
    vertical-align: middle;
}

.breadcrumbs .hyp{
    margin: 0 3px;
}

/* END breadcrumbs */


/*          login page             */
.login-page-cnt .text{
    margin-bottom: 15px;
}

.login-page-cnt .validation-summary-errors{
    margin-top: 0;
}

.login-page-cnt .row-actions{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.login-page-cnt .forgot-password{
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.login-page-cnt .btn-login{
    margin: 10px 0;
}

.login-page-cnt .remember-me,
.login-page-cnt .btn-login{
    margin-left: 20px;
}

/*          tabs             */
.tab-control .reviews,
.tab-control .variants,
.tab-control .prepacks,
.tab-control .specifications,
.tab-control .attachments,
.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{
    text-transform: uppercase;
    padding: 0;
}

.hidden-tabs-name{
    display: none;
    cursor: default;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.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          */

.paging-input{
    float: right;
}

.tbx-quantity,
.tbx-go-to-page{
    display: inline-block;
    width: 52px;
    margin: 0 35px;
    vertical-align: middle;
}

.tbx-go-to-page{
    margin: 0 10px;
    vertical-align: top;
}

.tbx-quantity input,
.tbx-go-to-page input{
    text-align: center;
    padding: 0 1px;
    height: 27px;
}

.tbx-go-to-page ::-webkit-input-placeholder{
    font-style: normal;
}

.tbx-go-to-page ::-moz-placeholder{
    font-style: normal;
}

.tbx-go-to-page :-ms-input-placeholder{
    font-style: normal;
}

.tbx-go-to-page :focus::-webkit-input-placeholder{
    opacity: 0;
}

.tbx-go-to-page :focus::-moz-placeholder{
    opacity: 0;
}

.tbx-go-to-page :focus:-ms-input-placeholder{
    opacity: 0;
}

/* Gestione commenti su ordine */
.tbx-comment {
    width: 60%;
    display: inline-block;
    margin-right: 10px;
    vertical-align: bottom;
}

/*Gestione sconto e prezzo modificabili*/
.tbx-discount {
    display: inline-block;
    vertical-align: middle;
    margin: 0 35px;
    width: 52px;
}

    .tbx-discount input {
        text-align: center;
        padding: 0 3px;
        height: 27px;
    }

.tbx-price {
    display: inline-block;
    vertical-align: middle;
    margin: 0 35px;
    width: 52px;
}

    .tbx-price input {
        text-align: center;
        padding: 0 3px;
        height: 27px;
    }

.compact-sign-error{
    background-image: url(../png/form-invalid.png);
    line-height: 0;
    position: absolute;
    left: -10px;
    top: -9px;
    z-index: 1;
    padding: 0 !important;
    margin: 0 !important;
    height: 16px;
    width: 16px;
}

.compact-sign-error span{
    display: none !important;
}

.ui-spinner{
    overflow: visible;
}

.ui-spinner-input{
    margin: 0;
}

.ui-spinner-button{
	position: absolute;
	top: 0;
    height: 28px;
    width: 28px;
}

.ui-spinner-up{
	right: -35px;
}

.ui-spinner-down{
    left: -35px;
}

.ui-spinner-up .icon-up{
    background-image: url(../png/increase.png);
    margin-top: -5px;
    margin-left: -5px;
    height: 11px;
    width: 10px;
}

.ui-spinner-down .icon-down{
    background-image: url(../png/decrease.png);
    margin-top: -1px;
    margin-left: -4px;
    height: 3px;
    width: 7px;
}

.tbx-quantity [data-spinner-init=event]:not(:focus) ~ .ui-spinner-button{
    display: none;
}

/* Gestione sconti e prezzi modificabili */
.tbx-price.spinner-hidden-initially:not(.focused) .ui-spinner-button {
    display: none;
}

.tbx-discount.spinner-hidden-initially:not(.focused) .ui-spinner-button {
    display: none;
}

/* order details */
.history-details .gvi-name-value .value{
    word-break: break-all;
}

.history-details .block-sell-to-address,
.history-details .block-bill-to-address,
.history-details .block-ship-to-address{
    word-break: break-all;
}

.order-details-action-bar{
    text-align: right;
}

.order-details-action-bar .btn{
    margin-left: 15px;
    margin-bottom: 10px;
}

.order-details-action-bar .attachments{
    float: left;
    margin-bottom: 10px;
    text-align: left;
    word-break: break-all;
}

.order-details-action-bar .msg-block-info,
.order-details-action-bar .msg-block-error{
    clear: both;
    text-align: left;
}

.gvi-order-lines-wrapper{
    margin-top: 35px;
}

.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,
.gvi-order-lines .col-stock{
    white-space: nowrap;
}

.gvi-order-lines .col-qty{
    text-align: center;
}

.gvi-order-lines .col-price,
.gvi-order-lines .col-discount,
.gvi-order-lines .col-uom,
.gvi-order-lines .col-total,
.gvi-order-lines .col-stock{
    text-align: right;
}

.gvi-totals{
    text-align: right;
    margin-bottom: 10px;
}

.gvi-totals .cell-value{
    width: 125px;
}

.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 .t-row-promotion{
    line-height: 20px;
}

.basket-page-cnt .gvi-totals .t-row-promotion .title-discount{
    display: inline-block;
    padding: 8px 0 7px;
    vertical-align: middle;
}

.gvi-totals .t-row-promotion .enter-discount{
    display: inline-block;
    float: left;
}

.gvi-totals .t-row-promotion .title-discount{
    float: right;
}

.order-authorization-feedback{
    text-align: justify;
}

.basket-page-cnt .usp-list{
    padding: 0;
}

/* END order details */


/* START sales agreements */

.gvi-sales-agreements tbody td {
    vertical-align: middle;
}

.sales-agreement-lines-box {
    position: relative;
}

.sales-agreement-lines-box.hidden:after{
    content:"";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    z-index:1;
}

.sales-agreement-lines-box.hidden .paging-control,
.sales-agreement-lines-box.hidden table{
    opacity: 0.5;
}

.gvi-sales-agreement-lines{
    margin: 30px 0 60px 0;
}

.gvi-sales-agreement-lines th{
    text-align: left;
}

.gvi-sales-agreement-lines .col-line-discount-percent{
    text-align: center;
}

.gvi-sales-agreement-lines .show-more{
    width: 100px;
    text-align: right;
    white-space: nowrap;
}

.gvi-sales-agreement-lines .toggle-hyp-inside:hover{
    cursor: pointer;
    user-select: none;
}

.gvi-sales-agreement-lines .collapsed .sign-plus{
    display: inline;
}

.gvi-sales-agreement-lines .collapsed .sign-minus{
    display: none;
}

.gvi-sales-agreement-lines .expanded .sign-plus{
    display: none;
}

.gvi-sales-agreement-lines .expanded .sign-minus{
    display: inline;
}

.gvi-sales-agreement-lines .collapsed .sign-plus:before{
    content: '+';
    display: inline;
}

.gvi-sales-agreement-lines .collapsed .sign-minus:before{
    content: '-';
    display: inline;
}

.gvi-sales-agreement-lines tr{
    transition: background-color 200ms linear;
}

.gvi-sales-agreement-lines .hidden-info{
    border: none;
}

.gvi-sales-agreement-lines .msg-this-term-not-allow-exceeding-value {
    margin-bottom: 8px;
}

.gvi-sales-agreement-lines .btn-product-category {
    float: right
}

/* fix for IE11-10 */
.ie .gvi-sales-agreement-lines .hidden-info > td {
    max-width:0;
}

.gvi-sales-agreement-lines .hidden-info-inner-wrapper{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}
.gvi-sales-agreement-lines .hidden-info-inner-wrapper:first-child:last-child{
    margin-bottom:8px;
}

.gvi-sales-agreement-lines .hidden-info-inner-wrapper .cell{
    width: 49%;
    box-sizing: border-box;
    border-width: 0px 0px 1px 0px;
    border-style: dashed;
}

.gvi-sales-agreement-lines .hidden-info-inner-wrapper .data-set-title{
    float: left;
}

.gvi-sales-agreement-lines .hidden-info-inner-wrapper .data-set-value{
    float: right;
}

.gvi-sales-agreement-lines .add-to-basket-form{
    padding-top: 10px;
}

.gvi-sales-agreement-lines .product-variants{
    margin-bottom: 10px;
}

/* ENG sales agreements */

/* general panel */

.panel-general{
    padding-top: 30px;
    margin-bottom: 30px;
}

.panel-header{
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
		    flex-wrap: wrap;

-webkit-justify-content: space-between;
	      -ms-flex-pack: justify;
		justify-content: space-between;

  -webkit-align-items: center;
       -ms-flex-align: center;
          align-items: center;

    margin-bottom: 11px;
    width: 100%;
}

.panel-footer{
    display: table;
    width: 100%;
}

.panel-footer > div{
    display: table-cell;
    vertical-align: middle;
    padding-top: 5px;
}

.panel-footer > .more-inside{
    padding-top: 0;
}

/* END general panel */







/* 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           */
.filter-title{
    display: none;
    max-width: 100%;
    box-sizing: border-box;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}

.facets{
    padding-top: 6px;
}

.facet{
    margin-bottom: 37px;
    word-break: break-all;
}

.facet .hdr{
    background-position: right center;
    background-repeat: no-repeat;
    cursor: pointer;
}

.facet .hdr.collapsed{
    background-image: url(../png/arrow-group-expand.png);
}

.facet .hdr.expanded{
    background-image: url(../png/arrow-group-collapse.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: 18px;
}

.facet li{
    padding-right: 20px;
}

.list-facets li .chb{
    position: absolute;
    top: 45%;
    left: 0;
    margin-top: -10px;
}

.list-facets .count{
    margin-left: 4px;
    position: absolute;
    top: 50%;
    margin-top: -12px;
}

.facet-item{
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
}

.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;
}

aside .hyp{
    float: left;
    clear: both;
}

#matricesPopup,
#volumePricesPopup,
#bomPopup{
    display: none;
}

.product{
    padding-top: 32px;
}

.product .main{
    margin-bottom: 45px;
}

.details-img{
    float: left;
}

.details-info{
    box-sizing: border-box;
    position: relative;
}

.no-aside{
    width: 100%;
}

.product-bottom-info{
    margin-top: 58px;
    margin-bottom: 58px;
}

/*           product images             */
.carousel-image-m-wrapper{
    margin-bottom: 25px;
    text-align: center;
}

.carousel-image-m-wrapper img{
    max-height: 100%;
    max-width: 90%;
    margin: 0 auto;
}

.carousel-image-m-item img[data-zoom-image]{
    cursor: progress;
}

.carousel-image-m-item.slick-slide:not(.slick-active){
    visibility: hidden;
}

.carousel-legend{
    padding: 10px 0;
	text-align: center;
}

.carousel-image-s-wrapper{
    margin: 25px 30px;
    padding: 0 15px;
}

.carousel-image-s .hyp-thumbnail{
    display: block;
    height: 84px;
    width: 84px;
    margin: 0 auto;
}

.carousel-image-s .thumbnail{
    display: block;
}

.carousel-image-s .hyp-thumbnail:hover .thumbnail:after{
    content: '';
    position: absolute;
    bottom: -1px;
    left: -1px;
    right: -1px;
}

.carousel-image-s .slick-prev{
    left: -15px;
}

.carousel-image-s .slick-next{
    right: -15px;
}

.zoomContainer{
    z-index: 1;
}

/*          lightbox image slider          */
.carousel-image-l,
.carousel-image-l .slick-list,
.carousel-image-l .slick-track{
    height: 100%;
}

.carousel-image-l .carousel-image-l-item{
    position: relative;
}

.carousel-image-l .carousel-image-l-item img{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    max-height: 95%;
    max-width: 95%;
}

.carousel-image-l .slick-prev{
    left: 25px;
}

.carousel-image-l .slick-next{
    right: 25px;
}

.carousel-image-l.slick-dotted.slick-slider{
    margin-bottom: 0;
}

.carousel-image-l .slick-dots{
    bottom: 25px;
}

/*          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;
    padding-right: 3px;
    min-width: 70px;
}

.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(../png/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(../png/rating-star.png) no-repeat scroll 0 0 transparent;
}

.star-rating-on a{
    background: url(../png/rating-star-on.png) no-repeat scroll 0 0 transparent;
}

.star-rating-hover a{
    background: url(../png/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 .form-row .label{
    padding-right: 1%;
    /*mod*/
    width: 35%;
}

.order-box .after-btn-links{
    display: inline-block;
    vertical-align: middle;
}

.row-quantity .label,
.row-quantity .field{
    vertical-align: top;
}

.product-list .tbx-quantity,
.row-quantity .tbx-quantity{
    margin-bottom: 5px;
}

.list-mode .tbx-quantity,
.row-quantity .tbx-quantity {
    margin-right: 43px;
}

.row-btn-add .btn-add-to-basket,
.row-btn-add .btn-configure-product {
    margin-right: 20px;
}

.prices-action{
    display: table;
    width: 100%;
}

.prices-action > div{
    display: table-cell;
    vertical-align: bottom;
}

.after-prices{
    padding-left: 7px;
    line-height: 20px;
    width: 100%;
}

.msg-cannot-order,
.order-box.state-variant-not-available .row-btn-add{
    display: none;
}

.msg-state-visible,
.order-box.state-variant-not-available .msg-cannot-order{
    display: block;
}

.order-box.state-variant-not-available .unit-of-measure{
    margin-left: 0;
}

.order-box .prices{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.order-box .list-prices{
    display: inline-block;
    line-height: normal;
}

.order-box .list-prices .list-price,
.order-box .list-prices .list-price-discount{
    display: block;
}

.order-box .lbl-price{
    line-height: normal;
}

/* 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;
}

.last-viewed .list-prices{
    display: block;
    line-height: normal;
    margin-bottom: 4px;
}

.last-viewed .list-prices .list-price,
.last-viewed .list-prices .list-price-discount{
    display: block;
}

/* related info */
.related-info .ui-tabs-panel{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.simple-product-tile{
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 10px;
    padding: 0 1%;
}

.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(../png/arrows.png);
    position: absolute;
    top: 50%;
    margin-top: -9px;
    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{
    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: 20px 0;
	overflow: auto;
	position: relative;
	width: 100%;
    max-height: 450px;
}

.grid-inside .sticky-wrap{
    z-index: 1;
}

.matrices .font-product-title{
    word-break: break-word;
    padding-right: 15px;
}

.add-box,
.quantity-selected{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.add-box{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    float: right;
}

.quantity-selected{
    margin-right: 30px;
}

.quantity-selected .name{
    line-height: 22px;
    -ms-flex-preferred-size: 160px;
    flex-basis: 160px;
}

.quantity-selected .value{
    padding: 0 15px;
    -ms-flex-preferred-size: 70px;
    flex-basis: 70px;
}
/* variants & prepacks */
.variants .product-id .name{
    margin-right: 35px;
}

.variants .uom-wrapper{
    margin-top: 20px;
    margin-bottom: 10px;
}

.variants .sales-agreement-wrapper .ddlb-wrapper,
.variants .lbl-uom-title,
.variants .lbl-sales-agreement-title{
    display: inline-block;
}

.variants .lbl-uom-title,
.variants .lbl-sales-agreement-title{
    min-width: 120px;
}

.gvi-variants th,
.gvi-prepacks th{
    text-transform: uppercase;
}

.gvi-variants .th-col,
.gvi-prepacks thead th{
    text-align: center;
    padding: 15px;
}

.gvi-variants td,
.gvi-prepacks td{
    text-align: center;
    padding: 14px 15px 7px;
}

.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: 3px;
    margin-bottom: 3px;
}

.cell .stock-indication,
.cell .lbl-price{
    margin: 0 5px;
    display: block;
}

.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-title,
.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           */
.view-changer{
    text-align: center;
}

.counter-inside{
    line-height: 18px;
    padding: 0 10px 4px 0;
}

.sorter-inside{
    white-space: nowrap;
    order: 9;
}

.sorter-inside .lbl {
    margin-right: 5px;
}

.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(../png/view-list.png);
    background-position: 0 -50px;
}

.changer-list-mode .to-list{
    background-position: 0 0;
}

.to-grid{
    background: url(../png/view-grid.png);
    background-position: 0 -50px;
}

.changer-grid-mode .to-grid{
    background-position: 0 0;
}

.panel-header .btn-add-inside{
    padding-top: 20px;
    width: 100%;
    order: 9;
    text-align: right;
}

.panel-header > .qo-input-area,
.panel-header > .last-viewed-area,
.panel-header > .tbx-search{
    width: 100%;
}

/* sorting */
.ddlb-sorting{
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    max-width:100%;
}

.ddlb-sorting .ui-selectmenu-menu {
    left: auto!important;
    right: 0!important;
}

/* paging */
.btn-paging{
    padding: 0;
    height: 28px;
    width: 28px;
}

.btn-paging:before{
    display: none;
}

.btn.btn-paging:after{
    background-image: url(../png/arrows-paging.png);
}

.btn-page-prev:after{
    background-position: 0 0;
    margin-top: -5px;
    margin-left: -3px;
    height: 10px;
    width: 6px;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
}

.btn-disabled.btn-page-prev:after{
    background-position: 0 -11px;
}

.btn-go-to-page{
    vertical-align: top;
    height: 28px;
}

.btn-page-next:after{
    background-position: -7px 0;
    margin-top: -5px;
    margin-left: -3px;
    height: 10px;
    width: 6px;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
}

.btn-disabled.btn-page-next:after{
    background-position: -7px -11px;
}

ul.pager-list{
    display: inline-block;
    line-height: 28px;
    margin: 0 16px;
    vertical-align: top;
}

.pager-list li{
    display: inline-block;
    margin: 0 5px;
}

.pager-list li a,
.pager-list li span{
    padding: 6px;
}

.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;
}

.l-products{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.l-products-item{
    width: 100%;
}

.list-mode .l-products-item:first-child{
    border-top-width: 1px;
    border-top-style: solid;
}

.list-mode .l-products-item{
    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-prices .list-price,
.list-mode .list-prices .list-price-discount{
    display: block;
    line-height: normal;
}

.grid-mode .product-action,
.list-mode .product-action{
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.list-mode .product-action{
    justify-content: space-between;
    text-align: right;
}

.list-mode .product-tile .product-info.state-compare{
    position: relative;
    padding-bottom: 35px;
}

.list-mode .product-compare-selector{
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 10px;
    order:1;
    text-align: left;
}

.list-mode .product-description{
    vertical-align: top;
    margin-bottom: 0;
}

.list-mode .selected-quantity{
    margin-top: 7px;
}

.grid-mode{
    margin: 0 -1.4%;
    position: relative;
}

.grid-mode .l-products-item{
    box-sizing: border-box;
    padding: 12px 1.4%;
}

.grid-mode .l-products-item:first-child:before{
    border-top-width: 1px;
    border-top-style: solid;
    content: '';
    position: absolute;
    left: 1.4%;
    right: 1.4%;
    top: 0;
}

.grid-mode .product-compare-selector{
    order: 1;
    margin: 0 0 10px;
}

.grid-mode .product-action > .btn,
.grid-mode .product-action > .msg-not-available,
.grid-mode .product-action > form{
    order: 2;
    margin-left: auto;
    margin-right: auto;
    align-self: center;
}

.grid-mode .product-tile{
    box-sizing: border-box;
    padding: 2px;
    min-height: 385px;
    text-align: center;
    height: 100%;
}

.grid-mode .product-tile:hover{
    border-radius: 2px;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.4), inset 0 -1px 0 rgba(0, 0, 0, 0.2);
}

.grid-mode .product-img{
    float: none;
    padding: 12px 0 0;
    width: auto;
}

.grid-mode .product-info{
    display: block;
    padding-bottom: 12px;
}

.grid-mode .product-img .hyp-thumbnail{
    display: block;
    margin: 0 auto;
    height: 214px;
    max-width: 100%;
    width: 214px;
}

.grid-mode .product-title{
    height: 32px;
}

.grid-mode .product-description{
    padding-top: 3px;
    margin-bottom: 3px;
}

.grid-mode .product-attributes{
    display: none;
}

.grid-mode .product-id-stock{
    line-height: 20px;
}

.grid-mode .product-id-name{
    display: none;
}

.grid-mode .prices{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.grid-mode .list-prices{
    display: inline-block;
    line-height: normal;
    text-align: right;
}

.grid-mode .list-prices .list-price,
.grid-mode .list-prices .list-price-discount{
    display: block;
}

.grid-mode .product-action .form-quantity{
    padding-top: 3px;
}

.grid-mode .selected-quantity{
    margin-top: 13px;
}

.variants-selected .selected-quantity{
    display: block;
}

.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;
    vertical-align: top;
}

.gvi-orders .col-authorization-status,
.gvi-orders .col-select-document{
    text-align: center;
}

.gvi-orders .col-select-document label .chb ins{
    margin-right: 0;
}

.gvi-orders .status-approved:before{
    content: '\2713';
}

.gvi-orders .status-pending:before{
    content: '\25CF';
}

.gvi-orders .status-declined:before{
    content: '\2A2F';
}

.gvi-orders .status-notneeded:before{
    content: '\2212';
}

.gvi-orders .status-paid:before{
    content: '\2713';
}

.gvi-orders .status-overdue:before{
    content: '\2A2F';
}

.gvi-orders .status-progress:before{
    content: '\25CF';
}

.gvi-orders .goto-details{
    white-space: nowrap;
}

.gvi-orders tr:first-child td{
    padding-top: 15px;
}

.gvi-orders tr:last-child td{
    padding-bottom: 15px;
}

.gvi-orders tr:last-of-type td{
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.invoicepayment-payinvoiceorder-page .col-method-cost,
.invoicepayment-payinvoiceorder-page .checkout-text{
    display: none;
}

.pay-inside{
    width: 160px;
}
/*          END orders            */

/* custom select styles */
.ddlb{
    height: 35px;
    position: relative;
}

.ddlb select{
    border-width: 0 0 1px;
    border-radius: 3px;
    padding: 0 12px;
    height: 100%;
    height: calc(100% + 1px);
    min-width: 100%;
}

.ddlb-small{
    height: 28px;
}

.ddlb-small .ui-selectmenu-text{
    line-height: 27px;
}

.ui-selectmenu-button.ui-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-text{
    line-height: 35px;
    padding: 0 28px 0 12px;
    margin-right: 0;
}

.ui-selectmenu-text.selectmenu-placeholder{
    font-style: italic;
}

.ui-selectmenu-menu .ui-menu .ui-menu-item{
    line-height: 34px;
    white-space: nowrap;
}

.ui-selectmenu-menu .ui-menu .ui-menu-item-wrapper{
    padding-right: 28px;
    padding-left: 12px;
}

.filter-title:after,
.ui-selectmenu-icon.ui-icon{
    border-top: 4px solid #4d4d4d;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -2px;
}

.filter-title.expanded:after,
.ui-selectmenu-button-open .ui-selectmenu-icon.ui-icon{
    border-bottom: 4px solid #4d4d4d;
    border-top: none;
}

.datepicker-dropdowns .ddlb {
    display: inline-block;
}

/* hide select placeholder item */
.ui-menu-item.ui-state-disabled:first-child{
    display: none;
}


.unit-of-measure{
    display: inline-block;
    vertical-align: middle;
}

.tbx-quantity + .unit-of-measure{
    vertical-align: top;
}

.grid-mode .unit-of-measure{
    margin-left: 8px;
}

.ddlb-uom{
    display: inline-block;
    vertical-align: middle;
    text-align: left;
}

.lbl-uom{
    display: inline-block;
    line-height: 28px;
}


/*          my account          */
.order-info-inside{
    margin-top: 65px;
}

.order-info-inside h3{
    display: inline-block;
    margin-right: 25px;
}

.account-top-actions{
    margin-top: 10px;
}

.account-top-actions .link-customer-service{
    float: right;
    line-height: 34px;
}

.account-name{
    margin: 13px 0 20px;
}

.hyp-account{
    margin-top: 5px;
    margin-bottom: 5px;
    float: left;
    clear: both;
}

.hyp-account-counter{
    font-weight: bold;
}

.account-info-inside{
    margin-top: 65px;
}

.account-info-inside .sub-title{
    font-weight: bold;
    margin-right: 40px;
}

.account-info-inside .form-row{
    margin-bottom: 0;
}

.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;
    vertical-align: bottom;
}

.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;
}

.gvi-orders .col-total-amount,
.gvi-orders .col-outstanding-amount{
    white-space: nowrap;
}

/*          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;
}

.order-line-cancelled{
    text-decoration: line-through;
}

/*          sub accounts           */
.gvi-sub-accounts{
    margin-top: 35px;
}

.gvi-sub-accounts .col-name{
    text-align: left;
}

.gvi-sub-accounts .status-ok:before{
    content: '\2713';
}

.gvi-sub-accounts .status-faild:before{
    content: '\2715';
}

.gvi-sub-accounts .col-status,
.gvi-sub-accounts .col-limit{
    text-align: center;
}

.gvi-sub-accounts .col-edit,
.gvi-sub-accounts .col-delete{
    text-align: right;
}

.gvi-sub-accounts .col-delete {
    width: 30px;
}

.sub-account-holder .form-row{
    line-height: 35px;
}

.sub-account-holder .row-orderauthorizationrules .label{
    display: block;
    width: auto;
}

.sub-account-holder .row-orderauthorizationrules .field{
    display: block;
    width: 80%;
}

.sub-account-holder .add-limit-wrapper{
    margin-top: 10px;
}

.gvi-limits td{
    border: 0 none;
}

.gvi-limits .row-validation-wrapper td{
    padding-top: 0;
    padding-bottom: 0;
}

.gvi-limits .col-delete{
    padding-top: 12px;
    padding-right: 0;
    width: 30px;
}

.btn-edit-sub-account,
.btn-delete-sub-account,
.btn-delete-limit,
.btn-delete{
    background-position: center center;
    background-repeat: no-repeat;
}

.btn-edit-sub-account{
    background-image: url(../png/edit-white.png);
}

.btn-delete-sub-account,
.btn-delete-limit,
.btn-delete{
    background-image: url(../png/clear-white.png);
}

/*          datepicker           */
.ui-datepicker{
    margin-top: 1px;
    border-radius: 3px;
}

.ui-datepicker .ui-datepicker-title{
    font-weight: bold;
}

.ui-datepicker th{
    font-weight: normal;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span{
    display: none;
}

.ui-datepicker .ui-datepicker-prev{
    background: url(../png/arrow-previous-light.png) center center no-repeat;
}

.ui-datepicker .ui-datepicker-next{
    background: url(../png/arrow-next-light.png) center center no-repeat;
}

.ui-datepicker .ui-datepicker-today,
.ui-datepicker .ui-datepicker-current-day{
    font-weight: bold;
}

.ui-datepicker td{
    line-height: 1.8em;
}

/*          basket            */
.gvi-basket td{
    vertical-align: top;
}

.gvi-basket th{
    padding-right: 0;
    padding-left: 0;
}

.gvi-basket .inner-row td,
.gvi-wish-list .inner-row td{
    padding: 0 0 15px 0;
}

.gvi-basket .upper-row td,
.gvi-wish-list .upper-row td{
    border-style: dashed;
    padding: 20px 0;
}

.gvi-basket .vertical-line{
    position: relative;
    margin-left: 70px;
    min-height: 50px;
}

.gvi-basket .vertical-line:before{
    border-left-width: 2px;
    border-left-style: solid;
    content: '';
    position: absolute;
    top: 0;
    bottom: -15px;
    left: -125px;
}

.gvi-basket.no-images .vertical-line{
    margin-left: 0;
}

.gvi-basket.no-images .vertical-line:before{
    left: -54px;
}

.gvi-basket .last-in-group .vertical-line:before{
    bottom: 0;
}

.gvi-wish-list .col-first{
    width: 90px;
}

.gvi-basket .col-price{
    width: 90px;
}

.gvi-basket .col-quantity{
    width: 130px;
}

.gvi-basket .col-total{
    width: auto;
}

.gvi-basket .col-discount {
    width: 130px;
}

.gvi-basket .col-netPrice {
    width: 130px;
}

.gvi-basket .col-qty{
    text-align: center;
}

.gvi-basket .col-total,
.gvi-wish-list .col-total{
    text-align: right;
}

.gvi-basket .col-total .cell-name{
    display: none;
}

.gvi-basket .col-price,
.gvi-basket .lbl-quantity,
.gvi-basket .col-discount, /* Colonna discount - Morreale - 2015-10-21 */
.gvi-basket .col-netprice, /* Colonna netPrice - Morreale - 2015-10-21 */
.gvi-basket .product-total {
    line-height: 28px;
}

.product-total{
    white-space: nowrap;
}

.price-node{
    white-space: nowrap;
}

.cell-total-value,
.cell-price-value{
    min-width:60px;
    display:inline-block;
    text-align:right;
}

.gvi-basket .product-img{
    float: left;
}

.gvi-basket .btn-show-hide{
    float: left;
    margin-top: 15px;
}

.hyp-recalculate{
    text-decoration: underline;
}

.hyp-reload{
    text-decoration: underline;
}

.block-actions{
    height: 47px;
    text-align: center;
}

.block-actions .hyp-btn{
    display: inline-block;
    margin: 15px 40px;
}

.gvi-basket .extended-text{
    margin: 7px 0;
}

.id-variant-aria .product-id,
.id-variant-aria .product-variant{
    display: inline-block;
}

.id-variant-aria .product-id{
    width: 35%;
}

.row-state{
    display: none !important;
}

.basket-b2c-mode .gvi-basket .col-first{
    width: 120px;
}

.basket-b2c-mode .gvi-basket .product-img,
.basket-b2c-mode .gvi-basket .hyp-thumbnail{
    height: 84px;
    width: 84px;
}

.basket-b2c-mode .btn-quote + .btn-checkout{
    margin-left: 15px;
}

.basket-b2c-mode .paging-control{
    position: relative;
}

.basket-b2c-mode .paging-control .pagin-total{
    position: absolute;
    left: 0;
    right: 0;
}

.basket-b2b-mode .gvi-basket .col-first{
    width: 65px;
}

.basket-b2b-mode .gvi-basket.no-images .col-first{
    width: 0px;
}

.basket-b2b-mode .gvi-basket.no-images .row-header .col-first{
    width: 65px;
}

.basket-b2b-mode .gvi-basket .product-img,
.basket-b2b-mode .gvi-basket .hyp-thumbnail{
    height: 50px;
    width: 50px;
}

.basket-b2b-mode .panel-header .btn-quote,
.basket-b2b-mode .panel-header .btn-checkout{
    display: none;
}

.checkout-offers{
    margin: 70px 0;
}

.checkout-offers .ui-tabs-nav{
    padding-bottom: 10px;
}

.checkout-offers .list-prices{
    display: block;
    line-height: normal;
    margin-bottom: 4px;
}

.checkout-offers .list-prices .list-price,
.checkout-offers .list-prices .list-price-discount{
    display: block;
}

.basket-details h2{
    margin-bottom: 15px;
}

.sales-agreement-form-wrapper.consumer{
    padding: 0 10px;
}

.sales-agreement-form-wrapper .sales-agreement-action-link:not(:last-child){
    margin-right: 10px;
}

.sales-agreement-form-wrapper.business .sales-agreement-action-link:not(:last-child){
    padding-right: 10px;
    border-right-width: 1px;
    border-right-style: solid;
}

ul.list-totals {
    margin: 30px 0;
}

.list-totals li{
    line-height: 30px;
    clear: both;
}

.list-totals .t-row-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%;
    white-space: nowrap;
}

.list-totals .total-value,
.list-cart .total-value,
.gvi-totals .cell-price-value
{
    min-width:70px;
    display:inline-block;
}

.basket-buttons{
    margin-bottom: 10px;
}

.basket-buttons .hyp-btn{
    clear: both;
    float: left;
    margin: 13px 0;
}

.basket-action-wrapper{
    margin-bottom: 58px;
}

.basket-action-wrapper .btn-checkout,
.basket-action-wrapper .btn-quote{
    margin-top: 15px;
    width: 100%;
}

.basket-promo-text-wrapper{
    clear: both;
}

.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;
}

.basket-empty .basket-b2c-mode .panel-header{
    display: none;
}

.row-expanded .product-total,
.row-expanded .lbl-quantity{
    visibility: hidden;
}

.add-products-to-compare-wrapper,
.suggestions-wrapper{
    line-height: 1;
    padding-bottom: 10px;
}

.gvi-basket .sales-agreement-line{
    position: relative;
}

.product-description-line{
    margin-top: 10px;
    padding-right: 10px;
    max-width: 300px;
    word-wrap: break-word;
}

.gvi-basket .sales-agreement-line.show-agreement-line-selector{
    padding-bottom: 32px;
}

.gvi-basket .sales-agreement-line .ddlb-wrapper{
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8px;
}

.gvi-basket .ddlb-sales-agreement-lines{
    width: 100%;
}

.gvi-basket .ddlb-sales-agreement-lines .ui-selectmenu-text{
    line-height: 27px;
}

.go-to-sales-agreement,
.sales-agreement-not-used-text{
    margin-right: 5px;
}

.hyp-configure-product:hover {
    text-decoration: underline;
}

.hyp-configure-product:before {
    display: none;
}

.btn-configure-product.btn-disabled,
.hyp-configure-product.btn-disabled {
    pointer-events: auto;
    background: none !important;
    text-decoration: none;
    cursor: default;
}

/*          checkout            */
body:not(.payment-pay-page):not(.invoicepayment-payinvoiceorder-page) .checkout-page-cnt,
.quote-promotion-page-cnt,
.one-page-checkout {
    counter-reset: step;
}

body:not(.payment-pay-page):not(.invoicepayment-payinvoiceorder-page) .checkout-page-cnt .checkout-step-title:before,
.quote-promotion-page-cnt .checkout-step-title:before,
.one-page-checkout .checkout-step h2:before{
    counter-increment: step;
    content: counter(step) '. ';
}

.checkout-page-cnt .wide .h1-holder{
    padding-top: 0;
    margin-bottom: 35px;
}

.checkout-step-title{
    margin-top: 10px;
}

.checkout-step:first-child .checkout-step-title{
    margin-top: 0;
}

a.checkout-step-title{
    text-decoration: none;
    display: inline-block;
    position: relative;
    padding: 0 43px 0 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 100%;
}

a.checkout-step-title > span{
    position: relative;
    text-decoration: underline;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}

a.checkout-step-title:after{
    content: '';
    top: -50%;
    bottom: -50%;
    margin: auto 0;
    right: 3px;
    position:absolute;
    height: 26px;
    line-height: 26px;
    width: 26px;

    background: url(../png/checkout-checkmark.png) no-repeat center center;
}

a.checkout-step-title:hover > span{
    text-decoration: none;
}

.checkout-step{
    padding-top: 20px;
    margin-bottom: 60px;
}

.checkout-step.no-padding{
    padding-top: 0px;
}

.checkout-step .shipping-cost .tooltip-sign{
    display: none;
}

.checkout-text{
    margin-bottom: 10px;
}

.terms-row{
    padding-top: 10px;
    margin-bottom: 12px;
}

.terms-row .terms-text,
.terms-row .terms-text + a{
    vertical-align: middle;
}

.terms-row .chb a:focus{
    text-decoration: underline;
}

.terms-row .chb ins{
    margin-left: 2px;
}

.terms-row .field-validation-error{
    display: inline-block;
}

.terms-row .validation{
    padding-left: 0;
}

.pay-row .btn-back{
    float: left;
    line-height: 45px;
}

.next-inside .btn-back{
    margin-right: 60px;
}

.shipping-choice{
    margin-bottom: 16px;
}

.shipping-choice-content{
    display: none;
    padding-top: 15px;
}

.shipping-choice-description{
    margin-bottom: 15px;
}

.active .shipping-choice-content{
    display: block;
}

.shipping-choice-content .ui-selectmenu-menu{
    max-width: 100%;
}

.gvi-addresses .col-name,
.gvi-addresses .col-address{
    text-align: left;
}

.gvi-addresses .col-name{
    max-width: 280px;
}

.gvi-addresses .col-name.ellipsis{
    white-space: normal;
}

.gvi-addresses .col-address{
    word-break: break-all;
}

.gvi-addresses .col-action{
    text-align: right;
}

.gvi-addresses td.col-name{
    font-weight: bold;
}

.gvi-methods{
    margin-bottom: 20px;
}

.gvi-methods tr{
    line-height: 24px;
}

.gvi-methods td{
    vertical-align: top;
    padding: 12px 15px 12px 0;
}

.gvi-methods th{
    padding: 7px 0;
    text-align: left;
    white-space: normal;
    line-height: 16px;
}

.gvi-methods .col-method-selection{
    width: 1%;
    white-space: nowrap;
}

.gvi-methods .col-method-cost{
    text-align: right;
    padding-right: 5px;
}

.gvi-methods td.col-method-cost{
    width: 1%;
    white-space: nowrap;
}

.gvi-methods .col-method-name {
    min-width: 90px;
}

.gvi-methods .method-title{
    cursor: pointer;
    vertical-align: middle;
    margin-right: 7px;
}

.gvi-methods .rdb{
    margin-top: 0;
    margin-left: -2px;
}

.gvi-methods .radio{
    display: inline-block;
    line-height: 24px;
    vertical-align: bottom;
}

.gvi-methods .cell-price-value{
    min-width: 45px;
}

.gvi-methods .cell-price-value.free-costs{
    font-weight: bold;
    min-width: initial;
}

.gvi-methods .hyp-more{
    text-transform: lowercase;
    vertical-align: middle;
}

.has-pickup-locations.is-selected td{
    border-bottom: none;
    padding-bottom: 5px;
}

.has-pickup-locations.is-selected + .pickup-locations-wrapper .inline-loading-indicator{
    display: block;
    position: static;
    padding: 50px 0;
}

.pickup-locations-wrapper > td{
    padding: 4px 0 12px 2rem;
    vertical-align: middle;
}

.gvi-pickup-locations caption{
    text-align:left;
    padding-bottom: 5px;
}

.gvi-pickup-locations td{
    padding: 5px;
    border: none;
}

.gvi-pickup-locations .radio{
    line-height: inherit;
}

.gvi-pickup-locations .radio .rdb{
    margin-top: -3px;
}

.gvi-pickup-locations .col-pickup-location-description label{
    cursor: pointer;
    line-height: inherit;
    -ms-word-break: break-all;
    word-break: break-all;

    /* Non standard for WebKit */
    word-break: break-word;

    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.gvi-pickup-locations .col-pickup-location-cost{
    text-align: right;
    padding-right: 5px;
    white-space: nowrap;
}

.method-img{
    cursor: pointer;
    max-height: 24px;
    max-width: none;
    vertical-align: middle;
    font-size: 0px;
}

.weight-value-wrapper{
    margin-bottom: 15px;
}

.weight-value{
    font-weight: bold;
}

.editable-header{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.editable-header .hyp-edit{
    text-decoration: underline;
}

.cart-summary-header{
    margin-bottom: 28px;
}

.cart-summary-header .hyp-edit{
    padding: 5px 0 0 5px;
}

.list-cart{
    list-style: none;
    margin: 0;
    padding: 0;
}

.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;
}

.checkout-summary .step-billingaddress .editable-header + li,
.checkout-summary .step-shippingaddress .editable-header + li{
    word-break: break-all;
}

.list-step{
    box-sizing: border-box;
    margin: 0 0 26px;
    padding: 0;
    list-style: none;
}

.list-step-title{
    font-weight: bold;
    margin-bottom: 5px;
}

.l-service-info,
.checkout-summary{
    border-top-width: 1px;
    border-top-style: solid;
    padding-top: 30px;
    margin-top: 30px;
}

.additional-info{
    margin-bottom: 66px;
}

.additional-info h4{
    margin-bottom: 10px;
}

/* START basket overview grid */
.gvi-basket-overview td{
    vertical-align: top;
}

.gvi-basket-overview th.col-first,
.gvi-basket-overview th.col-info{
    padding-left: 0;
}

.gvi-basket-overview th.col-price,
.gvi-basket-overview th.col-discount,
.gvi-basket-overview th.col-uom{
    padding-right: 0;
}

.gvi-basket-overview .col-qty{
    text-align: center;
}

.gvi-basket-overview .upper-row td{
    border-style: dashed;
    padding: 10px 0;
}

.gvi-basket-overview .inner-row td{
    padding: 0 0 10px 0;
}

.gvi-basket-overview td:last-child,
.gvi-basket-overview th:last-child{
    padding-right: 7px;
}

.gvi-basket-overview td.col-first{
    box-sizing: border-box;
    width: 70px;
    padding-right: 5px;
    word-wrap: break-word;
}

.gvi-basket-overview.no-images td.col-first{
    width: 0px;
    padding-right: 0px;
}

.gvi-basket-overview .col-first,
.gvi-basket-overview .col-info{
    text-align: left;
}

.gvi-basket-overview .col-price,
.gvi-basket-overview .col-total,
.gvi-basket-overview .col-discount,
.gvi-basket-overview .col-uom{
    text-align: right;
}

.gvi-basket-overview .product-img,
.gvi-basket-overview .hyp-thumbnail{
    height: 50px;
    width: 50px;
}

.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;
}

.gvi-basket-overview .mobile-btm-footer{
    display: none;
}
/* END basket overview grid */

.checkout-footer{
    clear: both;
}

.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;
    margin-right: 10px;
    vertical-align: middle;
    width: 120px;
}

.shipping-cost{
    display: inline-block;
}

.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{
    display: none;
    padding-left: 40px;
}

.accordion-header .btn-show-hide{
    float: left;
    margin-left: -40px;
}



/* news */

/* -MODIF */
.news-date{
    display: none;
}

.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;
}

.list-news-header .hyp {
    line-height:18px;
    margin-top:3px;
    margin-bottom:3px;
}

.list-news-header .hyp:before {
    top:8px;
}

.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;
}

.ui-dialog-scroll{
    position: fixed;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.ui-dialog-scroll .ui-tabs .ui-tabs-panel{
    padding: 10px 0;
}

.matrices.ui-dialog-scroll .ui-tabs-nav{
    position: static;
    margin-bottom: 0;
}

.matrices.ui-dialog-scroll .ui-tabs-tab .ui-tabs-anchor{
    padding: 10px 30px;
    font-size: 25px;
}

.matrices.ui-dialog-scroll .ui-tabs-tab .ui-tabs-anchor::after{
    left: 30px;
    right: 30px;
    bottom: 7px;
}

.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-title{
    display: none;
}

.ui-dialog .ui-dialog-titlebar-close{
    border: none;
    background: none;
    text-transform: lowercase;
    position: relative;
    top: 0;
    right: 0;
    margin: 0;
    height: auto;
    width: auto;
}

.ui-dialog-titlebar-close .ui-icon{
    background: url(../png/close.png);
    float: right;
    margin-top: 2px;
    margin-left: 10px;
    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;
}

.mfp-container{
    padding: 0;
}

.mfp-content{
    height: 100%;
}

.mfp-close{
    font-size: 4em;
}

.popup-placeholder{
    box-sizing: border-box;
    position: relative;
    height: 100%;
    margin: 0 auto;
}




/*          Quick order         */
.choose-product{
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

-webkit-justify-content: space-between;
	      -ms-flex-pack: justify;
		justify-content: space-between;

    -webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
		    flex-wrap: wrap;

    padding: 4px 0;
    margin: 29px -10px 0;
}

.choose-product > div{
    display: block;
    padding: 10px 10px 0;
    box-sizing:border-box;
    margin-left:auto;
}

.choose-product .ddlb{
    margin-bottom: 10px;
}

.choose-product .unit-of-measure{
    margin-right: 10px;
}

.choose-product .qo-product-title-box {
    margin-left:0;
    max-width:40%;
}

.choose-components:empty{
    display:none;
}

.choose-components + .qo-quantity-box {
    margin-left:0;
}

.choose-components:empty + .qo-quantity-box {
    margin-left:auto;
}

.qo-quantity-box > div{
    vertical-align:top;
}

.qo-quantity-box .ddlb-uom {
    margin-right:10px;
}

.hyp-qo-title{
    font-weight: bold;
    margin-bottom:10px;
}

.qo-input-area .tbx-search{
    width: 60%;
}

.qo-input-area .ui-autocomplete.ui-menu .ui-menu-item-wrapper{
    min-height: 25px;
    padding-top: 11px;
    padding-bottom: 11px;
}

.btn-quick-order-add {
    margin-top:-3px;
    margin-bottom: 5px;
}

/* autocomplete */
.ui-autocomplete{
    overflow-y: auto;
}

.ui-autocomplete.ui-menu .ui-menu-item-wrapper{
    display: block;
    padding: 0 15px;
}

.ui-autocomplete a:hover{
    text-decoration: none;
}

header .ui-autocomplete{
    width: calc(100% - 2px);
    left: 0 !important;
}

/*
 * jQuery Stick Table Headers - v1.1.2
 * https://github.com/jpchip/stickytable
 */
.sticky-wrap {
	overflow-x: auto;
	overflow-y: hidden;
	position: relative;
	width: 100%;
}
.sticky-wrap .sticky-thead,
.sticky-wrap .sticky-col,
.sticky-wrap .sticky-intersect {
	position: absolute;
	opacity: 0;
	top: 0;
	left: 0;
	z-index: 50;
	width: auto; /* Prevent table from stretching to full size */
}
.sticky-wrap .sticky-thead {
	box-shadow: 0 0.25em 0.1em -0.1em rgba(0,0,0,.125);
	z-index: 100;
	width: 100%; /* Force stretch */
}
.sticky-wrap .sticky-col {
	box-shadow: 0.25em 0 0.1em -0.1em rgba(0,0,0,.125);
}
.sticky-wrap .sticky-intersect {
	opacity: 1;
	z-index: 150;
}
.sticky-wrap td,
.sticky-wrap th {
	box-sizing: border-box;
}

/* assumes container element has set height... */
.sticky-wrap.overflow-y {
	overflow-y: auto;
	max-height:100%;
}
/*
 * END jQuery Stick Table Headers - v1.1.2
 */



/****************************************
            Content blocks
****************************************/

.flexi-row > .html-wrapper.fr-view,
.flexi-row .usp,
.flexi-row .banner-content{
    /* -MODIF
    padding-left: 1.85%;
    padding-right: 1.85%;
    */
}

.flexi-row.center > .html-wrapper.fr-view,
.flexi-row.center .usp,
.flexi-row.center .banner-content,
.flexi-row.center .products-flow{
    padding-left: 0;
    padding-right: 0;
}

.flexi-row .products-flow{
    margin-left: 0;
    margin-right: 0;
    padding: 0 calc(1.85% - 10px);
}

.flexi-row.center .products-flow{
    margin-left: -10px;
    margin-right: -10px;
}
/*          our payment          */
.our-methods{
    margin-bottom: 20px;
}

.our-methods img{
    margin: 5px;
    vertical-align: middle;
}

/*          usp         */
.usp .separator-dark{
    display: block;
    height: 39px;
    width: 12px;
}

ul.usp-list{
    display: table;
    margin: 20px 0;
    padding: 20px 0;
    width: 100%;
}

.usp-list .usp-ico{
    margin-right: 8px;
}

.usp-list .usp-ico,
.usp-list .usp-text{
    vertical-align: middle;
}

.usp-list li{
    display: table-cell;
    text-align: center;
    text-transform: uppercase;
    position: relative;
    vertical-align: middle;
}

.usp-list li:first-child{
    text-align: left;
}

.usp-list li:last-child{
    text-align: right;
}

/*          END usp           */

/*          START main banner           */
.banner{
    height: 451px;
    text-align: right;
}

.banner img{
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    height: 100%;
    position: absolute;
    left: 50%;
    max-width: inherit;
}

.banner-full-width{
    position: absolute;
    left: 0;
    right: 0;
    height: 451px;
    overflow: hidden;
}

.banner-content{
    position: relative;
    padding-top: 160px;
}

.banner h1,
.banner h2{
    text-shadow: 0 3px 2px #000;
}

/*          END main banner           */

/*          START child menu items           */
.flexi-row:not(.center) .flow-category-tiles{
    margin-right: 0;
    margin-left: 0;
    width: 100%;
}
/*          END child menu items           */

/*          START image tiles           */
.flexi-row:not(.center) .flow-img-tiles.columns-general{
    margin-right: 0;
    margin-left: 0;
    width: 100%;
}

.flow-img-tiles .column{
    margin-bottom: 20px;
}
/*          END image tiles           */

/****************************************
            END Content blocks
****************************************/

/*          START return           */
.gvi-return-wrapper{
    border-bottom: 1px solid;
    margin-bottom: 35px;
}

.gvi-return-wrapper.is-empty{
    display: none;
}

.gvi-return .upper-row{
    vertical-align: top;
}

.gvi-return .col-item-no,
.gvi-return .col-title{
    text-align: left;
}

.gvi-return .col-checkbox,
.gvi-return .col-order-quantity,
.gvi-return .col-order-max-return-quantity,
.gvi-return .col-order-unit-of-measure-title{
    text-align: center;
}

.gvi-return .col-cost{
    text-align: right;
}

.gvi-return .col-checkbox{
    width: 1%;
}

.gvi-return .return-row-addition{
    padding: 10px 33px 15px;
}

.gvi-return .return-row-info{
    padding: 0 40px;
}

.gvi-return .add-more-products{
    border-top: 2px dotted #eee;
    margin-top: 20px;
    padding-top: 15px;
}

.gvi-return .is-unreturnable{
    opacity: 0.5;
}

.gvi-return .return-row-addition .btn-delete{
    position: absolute;
    right: 0;
}

.gvi-return .chb-text{
    display: none;
}

.gvi-return .col-delete{
    width: 1%;
    padding-right: 0;
}

.gvi-return .product-title{
    font-weight: bold;
}

.product-to-return{
    border-top-width: 2px;
    border-top-style: dotted;
    padding-top: 15px;
    position: relative;
}

/*          START return quick search          */
.quicksearch{
    margin: 20px 0;
}

.quicksearch-search{
    position: relative;
    width: 70%;
}

.quicksearch-result{
    margin: 20px 0;
    padding: 15px 0;
}

.quicksearch-result.is-empty{
    display: none;
}

.quicksearch-autocomplete .ui-menu-item-wrapper{
    min-height: 25px;
    padding-top: 11px;
    padding-bottom: 11px;
}

.quicksearch-result-title{
    line-height: 28px;
    font-weight: bold;
}

.quicksearch-result .unit-of-measure{
    display: inline-block;
}

.quicksearch-components .ddlb + .ddlb {
    margin-top: 10px;
}
/*          END return quick search           */
/*          END return           */

/* Fix for IOS dropdowns */
.ui-touch-device .opener,
.ui-touch-device .over-summary,
.ui-touch-device .filter-title,
.ui-touch-device .accordion-header,
.ui-touch-device .facet .hdr{
    cursor: pointer;
}

/*          START unavailable page           */
.unavailable-page .site{
    padding-top: 0 !important;
}

.unavailable-page .content{
    min-height: initial !important;
    display: table-cell;
    vertical-align: middle;
    padding: 20px 0;
}

.unavailable-page-text{
    margin: 25px 0;
}

.unavailable-page .center{
    max-width: 650px;
}

.unavailable-page header{
    display: none;
}

.unavailable-page .logo{
    text-align: center;
    padding-bottom: 15px;
}

.unavailable-page footer{
    display: none;
}
/*          END unavailable page           */

/*          START one page checkout           */
.one-page-checkout .gvi-addresses .col-name{
    max-width: 130px;
}
.one-page-checkout .gvi-methods{
    width: 100%;
}

.one-page-checkout .checkout-step:last-child .form-holder{
    padding-top: 0;
}

.one-page-checkout .service-info{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -3.8%;
}

.service-info-bottom{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    line-height: 40px;
    margin: 60px 0;
}

.service-info-image{
    vertical-align: middle;
}

.service-info-text{
    text-transform: uppercase;
    padding-left: 5px;
    vertical-align: middle;
}

.service-info-separator{
    height: 39px;
}

.one-page-checkout .our-methods{
    box-sizing: border-box;
    flex: 1;
    padding: 0 3.7%;
}

.one-page-checkout .our-methods:not(:first-child){
    border-left-width: 1px;
    border-left-style: solid;
}

.one-page-checkout .checkout-summary{
    margin-top: 0;
}

.one-page-checkout .checkout-step{
    position: relative;
    padding-top: 0;
    margin-bottom: 30px;
}

.one-page-checkout .checkout-step.focused:not(.order-overview-section):before,
.one-page-checkout .checkout-step:hover:not(.order-overview-section):before{
    content: "";
    position: absolute;
    left: -8px;
    right: -8px;
    top: -8px;
    bottom: -8px;
    z-index: -1;

    border-radius: 5px;

    background: #fcfcfc;
    border: 1px solid #e6e6e6;
}

#SubmitOrder.checkout-step:before{
    display: none;
}

.one-page-checkout .checkout-step-content{
    transition: all 250ms linear;
}

.one-page-checkout .inline-loading-indicator{
    display: none;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
}

.one-page-checkout .hidden .inline-loading-indicator{
    display: block;
}

.one-page-checkout .hidden .checkout-step-content{
    opacity: 0;
}

.one-page-checkout .hidden::after{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.one-page-checkout .order-overview-section{
    padding: 15px 10px;
    border-width: 1px;
    border-style: solid;
    border-radius: 5px;
    box-sizing: border-box;
}

.one-page-checkout .msg-block-alert{
    margin: 0;
}

.one-page-checkout .columns-general.compressed{
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
.one-page-checkout .column{
    width: 45%;
    display: block;
    height: auto;
    position: relative;
}

.one-page-checkout .column:first-child{
    padding-top: 9px;
}

.one-page-checkout .column55{
    width: 55%;
    padding-right: 0;
}

.one-page-checkout .sticky-wrapper{
    padding: 1px 0; /* !!! adding "block borders" for proper height calculation of columns (includes margins of children elements) */
    position: relative;
    box-sizing: border-box;
    z-index: 3;
}

/*          END one step checkout page           */

/*          Compare functionality               */
.compare-selector-lbl{
    vertical-align: middle;
    cursor: pointer;
}

.details-info .product-compare-selector{
    border-top-width: 1px;
    border-top-style: solid;
}

.product-compare-selector .ui-tooltip{
    text-align: left;
}

.show-differences-wrp{
    padding: 0 5px 0 0;
}

.show-differences-wrp label{
    cursor: pointer;
}

.product-compare-row{
    margin-top: 20px;
}

/* compare popup */
.compare-popup{
    border: 1px solid #adb6be;
    background: #fff;
    position: fixed;
    left: 10px;
    bottom: 10px;
    display: flex;
    flex-direction: row;
    border-radius: 2px;
    width: 310px;
    max-width: 100%;
    z-index: 2;
    box-sizing: border-box;
}

.compare-popup-header{
    background: grey;
    color: #fefefe;
    margin: -1px -1px 0;
    padding: 6px 28px 6px 18px;
    font-size: 1.1em;
    font-weight: bold;
    border-radius: 2px 2px 0 0;
    position: relative;
    cursor: pointer;

    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
}

.compare-wrp{
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 80px);
    width: 100%;
    -webkit-overflow-scrolling: touch;
}

.compare-popup-toggled .compare-popup-header:after{
    transform: rotate(180deg);
}

.compare-popup-header:after{
    content: '';
    background: url(../png/btn-arrow-down.png) no-repeat center center;
    width: 12px;
    height: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 12px;
}

.compare-popup-content{
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
    overflow-x: hidden;
}

.compare-popup-footer{
    padding: 5px 18px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;

    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
}

.compare-popup-toggled .compare-popup-content,
.compare-popup-toggled .compare-popup-footer{
    display: none;
}

.compare-popup-footer .btn{
    margin-top: 5px;
    margin-bottom: 5px;
}

.compare-list{
    padding: 10px 18px 5px 20px;
    line-height: 21px;
    margin: 0;
    counter-reset: order;
}

.compare-item{
    display: flex;
    justify-content: space-between;
    line-height: 1.2;
    padding: 4px 20px 4px 0;
    position: relative;
}

.compare-link{
    margin-right: auto;
    width: 100%;
    word-wrap: break-word;
    text-decoration: none;
    display: flex;
    align-items: center;
}

.compare-link:hover .compare-title{
    text-decoration: underline;
}

.compare-link-thumbnail{
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    margin: 0 10px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.compare-title {
    width: calc(100% - 50px);
}

.compare-link-img{
    display: block;
    max-height: 100%;
    flex: 1;
}

.compare-remove{
    border: none;
    cursor: pointer;
    background: url(../png/compare-remove.png) no-repeat center center transparent;
    background-size: contain;
    width: 14px;
    height: 14px;
    box-sizing: border-box;
    position: absolute;
    margin: auto 0;
    top: 0;
    bottom: 0;
    right: 0px;
    padding: 0;
}

.compare-remove:hover{
    opacity: 0.75;
}

.btn-compare-clear{
    margin-right: 15px;
}

.btn-compare-open{
    padding-right: 30px;
}

.btn-compare-open:after{
    height: 29px;
}

.btn-compare-open:after,
.btn-compare-open .btn-cnt:after{
    display: block;
}

.actions-section{
    border-bottom: 1px solid black;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0 2px;
}

.actions-section .chb-text,
.actions-section .hyp-btn{
    vertical-align: middle;
}

.actions-section .hyp-btn:before{
    display: none;
}

.actions-section .clear-container{
    margin-bottom: 1px;
}

.actions-section,
.reviews-section{
    margin: 0 0 15px 0;
}

.num-switch{
    position: relative;
    display: inline-flex;
    flex-direction: column;
    height: 1rem;
    line-height: 1rem;
    overflow: hidden;
    text-align: center;
}

.num-switch-next,
.num-switch-prev{
    transform: translateY(0);
    animation: 0.25s ease-out 0s;
    animation-name: slideUp;
    animation-fill-mode: forwards;
}

.num-switch[data-invert] > span{
    -webkit-animation-direction: alternate-reverse;
    animation-direction: alternate-reverse;
}

.num-switch[data-invert] .num-switch-prev{
    order: 2;
}

.num-switch[data-invert] .num-switch-next{
    order: 1;
}

.num-switch[data-stop] > span{
    animation-delay: -0.25s;
    animation-duration: 0s;
}

@keyframes slideUp{
    0%  {transform: translateY(0)}
    100%{transform: translateY(-100%)}
}

/**/

/* compare page */
.productcompare-index-page .content{
    overflow: hidden;
}

.compare-content{
    margin: 10px 0 30px;
}

#productComparePage,
.compare-rails{
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.compare-rails{
    width: 100%;
    overflow: hidden;
    position: relative;
}

.compare-rails::after,
.compare-rails::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    background: white;
    width: 1px;
}

.compare-rails::before{
    left: 0;
}

.compare-rails::after{
    right: 0;
}

.compare-row{
    display: flex;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}

.compare-column{
    width: 25%;
    max-width: 25%;
    flex: 1 0 25%;
    box-sizing: border-box;
}

[data-prod-amount="1"] .compare-column{
    max-width: 100%;
    flex-basis: 100%;
}

[data-prod-amount="2"] .compare-column{
    max-width: 50%;
    flex-basis: 50%;
}

[data-prod-amount="3"] .compare-column{
    max-width: 33.3333%;
    flex-basis: 33.3333%;
}

.product-tiles-section .compare-column:first-child:last-child{
    width: 100%;
    max-width: 475px;
    margin-left: auto;
    margin-right: auto;
}

.reviews-row,
.specification-row{
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    transform: translate3d(0,0,0);
    will-change: transform;
    user-select: none;
}

.reviews-value,
.specification-value{
    border: 1px solid grey;
    border-right: none;
    background: #f6f6f6;
    word-wrap: break-word;
    box-sizing: border-box;
    padding: 5px 10px;
}

.reviews-value:first-child,
.specification-value:first-child{
    border-left: transparent !important;
}

.specification-title{
    padding: 5px 0;
}

.product-tiles-section{
    background: #fff;
    z-index: 2;
    position: relative;
}

.product-tiles-section .product-tile .product-info{
    width: 100%;
    height: 100%;
}

.product-tiles-section .product-tile{
    box-sizing: border-box;
    text-align: center;
    height: 100%;
    width: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    padding: 2px 10px;
}

.product-tiles-section .product-img{
    float: none;
    padding: 12px 0 0;
    width: auto;
}

.product-tiles-section .product-img .hyp-thumbnail{
    display: block;
    height: 180px;
    width: 100%;
}

.compare-tiles-wrp .thumbnail-box{
    max-width: 200px;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

.compare-btn{
    top: 120px;
    z-index: 2;
    display: none;
}

.with-buttons .compare-btn{
    display: block;
}

.compare-btn.slick-prev{
    left: -11px;
}

.compare-btn.slick-next{
    right: -11px;
}

.with-swipable .compare-btn{
    display: block;
}

.compared-product-tile .product-action{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    width: 100%;
}

.product-tile.compared-product-tile .product-id + .stock-indication{
    margin: 0;
    padding: 0;
    border: none;
}

.compared-product-tile .prices{
    width: 100%;
}

.compare-tiles-wrp .product-img{
    padding: 0 10px 5px;
}

.compare-tiles-wrp .btn-remove{
    background: url(../png/compare-remove.png) no-repeat center center transparent;
    background-size: contain;
    border: none;
    cursor: pointer;
    width: 15px;
    height: 15px;
    position: absolute;
    right: -18px;
    top: 10px;
}

.compare-tiles-wrp .btn-remove:hover{
    opacity: 0.75;
}


/* compare sticky functionality */
.ui-touch-device .product-tiles-section.is-fixed{
    width: 100vw;
}

.has-sticky{
    border-bottom: 1px solid grey;
}

.has-sticky.is-sticky{
    position: fixed;
    max-width: 100%;
    top: 62px;
    left: 0;
    right: 0;
    z-index: 2;
}

.has-sticky.is-fixed{
    position: absolute;
    bottom: 0;
    left: 50%;
    width: calc(100vw - 17px);
    transform: translateX(-50%);
}

.has-sticky .product-tile .product-title{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.has-sticky .product-tile .product-description{
    margin-bottom: 7px;
    word-wrap: break-word;
    box-sizing: border-box;
}

.has-sticky .compared-product-tile .prices {
    line-height: 1.2;
}

.has-sticky .compared-product-tile .prices:before {
    content:'';
    float: right;
    width:54px;
    height:20px;
}

.has-sticky .product-tile .product-description {
    padding-right: 54px;
}

.has-sticky.product-tiles-section .product-tile{
    text-align: left;
    padding-left: 0;
    padding-right: 0;
}

.has-sticky .product-action{
    width: 100%;
}

.has-sticky.product-tiles-section .product-img{
    position: absolute;
    right: 0;
    padding: 0;
}

.has-sticky.product-tiles-section .product-img .hyp-thumbnail{
    width: 50px;
    height: 50px;
}

.has-sticky .compare-tiles-wrp{
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 4%;
    position: relative;
}

.has-sticky .compare-column{
    border-left: 1px solid gray;
    padding: 5px 10px;
}

.has-sticky .compare-column:first-child{
    border-left-color: transparent;
}

.has-sticky .compare-btn.slick-prev{
    left: 4%;
    top: 50%;
    margin-left: -11px;
}

.has-sticky .compare-btn.slick-next{
    right: 4%;
    top: 50%;
    margin-right: -11px;
}

.has-sticky .product-id,
.has-sticky .stock-indication{
    display: none;
}

.has-sticky .compare-tiles-wrp .btn-remove{
    display: none;
}
/**/
/*   END    Compare functionality               */

/*          START product configurator          */

#product_configurator_cnt {
    position: relative;
    overflow: hidden;
    height: calc(100vh - 61px) !important;
}

#product_configurator_cnt iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/*          END product configurator          */
/* Modifiche RIVIT */
.top-action > div {
    text-align: left;
}
.top-header .top-action {
    vertical-align: top;
    text-align: right;
}
.top-header > div {
    display: table-cell;
    text-align: right;
}
.top-action {
    padding-top: 7px;
    text-align: right;
}
.show320 {
    display: none !important;
}

/* Gestione commenti su ordine */
.tbx-comment {
    width: 60%;
    display: inline-block;
    margin-right: 10px;
    vertical-align: bottom;
}

.orderInfoPopup {
    display: none;
}
