﻿* {
    margin: 0;
    outline: none;
    padding: 0;
    text-decoration: none
}

    *, *:before, *:after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }

html {
    margin: 0 !important;
    -webkit-text-size-adjust: none
}

ol, ul {
    list-style: none
}

a img {
    border: none
}

a:active {
    outline: none
}

input[type="button"]::-moz-focus-inner, input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner, input[type="file"] > input[type="button"]::-moz-focus-inner {
    margin: 0;
    border: 0;
    padding: 0
}

input[type="button"], input[type="submit"], input[type="reset"], input[type="text"], input[type="password"], textarea {
    border-radius: 0
}

input[type="button"], input[type="submit"], input[type="reset"] {
    -webkit-appearance: none
}

input:-webkit-autofill {
    -webkit-box-shadow: inset 0 0 0 1000px #fff
}

script {
    display: none !important
}

html {
    font-size: unset
}

body {
    font-size: 1em;
    font-family: 'Gill Sans','Gill Sans MT',Calibri,'Trebuchet MS',sans-serif;
    color: #555
}

    body.mobile {
        overflow: hidden
    }

a {
    color: #555;
    text-decoration: none
}

    a:hover, a:focus, a:active {
        text-decoration: none;
        color: #333
    }

img {
    max-width: 100%
}

button, a.button {
    background-color: #3984eb;
    color: #fff;
    /*border: solid 1px transparent !important;*/
    padding: 5px 10px
}

input, select, button, textarea {
    padding: 5px 10px;
    border: solid 1px #ccc
}

    input[type='button'], input[type='submit'], select[type='button'], select[type='submit'], button[type='button'], button[type='submit'], textarea[type='button'], textarea[type='submit'] {
        margin: 0px !important;
        background-color: #3984eb;
        color: #fff;
        /*border: solid 1px transparent !important*/
    }

    input:focus, select:focus, button:focus, textarea:focus {
        outline: none;
        border: solid 1px #999
    }

    input.qty-input, select.qty-input, button.qty-input, textarea.qty-input {
        width: 50px
    }

    input.add-to-cart-button, select.add-to-cart-button, button.add-to-cart-button, textarea.add-to-cart-button {
        text-transform: uppercase
    }

.label {
    font-size: 1em;
    color: #555;
    padding: 0
}

button.button-secondary, input[type='button'].button-secondary, input[type='submit'].button-secondary, a.button-secondary {
    padding: 5px 10px;
    background-color: #555;
    color: #fff;
    border: solid 1px #555 !important
}

h1, h2, h3, h4, h5, h6 {
    border-bottom: solid 3px #555;
    color: #555;
    padding-bottom: 15px;
    margin-bottom: 25px;
    text-align: center
}

.nopadding {
    padding: 0 !important
}

.bar-notification, .flyout-cart {
    display: none
}

.bar-notification {
    background-color: #5d0;
    color: #111;
    position: fixed;
    width: 100%;
    text-align: center;
    z-index: 5;
    padding: 5px
}

    .bar-notification a {
        color: #111;
        text-decoration: underline
    }

    .bar-notification p {
        margin-bottom: 0
    }

#topcartlink {
    position: relative
}

.flyout-cart {
    display: none;
    position: absolute;
    z-index: 5;
    background-color: #fff;
    border: solid 1px #ccc;
    padding: 10px;
    right: 0;
    top: 55px;
    width: 400px
}

    .flyout-cart.active {
        display: block
    }

    .flyout-cart a {
        padding: 0 !important
    }

    .flyout-cart .mini-shopping-cart .count {
        text-align: center;
        border-bottom: solid 1px #eee;
        margin-bottom: 10px;
        padding-bottom: 5px
    }

    .flyout-cart .mini-shopping-cart .items .item {
        clear: both;
        border-top: solid 1px #eee;
        padding: 15px 0;
        text-align: left
    }

        .flyout-cart .mini-shopping-cart .items .item.first {
            border-top: none
        }

        .flyout-cart .mini-shopping-cart .items .item .picture {
            float: left
        }

        .flyout-cart .mini-shopping-cart .items .item .product {
            padding-left: 80px
        }

    .flyout-cart .mini-shopping-cart .totals {
        clear: both;
        border-top: solid 1px #eee;
        margin-top: 10px;
        padding-top: 5px;
        text-align: center
    }

    .flyout-cart .mini-shopping-cart .buttons {
        clear: both;
        text-align: center;
        margin: 15px 0
    }

        .flyout-cart .mini-shopping-cart .buttons input {
            text-transform: uppercase
        }

