﻿/****************************************
                Desktop
****************************************/
@media screen and (min-width: 1024px) {

    .center{
        padding: 0 4%;
    }

    .product-bottom-info > .column:first-child{
        width: 60%;
    }

    .product-bottom-info > .column.column-inline:first-child{
        width: 100%;
    }

    /* START header controls */
    header.sticky-mode{
        top: -60px;
    }

    header.sticky-mode .header-blocks-wrapper,
    header.sticky-mode nav{
        margin: 0 auto;
        width: 1000px;
    }

    .top-header,
    .middle-header{
        padding: 0 4%;
    }

    /*          logo           */
    .logo{
        margin-right: 10px;
        max-width: 40%;
    }

    header.sticky-mode .logo{
        max-width: inherit;
    }

    /*          language           */
    .language + .login{
        margin-left: -4px;
    }

    header.sticky-mode .language + .login{
        margin-left: 0;
    }

    /*          basket           */
    .basket-summary-holder{
        min-width: 120px;
    }

    /* START multi dropdown navigation */
    header .nav-opener-wrapper{
        display: none;
    }

    header.sticky-mode .nav-opener-wrapper{
        display: block;
    }

    .nav-wrapper{
        margin-top: -1px;
        width: 100%;
    }

    header.sticky-mode .nav-wrapper{
        margin-top: 0;
    }

    .bottom-header .nav-lvl-2 .separator:nth-of-type(5n),
    header.sticky-mode .nav-lvl-2 .separator:nth-of-type(3n){
        display: table-row;
    }

    .bottom-header .nav-lvl-2 .nav-item-block:nth-of-type(5n+1),
    header.sticky-mode .nav-lvl-2 .nav-item-block:nth-of-type(3n+1){
        border-left: none;
    }
    /* END multi dropdown navigation */
    /* END header controls */

    .has-aside{
        border-right-width: 1px;
        border-right-style: solid;
        float: left;
        padding-right: 1%;
        width: 85%;
    }

    aside{
        display: table-cell;
        padding-left: 22px;
    }

    .has-aside .details-img{
	    width: 43%;
    }

    .has-aside .details-info{
	    margin-left: 43%;
    }

    .no-aside .details-img{
	    width: 56%;
    }

    .no-aside .details-info{
	    margin-left: 56%;
    }

    .simple-product-tile{
        max-width: 50%;
    }

    .product-bottom-info .column:first-child .simple-product-tile{
        width: auto;
    }

    .list-mode .product-action{
        display: table-cell;
    }

    .list-mode .tbx-quantity + .unit-of-measure{
        min-width: 75px;
    }

    .grid-mode > li{
        width: 33.33%;
    }

    .grid-mode > li:nth-of-type(3n+1):after{
        border-bottom-width: 1px;
        border-bottom-style: solid;
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        margin-top: 9px;
    }

    #orderAdressPage .form-row{
        max-width: 73%;
    }

    .shipping-choice-content .ui-selectmenu-menu{
        max-width: 160%;
    }

    .gvi-methods{
        width: 80%;
    }

    /*          START product tile            */
    .products-flow .product-tile{
        width: 25%;
    }

    .column .products-group .blocks-row-item:nth-child(4){
        display: none;
    }
    /*          END product tile            */

    .aside-links{
        margin-top: 80px;
    }

    .orders-details-page .columns-general .column.wide{
        width: 77%;
    }
}


