body {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        color: #666;
        font-size: 12px;
        line-height: 20px;
        width: 100%;
}
h1, h2, h3, h4, h5, h6 {
        color: #444;
}
/* default font size */
.fa {
        font-size: 14px;
}
/* Override the bootstrap defaults */
h1 { font-size: 33px; }
h2 { font-size: 27px; }
h3 { font-size: 21px; }
h4 { font-size: 15px; }
h5 { font-size: 12px; }
h6 { font-size: 10.2px; }

a {
        color: #3a1b6e;
}
a:hover {
        text-decoration: none;
}
legend {
        font-size: 18px;
        padding: 7px 0px;
}
label {
        font-size: 12px;
        font-weight: normal;
}
select.form-control, textarea.form-control, input[type="text"].form-control, input[type="password"].form-control, input[type="datetime"].form-control, input[type="datetime-local"].form-control, input[type="date"].form-control, input[type="month"].form-control, input[type="time"].form-control, input[type="week"].form-control, input[type="number"].form-control, input[type="email"].form-control, input[type="url"].form-control, input[type="search"].form-control, input[type="tel"].form-control, input[type="color"].form-control {
        font-size: 12px;
}
.input-group input, .input-group select, .input-group .dropdown-menu, .input-group .popover {
        font-size: 12px;
}
.input-group .input-group-addon {
        font-size: 12px;
        height: 30px;
}

/* Fix some bootstrap issues */
span.hidden-xs, span.hidden-sm, span.hidden-md, span.hidden-lg {
        display: inline;
}

.nav-tabs {
        margin-bottom: 15px;
}
div.required .control-label:before {
        content: '* ';
        color: #F00;
        font-weight: bold;
}

/* Gradient to all drop down menus */
.dropdown-menu li > a:hover {
        text-decoration: none;
        color: #ffffff;
        background-color: #3a1b6e;
        background-image: linear-gradient(to bottom, #3a1b6e, #2b1453);
        background-repeat: repeat-x;
}

/* Top Bar */
#top {
        background-color: #EEEEEE;
        border-bottom: 1px solid #e2e2e2;
        padding: 4px 0px 3px 0;
        margin: 0 0 20px 0;
        min-height: 40px;
}
#top .container {
        padding: 0 20px;
}
#top #form-currency .currency-select,
#top #form-language .language-select {
        text-align: left;
}
#top #form-currency .currency-select:hover,
#top #form-language .language-select:hover {
        text-shadow: none;
        color: #ffffff;
        background-color: #3a1b6e;
        background-image: linear-gradient(to bottom, #3a1b6e, #2b1453);
        background-repeat: repeat-x;
}
#top .btn-link, #top-links li, #top-links a {
        color: #888;
        text-shadow: 0 1px 0 #FFF;
        text-decoration: none;
}
#top .btn-link:hover, #top-links a:hover {
        color: #444;
}
#top-links .dropdown-menu a {
        text-shadow: none;
}
#top-links .dropdown-menu a:hover {
        color: #FFF;
}
#top .btn-link strong {
        font-size: 14px;
        line-height: 14px;
}
#top-links {
        padding-top: 6px;
}
#top-links a + a {
        margin-left: 15px;
}

/* Logo */
#logo {
        margin: 0 0 10px 0;
}

/* Search */
#search {
        margin-bottom: 10px;
}
#search .input-lg {
        height: 40px;
        line-height: 20px;
        padding: 0 10px 0 20px !important;
        border-radius: 25px 0 0 25px !important;
        border-color: #d1d5db !important;
}
#search .btn-lg {
        font-size: 15px;
        line-height: 18px;
        padding: 10px 35px;
        text-shadow: 0 1px 0 #FFF;
        border-radius: 0 25px 25px 0 !important;
}

/* Cart */
#cart {
        margin-bottom: 10px;
}
#cart > .btn {
        font-size: 12px;
        line-height: 18px;
        color: #FFF;
}
#cart.open > .btn {
        background-image: none;
        background-color: #FFFFFF;
        border: 1px solid #E6E6E6;
        color: #666;
        box-shadow: none;
        text-shadow: none;
}
#cart.open > .btn:hover {
        color: #444;
}
#cart .dropdown-menu {
        background: #eee;
        z-index: 1001;
        min-width: 100%;
        overflow-y: auto;
        max-height: 800px;
        scrollbar-width: thin;
        overflow-x: hidden;
}
@media (max-width: 478px) {
        #cart .dropdown-menu {
                width: 100%;
        }
}
#cart .dropdown-menu table {
        margin-bottom: 10px;
}
#cart .dropdown-menu li > div {
        min-width: 427px;
        padding: 0 10px;
}
@media (max-width: 478px) {
        #cart .dropdown-menu li > div {
                min-width: 100%;
        }
}
#cart .dropdown-menu li p {
        margin: 20px 0;
}

/* Main Navigation Bar (#menu) */
#menu {
        background: rgba(34, 154, 200, 0.85) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 8px !important;
        box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.15) !important;
        min-height: 40px;
        margin-top: 10px;
        z-index: 999 !important;
        position: relative !important;
}

#menu .dropdown-menu,
#menu .dropdown-inner {
        z-index: 9999 !important;
}

#menu .nav > li > a {
        color: #fff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        padding: 10px 15px;
        min-height: 15px;
        background-color: transparent;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
}
#menu .nav > li > a:hover, #menu .nav > li.open > a {
        background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
        padding-bottom: 0;
}
#menu .dropdown-inner {
        display: table;
}
#menu .dropdown-inner ul {
        display: table-cell;
}
#menu .dropdown-inner a {
        min-width: 160px;
        display: block;
        padding: 3px 20px;
        clear: both;
        line-height: 20px;
        color: #333333;
        font-size: 12px;
}
#menu .dropdown-inner li a:hover {
        color: #FFFFFF;
}

#menu #category {
        float: left;
        padding-left: 15px;
        font-size: 16px;
        font-weight: 700;
        line-height: 40px;
        color: #fff;
        text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .btn-navbar {
        font-size: 15px;
        font-stretch: expanded;
        color: #FFF;
        padding: 2px 18px;
        float: right;
        background-color: #3a1b6e;
        background-image: linear-gradient(to bottom, #3a1b6e, #2b1453);
        background-repeat: repeat-x;
        border-color: #2b1453 #2b1453 #145e7a;
}
#menu .btn-navbar:hover, #menu .btn-navbar:focus, #menu .btn-navbar:active, #menu .btn-navbar.disabled, #menu .btn-navbar[disabled] {
        color: #ffffff;
        background-color: #3a1b6e;
}

/* Custom Multi-level Dropdown Menu */
#menu .custom-menu {
        display: block !important;
        visibility: hidden !important;
        opacity: 0 !important;
        max-height: 0 !important;
        overflow: visible !important;
        padding: 0 !important;
        background-color: #fff !important;
        border: none !important;
        border-radius: 0 0 6px 6px !important;
        box-shadow: 0 10px 25px rgba(0,0,0,0.12) !important;
        transition: all 0.4s ease-in-out !important;
        left: 0 !important;
        right: auto !important;
}

