:root {
    --ecommerce-ink: #111111;
    --ecommerce-ink-soft: #2d2922;
    --ecommerce-rose: #c59a2f;
    --ecommerce-rose-strong: #9c6f08;
    --ecommerce-rose-soft: #e9d8a6;
    --ecommerce-rose-pale: #f7f1e0;
    --ecommerce-mauve: #d2bd75;
    --ecommerce-mauve-soft: #f4edda;
    --ecommerce-gold: #b88919;
    --ecommerce-gold-soft: #e8d9a8;
    --ecommerce-ivory: #fbfaf5;
    --ecommerce-shell: #f1ead8;
    --ecommerce-linen: #f6f0df;
    --ecommerce-white: #ffffff;
    --ecommerce-border: #eadcae;
    --ecommerce-muted: #746a53;
    --ecommerce-shadow: 0 12px 30px rgba(87, 65, 20, 0.12);
    --app-theme: var(--ecommerce-rose-strong);
    --app-theme-rgb: 184, 134, 11;
    --bs-primary: var(--ecommerce-rose-strong);
    --bs-primary-rgb: 184, 134, 11;
}

body {
    background: linear-gradient(180deg, var(--ecommerce-ivory) 0%, var(--ecommerce-shell) 100%);
    color: var(--ecommerce-ink);
}

a {
    color: var(--ecommerce-rose-strong);
}

a:hover,
a:focus {
    color: var(--ecommerce-gold);
}

.top-nav {
    background: linear-gradient(90deg, #050505 0%, #1b1710 100%);
    border-bottom: 1px solid rgba(201, 154, 31, 0.32);
}

.top-nav a {
    color: rgba(255, 255, 255, 0.78);
}

.top-nav a:hover,
.top-nav a:focus {
    color: var(--ecommerce-gold-soft);
}

.header {
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid var(--ecommerce-border);
    box-shadow: 0 8px 18px rgba(36, 31, 31, 0.06);
}

.header .header-nav .nav > li > a,
.header .header-cart,
.header .dropdown > a {
    color: var(--ecommerce-ink);
}

.header .header-nav .nav > li.active > a,
.header .header-nav .nav > li > a:hover,
.header .header-nav .nav > li > a:focus,
.header .dropdown > a:hover,
.header .dropdown > a:focus {
    color: var(--ecommerce-rose-strong) !important;
}

.header .navbar-toggle .icon-bar {
    background: var(--ecommerce-rose-strong);
}

.header .header-cart .total {
    background: var(--ecommerce-rose);
    color: var(--ecommerce-ink);
    box-shadow: 0 4px 10px rgba(184, 134, 11, 0.24);
}

.section-container {
    background-color: var(--ecommerce-ivory);
}

.section-container.bg-white,
#promotions {
    background-color: var(--ecommerce-white) !important;
}

.section-title {
    border-color: var(--ecommerce-border);
    color: var(--ecommerce-ink);
}

.section-title .btn,
.btn-white {
    background: var(--ecommerce-white) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
}