/****************************************
                Tablet
****************************************/
@media screen and (min-width: 640px) and (max-width: 1023px){

    .center{
        padding: 0 2%;
    }

    .columns-general.product-bottom-info > .column{
        display: block;
    }

    .list-totals .total-value,
    .list-cart .total-value {
        min-width: 0;
    }

    /* START multi dropdown navigation */
    .nav-lvl-2 .separator:nth-of-type(4n){
        display: table-row;
    }

    .nav-lvl-2 .nav-item-block:nth-child(4n+1){
        border-left: none;
    }

    /* cut subcategories to fit the screen */
    header.sticky-mode .nav-lvl-3 .nav-item:nth-child(n+5){
        display: none;
    }
    /* END multi dropdown navigation */

    /*          START product tile            */
    .products-flow{
        margin: 25px -3px;
    }

    .products-flow .product-tile{
        padding: 0 3px;
        width: 33.33%;
    }

    .products-flow .product-tile .product-img{
        padding-right: 0;
    }

    .products-flow .product-tile .btn{
        padding: 0 28px 0 8px;
    }

    .products-group .blocks-row-item:nth-child(4),
    .column .products-group .blocks-row-item:nth-child(3){
        display: none;
    }
    /*          END product tile            */

    .order-box .form-row .label{
        display: block;
        float: left;
        min-width: 23%;
        width: auto;
    }

    .order-box .form-row .field{
        display: block;
        float: left;
        min-width: 235px;
        width: 74%;
    }

    .list-mode .product-tile .prices{
        float: left;
    }

    .has-aside .details-img{
	    width: 50%;
    }

    .has-aside .details-info{
	    margin-left: 50%;
    }

    .no-aside .details-img{
	    width: 58%;
    }

    .no-aside .details-info{
	    margin-left: 58%;
    }

    .simple-product-tile{
        width: 25%;
    }

    .grid-mode > li{
        width: 50%;
    }

    .grid-mode > li:nth-of-type(2n+1):after{
        border-bottom-width: 1px;
        border-bottom-style: solid;
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        margin-top: 9px;
    }

    .usp-list li:nth-child(6),
    .usp-list li:nth-child(7){
        display: none;
    }

    /* START basket and checkout pages */
    .columns-general.compact.basket-page-cnt,
    .columns-general.compact.checkout-page-cnt{
        display: block;
    }

    .columns-general.compact.basket-page-cnt .column,
    .columns-general.compact.checkout-page-cnt > .column{
        display: block;
        width: auto;
    }

    .basket-page-cnt .border-simple-left,
    .checkout-page-cnt .border-simple-left{
        border: none;
    }

    .basket-totals-wrapper,
    .basket-action-wrapper,
    .cart-summary,
    .checkout-summary{
        box-sizing: border-box;
        padding: 0 2.2%;
        width: 50%;
    }

    .basket-totals-wrapper,
    .cart-summary{
        float: left;
        margin-left: -2.2%;
    }

    .basket-action-wrapper,
    .checkout-summary{
        float: right;
        margin-right: -2.2%;
    }

    .basket-details,
    .checkout-details{
        margin-top: 20px;
    }

    /* END basket and checkout pages */

    /* START profile pages */
    .columns-general.compact.profile-page-cnt{
        display: block;
    }

    .columns-general.compact.profile-page-cnt > .column{
        display: block;
        width: auto;
    }

    .hyp-account{
        border-right-style: solid;
        border-right-width: 1px;
        clear: none;
        padding-right: 15px;
        margin-right: 15px;
    }

    .hyp-account:last-child{
        border: none;
        padding-right: 0;
        margin-right: 0;
    }
    /* END profile pages */
}