.admin-header-links {
    background-color: #555;
    text-align: center;
    padding: 10px 0
}

    .admin-header-links a {
        color: #fff
    }

.header .header-upper {
    padding: 0 15px;
    border-bottom: solid 1px #ddd;
    background-color: #eef
}

    .header .header-upper #header-selectors, .header .header-upper #header-searchbox {
        padding-top: 12px
    }

    .header .header-upper .header-selectors-wrapper > div > div {
        display: inline-block;
        height: 35px;
        margin-left: 10px
    }

    .header .header-upper .header-links-wrapper .header-links {
        text-align: right
    }

        .header .header-upper .header-links-wrapper .header-links ul {
            margin-bottom: 0
        }

            .header .header-upper .header-links-wrapper .header-links ul li {
                border-left: solid 1px transparent;
                border-right: solid 1px transparent
            }

                .header .header-upper .header-links-wrapper .header-links ul li:hover {
                    background-color: #fff;
                    border-left: solid 1px #ddd;
                    border-right: solid 1px #ddd
                }

            .header .header-upper .header-links-wrapper .header-links ul a {
                padding: 17px 5px;
                display: inline-block
            }

.header .header-lower {
    padding: 10px 15px;
    border-bottom: solid 1px #ddd
}

    .header .header-lower .header-menu .menu-toggle {
        background-color: #fff;
        padding: 10px;
        margin: 25px 0 0 0;
        cursor: pointer;
        border: solid 1px #eee
    }

    .header .header-lower .header-menu ul.top-menu .sublist-toggle {
        padding-left: 20px
    }

    .header .header-lower .header-menu ul.top-menu > li {
        display: inline-block;
        position: relative
    }

        .header .header-lower .header-menu ul.top-menu > li > a {
            padding: 18px 10px;
            display: inline-block
        }

        .header .header-lower .header-menu ul.top-menu > li .sublist {
            position: absolute;
            min-width: 150px;
            z-index: 1;
            text-align: left;
            background-color: #fff;
            border: solid 1px #eee;
            box-shadow: 0 0 2px rgba(0,0,0,.5);
            display: none
        }

        .header .header-lower .header-menu ul.top-menu > li > .sublist {
            top: 45px
        }

            .header .header-lower .header-menu ul.top-menu > li > .sublist li {
                position: relative
            }

                .header .header-lower .header-menu ul.top-menu > li > .sublist li:hover {
                    background-color: #eee
                }

                .header .header-lower .header-menu ul.top-menu > li > .sublist li a {
                    padding: 5px 10px;
                    display: block
                }

                .header .header-lower .header-menu ul.top-menu > li > .sublist li .sublist {
                    left: 100%;
                    top: 0
                }

                .header .header-lower .header-menu ul.top-menu > li > .sublist li:hover > .sublist {
                    display: block
                }

        .header .header-lower .header-menu ul.top-menu > li:hover > .sublist {
            display: block
        }

    .header .header-lower .header-menu ul.top-menu.mobile {
        display: none
    }

        .header .header-lower .header-menu ul.top-menu.mobile li {
            display: block
        }

            .header .header-lower .header-menu ul.top-menu.mobile li a {
                padding: 10px 10px;
                display: block !important;
                background-color: #eef;
                border-bottom: solid 1px #fff
            }

            .header .header-lower .header-menu ul.top-menu.mobile li .sublist {
                width: auto;
                position: unset;
                box-shadow: none
            }

                .header .header-lower .header-menu ul.top-menu.mobile li .sublist a {
                    padding: 10px 5px 10px 20px
                }

.header .mobile-links a {
    padding: 10px 0;
    border-right: solid 1px #dde
}

    .header .mobile-links a:last-child {
        border-right: none
    }