#menu .custom-dropdown:hover .custom-menu {
        visibility: visible !important;
        opacity: 1 !important;
        max-height: 700px !important;
        padding: 20px !important;
}

#menu .custom-menu .dropdown-inner {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 30px !important;
}

#menu .custom-menu .dropdown-inner ul.list-unstyled {
        flex: 1;
        min-width: 200px;
        margin-bottom: 0 !important;
}

#menu .custom-menu ul.list-unstyled li a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 8px 12px !important;
        color: #444 !important;
        background-color: transparent !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        border-radius: 4px !important;
        transition: all 0.2s ease-in-out !important;
}

#menu .custom-menu ul.list-unstyled li a:hover {
        background-color: #3a1b6e !important;
        color: #ffffff !important;
        padding-left: 18px !important;
}

/* 3rd Level Flyout Menu */
#menu .custom-menu ul.list-unstyled li.dropdown-submenu {
        position: relative !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu .sub-dropdown-menu {
        position: absolute !important;
        top: 0 !important;
        left: 100% !important;
        min-width: 220px !important;
        background-color: #ffffff !important;
        box-shadow: 0 10px 25px rgba(0,0,0,0.15) !important;
        border-radius: 4px !important;
        padding: 10px 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateX(10px) !important;
        transition: all 0.25s ease-in-out !important;
        z-index: 9999 !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu:hover > .sub-dropdown-menu {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateX(0) !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu .sub-dropdown-menu li a {
        padding: 7px 15px !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        color: #555 !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu .sub-dropdown-menu li a:hover {
        background-color: #3a1b6e !important;
        color: #ffffff !important;
        padding-left: 20px !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu > a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu > a .sub-arrow {
        font-size: 14px;
        margin-left: 10px;
        color: #888;
}

#menu .custom-menu ul.list-unstyled li.dropdown-submenu > a:hover .sub-arrow {
        color: #fff;
}

@media (min-width: 768px) {
        #menu .dropdown:hover .dropdown-menu {
                display: block;
        }
}
@media (max-width: 767px) {
        #menu {
                border-radius: 4px;
        }
        #menu div.dropdown-inner > ul.list-unstyled {
                display: block;
        }
        #menu div.dropdown-menu {
                margin-left: 0 !important;
                padding-bottom: 10px;
                background-color: rgba(0, 0, 0, 0.1);
        }
        #menu .dropdown-inner {
                display: block;
        }
        #menu .dropdown-inner a {
                width: 100%;
                color: #fff;
        }
        #menu .dropdown-menu a:hover,
        #menu .dropdown-menu ul li a:hover {
                background: rgba(0, 0, 0, 0.1);
        }
        #menu .see-all {
                margin-top: 0;
                border: none;
                border-radius: 0;
                color: #fff;
        }
}

/* Content Area */
#content {
        min-height: 600px;
}
#product-category #content, #product-product #tab-description, #information-information #content {
        font-size: 13px;
}

/* Sidebar List Group */
.list-group {
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}

.list-group-item,
.list-group a,
.box-category a,
.box-category li a {
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
}

.list-group a {
        border: none !important;
        border-bottom: 1px solid #f0f0f0 !important;
        color: #888888;
        padding: 8px 12px;
        transition: background 0.2s ease, padding-left 0.2s ease;
}

.list-group a.active, .list-group a.active:hover, .list-group a:hover {
        color: #3a1b6e !important;
        background-color: #f0f9ff !important;
        padding-left: 18px !important;
        text-shadow: 0 1px 0 #FFF;
}

/* Product Cards & Thumbnails */
.product-thumb {
        border: 1px solid rgba(0, 0, 0, 0.06) !important;
        border-radius: 10px !important;
        background: #ffffff;
        margin-bottom: 20px;
        overflow: hidden !important;
        transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.product-thumb:hover {
        transform: translateY(-5px);
        box-shadow: 0 14px 28px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.08);
        border-color: rgba(58,27,110, 0.3) !important;
}