/****************************************
                Mobile
****************************************/
@media screen and (max-width: 639px) {

    .center{
        padding: 0 15px;
    }

    /* START header controls */
    .header-blocks-wrapper{
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
	    -webkit-flex-wrap: wrap;
	        -ms-flex-wrap: wrap;
	            flex-wrap: wrap;
    }

    .nav-is-closed .header-blocks-wrapper{
        height: 62px;
        overflow: hidden;
    }

    .nav-is-closed .search,
    .nav-is-closed .top-header,
    .nav-is-closed .bottom-header,
    .nav-is-closed .btn-suggestions-top{
	    display: none;
    }

    .middle-header{
	    -webkit-box-ordinal-group: 2;
	    -webkit-order: 1;
	        -ms-flex-order: 1;
	            order: 1;
	    -webkit-flex-wrap: wrap;
	        -ms-flex-wrap: wrap;
	            flex-wrap: wrap;
        border-width: 1px 0;
        border-style: solid;
        width: 100%;
    }

    .top-header{
	    -webkit-box-ordinal-group: 3;
	    -webkit-order: 2;
	        -ms-flex-order: 2;
	            order: 2;
        width: 100%;
    }

    .bottom-header{
	    -webkit-box-ordinal-group: 4;
	    -webkit-order: 3;
	        -ms-flex-order: 3;
	            order: 3;
        border-width: 0 0 1px;
        border-style: solid;
        width: 100%;
    }

    .top-dropdown{
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .top-dropdown .opener{
        padding-left: 18px;
        line-height: 40px;
    }

    .top-dropdown .collapsed + .summary{
        display: none;
    }

    .top-dropdown .opener:after{
        top: 50%;
        margin-top: -3px;
    }

    .top-info{
        display: none;
    }

    .top-hyp{
        display: none;
    }

    /*          logo           */
    .logo{
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        margin: 0 10px;
        text-align: center;
    }

    .logo img{
        max-height: 32px;
    }

    /*          login           */
    .login .person{
        display: inline-block;
        margin-right: 0;
        margin-left: 0;
        vertical-align: middle;
    }

    .login .opener:before{
        margin-right: 11px;
    }

    .login .stop-representing{
        line-height: 40px;
    }

    /*          search           */
    .ui-autocomplete{
        position: relative;
    }

    .search{
	    -webkit-box-ordinal-group: 3;
	    -webkit-order: 2;
	        -ms-flex-order: 2;
	            order: 2;
        border-width: 1px 0 0;
        border-style: solid;
        padding: 20px 15px;
        width: 100%;
    }

    .btn.btn-suggestions-top{
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 auto;
            -ms-flex: 1 0 auto;
                flex: 1 0 auto;
	    -webkit-box-ordinal-group: 4;
	    -webkit-order: 3;
	        -ms-flex-order: 3;
	            order: 3;
        margin: 0 15px 20px;
    }

    .btn.btn-suggestions-top .btn-cnt{
        margin-right: -30px;
    }

    .btn.btn-suggestions-top:before{
        position: absolute;
        margin: 7px 0 0 -30px;
    }

    /*          basket           */
    .basket{
        border-left-width: 1px;
        border-left-style: solid;
        position: relative;
        height: 60px;
        width: 62px;
    }

    .basket-summary-holder{
        min-width: 62px;
    }

    .basket .basket-summary{
        display: none !important;
    }

    .basket .hyp{
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .over-summary{
        line-height: 62px;
    }

    .over-summary .hyp{
        padding: 0 3px;
    }

    .over-summary .hyp:before{
        display: inline-block;
        position: static;
        vertical-align: middle;
    }

    .over-summary .over-summary-number{
        display: inline-block;
        margin-left: 3px;
        vertical-align: middle;
    }

    .over-summary.over-summary-just-changed{
        position: fixed;
        height: 61px;
        line-height: 61px;
        top: 0;
        right: 0;
        display: none;
        text-align: center;
        padding: 0 10px 0 40px;
        font-weight: bold;
        min-width: 12px;
        border-radius: 0 0 0 2px;
        z-index: 10;
    }

    .over-summary.over-summary-just-changed .hyp:before{
        background: url(../../files/icons/basket-white.png) no-repeat scroll 0 0 transparent;
    }

    .over-summary.is-empty .over-summary-number,
    .basket .over-summary .over-summary-lbl{
        display: none;
    }

    /* START general top navigation */
    header.sticky-mode nav{
        display: none;
    }

    .hyp-top-lvl.has-children{
        background-image: url(../../files/icons/arrow-group-expand.png);
        background-position: right center;
        background-repeat: no-repeat;
        cursor: default;
    }

    .submenu-expanded > .hyp-top-lvl.has-children{
        background-image: url(../../files/icons/arrow-group-collapse.png);
    }

    .hyp-top-lvl.has-children span{
        cursor: pointer;
    }
    /* END general top navigation */

    /* START multi dropdown navigation */
    .hyp-top-lvl{
        clear: both;
        display: block;
        padding: 10px 0;
        overflow: hidden;
    }

    .nav-lvl-2 > .nav-item{
        padding: 10px 0 10px 15px;
    }

    .img-in-row{
        display: none;
    }
    /* END multi dropdown navigation */

    /* START simple dropdown navigation */
    .nav-item-sub{
        padding-left: 20px;
    }

    .nav-item-sub .hyp.has-children{
        background-image: url(../../files/icons/arrow-group-expand.png);
        background-position: right center;
        background-repeat: no-repeat;
        cursor: default;
    }

    .nav-item-sub.submenu-expanded > .hyp.has-children{
        background-image: url(../../files/icons/arrow-group-collapse.png);
    }

    .nav-item-sub .hyp.has-children span{
        cursor: pointer;
    }
    /* END simple dropdown navigation */
    /* END header controls */

    footer .top{
        display: block;
        padding-top: 20px;
    }

    footer .bottom{
        padding: 10px 10px 10px 10px;
    }

    .sitemap{
        display: block;
        margin-bottom: 20px;
    }

    .sitemap-nav{
        display: table;
        width: 100%;
    }

    .sitemap-nav > li{
        display: table-cell;
        vertical-align: top;
        box-sizing: border-box;
        width: 50%;
    }

    .newsletter{
        display: block;
        width: auto;
    }

    .above-content .center{
        padding-top: 12px;
    }

    .semicolumn{
        width: 100%;
    }

    .breadcrumbs{
        display: none;
    }

    .row-btn-add .btn-add-to-basket{
        width: 100%;
    }

    .order-box .after-btn-links{
        margin-top: 20px;
    }

    .more-inside{
        text-align: center;
    }

    .components-tab .ui-tabs-nav{
        display: none;
    }

    .components-tab .hidden-tabs-name,
    .components-tab .ui-tabs-panel{
        display: block !important;   
    }

    .tab-control .reviews,
    .tab-control .variants,
    .tab-control .prepacks,
    .tab-control .specifications,
    .tab-control .attachments,
    .tab-control .description{
        min-height: 0;
    }

    .hyp-tab-action{
        display: none;
    }

    .copyright,
    .footer-nav{
        text-align: center;
    }

    /* START product details image sliders */
    .carousel-legend,
    .carousel-image-s-wrapper{
        display: none;
    }

    .carousel-image-m-wrapper{
        margin-bottom: 60px;
    }

    .carousel-image-m-item{
        height: 317px;
    }

    .carousel-image-m-item img{
	    margin: auto;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: auto;
        height: auto;
        max-height: 100%;
        max-width: 100%;
    }

    /* END product details image sliders */

    .last-viewed .ui-tabs-nav{
        border-bottom: none;
        padding-bottom: 0;
    }

    .filters-wrapper{
        padding: 0 15px;
    }

    .filter-title{
        line-height: 57px;
        text-align: center;
        margin: 0 -15px;
    }

    .filter-title:after{
        background: url(../../files/icons/arrow-down-blue.png);
        content: '';
        display: inline-block;
        margin-left: 25px;
        height: 6px;
        width: 10px;
        vertical-align: middle;
    }

    .filter-title.collapsed:after{
        background: url(../../files/icons/arrow-down-blue.png);
    }

    .filter-title.expanded:after{
        background: url(../../files/icons/arrow-up-blue.png);
    }

    .filter-title.collapsed + .facets{
        display: none;
    }

    .counter-inside,
    .sorting{
        display: none;
    }

    .grid-wrapper,
    .list-wrapper{
        margin: 0 -15px;
    }

    .grid-wrapper td:first-child,
    .grid-wrapper th:first-child{
        padding-left: 15px;
    }

    .grid-wrapper td:last-child,
    .grid-wrapper th:last-child{
        padding-right: 15px;
    }

    .list-wrapper li{
        padding-left: 15px;
        padding-right: 15px;
    }

    .responsive-table,
    .responsive-table tbody,
    .responsive-table tfoot,
    .responsive-table td,
    .responsive-table tr{
        display: block;
    }

    .responsive-table tbody td{
        border-width: 0;
        padding: 5px 0;
        position: relative;
        padding-left: 50% !important;
    }

    .responsive-table tr{
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .responsive-table thead{
        display: none;
    }

    .responsive-table td:before{
        position: absolute;
        left: 0;
    }

    /* START basket, wishlist grids */
    .gvi-basket-wrapper,
    .gvi-wish-list-wrapper{
        margin: 0 -15px;
        padding: 0 15px;
        border-top-width: 1px;
        border-top-style: solid;
    }

    .gvi-basket,
    .gvi-basket tbody,
    .gvi-basket tr,
    .gvi-basket td,
    .gvi-wish-list,
    .gvi-wish-list tbody,
    .gvi-wish-list tr,
    .gvi-wish-list td{
        display: block;
        box-sizing: border-box;
    }

    .gvi-basket thead,
    .gvi-wish-list thead{
        display: none;
    }

    .gvi-basket .col-first,
    .gvi-wish-list .col-first{
        float: left;
        padding: 20px 0 0;
    }
    
    .gvi-basket .btn-show-hide{
        margin-left: 30px;
    }

    .gvi-basket .col-info,
    .gvi-wish-list .col-info{
        padding: 20px 0 0;
        margin-left: 95px;
    }

    .gvi-basket .product-img,
    .gvi-basket .hyp-thumbnail{
        height: 84px;
        width: 84px;
    }

    .gvi-basket .col-info .product-img{
        margin-left: -95px;
    }

    .gvi-basket .col-price,
    .gvi-wish-list .col-price{
        float: right;
        padding: 18px 0 0;
        text-align: right;
    }

    .gvi-basket .col-qty,
    .gvi-wish-list .col-uom{
        padding: 18px 0 0;
    }

    .gvi-basket .qty-control{
        float: left;
    }

    .gvi-basket .lbl-unit-of-measure{
        float: left;
        margin-left: 11px;
        line-height: 28px;
    }

    .gvi-basket .lbl-quantity{
        display: block;
        text-align: center;
        width: 84px;
    }

    .gvi-basket .col-total,
    .gvi-wish-list .col-total{
        padding-left: 15px;
        padding-right: 15px;
        margin: 15px -15px 0;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        overflow: hidden;
    }

    .gvi-basket .col-total .action-links,
    .gvi-wish-list .col-total .action-links{
        float: left;
    }

    /* compact view for tbx-quantity */
    .quantity-compact .tbx-quantity{
        float: left;
        margin: 0;
        min-width: 60px; /* Pay attention! */
        width: 84px;
    }

    .quantity-compact .tbx-quantity.focused{
        margin-bottom: 34px;
    }

    .quantity-compact .tbx-quantity .ui-spinner-button{
        top: 34px;
    }

    .quantity-compact  .ui-spinner-up{
        right: 0;
    }

    .quantity-compact  .ui-spinner-down{
        left: 0;
    }
    /* END basket, wishlist grids */

    .block-actions{
        padding: 0 15px;
        margin: 0 -15px;
    }

    .block-actions .hyp-clear{
        float: left;
    }

    .block-actions .hyp-update{
        float: right;
    }

    .btn-checkout,
    .btn-quote{
        margin-top: 13px;
        width: 100%;
    }

    .basket-b2c-mode .paging-control{
        margin-top: 13px;
    }

    /* START basket overview grid */
    .gvi-basket-overview-wrapper{
        margin: 0 -15px;
        border-top-width: 1px;
        border-top-style: solid;
    }

    .gvi-basket-overview tbody td{
        padding-right: 15px;
    }

    .gvi-basket-overview .col-first{
        float: left;
    }

    .gvi-basket-overview .col-first,
    .gvi-basket-overview .col-info{
        padding-top: 10px;
    }

    .gvi-basket-overview .col-first,
    .gvi-basket-overview .col-extended-text{
        padding-left: 15px !important;
    }

    .gvi-basket-overview.responsive-table td:before{
        margin-left: 15px;
    }

    .gvi-basket-overview .col-info{
        padding-left: 0 !important;
        margin-left: 95px;
    }

    .gvi-basket-overview .inner-row .col-info:before{
        display: none;
    }

    .gvi-basket-overview .col-price,
    .gvi-basket-overview .col-discount,
    .gvi-basket-overview .col-qty,
    .gvi-basket-overview .col-uom,
    .gvi-basket-overview .col-total{
        line-height: 2;
    }

    .gvi-basket-overview .col-price,
    .gvi-basket-overview .col-qty,
    .gvi-basket-overview .col-uom{
        text-align: right;
    }

    .gvi-basket-overview .col-empty,
    .gvi-basket-overview .col-first:before,
    .gvi-basket-overview .upper-row .col-info:before,
    .gvi-basket-overview .col-extended-text:before{
        display: none;
    }
    /* END basket overview grid */

    .product .usp:before{
        height: 217px;
    }

    .gvi-totals .cell-name{
        text-align:left;
    }

    .list-totals .total-value,
    .gvi-totals .cell-price-value,
    .list-cart .total-value{
        min-width:90px;
        display:inline-block;
    }

    .column.border-simple-left{
        border-left: none;
    }

    .row-under-columns .btn{
        width: 100%;
    }

    .choose-product{
        margin-right: -15px;
        margin-left: -15px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .choose-product > div{
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .choose-product .ddlb + .ddlb{
        margin-top: 20px;
    }

    .choose-product .btn-plus{
        width: 100%;
    }

    .upper-row td{
        border-width: 0;
    }

    .basket-page-cnt h2{
        display: none;
    }

    .checkout-details{
        margin-top: 20px;
    }

    .basket-b2b-mode .enter-discount{
        margin: 30px 0;
    }

    /* START order details overview grid */
    .gvi-order-lines-wrapper{
        border-top-width: 1px;
        border-top-style: solid;
        margin-left: -15px;
        margin-right: -15px;
    }

    .gvi-order-lines thead {
        display: none;
    }

    .gvi-order-lines.responsive-table td:before{
        margin-left: 15px;
    }

    .order-details-action-bar .btn,
    .order-details-action-bar .form-inline{
        display: block;
        width: 100%;
    }

    .order-details-action-bar .btn,
    .order-details-action-bar .attachments{
        margin-bottom: 15px;
    }
    /* END order details overview grid */

    .panel-header > .view-changer{
        vertical-align: middle;
    }

    .grid-mode > li{
        width: 100%;
    }

    .grid-mode > li:after{
        border-bottom-width: 1px;
        border-bottom-style: solid;
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        margin-top: 9px;
    }

    .usp-list li{
        display: block;
        text-align: left !important;
        min-height: 50px;
    }

    .usp-list li:nth-child(2n){
        display: none;
    }

    /*          START product tile            */
    .products-group.slick-dotted{
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .simple-product-tile{
        width: 100%;
    }
    /*          END product tile            */

    .gvi-order-lines .col-empty{
        display: none;
    }

    .basket-loading{
        padding: 20px;
        position: fixed;
        margin-left: -100px;
        margin-top: -50px;
        top: 50%;
        left: 50%;
        width: 150px;
        z-index: 1000004;
    }

    /*          START sub accounts           */
    .gvi-limits td{
        display: inline-block;
    }

    .gvi-limits .col-operator,
    .gvi-limits .col-empty{
        width: 15px;
    }

    .gvi-limits .col-value,
    .gvi-limits .col-authorizer{
        width: 70%;
    }

    .gvi-limits .col-authorizer{
        padding-left: 30px;
    }

    .btn-edit-sub-account,
    .btn-delete-sub-account{
        padding-left: 28px;
        margin-bottom: 7px;
    }

    .btn.btn-edit-sub-account .btn-cnt,
    .btn.btn-delete-sub-account .btn-cnt{
        display: inline-block;
    }
    /*          END sub accounts           */
}
/*          END mobile views          */


/****************************************
                Mixed
****************************************/
/*          START desktop and tablet views          */
@media screen and (min-width: 640px) {
    .non-mobile-hidden{
        display: none !important;
    }

    /* START header controls */
    header.sticky-mode{
        position: fixed;
        height: 60px;
    }

    .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-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;
        z-index: 14;
    }

    .top-dropdown:hover{
        margin-top: 0;
        margin-bottom: 0;
        height: 34px;
    }

    .top-dropdown .summary{
        border-width: 1px;
        border-style: solid;
        display: none;
        position: absolute;
        top: 100%;
        z-index: 11;
    }

    .top-dropdown:hover .summary{
        display: block;
    }

    .top-dropdown:hover .opener{
        height: 34px;
        z-index: 12;
    }

    /*          search           */
    .search{
        margin: 0 10px;
    }

    .btn.btn-suggestions-top{
        height: 44px;
        width: 44px;
    }

    .btn.btn-suggestions-top .btn-cnt{
        display: none;
    }

    /*          language           */
    .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 .opener{
        width: 63px;
    }

    .language.top-dropdown .opener .flag{
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 17px;
    }

    .selected-language{
        display: none;
    }

    /*          login           */
    .login .opener{
        min-width: 61px;
    }

    .login.impersonated .opener{
        width: 218px;
    }

    .login.top-dropdown .summary{
        right: -1px;
        width: 218px;
    }

    .login.top-dropdown .opener:before{
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: 27px;
    }

    .login-title{
        display: none;
    }

    .login:hover .person{
        padding-top: 7px;
    }

    /*          basket           */
    .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;
    }

    .middle-header{
        position: relative;
        min-height: 63px;
        margin: 15px auto 10px;
        max-width: 1000px;
        z-index: 2;
    }

    .bottom-header{
        position: relative;
        z-index: 1;
    }

    header.sticky-mode .bottom-header{
        position: static;
    }

    header.sticky-mode .basket-summary-holder{
        min-width: 65px;
    }

    /* START general top navigation */
    header.sticky-mode nav{
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
    }

    header.sticky-mode .nav-list-root{
        width: 25%;
    }

    header.sticky-mode.nav-is-opened nav{
        display: block;
    }

    .nav-is-opened .nav-opener{
        border-bottom-style: solid;
        border-bottom-width: 1px;
    }

    .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;
    }

    .nav-item-root.hover .nav-wrapper{
        display: block;
    }

    .bottom-header .nav-list-root,
    .bottom-header .nav-item-root{
        float: left;
    }

    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;
    }
    /* END general top navigation */

    /* START multi dropdown navigation */
    .nav-wrapper{
        border-width: 1px;
        border-style: solid;
        box-sizing: border-box;
        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{
        display: table-cell;
        padding: 0 10px 0 30px;
        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-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%;
    }
    /* END multi dropdown navigation */

    /* START simple dropdown navigation */
    .nav-list-sub{
        border-width: 1px;
        border-style: solid;
        position: absolute;
        width: 203px;
        z-index: 5;
        padding: 7px 0;
        margin-top: -1px;
    }

    .state-to-left .nav-list-sub{
        right: 0;
    }

    header.sticky-mode .nav-list-sub{
        margin-top: 0;
        top: 0;
        left: 100%;
    }

    .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{
        padding-left: 30px;
    }

    .nav-item-sub:first-child .nav-list-sub{
        top: -7px;
    }

    .nav-item.hover > .nav-list-sub{
        display: block;
    }
    /* END simple dropdown navigation */
    /* END header controls */

    .popup-cnt .cnt-column{
        display: table;
        margin: 0 auto;
        min-width: 520px;
    }

    .above-content .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;
    }

    .custom-bg{
        background-origin: content-box;
        background-position: top center;
        background-repeat: no-repeat;
    }

    .gray-header-phone{
        background: none !important;
    }

    .combined-header{
        margin-top: 29px;
    }

    /* columns layout */
    .columns-general{
        display: table;
        table-layout: fixed;
        margin: 0 -2%;
        width: 104%;
    }

    .columns-general > .column{
        display: table-cell;
        vertical-align: top;
        padding: 0 1.85%;
    }

    .columns-general.divided{
        width: 108%;
        margin: 0 -4%;
    }

    .columns-general.divided > .column{
        padding: 0 3.7%;
    }

    .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%;
    }

    .columns-general > .column60{
        width: 60%;
    }
    /* END columns layout */

    /* blocks layout */
    .blocks-row{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin: 0 -2%;
    }

    .blocks-row-item{
        box-sizing: border-box;
        outline: none;
        padding: 0 1.85%;
    }
    /* END blocks layout */

    .row-under-columns{
        padding-left: 21%;
    }

    .gvi-totals .t-row-promotion .enter-discount{
        float: left;
    }

    .gvi-totals .t-row-promotion .title-discount{
        float: right;
    }

    .product-bottom-info{
        margin-top: 58px;
        margin-bottom: 58px;
    }

    .responsive-table td:before{
        display: none;
    }

    /* START basket, wishlist grid */
    .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 .col-total{
        width: 95px;
    }

    .gvi-basket .col-qty{
        text-align: center;
    }

    .gvi-basket .vertical-line{
        margin-left: 70px;
        min-height: 50px;
    }

    .basket-b2c-mode .gvi-basket .col-first{
        width: 120px;
    }

    .basket-b2c-mode .gvi-basket .hyp-thumbnail{
        height: 84px;
        width: 84px;
    }

    .basket-b2c-mode .btn-quote + .btn-checkout{
        margin-left: 15px;
    }

    .basket-b2b-mode .gvi-basket .col-first{
        width: 65px;
    }

    .basket-b2b-mode .gvi-basket .product-img,
    .basket-b2b-mode .gvi-basket .hyp-thumbnail{
        height: 50px;
        width: 50px;
    }

    .basket-b2b-mode .panel-header .btn-quote,
    .basket-b2b-mode .panel-header .btn-checkout{
        display: none;
    }

    .id-variant-aria .product-id,
    .id-variant-aria .product-variant{
        display: inline-block;
    }

    .id-variant-aria .product-id{
        width: 35%;
    }

    .action-links{
        margin-top: 10px;
    }

    .gvi-basket .col-total .cell-name{
        display: none;
    }

    /* END basket, wishlist grid */

    .block-actions{
        text-align: center;
    }

    .block-actions .hyp-btn{
        margin-left: 40px;
        margin-right: 40px;
    }

    .basket-action-wrapper .btn-checkout,
    .basket-action-wrapper .btn-quote{
        margin-top: 15px;
        width: 100%;
    }

    .basket-b2c-mode .paging-control{
        position: relative;
    }

    .basket-b2c-mode .paging-control .pagin-total{
        position: absolute;
        left: 0;
        right: 0;
    }

    /* START order details overview grid */
    .gvi-order-lines tbody td:last-child,
    .gvi-order-lines thead th:last-child{
        padding-right: 7px;
    }

    .gvi-order-lines .col-qty{
        text-align: center;
    }

    .gvi-order-lines .col-discount,
    .gvi-order-lines .col-uom,
    .gvi-order-lines .col-total,
    .gvi-order-lines .col-stock{
        text-align: right;
    }

    .order-details-action-bar{
        text-align: right;
    }

    .order-details-action-bar .msg-block-info,
    .order-details-action-bar .msg-block-error{
        clear: both;
        text-align: left;
    }

    .order-details-action-bar .attachments{
        float: left;
        margin-bottom: 10px;
    }

    .order-details-action-bar .btn{
        margin-left: 15px;
        margin-bottom: 10px;
    }
    /* END order details overview grid */

    /* START basket overview grid */
    .gvi-basket-overview .col-qty{
        text-align: center;
    }

    .gvi-basket-overview td:last-child,
    .gvi-basket-overview th:last-child{
        padding-right: 7px;
    }

    .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.col-first{
        box-sizing: border-box;
        min-width: 70px;
        max-width: 70px;
        padding-right: 5px;
        word-wrap: break-word;
    }

    /* END basket overview grid */

    .filter-title{
        display: none;
    }

    .panel-header{
        display: table;
        width: 100%;
    }

    .panel-header > div{
        display: table-cell;
        vertical-align: middle;
    }

    .panel-footer{
        display: table;
        width: 100%;
    }

    .panel-footer > div{
        display: table-cell;
        vertical-align: middle;
    }

    .details-img{
        float: left;
    }

    .details-info{
        box-sizing: border-box;
        padding: 0 1%;
    }

    .order-box .after-btn-links{
        display: inline-block;
    }

    .row-btn-add .btn-add-to-basket{
        margin-right: 20px;
    }

    .field-btn-add .btn-add-to-basket{
        max-width: 100%;
        padding-right: 35px;
        padding-left: 6px;
        min-width: 164px;
    }

    .panel-header > .counter-inside{
        vertical-align: bottom;
    }

    /* view */
    .view-changer{
        text-align: center;
        width: 33%;
    }

    .panel-header > .view-changer{
        vertical-align: top;
    }

    .sorter-inside{
        width: 33%;
        white-space: nowrap;
    }

    .list-mode .product-action{
        text-align: right;
    }

    .panel-header .btn-add-inside{
        padding-top: 30px;
    }

    .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;
    }

    .gvi-orders .col-authorization-status{
        text-align: center;
    }

    .gvi-methods td{
        padding-right: 15px;
    }

    .gvi-methods .col-method-selection{
        width: 1%;
        white-space: nowrap;
    }

    .gvi-methods td.col-method-cost{
        text-align: right;
        width: 1%;
        white-space: nowrap;
    }

    ul.usp-list{
        margin: 20px 0;
    }

    .qo-input-area .tbx-search{
        width: 60%;
    }

    .choose-product{
        display: table;
        margin-right: -10px;
        margin-left: -10px;
        width: 100%;
    }

    .choose-product > div{
        display: table-cell;
        padding: 10px;
        vertical-align: top;
    }

    .choose-product .ddlb + .ddlb{
        margin-top: 10px;
    }

    .basket-loading{
        position: absolute;
        top: 100%;
        right: 0;
        padding: 15px 20px;
        width: 200px;
        z-index: 2;
    }

    /* START product details image sliders */
    .carousel-image-m-item img[data-zoom-image] {
        cursor: progress;
    }
    /* END product details image sliders */

    #product-list-panel .panel-footer .paging-control{
        width: 100%;
    }

    /*          START sub accounts           */
    .gvi-sub-accounts .col-status,
    .gvi-sub-accounts .col-limit,
    .gvi-sub-accounts .col-edit,
    .gvi-sub-accounts .col-delete{
        text-align: center;
    }

    .sub-account-holder .row-orderauthorizationrules .field{
        width: 80%;
    }
    /*          END sub accounts           */
}
/*          END desktop and tablet views          */