.product-item {
    text-align: center;
    border: solid 1px #fff;
    border-bottom: dotted 1px #ddd;
    position: relative;
    min-height: 380px;
    margin-bottom: 10px;
    padding: 5px
}

    .product-item:hover {
        border: solid 1px #aaa
    }

        .product-item:hover .description {
            display: block
        }

    .product-item .description {
        position: absolute;
        display: none;
        background-color: #3339;
        color: #fff;
        text-align: center;
        top: 0px;
        right: 0;
        left: 0;
        padding: 0px;
    }

    .product-item .picture {
        height: 250px
    }

        .product-item .picture img {
            max-height: 100%
        }

    .product-item .prices {
        font-size: 1.5em;
        padding: 3px 0
    }

    .product-item .product-title {
        padding: 10px 0 0 0;
        font-weight: bold;
        text-transform: uppercase
    }

.product-list .product-item {
    height: auto;
    float: left;
    width: 100%;
    min-height: 215px
}

    .product-list .product-item .description {
        position: unset;
        display: block;
        background-color: #fff;
        color: #555;
        height: auto
    }

    .product-list .product-item .picture {
        float: left;
        width: 20%;
        height: 200px
    }

    .product-list .product-item .details {
        float: left;
        width: 80%;
        text-align: left
    }

        .product-list .product-item .details .product-title {
            padding: 10px
        }

    .product-list .product-item .add-info {
        padding-left: 10px
    }

.news-item .news-head .news-title {
    font-weight: bold;
    display: block
}

.news-item .news-head .news-date {
    font-size: .8em;
    color: #808080
}

.news-items + .view-all {
    text-align: center;
    padding: 15px 0
}

.breadcrumb {
    background-color: #fff;
    margin-bottom: 0;
    padding: 15px 0
}

    .breadcrumb ul li {
        display: inline
    }

.footer {
    background-color: #eef;
    color: #555;
    margin-top: 20px;
    padding-top: 20px;
    clear: both
}

    .footer .footer-block .title {
        font-size: 1.2em
    }

        .footer .footer-block .title h3 {
            text-align: left !important
        }

    .footer .footer-block ul.networks a {
        font-size: 1.5em
    }

    .footer .newsletter {
        text-align: center
    }

        .footer .newsletter h3 {
            border-bottom: none;
            margin-bottom: 0
        }

    .footer .newsletter-box {
        border-bottom: solid 1px #ddd;
        padding-bottom: 15px
    }

        .footer .newsletter-box .newsletter-subscribe .options {
            margin: 10px auto
        }

    .footer .footer-upper {
        border-top: solid 1px #fff;
        padding-top: 25px
    }

    .footer .footer-lower {
        padding: 25px 0;
        text-align: center;
        background: rgba(255,255,255,.5);
        border-top: solid 2px #ffe
    }

.side-2 {
    background-color: #fff;
    border-right: solid 1px #fff;
    padding: 15px
}

    .side-2 .sidebar-left ul.list a {
        display: block;
        padding: 5px
    }

        .side-2 .sidebar-left ul.list a.active {
            background-color: #eee
        }

    .side-2 .sidebar-left ul.list li.active > a {
        background-color: #eee
    }

    .side-2 .sidebar-left ul.list .sublist {
        padding-left: 20px
    }

    .side-2 .sidebar-left .block-recently-viewed-products ul.list li {
        height: 80px
    }

        .side-2 .sidebar-left .block-recently-viewed-products ul.list li a.product-picture {
            float: left
        }

    .side-2 .block .title {
        border-bottom: solid 1px #ddd;
        padding: 10px 0;
        margin-bottom: 10px
    }

    .side-2 .block .tags li {
        display: inline
    }

.product-selectors, .product-filters {
    margin: 15px 0;
    padding: 15px 0;
    border-bottom: solid 1px #ccc
}

.product-viewmode {
    text-align: right
}

    .product-viewmode a {
        margin-left: 5px;
        color: #999
    }

        .product-viewmode a.selected {
            font-weight: bold;
            color: #555
        }