.product-thumb .image {
        text-align: center;
}
.product-thumb .image a {
        display: block;
}
.product-thumb .image a:hover {
        opacity: 0.8;
}
.product-thumb .image img {
        margin-left: auto;
        margin-right: auto;
}
.product-grid .product-thumb .image {
        float: none;
}
@media (min-width: 767px) {
        .product-list .product-thumb .image {
                float: left;
                padding: 0 15px;
        }
}
.product-thumb h4 {
        font-weight: bold;
}
.product-thumb .caption {
        padding: 0 20px;
        min-height: 180px;
}
.product-list .product-thumb .caption {
        margin-left: 230px;
}
@media (max-width: 1200px) {
        .product-grid .product-thumb .caption {
                min-height: 210px;
                padding: 0 10px;
        }
}
@media (max-width: 767px) {
        .product-list .product-thumb .caption {
                min-height: 0;
                margin-left: 0;
                padding: 0 10px;
        }
        .product-grid .product-thumb .caption {
                min-height: 0;
        }
}
.product-thumb .rating {
        padding-bottom: 10px;
}
.rating .fa-stack { font-size: 8px; }
.rating .fa-star-o { color: #999; font-size: 15px; }
.rating .fa-star { color: #FC0; font-size: 15px; }
.rating .fa-star + .fa-star-o { color: #E69500; }

h2.price { margin: 0; }
.product-thumb .price { color: #444; }
.product-thumb .price-new { font-weight: 600; }
.product-thumb .price-old { color: #999; text-decoration: line-through; margin-left: 10px; }
.product-thumb .price-tax { color: #999; font-size: 12px; display: block; }

.product-thumb .button-group {
        border-top: 1px solid #f1f1f1 !important;
        background-color: #f8f9fa !important;
        overflow: auto;
}
.product-list .product-thumb .button-group {
        border-left: 1px solid #ddd;
}
@media (max-width: 768px) {
        .product-list .product-thumb .button-group {
                border-left: none;
        }
}
.product-thumb .button-group button {
        width: 60%;
        border: none;
        display: inline-block;
        float: left;
        background-color: transparent !important;
        color: #555 !important;
        line-height: 38px;
        font-weight: bold;
        text-align: center;
        text-transform: uppercase;
        transition: all 0.2s ease;
}
.product-thumb .button-group button + button {
        width: 20%;
        border-left: 1px solid #ddd;
}
.product-thumb .button-group button:hover {
        color: #fff !important;
        background-color: #3a1b6e !important;
        text-decoration: none;
        cursor: pointer;
}
@media (max-width: 1200px) {
        .product-thumb .button-group button, .product-thumb .button-group button + button {
                width: 33.33%;
        }
}
@media (max-width: 767px) {
        .product-thumb .button-group button, .product-thumb .button-group button + button {
                width: 33.33%;
        }
}

/* Product Details Page Images */
.thumbnails {
        overflow: auto;
        clear: both;
        list-style: none;
        padding: 0;
        margin: 0 0 20px -20px;
}
.thumbnails > li {
        margin-left: 20px;
}
.thumbnails > img {
        width: 100%;
}
.thumbnails li:first-child a, 
.product-image,
.thumbnails > img {
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
}
.thumbnails li:first-child img,
.product-image img {
        border-radius: 12px !important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
        transition: all 0.3s ease !important;
}
.thumbnails li:first-child img:hover {
        box-shadow: 0 8px 25px rgba(58,27,110, 0.2) !important;
}
.image-additional {
        max-width: 78px;
        margin-left: -6px;
        margin-right: -6px;
}
.image-additional li {
        padding: 6px;
}
.image-additional a {
        margin-bottom: 20px;
        padding: 5px;
        display: block;
}
.image-additional img {
        border: 1px solid #e2e8f0 !important;
        border-radius: 8px !important;
        transition: all 0.3s ease !important;
}
.image-additional img:hover {
        border-color: #3a1b6e !important;
        box-shadow: 0 2px 8px rgba(58,27,110, 0.2);
}
.thumbnails .image-additional {
        float: left;
        margin-left: 20px;
}

/* Add to Cart Button & Quantity Inputs */
#button-cart, 
button#button-cart,
input#button-cart {
        background: #3a1b6e !important;
        background-image: none !important;
        background-color: #3a1b6e !important;
        border: none !important;
        border-radius: 8px !important;
        color: #ffffff !important;
        font-weight: 600 !important;
        letter-spacing: 0.5px !important;
        padding: 12px 20px !important;
        box-shadow: 0 4px 12px rgba(58,27,110, 0.3) !important;
        transition: all 0.25s ease-in-out !important;
}

#button-cart:hover, 
button#button-cart:hover,
input#button-cart:hover {
        background-color: #2b1453 !important;
        background-image: none !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 16px rgba(58,27,110, 0.4) !important;
}

input[name="quantity"] {
        border-radius: 8px !important;
        border: 1px solid #cbd5e1 !important;
        padding: 8px 12px !important;
        box-shadow: inset 0 1px 2px rgba(0,0,0,0.02);
        transition: all 0.2s ease;
}

input[name="quantity"]:focus {
        border-color: #3a1b6e !important;
        box-shadow: 0 0 0 3px rgba(58,27,110, 0.15) !important;
        outline: none !important;
}

.input-group .form-control[name^=quantity] {
        min-width: 50px;
}

/* Buttons General */
.buttons { margin: 1em 0; }
.btn {
        padding: 7.5px 12px;
        font-size: 12px;
        border: 1px solid #cccccc;
        border-radius: 4px;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
}
.btn-xs { font-size: 9px; }
.btn-sm { font-size: 10.2px; }
.btn-lg { padding: 10px 16px; font-size: 15px; }

.btn-group > .btn, .btn-group > .dropdown-menu, .btn-group > .popover { font-size: 12px; }
.btn-group > .btn-xs { font-size: 9px; }
.btn-group > .btn-sm { font-size: 10.2px; }
.btn-group > .btn-lg { font-size: 15px; }

.btn-group .btn-default, 
.product-page .btn-default {
        border-radius: 8px !important;
        border-color: #cbd5e1 !important;
        background-color: #f8fafc !important;
        transition: all 0.2s ease !important;
}

.btn-group .btn-default:hover {
        background-color: #e2e8f0 !important;
        color: #3a1b6e !important;
        border-color: #94a3b8 !important;
}

.btn-default {
        color: #777;
        text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
        background-color: #e7e7e7;
        background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
        background-repeat: repeat-x;
        border-color: #dddddd #dddddd #b3b3b3 #b7b7b7;
}
.btn-primary {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #3a1b6e;
        background-image: linear-gradient(to bottom, #3a1b6e, #2b1453);
        background-repeat: repeat-x;
        border-color: #2b1453 #2b1453 #145e7a;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
        background-color: #2b1453;
        background-position: 0 -15px;
}
.btn-warning {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #faa732;
        background-image: linear-gradient(to bottom, #fbb450, #f89406);
        background-repeat: repeat-x;
        border-color: #f89406 #f89406 #ad6704;
}
.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
        box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-danger {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #da4f49;
        background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
        background-repeat: repeat-x;
        border-color: #bd362f #bd362f #802420;
}
.btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] {
        box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-success {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #5bb75b;
        background-image: linear-gradient(to bottom, #62c462, #51a351);
        background-repeat: repeat-x;
        border-color: #51a351 #51a351 #387038;
}
.btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] {
        box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-info {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #df5c39;
        background-image: linear-gradient(to bottom, #e06342, #dc512c);
        background-repeat: repeat-x;
        border-color: #dc512c #dc512c #a2371a;
}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
        background-image: none;
        background-color: #df5c39;
}
.btn-link {
        border-color: rgba(0, 0, 0, 0);
        cursor: pointer;
        color: #3a1b6e;
        border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link[disabled] {
        background-color: rgba(0, 0, 0, 0);
        background-image: none;
        box-shadow: none;
}
.btn-inverse {
        color: #ffffff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color: #363636;
        background-image: linear-gradient(to bottom, #444444, #222222);
        background-repeat: repeat-x;
        border-color: #222222 #222222 #000000;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
        background-color: #222222;
        background-image: linear-gradient(to bottom, #333333, #111111);
}

/* Carousel */
.carousel-caption {
        color: #FFFFFF;
        text-shadow: 0 1px 0 #000000;
}
.carousel-control .icon-prev:before { content: '\f053'; font-family: FontAwesome; }
.carousel-control .icon-next:before { content: '\f054'; font-family: FontAwesome; }

/* Grid Responsive Clearfix */
@media (min-width: 1200px) {
        #content .col-lg-2:nth-child(6n+1),
        #content .col-lg-3:nth-child(4n+1),
        #content .col-lg-4:nth-child(3n+1),
        #content .col-lg-6:nth-child(2n+1) { clear:left; }
}
@media (min-width: 992px) and (max-width: 1199px) {
        #content .col-md-2:nth-child(6n+1),
        #content .col-md-3:nth-child(4n+1),
        #content .col-md-4:nth-child(3n+1),
        #content .col-md-6:nth-child(2n+1) { clear:left; }
}
@media (min-width: 768px) and (max-width: 991px) {
        #content .col-sm-2:nth-child(6n+1),
        #content .col-sm-3:nth-child(4n+1),
        #content .col-sm-4:nth-child(3n+1),
        #content .col-sm-6:nth-child(2n+1) { clear:left; }
}

/* Fixed column left + content + right */
@media (min-width: 768px) {
    #column-left .product-layout .col-md-3 { width: 100%; }
        #column-left + #content .product-layout .col-md-3 { width: 50%; }
        #column-left + #content + #column-right .product-layout .col-md-3 { width: 100%; }
    #content + #column-right .product-layout .col-md-3 { width: 100%; }
}

#column-left .product-layout, #column-right .product-layout {
        width: 100%;
}

/* Alert */
.alert { padding: 8px 14px; }
.alert > .close { position: relative; top: -2px; right: 0px; color: inherit; }

/* Breadcrumb */
.breadcrumb {
        margin: 0 0 20px 0;
        padding: 8px 0;
        border: 1px solid #ddd;
}
.breadcrumb i { font-size: 15px; }
.breadcrumb > li {
        text-shadow: 0 1px 0 #FFF;
        padding: 0 20px;
        position: relative;
        white-space: nowrap;
}
.breadcrumb > li + li:before { content: ''; padding: 0; }
.breadcrumb > li:after {
        content: '';
        display: block;
        position: absolute;
        top: -3px;
        right: -5px;
        width: 26px;
        height: 26px;
        border-right: 1px solid #DDD;
        border-bottom: 1px solid #DDD;
        transform: rotate(-45deg);
}

.pagination { margin: 0; }

/* Footer */
footer {
        background-color: #1a252f !important;
        color: #b0c4de !important;
        border-top: 4px solid #3a1b6e !important;
        margin-top: 40px !important;
        padding-top: 30px !important;
}
footer hr {
        border-color: rgba(255, 255, 255, 0.1) !important;
}
footer a {
        color: #ccc;
}
footer a:hover {
        color: #fff;
}
footer h5 {
        color: #ffffff !important;
        font-family: 'Open Sans', sans-serif;
        font-size: 13px;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        border-bottom: 2px solid rgba(58,27,110, 0.4) !important;
        padding-bottom: 8px !important;
        margin-bottom: 15px !important;
}
footer ul.list-unstyled li a {
        color: #94a3b8 !important;
        transition: all 0.2s ease-in-out !important;
        display: inline-block !important;
        padding: 3px 0 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
}
footer ul.list-unstyled li a:hover {
        color: #3a1b6e !important;
        transform: translateX(5px) !important;
        text-decoration: none !important;
}
footer p {
        color: #64748b !important;
        font-size: 13px !important;
        text-transform: uppercase !important;
}

/* RTL Support */
html[dir=rtl] .breadcrumb > li::after {
 top: -3px;
 left: -5px;
 width: 26px;
 height: 26px;
 border-left: 1px solid #DDD;
 border-top: 1px solid #DDD;
 right: unset;
 border-right: unset;
 border-bottom: unset;
}
html[dir=rtl] .checkbox input[type="checkbox"],
html[dir=rtl] .checkbox-inline input[type="checkbox"],
html[dir=rtl] .radio input[type="radio"],
html[dir=rtl] .radio-inline input[type="radio"] {
    position: absolute;
    margin-top: 4px;
    margin-right: -20px;
    margin-left: unset;
}
html[dir=rtl] .input-group-btn:last-child > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
html[dir=rtl] .input-group .form-control:first-child {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top-left-radius: unset;
    border-bottom-left-radius: unset;
}
html[dir=rtl] .container .row:first-child .col-sm-4, 
html[dir=rtl] .container .row:first-child .col-sm-5 {
  float: right;
}
html[dir=rtl] #cart .dropdown-menu {
  left: 0;
  right: auto;
}
@media (min-width: 768px) {
    html[dir=rtl] .navbar-nav {
        float: right;
        margin: 0;
    }
    html[dir=rtl] .navbar-nav > li {
        float: right;
    }
}

/* --- ГОРНА ЛЕНТА (TOP BAR) С ГЛАВНИ БУКВИ И МОДЕРЕН ВИД --- */
#top-links, 
#top ul.dropdown-menu, 
.list-inline > li > a,
#top-links a,
.currency-select,
.language-select {
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-size: 12px !important;
}

#top-links a {
    transition: color 0.2s ease-in-out !important;
}

#top-links a:hover {
    color: #3a1b6e !important;
    text-decoration: none !important;
}

#cart > button {
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-weight: 600 !important;
}

/* --- ПЕРФЕКТНИ ПОДРАВНЯВАНИЯ ЗА ПАДАЩОТО МЕНЮ И БУТОНА „ПОКАЖИ ВСИЧКИ“ --- */
#menu .custom-menu ul.list-unstyled li a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    white-space: nowrap !important;
}

/* --- ПРИНУДИТЕЛНО ПРЕВРЪЩАНЕ НА "ПОКАЖИ ВСИЧКИ" В БУТОН КАТО "КУПИ" --- */
#menu .dropdown-menu a.see-all,
#menu .custom-menu a.see-all,
#menu .dropdown-inner ul.list-unstyled li a.see-all,
#menu .dropdown-inner .list-unstyled li:last-child a[href*="path="] {
    display: block !important;
    background: #3a1b6e !important;
    background-image: none !important;
    background-color: #3a1b6e !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    padding: 12px 20px !important;
    margin: 15px 12px 10px 12px !important;
    box-shadow: 0 4px 12px rgba(58,27,110, 0.3) !important;
    transition: all 0.25s ease-in-out !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    float: none !important;
    clear: both !important;
}

#menu .dropdown-menu a.see-all:hover,
#menu .custom-menu a.see-all:hover,
#menu .dropdown-inner ul.list-unstyled li a.see-all:hover,
#menu .dropdown-inner .list-unstyled li:last-child a[href*="path="]:hover {
    background: #2b1453 !important;
    background-image: none !important;
    background-color: #2b1453 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(58,27,110, 0.4) !important;
}

/* =========================================================
   MOBILE CATEGORY MENU
   Нива 1 / 2 / 3 / 4 се отварят вертикално в една рамка.
   Desktop менюто НЕ се променя.
   ========================================================= */
@media (max-width: 767px) {

    /* НИВО 1 - главни категории */
    #menu .navbar-nav {
        margin: 0 !important;
        width: 100% !important;
    }

    #menu .nav > li {
        float: none !important;
        width: 100% !important;
        position: relative !important;
    }

    #menu .nav > li > a {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* НИВО 2 - основното падащо меню */
    #menu .custom-dropdown > .custom-menu {
        display: none !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #f7f9fb !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        transform: none !important;
        transition: none !important;
        overflow: visible !important;
        float: none !important;
    }

    #menu .custom-dropdown.open > .custom-menu {
        display: block !important;
        padding: 6px 0 !important;
    }

    #menu .custom-menu > .dropdown-inner {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #menu .custom-menu > .dropdown-inner > ul.list-unstyled {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #menu .custom-menu ul.list-unstyled {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    #menu .custom-menu ul.list-unstyled > li {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        float: none !important;
        clear: both !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Всички подменюта - НИКОГА настрани на мобилен */
    #menu .dropdown-submenu > .sub-dropdown-menu {
        display: none !important;
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
        float: none !important;
        clear: both !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    #menu .dropdown-submenu.open > .sub-dropdown-menu {
        display: block !important;
    }

    /* Вложените UL също остават в същата рамка */
    #menu .sub-dropdown-menu > ul.list-unstyled {
        display: block !important;
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    /* Общ вид на линковете */
    #menu .custom-menu ul.list-unstyled > li > a:not(.see-all) {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        color: #273444 !important;
        font-weight: 500 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.35px !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    /* НИВО 2 */
    #menu .custom-menu > .dropdown-inner > ul.list-unstyled > li > a:not(.see-all) {
        padding: 12px 18px !important;
        background: #f7f9fb !important;
        border-bottom: 1px solid #dde3e8 !important;
        font-size: 13px !important;
        line-height: 18px !important;
    }

    /* НИВО 3 */
    #menu .custom-menu > .dropdown-inner > ul.list-unstyled > li >
    .sub-dropdown-menu > ul.list-unstyled > li > a:not(.see-all) {
        padding: 11px 18px 11px 30px !important;
        background: #eaf0f5 !important;
        border-bottom: 1px solid #d3dde5 !important;
        font-size: 12.5px !important;
        line-height: 18px !important;
    }

    #menu .custom-menu > .dropdown-inner > ul.list-unstyled > li >
    .sub-dropdown-menu {
        background: #eaf0f5 !important;
    }

    /* НИВО 4 */
    #menu .custom-menu > .dropdown-inner > ul.list-unstyled > li >
    .sub-dropdown-menu > ul.list-unstyled > li >
    .sub-dropdown-menu > ul.list-unstyled > li > a:not(.see-all) {
        padding: 10px 18px 10px 42px !important;
        background: #dce6ee !important;
        border-bottom: 1px solid #c7d4de !important;
        font-size: 12px !important;
        line-height: 18px !important;
    }

    #menu .custom-menu > .dropdown-inner > ul.list-unstyled > li >
    .sub-dropdown-menu > ul.list-unstyled > li >
    .sub-dropdown-menu {
        background: #dce6ee !important;
    }

    /* НИВО 5+ ако някога има - пак остава вертикално */
    #menu .sub-dropdown-menu .sub-dropdown-menu .sub-dropdown-menu {
        background: #d2dee7 !important;
    }

    #menu .sub-dropdown-menu .sub-dropdown-menu .sub-dropdown-menu
    ul.list-unstyled > li > a:not(.see-all) {
        padding-left: 52px !important;
        background: #d2dee7 !important;
    }

    /* Hover/focus без хоризонтално местене */
    #menu .custom-menu ul.list-unstyled > li > a:not(.see-all):hover,
    #menu .custom-menu ul.list-unstyled > li > a:not(.see-all):focus {
        color: #117b7d !important;
        filter: brightness(0.97);
        padding-right: 18px !important;
    }

    /* Стрелката остава вдясно */
    #menu .dropdown-submenu > a .sub-arrow {
        flex: 0 0 auto !important;
        margin-left: 10px !important;
    }

    /* "ПОКАЖИ ВСИЧКИ" - валидно за ниво 2, 3, 4 и по-дълбоко */
    #menu .custom-menu a.see-all,
    #menu .dropdown-menu a.see-all,
    #menu .dropdown-inner ul.list-unstyled li a.see-all {
        display: block !important;
        position: static !important;
        float: none !important;
        clear: both !important;
        width: calc(100% - 20px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 20px) !important;
        height: auto !important;
        margin: 10px !important;
        padding: 10px 12px !important;
        background: #3a1b6e !important;
        background-image: none !important;
        color: #ffffff !important;
        border: none !important;
        border-radius: 8px !important;
        box-shadow: 0 2px 7px rgba(58,27,110, 0.22) !important;
        text-align: center !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        line-height: 17px !important;
        text-transform: uppercase !important;
        letter-spacing: 0.25px !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    #menu .custom-menu a.see-all:hover,
    #menu .custom-menu a.see-all:focus {
        background: #2b1453 !important;
        color: #ffffff !important;
        transform: none !important;
    }

    /* Touch браузърът не трябва да отваря submenu чрез desktop :hover */
    #menu .dropdown-submenu:hover > .sub-dropdown-menu {
        display: none !important;
    }

    #menu .dropdown-submenu.open:hover > .sub-dropdown-menu,
    #menu .dropdown-submenu.open > .sub-dropdown-menu {
        display: block !important;
    }

    body {
        overflow-x: hidden !important;
    }
}