/*          START mobile and tablet views          */
@media screen and (max-width: 1023px) {
    .form-row .field-btn-add{
        display: table-row;
        text-align: left;
    }

    .field-btn-add .btn-add-to-basket{
        margin: 10px 0;
    }

    /*          START header controls           */
    header.sticky-mode .center{
        padding: 0;
    }
    /*          END header controls           */

    .ui-dialog.ui-dialog-scroll{
        position: fixed;
        top: 0 !important;
        left: 0 !important;
    }

    .ui-dialog{
        position: absolute;
    }

    .custom-bg{
        background-size: cover;
    }

    .shipping-choice-content .ui-selectmenu-menu{
        max-width: 100%;
    }

}
/*          END mobile and tablet views          */




/*Fix for IOS drobdowns*/
.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;
}




/****************************************
                Content blocks
****************************************/

/*          START desktop and tablet views          */
@media screen and (min-width: 640px){
    /*          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{
        font-size: 72px;
        text-shadow: 0 3px 2px #000;
    }

    .banner h1{
        color: #fff;
    }

    .banner h2{
        color: #ccc;
    }
    /*          END main banner           */
}
/*          END desktop and tablet views          */


/*          START mobile views          */
@media screen and (max-width: 639px){
    /*          START main banner           */
    .banner{
        margin: 0 -15px 25px -15px;
    }

    .banner h1{
        font-size: 3em;
        margin-bottom: 7px;
    }

    .banner h2{
        font-size: 2em;
        margin-bottom: 5px;
    }

    .banner-content{
        margin-left: 15px;
    }
    /*          END main banner           */

    /*          START usp           */
    .basket-page-cnt .usp{
        display: none;
    }
    /*          END usp           */
}
/*          END mobile views          */