.product-filters {
    margin: 15px 0
}

    .product-filters .filtered-items {
        background-color: #eff;
        padding: 5px 10px
    }

.product-details-page .free-shipping {
    font-size: 1.5em
}

.product-details-page .product-essential, .product-details-page .variant-overview {
    padding-bottom: 15px;
    border-bottom: solid 1px #ccc;
    margin-bottom: 15px
}

    .product-details-page .product-essential .product-name h3, .product-details-page .product-essential .variant-name h3, .product-details-page .variant-overview .product-name h3, .product-details-page .variant-overview .variant-name h3 {
        text-align: left
    }

    .product-details-page .product-essential .meta-box, .product-details-page .variant-overview .meta-box {
        border-bottom: solid 1px #ddd;
        padding: 5px 0;
        margin: 5px 0
    }

        .product-details-page .product-essential .meta-box .label, .product-details-page .variant-overview .meta-box .label {
            color: #555;
            font-size: 1em;
            padding: 0
        }

    .product-details-page .product-essential .old-product-price, .product-details-page .variant-overview .old-product-price {
        text-decoration: line-through;
        font-size: 1.5em
    }

    .product-details-page .product-essential .product-price, .product-details-page .variant-overview .product-price {
        font-size: 2em
    }

    .product-details-page .product-essential .product-variant-line .add-to-cart, .product-details-page .variant-overview .product-variant-line .add-to-cart {
        float: left
    }

.product-details-page .overview-buttons {
    margin: 10px 0;
    font-size: .9em
}

    .product-details-page .overview-buttons > div {
        display: inline-block;
        margin-right: 5px
    }

.product-details-page .product-tags-list {
    text-align: center
}

    .product-details-page .product-tags-list li {
        display: inline;
        margin: 0 5px
    }

ul.color-squares li {
    display: inline
}

    ul.color-squares li label {
        position: relative;
        border: solid 2px #fff;
        overflow: hidden;
        cursor: pointer
    }

        ul.color-squares li label .color {
            width: 30px;
            height: 30px;
            float: left
        }

        ul.color-squares li label input {
            position: absolute;
            opacity: 0;
            left: -500px
        }

    ul.color-squares li.selected-value label {
        border: solid 2px #f00
    }

div.cart {
    width: 100%
}

    div.cart #products-table .heading {
        background-color: #eee;
        color: #555;
        padding: 10px 0
    }

    div.cart #products-table .cart-item {
        padding: 10px 0
    }

    div.cart #products-table .common-buttons {
        padding: 10px 0;
        border-top: solid 1px #eee
    }

    div.cart .widget-box {
        background-color: #eee;
        margin-bottom: 10px;
        padding: 20px;
        border: solid 1px #ccc
    }

        div.cart .widget-box input[type='text'] {
            width: 165px
        }

        div.cart .widget-box dl {
            margin-bottom: 0
        }

        div.cart .widget-box .roasted-collapsible a {
            display: block;
            color: #555;
            font-weight: bold
        }

            div.cart .widget-box .roasted-collapsible a:hover {
                text-decoration: none
            }

            div.cart .widget-box .roasted-collapsible a:active {
                text-decoration: none
            }

        div.cart .widget-box .roasted-collapsible-container {
            margin-top: 10px
        }

.fieldset .title {
    font-size: 1.2em
}

.fieldset .form-fields .inputs {
    margin: 20px 0
}

    .fieldset .form-fields .inputs > label {
        display: block
    }

    .fieldset .form-fields .inputs input[type='text'], .fieldset .form-fields .inputs input[type='password'], .fieldset .form-fields .inputs input[type='number'], .fieldset .form-fields .inputs input[type='email'], .fieldset .form-fields .inputs textarea {
        width: 100%;
        max-width: 300px;
        resize: none
    }

    .fieldset .form-fields .inputs input + label {
        display: inline-block
    }

span.required {
    color: #800000
}

.inputs {
    margin: 20px 0
}

    .inputs > label {
        display: block
    }

    .inputs input[type='text'], .inputs select, .inputs textarea {
        width: 100%;
        max-width: 300px
    }

    .inputs.date-of-birth select {
        width: 100%;
        max-width: 150px;
        margin-right: 5px
    }