/* === MOBILE CATEGORY TREE V4 START === */

@media (max-width: 767px) {

    /* =====================================================
       FULLSCREEN / LOCKED MOBILE MENU
       ===================================================== */

    body.mobile-category-menu-active {
        overflow: hidden !important;
        height: 100vh !important;
    }

    body.mobile-category-menu-active #menu {
        position: fixed !important;
        inset: 0 !important;
        z-index: 100000 !important;

        width: 100% !important;
        height: 100vh !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #3a1b6e !important;

        border: 0 !important;
        border-radius: 0 !important;

        overflow: hidden !important;
    }

    /* Горна синя лента */
    body.mobile-category-menu-active #menu .navbar-header {
        position: relative !important;

        display: block !important;
        float: none !important;

        width: 100% !important;
        min-height: 50px !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #3a1b6e !important;

        border: 0 !important;

        z-index: 10 !important;
    }

    body.mobile-category-menu-active #menu #category {
        display: block !important;

        padding: 15px 15px !important;

        color: #ffffff !important;

        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 20px !important;

        text-transform: uppercase !important;
    }

    body.mobile-category-menu-active #menu .navbar-toggle {
        position: absolute !important;

        top: 7px !important;
        right: 10px !important;

        margin: 0 !important;
    }

    /*
     * Само тази област се скролва.
     */
    body.mobile-category-menu-active #menu .navbar-ex1-collapse {
        position: absolute !important;

        top: 50px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;

        display: block !important;
        visibility: visible !important;

        width: 100% !important;
        height: auto !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 0 30px 0 !important;

        background: #ffffff !important;

        border: 0 !important;

        overflow-x: hidden !important;
        overflow-y: auto !important;

        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
    }


    /* =====================================================
       НОРМАЛЕН VERTICAL DOCUMENT FLOW
       ===================================================== */

    #menu .navbar-nav,
    #menu .custom-menu,
    #menu .dropdown-inner,
    #menu .custom-menu ul.list-unstyled,
    #menu .sub-dropdown-menu,
    #menu .sub-dropdown-menu > ul.list-unstyled {

        float: none !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;
    }

    #menu .navbar-nav {
        padding: 0 !important;
    }

    /*
     * Това е важно:
     * всички LI са истински блокове и резервират височината си.
     */
    #menu .navbar-nav li,
    #menu .custom-menu ul.list-unstyled > li,
    #menu .sub-dropdown-menu ul.list-unstyled > li {

        position: relative !important;

        display: block !important;
        float: none !important;
        clear: both !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }


    /* =====================================================
       НИВО 1
       ===================================================== */

    #menu .navbar-ex1-collapse > .navbar-nav > li > a,
    #menu .navbar-ex1-collapse > ul.nav > li > a {

        position: relative !important;

        display: block !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 13px 16px !important;

        box-sizing: border-box !important;

        background: #ffffff !important;

        color: #333333 !important;

        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 20px !important;

        text-transform: uppercase !important;
        white-space: normal !important;

        border: 0 !important;
        border-bottom: 1px solid #e1e5e8 !important;

        box-shadow: none !important;
    }


    /* =====================================================
       ОСНОВНО CUSTOM MENU
       ===================================================== */

    #menu .custom-dropdown > .custom-menu {

        position: static !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;

        display: none !important;

        float: none !important;

        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #f6f8fa !important;

        border: 0 !important;
        border-radius: 0 !important;

        box-shadow: none !important;

        transform: none !important;
        transition: none !important;

        overflow: visible !important;
    }

    #menu .custom-dropdown.open > .custom-menu {
        display: block !important;
    }

    #menu .custom-menu > .dropdown-inner {
        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;
    }

    #menu .custom-menu > .dropdown-inner > ul.list-unstyled {
        display: block !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* =====================================================
       ВСИЧКИ SUB-DROPDOWN НИВА
       Критично: override на desktop flyout правилата.
       ===================================================== */

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu > .sub-dropdown-menu,
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu .sub-dropdown-menu {

        position: static !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        display: none !important;
        float: none !important;
        clear: both !important;

        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        border-radius: 0 !important;

        box-shadow: none !important;

        transform: none !important;
        transition: none !important;

        overflow: visible !important;

        box-sizing: border-box !important;
    }

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open > .sub-dropdown-menu {
        display: block !important;

        visibility: visible !important;
        opacity: 1 !important;

        transform: none !important;
    }

    /*
     * Desktop :hover НЕ трябва да отваря flyout на телефон.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu:hover > .sub-dropdown-menu {
        display: none !important;
    }

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open:hover > .sub-dropdown-menu {
        display: block !important;
    }


    /*
     * Twig macro-то създава:
     *
     * .sub-dropdown-menu
     *     > ul.list-unstyled
     *         > li
     *
     * Затова този UL задължително трябва да е block/static.
     */
    #menu .custom-menu .sub-dropdown-menu > ul.list-unstyled {

        position: static !important;

        display: block !important;
        float: none !important;
        clear: both !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;

        box-sizing: border-box !important;
    }


    /* =====================================================
       ОБЩ СТИЛ НА CATEGORY LINKS
       ===================================================== */

    #menu .custom-menu ul.list-unstyled li > a:not(.see-all) {

        position: relative !important;

        display: flex !important;

        align-items: center !important;
        justify-content: space-between !important;

        float: none !important;
        clear: both !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 42px !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        color: #2f3b45 !important;

        font-weight: 500 !important;

        text-transform: uppercase !important;

        letter-spacing: .2px !important;

        white-space: normal !important;

        overflow-wrap: anywhere !important;
        word-break: normal !important;

        text-decoration: none !important;

        border-radius: 0 !important;

        box-shadow: none !important;

        transform: none !important;
    }


    /* =====================================================
       НИВО 2
       ===================================================== */

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        padding: 12px 18px !important;

        background: #f7f9fb !important;

        color: #273444 !important;

        font-size: 13px !important;
        line-height: 18px !important;

        border: 0 !important;
        border-bottom: 1px solid #dce3e8 !important;
    }


    /* =====================================================
       НИВО 3

       Реална структура:
       level2 LI
       > .sub-dropdown-menu
       > ul
       > level3 LI
       > a
       ===================================================== */

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        padding: 11px 18px 11px 32px !important;

        background: #edf2f6 !important;

        color: #344550 !important;

        font-size: 12.5px !important;
        line-height: 18px !important;

        border: 0 !important;
        border-bottom: 1px solid #d5dfe6 !important;
    }


    /* =====================================================
       НИВО 4
       ===================================================== */

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        padding: 10px 18px 10px 46px !important;

        background: #e2eaf0 !important;

        color: #3d4d58 !important;

        font-size: 12px !important;
        line-height: 18px !important;

        border: 0 !important;
        border-bottom: 1px solid #ccd8e0 !important;
    }


    /* =====================================================
       НИВО 5+
       ===================================================== */

    #menu .sub-dropdown-menu
    .sub-dropdown-menu
    .sub-dropdown-menu
    ul.list-unstyled > li > a:not(.see-all) {

        padding-left: 58px !important;

        background: #d8e3ea !important;
    }


    /* =====================================================
       СТРЕЛКИ
       ===================================================== */

    #menu .dropdown-submenu > a > .sub-arrow {

        display: inline-block !important;
        flex: 0 0 auto !important;

        float: none !important;

        margin: 0 0 0 10px !important;

        color: #607784 !important;

        font-size: 18px !important;
        line-height: 18px !important;

        transform: rotate(90deg) !important;
        transition: transform .15s ease !important;
    }

    #menu .dropdown-submenu.open > a > .sub-arrow {
        transform: rotate(-90deg) !important;
    }


    /* =====================================================
       ПОКАЖИ ВСИЧКИ
       ===================================================== */

    #menu .custom-menu a.see-all,
    #menu .custom-menu ul.list-unstyled li a.see-all,
    #menu .custom-menu .sub-dropdown-menu a.see-all {

        position: static !important;

        display: block !important;

        float: none !important;
        clear: both !important;

        width: calc(100% - 20px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 20px) !important;

        height: auto !important;
        min-height: 38px !important;

        margin: 8px 10px !important;
        padding: 10px 12px !important;

        box-sizing: border-box !important;

        background: #3a1b6e !important;
        background-image: none !important;

        color: #ffffff !important;

        font-size: 12px !important;
        font-weight: 600 !important;
        line-height: 17px !important;

        letter-spacing: .2px !important;

        text-align: center !important;
        text-transform: uppercase !important;

        white-space: normal !important;

        overflow: hidden !important;
        overflow-wrap: anywhere !important;

        word-break: normal !important;

        border: 0 !important;
        border-radius: 6px !important;

        box-shadow: 0 2px 5px rgba(0,0,0,.10) !important;

        transform: none !important;
    }

    #menu .custom-menu a.see-all:hover,
    #menu .custom-menu a.see-all:focus {

        background: #2b1453 !important;

        color: #ffffff !important;

        text-decoration: none !important;

        transform: none !important;
    }


    /* =====================================================
       OPEN CATEGORY VISUAL STATE
       ===================================================== */

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    a:not(.see-all) {

        font-weight: 600 !important;

        color: #117b7d !important;
    }


    /* =====================================================
       НИКАКЪВ HORIZONTAL OVERFLOW
       ===================================================== */

    #menu,
    #menu *,
    #menu *::before,
    #menu *::after {
        box-sizing: border-box !important;
    }

    #menu .navbar-ex1-collapse,
    #menu .custom-menu,
    #menu .dropdown-inner,
    #menu .custom-menu ul,
    #menu .sub-dropdown-menu {

        max-width: 100% !important;

        overflow-x: hidden !important;
    }
}

