.remove-ul-styling { list-style:none; margin:0; padding:0; }
.no-gutter, .no-gutter [class^="col-"] { margin:0; padding:0; }
.row { width:100%; }
.flex-justify { justify-content:space-between; }
.clear-floats { clear:both; }
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; appearance:none; }

.form-control { border-radius:0; }
.btn { border-radius:0; transition: all 350ms linear; outline:0; cursor:pointer; }
.btn:hover { transition: all 350ms linear; }
.btn, .btn:visited, .btn:focus { outline:0; }
.btn:hover, .btn:active, .btn-primary:active:focus { outline:0; }
.hide-item { display:none; }
.full-width { width:100%; }
.center-block { display:block; margin-right: auto; margin-left: auto; }

html, body { font-family: 'Roboto', sans-serif; font-size:16px; }
body { display:flex; flex-direction:column; min-height:100vh; }
a { text-decoration:underline; }
a:hover, a:active, a:visited, a:focus { text-decoration:none; }

p { font-size:0.75rem; }

.alert { width:100%; border-radius:0; }
.badge { color: white !important; }
.badge-warning, .badge-light { color: black !important; }
.info-popup { position:absolute; display:none; z-index:9999; background:#FFF; }
.info-popup table { margin-bottom:0; }

.no-underline { text-decoration:none; }
.text-upper { text-transform:uppercase; }
.minheight { min-height:150px; }

/* paddings */
.p-1 { padding:1rem; }
.p-2 { padding:2rem; }
.p-3 { padding:3rem; }
.p-l-1 { padding-left:1rem; }
.p-l-2 { padding-left:2rem; }
.p-l-3 { padding-left:3rem; }
.p-t-1 { padding-top:1rem; }
.p-t-2 { padding-top:2rem; }
.p-t-3 { padding-top:3rem; }
.p-r-1 { padding-right:1rem; }
.p-r-2 { padding-right:2rem; }
.p-r-3 { padding-right:3rem; }
.p-b-1 { padding-bottom:1rem; }
.p-b-2 { padding-bottom:2rem; }
.p-b-3 { padding-bottom:3rem; }

/* margins */
.m-1 { margin:1rem; }
.m-2 { margin:2rem; }
.m-3 { margin:3rem; }
.m-l-1 { margin-left:1rem; }
.m-l-2 { margin-left:2rem; }
.m-l-3 { margin-left:3rem; }
.m-t-1 { margin-top:1rem; }
.m-t-2 { margin-top:2rem; }
.m-t-3 { margin-top:3rem; }
.m-r-1 { margin-right:1rem; }
.m-r-2 { margin-right:2rem; }
.m-r-3 { margin-right:3rem; }
.m-b-1 { margin-bottom:1rem; }
.m-b-2 { margin-bottom:2rem; }
.m-b-3 { margin-bottom:3rem; }

/* Buttons */
a.main-btn { height:100%; padding:1.125rem 3.75rem; display:block; transition: all 350ms linear; font-size:0.9rem; font-weight:400; text-transform:uppercase; text-decoration:none; text-align:center; }
a.main-btn:hover { transition: all 350ms linear; }
a.main-btn, a.main-btn:visited, a.main-btn:focus { border:1px solid #B76060; }
a.main-btn:hover, a.main-btn:active { border:1px solid #C78787; }

a.secondary-btn, a.secondary-btn:visited, a.secondary-btn:focus { height:100%; max-height:60px; padding:1.3rem 1rem; display:block; border:1px solid #999; font-size:0.75rem; font-weight:400; text-transform:uppercase; text-decoration:none; transition: all 350ms linear; text-align:center; }
a.secondary-btn:hover, a.secondary-btn:active { transition: all 350ms linear; border:1px solid #CCC; }
a.secondary-btn .fa { margin-right:10px; }

a.tertiary-btn { height:100%; max-height:60px; padding:1.3rem 1rem; display:block; font-size:0.75rem; font-weight:400; text-transform:uppercase; text-decoration:none; transition: color 350ms linear; text-align:center; border: 1px solid transparent; }
a.tertiary-btn:hover, a.tertiary-btn:hover .fa { transition: color 350ms linear; }
a.tertiary-btn .fa { margin:0 20px; transition: color 350ms linear; }

a.btn-small, a.btn-small:visited, a.btn-small:focus { padding:.375rem 1rem; font-size:1rem; }
.btn-after-nice-select { padding:0.625rem; }

.btn.disabled { opacity: .25; }

/* spacing */
.right-space { margin-right:0.25rem; }

/* Nice checkbox */
input[type=checkbox] { visibility:hidden; display:none; }
.niceCheckbox { position:relative; }
.niceCheckbox .custom-checkbox { position:absolute; top:0px; left:0px; width:25px; height:25px; cursor:pointer; border:1px solid #CCC; }
.niceCheckbox .custom-checkbox:after { position:absolute; top:5px; left:4px; width:16px; height:9px; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter:alpha(opacity=0); opacity:0; content:'';  background:transparent; transform: rotate(-45deg); -ms-transform:rotate(-45deg); -o-transform:rotate(-45deg); -moz-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); border:4px solid #009640; border-top:0; border-right:0; }
.niceCheckbox .custom-checkbox:hover::after { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter:alpha(opacity=30); opacity:0.3; }
.niceCheckbox input[type=checkbox]:checked + .custom-checkbox:after { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
.checkbox-text-label { width:100%; padding-left:37px; font-size:0.75rem; line-height:25px; cursor:pointer; }

.downloads .niceCheckbox { margin:0.5rem; display:inline-block; }
.p-before-niceselect { margin:0; padding:0.625rem; font-size:1rem; }

/* Nice select */
.niceSelect select, .niceSelect option { appearance:none; -moz-appearance:none; -webkit-appearance:none; border-radius:0; }
.niceSelect select { margin:0; padding:0.625rem 2rem 0.4em 0.625rem; border:none; outline:none; display:inline-block; cursor:pointer; border:1px solid #CECECE; }
.niceSelect { position:relative }
.niceSelect:after { position:absolute; top:6px; right:8px; font-size: 1.2rem; content:'\f0d7'; font-family: "Font Awesome 5 Free"; font-weight: 900; pointer-events:none; }

/* Search box */
.search { margin:1.125rem 0; }
.search-input, .search-btn { height:45px; font-weight:200; font-size:1.2rem; }
.search-input { outline:none; border:0; }
.search-input-wrapper { width:60%; }
.form-inline .search-input { width:100%; }
.search-btn { padding:.375rem 1.5rem; }
.search form { justify-content: center; }

/* Input field with inline button */
.btn-after-input { position:relative; }
    .btn-after-input .btn { position:absolute; right:0; top:0; }

/* Form validation */
.input-validation { border-color:#f00; }

/* Header */
.sticky {
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -ms-sticky;
    position: -o-sticky;
    position: sticky;
    top: 0;
    z-index: 9999;
}

#header { width:100%; max-width:1920px; min-height:120px; margin:0 auto; display:flex; align-items: center; }
    .logo { padding:1.125rem; }
    .logo img { max-width:250px; }

    .top-icons-block { width:100%; height:4.3rem; padding:1.125rem; display:flex; justify-content:flex-end; align-items:center; position: relative; }

    .top-icons-block a, .top-icons-block a:visited { margin:0 0.5rem; text-decoration: none; }

    .top-icon { display:flex; align-items: center; }
    .top-btn, .top-icon, .top-icon i, .top-btn:visited, .top-icon:visited { font-size:1.4rem; }
    .top-icon:hover, .top-icon:hover i { transition: all 200ms linear; }

    .top-icon i.small-inline-left, .top-icon i.small-inline-right { font-size:1rem; }
    .top-icon i.small-inline-left { margin-right:0.5rem; }
    .top-icon i.small-inline-right { margin-left:0.5rem; }

    .top-btn, .top-btn:visited { font-size:1rem; }

    .top-icon-dropdown {
        position: absolute;
        top:3.175rem;
        right:0;
        width:100%;
        padding:1rem;
        display:none;
        box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.75);
        z-index: 99999;
    }

    .top-icon-dropdown h2 { font-size:1.4rem; text-align:center; }
    .top-icon-dropdown .dropdown-buttons {
        display:flex;
        justify-content: flex-end;
    }
    .top-icon-dropdown .dropdown-buttons .main-btn {
        margin:0;
        margin-left:.2rem;
        padding:0.4rem 2.5rem;
    }

    #bag-dropdown { position: relative; }
    .num-in-bag {
        position:absolute;
        top:-1.2rem;
        right:0;
        font-size:0.875rem;
        border-radius:12px;
        width:24px;
        height:24px;
        vertical-align:top;
        line-height:24px;
        text-align:center;
    }

/* Cookiebar */
#cookiebar { margin-bottom:0; padding:2rem; }
#cookiebar .niceCheckbox { float:left; margin-right:1rem; }
#cookiebar .checkboxDisabled .custom-checkbox:after { border-color:#ddd; }
#cookiebar .display-4 { font-size:2rem; }
#cookiebar .lead { font-size:0.75rem; }

/* Navigation */
#navbar { max-width:1920px; margin:0 auto; display: grid; grid-template-columns: 1fr auto; justify-items: stretch; grid-template-areas:
    "nav          action-buttons"
    "hidden-links hidden-links";
}
    #navbar #nav-main { position: relative; display: flex; grid-area: nav; }
    #navbar #nav-main .more-btn { align-self: stretch; border: 0; transition: all 350ms linear; transition-property: color, background; }
    #navbar #nav-main .more-btn i { padding-left:1.125rem; }
    #navbar #nav-main .more-btn.hidden { transition: none; width: 0; padding: 0; overflow: hidden; }
    #navbar #nav-main ul.links { display: flex; flex: 1; }
    #navbar #nav-main ul.links li { flex: none; }

    #navbar ul.hidden-links { grid-column: 1 / -1; grid-area: hidden-links; }
    #navbar ul.hidden-links.hidden { display: none; }
    #navbar ul.hidden-links li { width: 100%; }

    #navbar .action-buttons { grid-area: action-buttons; }

    #nav-main a { font-size:0.9rem; }

    .menu li { float:left; }
    .menu a { position:relative; padding:1.125rem; font-weight:400; text-transform:uppercase; display:block; text-decoration:none; }
    .menu a:hover, .menu a.active { z-index:9000; }
    .menu .dropdown .fa { padding-left:1rem; }
    .sub-menu { position:absolute; top:56px; left:-1px; padding:0.5rem 0 1.125rem 0; border:1px solid #5A626F; z-index:8000; display:none; }
    .sub-menu li { clear:left; }
    .sub-menu a { padding:0.2rem 1.125rem; white-space:nowrap; }
    .sub-menu a, .sub-menu a:hover { border:0; }
    .menu .icon { display:none; }

.language-picker { position:relative; margin-top:5px; padding:0.8125rem 1.125rem 1.125rem 1.125rem;  text-transform:uppercase; font-size:0.9rem; cursor:pointer; }
    .current-lang span { margin:0 0.3rem; color:inherit; }

    #language-list .flag-icon { font-size:1rem; }
    #language-list a { text-decoration:none; }

/* Breacrumb bar */
#breadcrumb-bar { max-width:1920px; margin:0 auto; }
    .breadcrumb { margin-bottom:0; padding:0.8rem 1.125rem; border-radius:0; background:transparent; font-size:0.75rem; }
    .breadcrumb li { display:inline; }
    .breadcrumb>li+li::before { padding:0 .5rem; content: "/"; }

/* Pagination (catalog) */
.pagination { margin:0; margin-right:2.65rem; padding:0.625rem 0; }
.pagination span { padding:0.625rem 3rem; text-transform:uppercase; font-weight:500; font-size:0.75rem; }
.pagination-back, .pagination-next { width:40px; height:40px; padding:0.625rem 0; font-size:0.75rem; text-align:center; display:inline-block; border:1px solid #CCC; text-decoration:none; transition: all 350ms linear; }
.pagination-back:hover, .pagination-next:hover { border:1px solid #B76060; transition: all 350ms linear; }

/* pagination links (other pages) */
.pagination-links { margin-bottom:0.5rem; text-align:center; }
    .pagination-links p, .pagination-links a { display:inline-block; }
    .pagination-links p { margin-right:0.8rem; margin-bottom:0; }
    .pagination-link { width:1.6rem; padding:0.6rem 0.4rem; font-size:0.6rem; text-align:center; border:1px solid #CCC; text-decoration:none; transition: all 350ms linear; }
    .pagination-link:hover { border:1px solid #B76060; transition: all 350ms linear; }
    .pagination-link.disabled, .pagination-link.disabled:hover { color:#dcdcdc; border-color:#dcdcdc; cursor:default; }

/* Body container */
.body-inner-container { max-width:1920px; min-width: 0; margin:0 auto; flex:1; justify-content:center; display:flex; }

/* Catalog */
.left-column { padding:1rem 0; }
    .left-column h2 { padding-left:1rem; font-size:1.4rem; }
    .left-column ul { margin:0; padding:0; list-style:none; }
    .left-column ul.filters { padding:0 2rem; }
    .left-column ul.left-column-menu li:before { width:1rem; padding-left:2rem; display:inline-block; content:"\f0da"; font-family: "Font Awesome 5 Free"; }
    .left-column ul a { padding:0.3rem 0; padding-left:1rem; text-decoration:none; display:inline-block; }
    .left-column a:hover { text-decoration:underline; }
    .left-column a.no-underline:hover { text-decoration:none; }
    .left-column li.disabled a:hover { text-decoration:none; }
    .left-column ul.second li:before { padding-left:4rem; }
    .left-column ul.second li.nosub:before { content:""; }
    .left-column ul.third { display:none; }
    .left-column .active ul.third { display:block; }
    .left-column ul.third li:before { padding-left:5rem; content:""; }
    .left-column h2.filter-category { padding: 0.3rem 1rem 0.3rem 1rem; margin:0; font-size:1rem; line-height:1.5; }
    .left-column h2.filter-category span { float:right; }
    .left-column h2.filter-slider-label { padding: 0rem; margin:0; font-size:1rem; line-height:0.8; }

.right-full-column { }
    .catalog-top-row { width:100%; height: 60px; }
    .catalog-top-row h1 { margin:0; padding:1.37rem 3.125rem; text-transform:uppercase; font-size:1rem; line-height:1; }
    .catalog-tiles { float:right; padding:0.55rem 2.65rem 0 1rem; vertical-align:middle; }
    .catalog-tiles, .catalog-tiles a { text-transform:uppercase; text-decoration:none; font-size:0.625rem; display:inline-block; transition: color 350ms linear; }
    .catalog-tiles a.active, .catalog-tiles a:hover { transition: color 350ms linear; }
    .catalog-tiles .fa { position:relative; top:0.5rem; margin:0 0.5rem; font-size:1.8rem; }

    .active-filters { padding:0 2.65rem 0 1rem; text-transform:uppercase; font-size:0.625rem; font-weight:500; }
    .filter-label { margin:0.9375rem 0.625rem; padding:0.3rem 1rem; display:inline-block; border:1px solid #cecece; text-decoration:none; transition: all 350ms linear; }
    .filter-label:hover { text-decoration:none; border:1px solid #B76060; transition: all 350ms linear; }
    .delete-filter { padding-left:0.5rem; }
    .filter-label:hover .delete-filter { transition: all 350ms linear; }

    .filters { padding:0 1rem; }

    .filter-list { position:relative; float:left; width:auto; height:60px; padding:0.625rem 0; font-size:0.75rem; font-weight:500; z-index:7900; }
    .filter-title { position:relative; float:left; z-index:9000; min-width:140px; margin-right:1rem; padding:0.625rem 0.625rem 0.625rem 0.937rem; border:1px solid #CCC; cursor:pointer; }
    .filter-title .fa { float:right; font-size:1rem; }

    .filter-list.active .filter-title { padding-bottom:1.5rem; border:1px solid #666; border-bottom:0; }
    .filter-content { min-width:140px; padding:0.625rem; border:1px solid #666; display:none; }
    .filter-list.active .filter-content { position:absolute; top:62px; left:0; display:block; z-index:7900; }

    .search-box { position:relative; }
    .filter-search { width:100%; height:25px; margin-bottom:0.5rem; padding:0 25px 0 5px; border:1px solid #CCC; }
    .filter-search-btn { position:absolute; top:0; right:0; width:20px; height:25px; pointer-events:none; font-size:1rem; }
    .filter-search-btn:after { content:'\f002'; font-family: "Font Awesome 5 Free"; }

    .color-list .filter-content { width:302px; }

    .catalog-items { display: grid; grid-column-gap: 2rem; grid-row-gap: 1rem; padding: 1rem; }

    .catalog-items { display: grid; grid-template-columns: repeat(5, 1fr); grid-column-gap: 2rem; grid-row-gap: 1rem; padding: 1rem; }
    .catalog-items.width-25 { display: grid; grid-template-columns: repeat(4, 1fr); grid-column-gap: 2rem; grid-row-gap: 1rem; padding: 1rem; }

    .item-wrapper { position:relative; height: 100% }
    .item { position:relative; padding:1rem; border:1px solid #CDCDCD; z-index:5000; cursor:pointer; height: 100%; display: flex; }

    .wishlist-btn, .zoom-icon { position:absolute; top:0; right:0; font-size:1.5rem; line-height:1rem; z-index:6000; }
    .image-icon { position:absolute; top:calc(1rem + 1px); left:calc(1rem + 1px); z-index:6000; }
    .main-image .image-icon img { border: 0; padding: 0; }
    .item-hover-right .image-icon { top:0; left:0; }
    .item-hover .wishlist-btn:hover { transition: all 350ms linear; }
    .wishlist-btn a, .zoom-icon a { padding:0.625rem; display:inline-block; }

    .wishlist-items {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        grid-column-gap: 2rem;
        grid-row-gap: 1rem;
        padding: 1rem;
    }
    .wishlist-item { position: relative; }
    .wishlist-delete { position: absolute; top: 0.3rem; right: 0.5rem; }

    .item-texts { display:flex; flex-direction:column; flex:1; padding:1rem 1.6rem; font-size:0.8rem;}
    .item p, .item span { font-size:0.6875rem; }
    span.title { display:block; font-size:1rem; font-weight:500; font-weight:bold; line-height: 1.2rem; }
    span.subtitle { display:block; font-size:1rem; font-weight:500; line-height: 1.2rem; }
    span.price { display:block; font-size:1rem; font-weight:500; }
    span.spacer { flex:1; }
    span.spacer { height: 1rem; min-height: 10px; }
    span.catalog-extra-price-info { margin-bottom:1rem; }
    span.discount { text-decoration:line-through; }
    span.delivery { font-weight:500; }
    .price_table { border: 0px solid #ccc; width:100%; font-size: 1rem; font-weight: 500; margin-top: 1rem; margin-bottom: 1rem; }
    .price_table td { padding:0px; margin: 0px; }
    .price_table .name {  }
    .price_table .price { text-align: right; }
    .price_table .discount { text-decoration:line-through; }
    .price_table .maxprice { display: inline; white-space: nowrap; }


    .item-colors { word-wrap:break-word; }
    .item-colors .color { float:left; margin:0 5px 5px 0; }
    .item-colors .color span, .item-colors .color img { width:1.5rem; height:1.5rem; display:block; border:1px solid #CCC; }
    .item-colors .color:hover span, .item-colors .color.active-color span { border:1px solid #666; }

    .item-wrapper .item-colors { display: grid; grid-template-columns: repeat(auto-fill, 1.5rem); grid-auto-rows: 1.5rem; grid-gap: 5px; }
    .item-wrapper .item-colors .color { width:20px; height:20px; }
    .item-wrapper .item-colors .color span, .item-wrapper .item-colors .color img { width:100%; height:100%; display:block; border:1px solid #CCC; }

    .item-hover { position:absolute; z-index:5050; left:calc(-102px - 1rem); width:calc(100% + 102px + 1rem); height:auto; }
    .item-hover.no-sidebar { width:100%; left: 0px; }

    .item-hover-left { display:none; width:102px; margin-right:1rem; }
    .item-hover-right { position:relative; width:244px; height:100%; display:flex; flex-direction:column; flex:1; }

    .quick-action-icons { display:none; position:absolute; bottom:0; right:0; width:calc(244px + 1.6rem); grid-template-columns: repeat(3, 1fr); }
    .quick-action-icons a { font-size:1.8rem; text-align:center; border-top:1px solid #CDCDCD; border-left:1px solid #CDCDCD; }

    .quick-action-icons.order-entry-blocked { grid-template-columns: repeat(2, 1fr) }

    .item-hover .item-hover-left { display:block; }
    .item-hover .quick-action-icons { display:grid; }

    .image-thumbs { position:relative; height:499px; overflow:hidden; }
    .image-thumbs ul { margin:0; padding:0; list-style:none; }
    .image-thumbs li { margin-bottom:0.625rem; }
    .image-thumbs img { margin:0 auto; padding:1rem; border:1px solid #CCC; cursor:pointer; }
    .item-hover-left .image-thumbs img { max-height:122px; }
    .image-thumbs img:hover, .image-thumbs  li.active img { border:1px solid #999; }
    .item-hover-left a { width:100%; padding:5px 0; text-align:center; display:inline-block; transition: all 350ms linear; }
    .item-hover-left a:hover { transition: all 350ms linear; }

    .scroll-btn { width:100%; border:0; background:none; outline:0; transition: all 350ms linear; }
    .scroll-btn:hover { transition: all 350ms linear; }
    .scroll-btn:hover, .scroll-btn:active, .scroll-btn:focus { outline:0; }
    .item .item-colors, .item .item-sizes { margin-bottom:1rem; }

    .dynamic-catalog-preloader { grid-column: 1 / -1; font-size:1.5rem; text-align:center; }

    .lastseenribbon { padding:1rem; }
    .lastseenribbon .row > div { margin: 0.5rem; }
    .lastseenribbon .pv-product { height: 100%; margin: 0; }

    /* categories */
    .catalog-category { text-align:center; }
    .category-thumb { padding:1rem; }
    .category-thumb img { width:100%; }
    .catalog-category span { margin-bottom:1rem; padding:0.5rem 0; display:inline-block; font-size:1.2rem; }

/* Modal */
.modal-title, .modal-body p, .modal-header .close span { color: black !important; }
.modal-footer button.btn-primary { background-color: #007bff; color: white; }
.modal-footer button.btn-primary:hover { background-color: #0069d9; color: white; }

/* Catalog Modal */
.page-modal, .modal { z-index:9999; }
.modal-backdrop { z-index:9998; }
.modal-lg { max-width:80%; }
.replacable-content .loader { text-align:center; }
.page-modal-content-default { display:none; }

/* Centered page */
.centered .catalog-top-row { max-width:1280px; margin:0 auto; }
.page-wrap { padding:10px; }
.centered .page-wrap { max-width:1280px; margin:0 auto; }

/* Footer */
#footer-wrap { width:100%; }
#footer { max-width:1920px; margin:0 auto; padding:2rem; text-align:center; }
    #footer .header { font-weight: bold; color: inherit; margin-bottom: 1rem; }
    #footer a { text-decoration: none; color: inherit; }
    #footer p { width:100%; text-align:center; font-size:1rem; }

/* Detail page */
.product-detail .catalog-top-row { display:grid; grid-template-columns: 1fr auto 1fr; justify-items:center; }
.product-detail .catalog-top-row .left { justify-self:start;}
.product-detail .catalog-top-row a.secondary-btn { white-space:nowrap; }
.product-detail .catalog-top-row a.tertiary-btn { display:inline-block; }
.product-detail .body-inner-container {padding: 0px 10px; }

.product { padding:2.5rem 0; }
    .main-image img { padding:1rem; border:1px solid #CCC; cursor:pointer; display:block; }
    .product-left .item-colors { margin:0.5rem 0 0; text-align:center; }
    .product-left .item-colors .color { float:none; display:inline-block; }

    .item-thumbnails { position:relative; overflow:auto; margin:0.5rem 0 0; }
    .item-thumbnail-wrap { float:left; overflow:auto; }
        .arrow { float:left; height:100%; }
        .arrow .fa { padding:1rem; border:1px solid #CCC; border-radius:2rem; font-size:2rem; text-align:center; line-height:1rem; cursor:pointer; }
        .arrow-previous { left:0; }
        .arrow-next { right:0; }
        .thumb-wrap { float:left; padding:0 0.625rem 0.625rem 0; cursor:pointer; }
        .thumb-wrap img { max-height:122px; padding:1rem; border:1px solid #CCC; }
        .thumb-wrap img:hover, .thumb-wrap img.active { border:1px solid #666; }

    .product-right { padding:0 0 0 2.5rem; }
    .product-right .panel-collapse { padding-left: 0; padding-right: 0; }

    .prices-table { margin-bottom:0.5rem; }
    .prices-table td { padding:3px 10px 3px 0; font-size:0.875rem; font-weight:500; }
    .prices-table.right td { padding-right:0; padding-left:10px; }
    .prepack-description .prices-table th, .prepack-description .prices-table td { padding:.5rem; border:1px solid #CCC; }
    .prices-table .item-title { text-transform:uppercase; }
    .prices-table .item-value {}
    .prices-table .tabmanager-item { vertical-align: top; }
    .prices-table .emphazise { font-weight: bold; }

    .carousel_button { padding-top:100px !important; text-align:center; }
    .carousel_button .fa { font-size: 30pt; }

#zoom_popover_template { display:none; }
#zoom_popover { position:fixed; top:0; left:0; width:100%; height:100%; z-index:9999; }
    .zoom_image { height:100%; }
    .bar { position:absolute; top:0; right:0; width:10%; min-width:200px; height:100%; border-left:10px solid #EFEFEF; z-index:9999; }
        .close_popover { width:100%; padding:2rem 0; text-align:center; cursor:pointer; }
        .zoom-btn { padding:2rem 0; text-align:center; cursor:pointer; }
        .zoom_out { padding:0 0 2rem; }
        #zoom_popover .thumbs { height:80%; }
        #zoom_popover .image-thumbs { height:70%; }
        #zoom_popover .image-thumbs img { max-height:190px; max-width:212px; display:block; }

        #zoom_popover .zoom_image img { cursor: url(/public/_default/themes/standard/img/plus.cur), url(/public/_default/themes/standard/img/plus.png), zoom-in !important; }
        #zoom_popover .zoom_image img.max_zoom_level { cursor: url(/public/_default/themes/standard/img/min.cur), url(/public/_default/themes/standard/img/min.png), zoom-out !important; }

.products-viewer .titlebar { padding:1.2rem 2rem; }
.products-viewer .titlebar h2 { margin:0; text-transform:uppercase; font-size:1rem; }
    .pv-product { float:left; margin:0.5rem; padding:1rem; border:1px solid #ccc; }

.discountrule_table td { padding-top: 0.25rem; padding-bottom: 0.25rem; color: #666666; }
.discountrule_table_active { color: #000000 !important; font-weight: bold; }
.discount_rule_toggle { vertical-align: top; padding-left: 10px; }
.discount_rule_toggle a { padding: 4px 6px 4px 6px; }

/* Shoppingcart */
.shoppingcart-bottom-row { background:#999; }
#cart_preview .modal-dialog { max-width: 50%; }
#shoppingcart_messages .modal-dialog { max-width: 50%; }
.discount_types .active a { text-decoration: none; color: #000 !important; }
.discount_inputhelp { margin-top: 20px; }
.discount_inputhelp input { text-align: center; }
.cart_sorting_methods .active a { text-decoration: none; color: #000 !important; }
.cart_sorting_methods_btn { padding-right: 10px; }
.cart_not_order_styles .active a { text-decoration: none; color: #000 !important; }
#shoppingcart_prints table { font-size:0.875rem; }

/* Downloads */
.line-by-line { margin-right:-4px; display:inline-block; vertical-align:top; float:none; }
.no-gutter [class^="col-"].line-by-line { margin:-4px; padding:0.6rem; }
.downloads a { word-wrap:break-word; }
.download-preview-image-large { width: 600px; max-height: 600px; }
.download-preview-image-small { width: 200px; max-height: 200px; }


/* Ordermatrix */
.ordermatrix { font-size: 0.875rem; }
.ordermatrix.catalog { margin: 0 -2.625rem; padding: 1rem 2.625rem 1.5rem; border-top: 1px solid #CDCDCD; }

.item-row { border:1px solid #CCC; border-top:0; }
.item-row:first-child { border:1px solid #CCC; }
    .ordermatrix .color span, .ordermatrix .color img { width:3rem; height:3rem; }
    .ordermatrix .item-colors { padding:0.625rem; }
    .ordermatrix .sizes { padding:0.625rem; padding-left:0; border-right:1px solid #CCC; }
    .ordermatrix .totals { padding:0.625rem; }
    .ordermatrix p { font-size: inherit; }

    .cell { display:inline-block; float:left; }
        .cell-top { padding:0.5rem 0.5rem; text-align:center; min-width:4.6rem; }
        .cell-top.flat { padding: 0.22rem 0.5rem; }
        .cell-bottom { height: 4.5rem; position: relative; }
        .cell-bottom.flat { height: 2.4rem; }

        .cell-bottom .btn { position: absolute; z-index: 9000; }
        .cell-bottom .btn-minus { left: 2px; }
        .cell-bottom .btn-plus { right: 2px; }

    .size .cell-bottom { border-top:1px solid #CCC; border-left:1px solid #CCC; }
    .size .cell-bottom { position: relative; height: 4.5rem; }
    .size .cell-bottom:after { content: "\00a0"; /*&nbsp;*/ }
    .size .cell-bottom input { position: absolute; -moz-appearance: textfield; padding: 0 0.5rem; font-weight:500; height: 100%; width:100%; border:0; text-align:center; }
    .size .cell-bottom input.fake-input { font-weight:400; }

    .total .cell-top { font-weight:500; }
    .total .cell-bottom, .size .cell-bottom { display: flex; justify-content: center; align-items: center; padding: 0 0.5rem; }
    .cell-bottom.text-to-center { border:0; }

    .backorder-stock th { text-align: center; }

    .buttonbar { width:100%; margin:1rem 0; overflow:auto; }
    .buttonbar button, .buttonbar a { float:right; }
    .buttonbar .fakebutton { line-height: 1.25; padding: 1.3rem 1rem; }
    .buttonbar .fakebutton span { color: inherit; }
    .buttonbar .btn { padding:1.3rem 1rem; text-transform:uppercase; }
    .row-extra { width:100%; padding:0.625rem; }

    .discount_input_line .cell-bottom input { -moz-appearance: textfield; font-weight:500; height: 4.30rem; border:0; text-align:center; }

/* Stockmatrix */
.stockmatrix .sizes { border-right:0; }

/* Accordeon */
.accordion { margin:1rem 0; }
.panel-heading { border-top:1px solid #CCC; }
    .panel-title { margin-bottom:0; font-size:1rem; font-weight:500; text-transform:uppercase; }
    .panel-title a { width:100%; padding:0.6rem 1rem; text-decoration:none; display:inline-block; }
    .panel-title a:after { float:right; content:'\f0d7'; font-family:"Font Awesome 5 Free"; font-size:1.5rem; font-weight:900; }
    .panel-title a.collapsed:after { content:'\f0da'; }

.panel-collapse { padding:0.6rem 1rem; }

/* Customeraddressbook */
.addressbook .row { margin:0.5rem 0; }

/* Body fixed width */
.body-fixed-center { padding:0.5rem; }

/* Grids */
.grid { position: relative; margin: 0 auto; -webkit-user-select: none; }
.grid * { -webkit-user-select: none; }
.grid .gridblock-wrapper { position: absolute; }
.grid .gridblock-wrapper .gridblock { overflow: hidden; }

/* Lookbook */
.lookbook-wrapper { width: 100%; position: relative; }
    .lookbook-title { margin-bottom:0; padding:2rem 1rem;  }
    .slider-controls { position: absolute; top: 20%; z-index: 200; }
    .lookbook-content { position:relative; }
    .lookbook-buy { position:absolute; top:10px; left:10px; display:inline-block; text-decoration:none; }
    .slider-controls .fa, .slider-controls .fas { font-size:3.125rem; margin: 0 1rem; }
    #slider-prev { left:0; }
    #slider-next { right:0; }
    .products-header { text-align: center; margin: 3rem 0; }
    .lookbook-wrapper .product-thumb-wrapper { padding: 1rem; }

/* Datatables */
.dataTables_wrapper .dt-buttons a { text-decoration:none; }
.dt-button-collection.dropdown-menu li { padding:0 1rem; }
.dataTables_wrapper .dataTables_length { float:left; margin-right:1rem; }
.dataTables_wrapper .dataTables_filter { float:right; }
.dataTables_scrollFootInner input { font-weight:normal; }
.dropdown-menu { padding:0.5rem; }
.dataTables_paginate li a { text-decoration:none; }
.dataTable td { vertical-align: top; }
.datatables-button-bar { margin-bottom: 20px; }
.dataTables_scrollBody { min-height: 300px; }

/* Returnorder */
.size input { -moz-appearance: textfield; }

/* Elearning courses */
.course_start_container { padding-top:200px; padding-bottom:200px; }
.course_start_container .start_box { background: rgba(188, 188, 188, 0.7); padding: 50px; text-align: center; }
.course_start_container .start_box .description { text-align: justify; }
.course_container { padding-top:100px; padding-bottom:100px; }
.course_container .course_block { background: rgba(188, 188, 188, 0.7); padding: 50px; text-align: left; }
.course_block h1 {  }
.course_container .course_progress { text-align: right; }
.course_block .next_button_bar { padding-top: 20px; text-align: center; }
.course_block .page_block {  }
.course_block .segment_block { padding-top: 5px; padding-bottom: 5px; }
.course_block .segment_title {  font-weight: bold; }
.course_block .segment_text {  }
.course_block .segment_picture { height: 200px; padding: 5px; }
.course_block .segment_picture_inline { width: 200px; float: right; padding: 5px; clear:both; }
.question_block {}
.question_block .question { font-weight: bold; }
.question_block .options {  }
.question_block .option { display: flex; }
.question_block .option:hover { flex: 1; font-weight: bold; cursor: pointer; }
.question_block .option_answerpage { display: flex; }
.question_block .option_answerpage:hover { flex: 1; font-weight: normal; cursor: auto; }
.question_block .option_select { width: 30px; }
.question_block .option_answer { flex: 1; }
.question_block .answer_text { padding-left: 30px; font-style: italic; }
.answer_text .good_answer { color: #00ff00; }
.answer_text .wrong_answer { color: #ff0000; }
.course_block .chapter_end .chapter_end_points { font-weight: bold; }
.course_block .chapter_end .chapter_end_badge_text {  }
.course_block .chapter_end .badge_container { width: 320px; padding: 10px; border: 2px dotted #000; background: #fff; }
.course_block .chapter_end .chapter_end_badge_image { width:300px; height:300px; }
.course_block .chapter_end .chapter_end_badge_image_failed { width:300px; height:300px; opacity: 0.5; }
.course_block .chapter_end .badge_failed_image_overlay { line-height: 265px; font-size: 340px; padding-left: 25px; color: #ff0000; }
.course_block .chapter_end .chapter_end_badge_title { padding-top: 10px; font-weight: bold; font-style: italic; }
.course_block .course_passed_message { color: #00ff00; font-weight: bold; }
.course_block .course_failed_message { color: #ff0000; font-weight: bold; }
.course_block .course_end_points { }
.course_block .final .chapters {  padding-top: 20px; /* display: flex; */ }
.course_block .final .chapters .chapter { display: flex; padding: 10px; }
.course_block .final .chapters .chapter .chapter_details { width: 250px; }
.course_block .final .chapters .chapter .chapter_badge { width: 170px; }
.chapter_details .chapter_title { font-weight: bold; }
.chapter_details .badge_success { color: #00ff00; }
.chapter_details .badge_failed { color: #ff0000; }
.chapter_badge .badge_container { width: 170px; padding: 10px; border: 2px dotted #000; background: #fff; }
.chapter_badge .chapter_end_badge_image { width: 150px; height: 150px; }
.chapter_badge .chapter_end_badge_image_failed { width: 150px; height: 150px; opacity: 0.5; }
.chapter_badge .badge_failed_image_overlay { line-height: 130px; font-size: 200px; padding-left: 0px; color: #ff0000; }
.chapter_badge .chapter_end_badge_title { padding-top: 10px; font-weight: bold; font-style: italic; }
.overview_badges { display: inline; }
.overview_badge { display: inline-block; padding: 3px; }
.overview_badge  img { border: 1px solid #ccc; }
.overview_badge .badge_failed {  opacity: 0.5; }

/* Stock notifications */
.loader { text-align:center; font-size:1rem; margin:0; }
.stocknotifcations .size .cell-bottom { height:1.6rem; }
.stocknotifcations .niceCheckbox .custom-checkbox { width:100%; height:24px; border:none; margin:0; }
.stocknotifcations .niceCheckbox .custom-checkbox:after { left:26px; }
#notification_form_alert { display:none; font-size:0.75rem; }
.stocknotifcations .niceCheckbox { position:static; }

/* Back to top button */
.back-to-top.main-btn {
    display: none;
    position: fixed;
    right: 20px;
    bottom: 20px;
    height: auto;
    cursor: pointer;
    z-index: 9999;
    border: none !important;
}

.back-to-top.main-btn span, .back-to-top.main-btn i {
    color: inherit;
}

.shop-overview {
    display: flex;
    justify-content: flex-end;
}

.matrix-buttons button {
    margin-right: 1rem;
}

.shop-overview-grid {
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 1rem;
}

.shoppingcart-totals {
    border-top: 1px solid #ccc;
    padding-top: 1rem;
}

.shop-overview-grid span:nth-child(2n) {
    min-width: 175px;
    text-align: right;
}

.flex-end {
    justify-content: flex-end;
}

.flex-start {
    justify-content: flex-start;
}

.flex-space-between {
    justify-content: space-between;
}

.shop-overview .btn-group.col-md-3 {
    padding:0;
}

.shop-overview .dropdown-menu, .shop-overview .btn-group .btn {
    width: 100%;
}

.shop-overview .dropdown-menu a {
    text-decoration: none;
    width: 100%;
    display: inline-block;
}

/* Bootstrap XL+ breakpoint */
@media (max-width: 1920px) {
    .prices-table.right td { padding-right:10px; padding-left:0; }

    .catalog-items { grid-template-columns: repeat(4, 1fr); }
    .catalog-items.width-25 { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1550px) {
    .catalog-items { grid-template-columns: repeat(3, 1fr); }
    .catalog-items.width-25 { grid-template-columns: repeat(2, 1fr); }

    .wishlist-items { grid-template-columns: repeat(3, 1fr); }
}

/* Bootstrap XL breakpoint */
@media (min-width: 1200px) {
    .sticky-product-img {
        position: -webkit-sticky;
        position: -moz-sticky;
        position: -ms-sticky;
        position: -o-sticky;
        position: sticky;
        top: 10px;
        align-self: flex-start;
        z-index: 6000;
    }
}

@media (max-width: 1199px) {
    .search-container { order:3; }

    .product { padding:2.5rem; }
        .product-right { padding:0; }

    .left-column .my-pages-menu li { float:left; width:25%; }

    table .btn, table a { width:100%; }

    .catalog-items.width-25 { grid-template-columns: repeat(3, 1fr); }

    .product-left { top: 0 !important; }
}

/* Bootstrap LG breakpoint */
@media (max-width: 991px) {
    .top-icons-block { justify-content:center; }

    .logo { padding:0; text-align:center; }
    .search { margin:.5rem 0; }

    .catalog-items { grid-template-columns: repeat(2, 1fr); }
    .catalog-items.width-25 { grid-template-columns: repeat(2, 1fr); }
}

/* Bootstrap MD breakpoint */
@media (max-width: 767px) {
    .left-column .my-pages-menu li { float:left; width:50%; }

    /* Detail page */
    .product-detail .catalog-top-row { grid-template-columns:auto; }

    /* Navigation */
    #navbar { grid-template-columns:auto; grid-template-areas:
        "action-buttons"
        "nav"
        "hidden-links";
    }
}

@media (max-width: 636px) {
    .catalog-items { grid-template-columns: repeat(1, 1fr); }
    .catalog-items.width-25 { grid-template-columns: repeat(1, 1fr); }

    .wishlist-items { grid-template-columns: repeat(1, 1fr); }
}

/* Bootstrap SM breakpoint */
@media (max-width: 575px) {
    ordermatrix .sizes { padding-left:0.625rem; }
}

.img-responsive { display: block; height: auto; max-width: 100%; }

/* CRM */
.dashboard-tile { background-color: #cccccc; margin: 5px !important; position: relative; }
.dashboard-headers { background-color: rgb(183, 171, 146); text-align: center; color: white; padding: 7px; }
.dashboard-header-buttons { position: absolute; top: 0px; right: 0px; }
.dashboard-tile ul { height: 145px; padding: 0;}
.dashboard-tile li { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; height: 22px; margin: 0; padding: 0 50px 0 20px; position: relative; }
.dashboard-tile li a { color: black; }
.dashboard-tile li a.button { position: absolute; top: 5px; right: 13px; }
#monthly-revenue { margin: 10px; }
.budget-chart { padding: 10px !important; }
.budget-table { margin-top: 20px !important;  max-height: 500px; overflow: auto; }
.budget-table table { width: 100%; }
.budget-input { width: 100px; }
.budget-negative { color: red; }
.budget-positive { color: green; }
.budget-table .budget-row td:nth-child(n+2), .budget-table .budget-row td:nth-child(n+2) input, .budget-table .budget-totals td:nth-child(n+2) { text-align: right; }
.budget-table thead th { text-align: center; }
.budget-table tr.budget-row td:not(:first-of-type) { font-size: 14px; }
.form-field-image { margin-bottom: 10px; }
.form-field-image img { max-width: 600px; }

/* Autocomplete */
.pac-container { z-index: 5500; }

/* Cropit */
#cropitModal .modal-dialog { max-width: 635px; }
.cropit-preview { width: 600px; height: 450px; border: solid 1px #CCCCCC; margin: 20px 0; }
.cropit-rotate-ccw, .cropit-rotate-cw, .cropit-image-zoom-input { margin: 0 10px; }
.cropit-image-input { display: none; }

/* Return module */
.return-order-line-too-much { color: red !important; }

/* Shoppingcart Stats */
.shoppingcart-stats-container { overflow-x: auto; }
.shoppingcart-stats-container th, .shoppingcart-stats-container td { white-space: nowrap; }
.shoppingcart-stats-size-bar th { border: none; padding-top: 0; padding-bottom: 0; text-align: center; }
.shoppingcart-stats-size-bar td { padding-top: 0; padding-bottom: 0; text-align: center; }
select[name="shoppingcart_stats_sort_filter"] { margin-bottom: 10px; }
.shoppingcart-stats-group-header { background-color: #e9ecef; }
.shoppingcart-stats-group-total-price { border-top: 2px solid black; border-bottom: 2px solid black;  }

/* Other */
.delivery_window_code_style { height: 42px; }

/* New customer page */
.new_customer_radio_button { margin-left: 0; }
.new_customer_radio_label { margin-left: 20px; margin-bottom: 0;}