.section-title .btn:not(.btn-dark):not(.btn-primary):not(.btn-success),
.home-interest-section .section-title .btn,
#promotions .section-title .btn {
    background: linear-gradient(180deg, #f7f1e0 0%, #e9dba9 100%) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.section-title .btn:not(.btn-dark):not(.btn-primary):not(.btn-success):hover,
.section-title .btn:not(.btn-dark):not(.btn-primary):not(.btn-success):focus,
.section-title .btn:not(.btn-dark):not(.btn-primary):not(.btn-success):active,
.section-title .btn:not(.btn-dark):not(.btn-primary):not(.btn-success).active {
    background: linear-gradient(180deg, #efe3bd 0%, #d9bf74 100%) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.section-title .btn:hover,
.section-title .btn:active,
.section-title .btn.active,
.section-title .btn:first-child:active,
.btn-white:hover,
.btn-white:focus,
.btn-white:active,
.btn-white.active,
.btn-white:first-child:active,
.btn-check:checked + .btn-white {
    background: var(--ecommerce-rose-pale) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.btn-dark,
.btn-theme.btn-dark,
.btn.btn-dark,
.btn-dark:active,
.btn-dark.active,
.btn-dark:not(:disabled):not(.disabled):active,
.btn-dark:first-child:active,
.btn-theme.btn-dark:active,
.btn-theme.btn-dark.active,
.btn.btn-dark:active,
.btn.btn-dark.active,
.btn-check:checked + .btn-dark {
    background: #2a2722 !important;
    border-color: #2a2722 !important;
    color: var(--ecommerce-white) !important;
    box-shadow: none !important;
}

.btn-dark:hover,
.btn-dark:focus,
.btn-theme.btn-dark:hover,
.btn-theme.btn-dark:focus,
.btn.btn-dark:hover,
.btn.btn-dark:focus {
    background: #39352e !important;
    border-color: #39352e !important;
    color: var(--ecommerce-white) !important;
}

.btn-success,
.btn-primary,
.btn-green,
.btn-inverse,
.btn-success:active,
.btn-primary:active,
.btn-green:active,
.btn-inverse:active,
.btn-success.active,
.btn-primary.active,
.btn-green.active,
.btn-inverse.active,
.btn-success:first-child:active,
.btn-primary:first-child:active,
.btn-green:first-child:active,
.btn-inverse:first-child:active,
.btn-success:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-green:not(:disabled):not(.disabled):active,
.btn-inverse:not(:disabled):not(.disabled):active,
.btn-check:checked + .btn-success,
.btn-check:checked + .btn-primary,
.btn-check:checked + .btn-green,
.btn-check:checked + .btn-inverse,
.show > .btn-success.dropdown-toggle,
.show > .btn-primary.dropdown-toggle,
.show > .btn-green.dropdown-toggle,
.show > .btn-inverse.dropdown-toggle {
    background: #2a2722 !important;
    border-color: #2a2722 !important;
    color: var(--ecommerce-white) !important;
    box-shadow: none !important;
}

.btn-success:hover,
.btn-success:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn-green:hover,
.btn-green:focus,
.btn-inverse:hover,
.btn-inverse:focus {
    background: #39352e !important;
    border-color: #39352e !important;
    color: var(--ecommerce-white) !important;
}

.btn-info,
.btn-yellow,
.btn-warning,
.btn-info:active,
.btn-yellow:active,
.btn-warning:active,
.btn-info.active,
.btn-yellow.active,
.btn-warning.active,
.btn-info:first-child:active,
.btn-yellow:first-child:active,
.btn-warning:first-child:active,
.btn-info:not(:disabled):not(.disabled):active,
.btn-yellow:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled):active,
.btn-check:checked + .btn-info,
.btn-check:checked + .btn-yellow,
.btn-check:checked + .btn-warning,
.show > .btn-info.dropdown-toggle,
.show > .btn-yellow.dropdown-toggle,
.show > .btn-warning.dropdown-toggle {
    background: linear-gradient(180deg, #f7f1e0 0%, #e9dba9 100%) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.btn-info:hover,
.btn-info:focus,
.btn-yellow:hover,
.btn-yellow:focus,
.btn-warning:hover,
.btn-warning:focus {
    background: linear-gradient(180deg, #efe3bd 0%, #d9bf74 100%) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
}

.btn-default,
.btn-outline,
.btn-outline-secondary,
.btn-outline-info,
.btn-outline-warning,
.btn-outline-primary {
    background: linear-gradient(180deg, #f7f1e0 0%, #e9dba9 100%) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.btn-default:hover,
.btn-default:active,
.btn-default.active,
.btn-default:first-child:active,
.btn-default:focus,
.btn-outline:hover,
.btn-outline:focus,
.btn-outline:active,
.btn-outline.active,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active,
.btn-outline-secondary.active,
.btn-outline-secondary:first-child:active,
.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:active,
.btn-outline-info.active,
.btn-outline-info:first-child:active,
.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-outline-warning:active,
.btn-outline-warning.active,
.btn-outline-warning:first-child:active,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary:first-child:active,
.btn-outline:first-child:active,
.btn-check:checked + .btn-default,
.btn-check:checked + .btn-outline,
.btn-check:checked + .btn-outline-secondary,
.btn-check:checked + .btn-outline-info,
.btn-check:checked + .btn-outline-warning,
.btn-check:checked + .btn-outline-primary {
    background: linear-gradient(180deg, #efe3bd 0%, #d9bf74 100%) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--ecommerce-rose);
    box-shadow: 0 0 0 0.2rem rgba(184, 134, 11, 0.18);
}

.form-check-input {
    border-color: #bdb0aa;
}

.form-check-input:checked {
    background-color: var(--ecommerce-rose-strong);
    border-color: var(--ecommerce-rose-strong);
}

.form-check-input:focus {
    border-color: var(--ecommerce-rose);
    box-shadow: 0 0 0 0.2rem rgba(184, 134, 11, 0.18);
}

.breadcrumb {
    background: transparent;
}

.breadcrumb a {
    color: var(--ecommerce-rose-strong);
}

.breadcrumb-item.active,
.text-muted {
    color: var(--ecommerce-muted) !important;
}

.item.item-thumbnail,
.product-list-card,
.home-interest-card,
.shopping-cart-table-wrapper .table-cart tr,
.checkout,
.card {
    border-color: var(--ecommerce-border);
    box-shadow: var(--ecommerce-shadow);
}

.item.item-thumbnail .item-image,
.product-list-image-link,
.product-list-list-image-col,
.home-interest-image,
.shopping-cart-table-wrapper .cart-product .product-img {
    background: linear-gradient(180deg, var(--ecommerce-white) 0%, var(--ecommerce-mauve-soft) 100%);
}

.item-title a,
.product-list-title a,
.home-interest-title a {
    color: var(--ecommerce-ink);
}

.item-title a:hover,
.product-list-title a:hover,
.home-interest-title a:hover {
    color: var(--ecommerce-rose-strong);
}

.item-price,
.promotion-price,
.product-list-price,
.home-interest-price,
.product-price .price,
.cart-price,
.cart-total,
.text-blue-700 {
    color: var(--ecommerce-rose-strong) !important;
}

.home-interest-section {
    background: linear-gradient(180deg, var(--ecommerce-mauve-soft) 0%, var(--ecommerce-ivory) 100%);
}

.home-interest-category {
    color: var(--ecommerce-gold);
}

.home-interest-card:hover,
.product-list-card:hover,
.item.item-thumbnail:hover {
    border-color: var(--ecommerce-rose-soft);
    box-shadow: 0 12px 30px rgba(184, 134, 11, 0.16);
}

.search-sidebar,
.product-list-sidebar {
    background: var(--ecommerce-white);
    border-color: var(--ecommerce-border);
    box-shadow: var(--ecommerce-shadow);
}

.product-list-sidebar .title,
.search-sidebar .title {
    color: var(--ecommerce-ink);
}

.product-list-sidebar .search-category-list a {
    border-color: var(--ecommerce-border);
    color: var(--ecommerce-muted);
}

.product-list-sidebar .search-category-list a.active,
.product-list-sidebar .search-category-list a:hover,
.product-list-sidebar .search-category-list a:focus {
    color: var(--ecommerce-rose-strong);
}

.product-list-view-toggle .btn-white {
    background: var(--ecommerce-white);
}

.pagination .page-link {
    border-color: var(--ecommerce-border);
    color: var(--ecommerce-rose-strong);
}

.pagination .page-link:hover,
.pagination .page-link:focus {
    background: var(--ecommerce-rose-soft);
    color: var(--ecommerce-ink);
}

.pagination .active .page-link,
.page-item.active .page-link {
    background: var(--ecommerce-rose-strong);
    border-color: var(--ecommerce-rose-strong);
    color: var(--ecommerce-white);
}

.checkout {
    background: var(--ecommerce-white);
    border: 1px solid var(--ecommerce-border);
    overflow: hidden;
}

.checkout .checkout-header {
    background: linear-gradient(135deg, var(--ecommerce-linen) 0%, var(--ecommerce-mauve-soft) 100%) !important;
    border-bottom: 1px solid var(--ecommerce-border);
}

.checkout .checkout-header .row > div + div {
    border-left-color: rgba(184, 134, 11, 0.24) !important;
}

.checkout .checkout-header .step a {
    color: var(--ecommerce-ink-soft) !important;
}

.checkout .checkout-header .step .number {
    align-items: center;
    background: var(--ecommerce-white);
    border: 1px solid var(--ecommerce-rose-soft);
    border-radius: 4px;
    color: var(--ecommerce-rose-strong) !important;
    display: flex;
    font-size: 18px;
    height: 32px;
    justify-content: center;
    line-height: 1;
    margin-top: 0;
    width: 32px;
    box-shadow: 0 4px 12px rgba(184, 134, 11, 0.12);
}

.checkout .checkout-header .step .number:before {
    background: var(--ecommerce-rose-soft) !important;
    bottom: -7px;
}

.checkout .checkout-header .step .number + .info {
    margin-left: 44px;
}

.checkout .checkout-header .step .title {
    color: var(--ecommerce-ink-soft) !important;
}

.checkout .checkout-header .step .desc {
    color: var(--ecommerce-muted) !important;
}

.checkout .checkout-header .step.active .number {
    background: var(--ecommerce-rose-strong);
    border-color: var(--ecommerce-rose-strong);
    color: var(--ecommerce-white) !important;
}

.checkout .checkout-header .step.active .number:before {
    background: var(--ecommerce-gold) !important;
}

.checkout .checkout-header .step.active .title,
.checkout .checkout-header .step a:hover .title {
    color: var(--ecommerce-rose-strong) !important;
}

.checkout .checkout-body {
    background: var(--ecommerce-white);
}

.checkout .checkout-body hr {
    border-color: var(--ecommerce-border);
    opacity: 1;
}

.checkout .checkout-body legend {
    color: var(--ecommerce-ink);
}

.checkout .checkout-footer {
    background: var(--ecommerce-linen) !important;
    border-top: 1px solid var(--ecommerce-border);
}

.checkout-summary-table,
.shopping-cart-table-wrapper .table-cart,
.summary-container {
    color: var(--ecommerce-ink);
}

.checkout-summary-col {
    background: var(--ecommerce-ivory);
    border: 1px solid var(--ecommerce-border);
    border-radius: 6px;
    box-shadow: 0 8px 22px rgba(71, 49, 45, 0.07);
    padding: 10px 14px;
}

.checkout-summary-table th,
.checkout-summary-table td {
    border-color: var(--ecommerce-border);
}

.summary-container .summary-row.total,
.checkout-summary-table tr:last-child {
    color: var(--ecommerce-rose-strong);
}

.checkout-footer .btn-white {
    background: var(--ecommerce-white) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.checkout-footer .btn-white:hover,
.checkout-footer .btn-white:focus,
.checkout-footer .btn-white:active,
.checkout-footer .btn-white.active,
.checkout-footer .btn-white:first-child:active {
    background: var(--ecommerce-rose-pale) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

@media (max-width: 767.98px) {
    .checkout .checkout-header .step .number {
        font-size: 16px;
        height: 28px;
        width: 28px;
    }

    .checkout .checkout-header .step .number + .info {
        margin-left: 40px;
    }
}

.dropdown-menu,
.dropdown-menu-cart {
    border-color: var(--ecommerce-border);
    box-shadow: var(--ecommerce-shadow);
}

.dropdown-menu-cart {
    background: var(--ecommerce-white);
    border: 1px solid var(--ecommerce-border);
    border-radius: 6px;
    overflow: hidden;
}

.dropdown-menu-cart .cart-header {
    background: linear-gradient(90deg, var(--ecommerce-rose-strong) 0%, var(--ecommerce-rose) 100%);
    border-bottom: 1px solid rgba(17, 17, 17, 0.16);
    color: var(--ecommerce-ink);
}

.dropdown-menu-cart .cart-title {
    color: var(--ecommerce-ink);
}

.dropdown-menu-cart .cart-body {
    background: var(--ecommerce-ivory);
}

.dropdown-menu-cart .cart-item > li {
    border-color: var(--ecommerce-border);
}

.dropdown-menu-cart .cart-item-image {
    background: var(--ecommerce-white);
    border-color: var(--ecommerce-border);
}

.dropdown-menu-cart .cart-item-info h4 {
    color: var(--ecommerce-ink);
}

.dropdown-menu-cart .cart-item-info .price {
    color: var(--ecommerce-rose-strong);
}

.dropdown-menu-cart .cart-item-close a {
    background: var(--ecommerce-rose-pale);
    color: var(--ecommerce-ink-soft);
}

.dropdown-menu-cart .cart-item-close a:hover,
.dropdown-menu-cart .cart-item-close a:focus {
    background: #2a2722;
    color: var(--ecommerce-white);
}

.dropdown-menu-cart .cart-footer {
    background: var(--ecommerce-linen);
    border-top: 1px solid var(--ecommerce-border);
}

.dropdown-menu-cart .cart-footer .btn-default {
    background: linear-gradient(180deg, #f7f1e0 0%, #e9dba9 100%) !important;
    border-color: var(--ecommerce-border) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.dropdown-menu-cart .cart-footer .btn-default:hover,
.dropdown-menu-cart .cart-footer .btn-default:focus,
.dropdown-menu-cart .cart-footer .btn-default:active,
.dropdown-menu-cart .cart-footer .btn-default.active,
.dropdown-menu-cart .cart-footer .btn-default:first-child:active {
    background: linear-gradient(180deg, #efe3bd 0%, #d9bf74 100%) !important;
    border-color: var(--ecommerce-gold) !important;
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.cart-header,
.cart-footer,
.footer,
.footer-copyright {
    background: var(--ecommerce-ink);
    color: rgba(255, 255, 255, 0.78);
}

.footer a,
.footer-copyright a {
    color: var(--ecommerce-gold-soft);
}

.promotion.bg-dark,
.bg-dark {
    background-color: var(--ecommerce-ink) !important;
}

.promotion-caption-inverse .promotion-title,
.promotion-caption-inverse .promotion-price {
    color: var(--ecommerce-white) !important;
}

.promotion-btn {
    background: linear-gradient(180deg, #f7f1e0 0%, #e9dba9 100%) !important;
    border: 1px solid var(--ecommerce-border);
    color: var(--ecommerce-ink) !important;
    box-shadow: none !important;
}

.promotion-btn:hover,
.promotion-btn:focus,
.promotion-btn:active {
    background: linear-gradient(180deg, #efe3bd 0%, #d9bf74 100%) !important;
    border-color: var(--ecommerce-gold);
    color: var(--ecommerce-ink) !important;
}