/* === MOBILE CATEGORY TREE V4 END === */

/* === MOBILE CATEGORY CLICK/HITBOX FIX V1 START === */
@media (max-width: 767px) {

    /*
     * Всеки LI трябва да образува собствен нормален блок.
     * isolation пречи на вложени desktop слоеве да застъпват
     * следващите главни категории.
     */
    #menu .navbar-nav > li,
    #menu .custom-menu ul.list-unstyled > li {
        position: relative !important;
        float: none !important;
        clear: both !important;
        height: auto !important;
        min-height: 0 !important;
    }

    /*
     * Затворено submenu:
     * не само невидимо, а и абсолютно некликаемо.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu >
    .sub-dropdown-menu {

        display: none !important;
        pointer-events: none !important;

        position: static !important;

        width: 100% !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: hidden !important;

        opacity: 0 !important;
        visibility: hidden !important;

        z-index: auto !important;
    }

    /*
     * Отворено submenu:
     * връщаме го изцяло в normal flow.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu {

        display: block !important;
        pointer-events: auto !important;

        position: static !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;

        opacity: 1 !important;
        visibility: visible !important;

        z-index: auto !important;
    }

    /*
     * Вътрешният UL също няма собствен плаващ слой.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu >
    ul.list-unstyled {

        position: static !important;

        display: block !important;
        float: none !important;
        clear: both !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        pointer-events: auto !important;

        z-index: auto !important;
    }

    /*
     * Линковете получават hitbox само върху
     * реалната си визуална площ.
     */
    #menu .navbar-nav li > a {
        position: relative !important;
        display: block !important;

        width: 100% !important;
        height: auto !important;

        z-index: 1 !important;
        pointer-events: auto !important;

        box-sizing: border-box !important;
    }

    /*
     * При линковете с arrow запазваме flex layout-а.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu > a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    /*
     * Убиваме остатъчните desktop hover hitboxes.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu:not(.open):hover >
    .sub-dropdown-menu {

        display: none !important;
        pointer-events: none !important;

        height: 0 !important;
        max-height: 0 !important;

        opacity: 0 !important;
        visibility: hidden !important;
    }

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open:hover >
    .sub-dropdown-menu {

        display: block !important;
        pointer-events: auto !important;

        height: auto !important;
        max-height: none !important;

        opacity: 1 !important;
        visibility: visible !important;
    }
}
/* === MOBILE CATEGORY CLICK/HITBOX FIX V1 END === */