.buttons {
    margin: 20px 0
}

.address-item {
    border: solid 1px #eee;
    padding: 10px; /*margin: 10px;*/
}

.checkout-data .tab-section {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px #ccc
}

    .checkout-data .tab-section .step-title .number {
        width: 40px;
        height: 40px;
        background-color: #999;
        border-radius: 50% !important;
        display: inline-block;
        color: #fff;
        text-align: center;
        font-size: 1.65em;
        margin-right: 10px
    }

    .checkout-data .tab-section .step-title h2 {
        border-bottom: none;
        display: inline-block;
        color: #999;
        margin: 0
    }

    .checkout-data .tab-section.allow:not(.active) {
        cursor: pointer
    }

        .checkout-data .tab-section.allow:not(.active) .step-title .number {
            background-color: #3984eb;
            color: #3984eb;
            padding-left: 10px;
            overflow: hidden;
            float: right
        }

            .checkout-data .tab-section.allow:not(.active) .step-title .number:before {
                content: "✓";
                color: #fff
            }

        .checkout-data .tab-section.allow:not(.active) .step-title h2 {
            color: #555
        }

    .checkout-data .tab-section.active {
        cursor: pointer
    }

        .checkout-data .tab-section.active .step-title .number {
            background-color: #555;
            color: #fff
        }

        .checkout-data .tab-section.active .step-title h2 {
            color: #555
        }

    .checkout-data .tab-section .payment-method .payment-logo, .checkout-data .tab-section .payment-method .payment-details {
        display: inline
    }

    .checkout-data .tab-section .payment-method li {
        padding: 10px 0;
        display: block;
        border-bottom: solid 1px #eee
    }

table.data-table {
    width: 100%
}

    table.data-table tr.even {
        background-color: #eee
    }

    table.data-table td, table.data-table th {
        padding: 10px;
        border: solid 1px #ddd
    }

        table.data-table td.spec-name, table.data-table th.spec-name {
            font-weight: bold
        }

.pager li {
    margin: 0 5px
}

    .pager li span, .pager li a {
        border-radius: 0 !important
    }

    .pager li.current-page span {
        background-color: #3984eb;
        color: #fff;
        border: solid 1px #3984eb
    }

.slider-wrapper.theme-custom {
    margin: 0;
    max-width: 100%
}

.mobile-icon.active {
    background-color: #3984eb;
    color: #fff
}

.mobile-icon-popup {
    position: fixed;
    display: block !important;
    width: 100%;
    height: 100%;
    z-index: 100;
    left: 0;
    top: 40px;
    padding-bottom: 20px;
    text-align: center;
    overflow: auto
}

    .mobile-icon-popup div {
        width: 100%;
        margin-left: 0 !important
    }

    .mobile-icon-popup input[type='text'], .mobile-icon-popup select {
        width: 90%;
        margin: 5px 0
    }

    .mobile-icon-popup .title {
        color: #fff;
        padding: 15px 0
    }

    .mobile-icon-popup li {
        text-align: left;
        display: block
    }

        .mobile-icon-popup li a {
            color: #fff;
            padding: 10px 15px !important;
            display: block;
            border-bottom: solid 1px #555
        }

#user-info-menu {
    position: relative
}

    #user-info-menu > div {
        position: absolute;
        right: 0;
        display: none;
        min-width: 200px;
        width: auto;
        z-index: 1;
        text-align: left;
        top: 56px;
        border: solid 1px #ccc;
        background-color: #fff
    }

        #user-info-menu > div .title {
            text-align: center;
            border-bottom: solid 1px #ddd;
            padding: 10px 0
        }

        #user-info-menu > div li a {
            padding: 10px;
            display: block
        }

            #user-info-menu > div li a:hover {
                background-color: #eee
            }

    #user-info-menu:hover > div {
        display: block
    }

    #user-info-menu #logout-menu {
        border-top: solid 1px #ddd
    }

#eu-cookie-bar-notification {
    text-align: center;
    padding: 15px 0
}