/* === MOBILE CATEGORY FLOW FIX V2 START === */
@media (max-width: 767px) {

    /*
     * ВАЖНО:
     * Цялата верига на отвореното меню трябва да расте
     * според реалното съдържание.
     */
    #menu .custom-dropdown.open,
    #menu .custom-dropdown.open > .custom-menu,
    #menu .custom-dropdown.open > .custom-menu > .dropdown-inner,

    #menu .custom-dropdown.open > .custom-menu ul.list-unstyled,

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open,

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu,

    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu >
    ul.list-unstyled {

        position: relative !important;

        float: none !important;
        clear: both !important;

        width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        overflow: visible !important;

        transform: none !important;

        box-sizing: border-box !important;
    }


    /*
     * Dropdown контейнерите НЕ трябва да са relative,
     * ако desktop CSS използва координати спрямо тях.
     *
     * Самите submenu-та остават STATIC.
     */
    #menu .custom-dropdown.open > .custom-menu,
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu {

        position: static !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        display: block !important;

        height: auto !important;
        max-height: none !important;

        overflow: visible !important;

        opacity: 1 !important;
        visibility: visible !important;

        pointer-events: auto !important;

        z-index: auto !important;
    }


    /*
     * Всеки отворен LI трябва физически да съдържа
     * цялото си отворено подменю.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open {

        display: block !important;

        height: auto !important;
        max-height: none !important;

        overflow: visible !important;

        padding-bottom: 0 !important;
    }


    /*
     * Вътрешният UL е нормален block.
     * Никакво absolute/floating позициониране.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu >
    ul.list-unstyled {

        position: static !important;

        display: block !important;

        float: none !important;
        clear: both !important;

        height: auto !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;

        opacity: 1 !important;
        visibility: visible !important;

        pointer-events: auto !important;
    }


    /*
     * И самите деца са нормални блокове.
     */
    #menu .custom-menu
    .sub-dropdown-menu >
    ul.list-unstyled >
    li {

        position: relative !important;

        display: block !important;

        float: none !important;
        clear: both !important;

        width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;

        box-sizing: border-box !important;
    }


    /*
     * КРИТИЧНО:
     * Не позволяваме на вложените UL да наследят
     * desktop column/flyout поведение.
     */
    #menu .custom-menu .sub-dropdown-menu ul.list-unstyled {

        position: static !important;

        display: block !important;

        float: none !important;
        clear: both !important;

        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        overflow: visible !important;

        column-count: auto !important;
        columns: auto !important;

        transform: none !important;
    }


    /*
     * Само реално затворените submenu-та са невидими
     * и нямат hitbox.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu:not(.open) >
    .sub-dropdown-menu {

        display: none !important;

        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;

        overflow: hidden !important;

        opacity: 0 !important;
        visibility: hidden !important;

        pointer-events: none !important;
    }


    /*
     * Но ако родителят е OPEN, неговото директно
     * submenu винаги е напълно активно.
     */
    #menu .custom-menu ul.list-unstyled li.dropdown-submenu.open >
    .sub-dropdown-menu {

        display: block !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        overflow: visible !important;

        opacity: 1 !important;
        visibility: visible !important;

        pointer-events: auto !important;
    }


    /*
     * Главните категории след отвореното меню трябва
     * да стоят СЛЕД реалната му височина.
     */
    #menu .navbar-nav > li {

        position: relative !important;

        display: block !important;

        float: none !important;
        clear: both !important;

        width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        overflow: visible !important;

        z-index: auto !important;
    }


    /*
     * Линковете не трябва да имат изнесен hitbox.
     */
    #menu .navbar-nav > li > a,
    #menu .custom-menu ul.list-unstyled li > a {

        position: relative !important;

        height: auto !important;

        pointer-events: auto !important;

        z-index: 1 !important;
    }

}
/* === MOBILE CATEGORY FLOW FIX V2 END === */


/* === MOBILE CATEGORY VISUAL V1 START === */
@media (max-width: 767px) {

    /* -----------------------------------------------------
       FULLSCREEN MENU
       ----------------------------------------------------- */

    body.mobile-category-menu-active #menu {
        background: #f3f6f8 !important;
    }

    /*
     * По-красив header.
     */
    body.mobile-category-menu-active #menu .navbar-header {
        min-height: 54px !important;

        background: linear-gradient(
            135deg,
            #3a1b6e 0%,
            #188bb6 100%
        ) !important;

        box-shadow: 0 2px 8px rgba(0,0,0,.14) !important;
    }

    body.mobile-category-menu-active #menu #category {
        padding: 17px 58px 17px 17px !important;

        color: #ffffff !important;

        font-size: 15px !important;
        font-weight: 600 !important;
        line-height: 20px !important;

        letter-spacing: .45px !important;

        text-shadow: 0 1px 1px rgba(0,0,0,.10) !important;
    }


    /* Hamburger */
    body.mobile-category-menu-active #menu .navbar-toggle {
        top: 9px !important;
        right: 11px !important;

        min-width: 38px !important;
        min-height: 36px !important;

        margin: 0 !important;
        padding: 7px 10px !important;

        background: rgba(255,255,255,.13) !important;

        border: 1px solid rgba(255,255,255,.30) !important;
        border-radius: 7px !important;

        box-shadow: none !important;
    }


    /* -----------------------------------------------------
       SCROLL AREA + SAFE BOTTOM
       ----------------------------------------------------- */

    body.mobile-category-menu-active #menu .navbar-ex1-collapse {

        top: 54px !important;

        /*
         * Не позволяваме последната категория да попадне
         * под долната browser/system лента.
         */
        padding-top: 8px !important;

        padding-bottom: max(
            38px,
            calc(env(safe-area-inset-bottom) + 24px)
        ) !important;

        background: #f3f6f8 !important;

        scroll-padding-bottom: 70px !important;
    }


    /* -----------------------------------------------------
       ГЛАВНИ КАТЕГОРИИ
       ----------------------------------------------------- */

    #menu .navbar-ex1-collapse > .navbar-nav {
        padding: 0 8px !important;
    }

    #menu .navbar-ex1-collapse > .navbar-nav > li {
        margin: 0 0 5px 0 !important;

        background: #ffffff !important;

        border: 1px solid #e2e8ec !important;
        border-radius: 7px !important;

        box-shadow: 0 1px 3px rgba(0,0,0,.045) !important;

        overflow: visible !important;
    }

    #menu .navbar-ex1-collapse > .navbar-nav > li > a {

        padding: 13px 14px !important;

        background: transparent !important;

        color: #263640 !important;

        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 19px !important;

        letter-spacing: .25px !important;

        border: 0 !important;
        border-radius: 7px !important;

        text-decoration: none !important;
    }


    /*
     * Отворена главна категория.
     */
    #menu .navbar-ex1-collapse >
    .navbar-nav >
    li.custom-dropdown.open {

        border-color: #b9dce9 !important;

        box-shadow:
            0 2px 7px rgba(58,27,110,.12) !important;
    }

    #menu .navbar-ex1-collapse >
    .navbar-nav >
    li.custom-dropdown.open >
    a {

        background: #edf8fc !important;

        color: #117b7d !important;

        border-radius: 7px 7px 0 0 !important;
    }


    /* -----------------------------------------------------
       НИВО 2
       ----------------------------------------------------- */

    #menu .custom-dropdown.open > .custom-menu {

        background: #f8fafb !important;

        border-top: 1px solid #dce8ed !important;

        border-radius: 0 0 7px 7px !important;

        overflow: visible !important;
    }

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        background: #f8fafb !important;

        color: #30424d !important;

        border-bottom: 1px solid #e2e8ec !important;
    }


    /* -----------------------------------------------------
       НИВО 3
       ----------------------------------------------------- */

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        background: #eef4f7 !important;

        color: #344a56 !important;

        border-bottom: 1px solid #dbe5ea !important;
    }


    /* -----------------------------------------------------
       НИВО 4
       ----------------------------------------------------- */

    #menu .custom-menu >
    .dropdown-inner >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    .sub-dropdown-menu >
    ul.list-unstyled >
    li >
    a:not(.see-all) {

        background: #e4edf2 !important;

        color: #3a505c !important;

        border-bottom: 1px solid #d1dee5 !important;
    }


    /* -----------------------------------------------------
       OPEN SUBCATEGORY
       ----------------------------------------------------- */

    #menu .custom-menu
    ul.list-unstyled
    li.dropdown-submenu.open >
    a:not(.see-all) {

        background-color: #e3f3f9 !important;

        color: #117b7d !important;

        font-weight: 600 !important;

        box-shadow:
            inset 3px 0 0 #3a1b6e !important;
    }


    /* -----------------------------------------------------
       ARROWS
       ----------------------------------------------------- */

    #menu .dropdown-submenu > a > .sub-arrow {
        color: #82949e !important;

        font-size: 17px !important;

        opacity: .9 !important;
    }

    #menu .dropdown-submenu.open > a > .sub-arrow {
        color: #117b7d !important;
    }


    /* -----------------------------------------------------
       ПОКАЖИ ВСИЧКИ
       ----------------------------------------------------- */

    #menu .custom-menu a.see-all,
    #menu .custom-menu ul.list-unstyled li a.see-all {

        width: calc(100% - 20px) !important;

        margin: 9px 10px !important;
        padding: 10px 12px !important;

        background: #3a1b6e !important;

        color: #ffffff !important;

        border-radius: 6px !important;

        box-shadow:
            0 2px 5px rgba(58,27,110,.20) !important;
    }


    /* -----------------------------------------------------
       ПОСЛЕДНАТА ГЛАВНА КАТЕГОРИЯ
       Допълнителен въздух под "ХРАНИ".
       ----------------------------------------------------- */

    #menu .navbar-ex1-collapse >
    .navbar-nav >
    li:last-child {

        margin-bottom: max(
            32px,
            calc(env(safe-area-inset-bottom) + 20px)
        ) !important;
    }

}
/* === MOBILE CATEGORY VISUAL V1 END === */


/* === MOBILE CATEGORY BOTTOM SPACE V1 START === */
@media (max-width: 767px) {

    /*
     * Допълнителен scroll-space за Samsung Internet
     * и други Android браузъри с долен browser toolbar.
     */
    body.mobile-category-menu-active #menu .navbar-ex1-collapse {
        padding-bottom: calc(
            90px + env(safe-area-inset-bottom)
        ) !important;

        scroll-padding-bottom: calc(
            90px + env(safe-area-inset-bottom)
        ) !important;
    }

    /*
     * Последната главна категория винаги може
     * да бъде изскролена над долния browser toolbar.
     */
    body.mobile-category-menu-active
    #menu .navbar-ex1-collapse >
    .navbar-nav >
    li:last-child {

        margin-bottom: calc(
            70px + env(safe-area-inset-bottom)
        ) !important;
    }

}
/* === MOBILE CATEGORY BOTTOM SPACE V1 END === */



/* Aqualine global tactile button effect */
.btn:not(.btn-link),
button.btn:not(.btn-link),
input.btn:not(.btn-link),
a.btn:not(.btn-link) {
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.22);
    transition: transform .12s ease, box-shadow .12s ease, background-color .18s ease, border-color .18s ease;
    position: relative;
}
@media (hover:hover) {
    .btn:not(.btn-link):hover,
    button.btn:not(.btn-link):hover,
    input.btn:not(.btn-link):hover,
    a.btn:not(.btn-link):hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.22);
    }
}
.btn:not(.btn-link):active,
.btn:not(.btn-link).active,
button.btn:not(.btn-link):active,
input.btn:not(.btn-link):active,
a.btn:not(.btn-link):active {
    transform: translateY(2px) scale(.99) !important;
    box-shadow: inset 0 3px 7px rgba(0,0,0,.20), 0 1px 2px rgba(0,0,0,.10) !important;
    transition-duration: .05s !important;
}
.btn:not(.btn-link):focus-visible {
    outline: 2px solid rgba(58,27,110,.35);
    outline-offset: 2px;
}
