/* General Styles */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

#wrapper .breadcrumb li::after{
    content: '|';
    margin: 1em;
}

#wrapper .breadcrumb li a span{
    font-weight: 400;
}

#wrapper .breadcrumb li span{
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    color: #202120;
}

.product-flag.pack{
    display: none;
}

/* Home Styles */
#index .main-banner-home > .elementor-column-wrap.elementor-element-populated{
    position: relative;
}

#index .main-banner-home > .elementor-column-wrap.elementor-element-populated::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.25);
    pointer-events: none;
}

#index .main-banner-home > .elementor-column-wrap.elementor-element-populated .elementor-widget-wrap{
    z-index: 1;
}

#index .main-banner-home > .elementor-column-wrap.elementor-element-populated .elementor-widget-wrap .elementor-heading-title{
    max-width: 600px;
    margin: auto;
}

#index .categoria-destacada .elementor-image-box-content {
    width: 100%;
    position: absolute;
    bottom: 50px;
}

#index .categoria-destacada .elementor-image-box-img{
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}

#index .categoria-destacada .elementor-image-box-img::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.6));
    pointer-events: none;
}

#index .categoria-destacada img{
    transition: all ease 0.3s;
}

#index .categoria-destacada:hover img{
    scale: 1.1;
}

#index .banner-pack{
    position: relative;
    overflow: hidden;
}

#index .banner-pack::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    pointer-events: none;
}

#index .banner-pack .elementor-column-wrap{
    z-index: 1;
}

#index .banner-pack .elementor-column-wrap .elementor-widget-wrap .elementor-heading-title{
    max-width: 460px;
    margin: auto;
}

/* End of Home Styles */

/* Header Styles */

header .cbp-hrmenu .cbp-submenu-aindicator{
    font-family: 'Font Awesome 7 Pro';
    font-weight: 300;
}

.header-top .search-widget .form-search-control{
    padding: 5px;
    border: none;
    border-bottom: 1px solid #202120;
}

header .col-header-right i{
    font-size: 20px;
    color: #202120;
    font-family: "Font Awesome 7 Pro" !important;
    font-weight: 300 !important;
}

header #cbp-hrmenu .cbp-tab-title{
    font-weight: 500;
}

header #cbp-hrmenu .cbp-hrmenu-tab.cbp-hropen > a span{
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

header #search_widget{
    align-items: center;
}

header #search_widget .search-btn{
    position: relative;
    border-bottom: 1px solid #202120;
    padding: 6px;
}

header #search_widget .search-btn i{
    font-size: 18px;
}

header #header-user-btn, header #ps-shoppingcart-wrapper{
    align-self: center;
}

header .col-header-right .justify-content-end{
    align-items: center;
    column-gap: 5px;
}

header .ps-shoppingcart .cart-products-count-btn{
    position: relative;
    min-width: fit-content;
    padding: 0px;
}

header #language_selector .language-selector a{
    font-weight: 500;
    font-size: 16px;
    line-height: 18px;
    color: #202120;
    text-transform: uppercase;
}

header #language_selector .language-selector a.expand-more{
    margin-left: 10px;
}

header #language_selector .language-selector a i{
    font-size: 12px;
}

@media (max-width: 992px) {
    header #mobile-header-sticky .m-nav-btn>i{
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    header #mobile-header-sticky img.logo {
        max-width: 150px;
    }

    header #language_selector .language-selector a{
        font-size: 14px;
    }
}

/* End of Header Styles */

/* Footer Styles */

#footer .footer-container .container .row:first-child{
    display: none;
}

#footer .footer-container .elementor-section .elementor-container .elementor-column:first-child{
    width: 40%;
}

#footer .footer-logo-wd{
    max-width: 275px;
}

@media (max-width: 992px) {
    #footer .footer-logo-wd{
        margin: auto;
    }
}

/* End of Footer Styles */

/* Category Styles */

#content-wrapper .page-title{
    margin-bottom: 0px;
    padding-bottom: 0px;
}

#js-product-list-top{
    border-bottom: none;
    border-top: none;
}

#js-product-list-top .product-list-subcategories {
    margin-bottom: 0px;
}

#js-product-list-top .product-list-subcategories .subcategory-name{
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    text-transform: uppercase;
    color: #767676;
}

#js-product-list-top .product-list-subcategories .subcategory-name:hover{
    color: #202120;
    text-decoration: underline;
}

#js-product-list-top .justify-content-between .col.col-auto{
    display: flex;
    column-gap: 15px;
    align-items: center;
}

#js-product-list-top #search_center_filter_toggler{
    background-color: #202120;
    border: 1px solid #202120;
    border-radius: 8px;
    font-weight: 600;
    font-size: 18px;
    line-height: 18px;
    text-transform: uppercase;
    color: #F5F2F2;
    padding: 15px 40px;
}

#js-product-list-top #search_center_filter_toggler:hover{
    background-color: transparent;
    color: #202120;
}

#js-product-list-top .products-sort-order a.select-title{
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
    color: #51534A80;
    padding: 15px 25px;
    border: 1px solid #202120;
    border-radius: 8px;
}

.products .js-product-miniature-wrapper .product-miniature .product-title{
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #202120;
    text-transform: lowercase;
}

.products .js-product-miniature-wrapper .product-miniature .product-title::first-letter{
    text-transform: uppercase;
}

.products .js-product-miniature-wrapper .product-miniature .product-price{
    font-weight: 700;
    line-height: 20px;
    font-size: 15px;
    color: #202120;
}

.products .js-product-miniature-wrapper .product-miniature .regular-price.text-muted{
    font-weight: 400;
    line-height: 20px;
    font-size: 14px;
    color: #20212080;
}

.products .js-product-miniature-wrapper .product-miniature .product-thumbnail{
    background: #0000000D;
}

.products .js-product-miniature-wrapper .product-miniature .product-thumbnail img{
    mix-blend-mode: multiply;
}

.product-flags{
    top: 12px;
    left: 12px;
}

li.product-flag{
    font-weight: 700;
    font-size: 20px;
    line-height: 20px;
    color: #FFFFFF;
    border-radius: 4px;
}

.product-miniature-grid .product-availability, #product-availability{
    display: none !important;
}

@media (max-width: 768px) {
    #content-wrapper .page-title{
        padding-bottom: 5px;
    }

    #js-product-list-top .product-list-subcategories{
        margin-bottom: 15px;
    }

    #js-product-list-top .product-list-subcategories .row{
        display: flex;
        flex-wrap: wrap;
        row-gap: 10px;
    }

    #js-product-list-top .product-list-subcategories .subcategory-name{
        font-size: 12px;
    }

    #js-product-list-top #search_center_filter_toggler{
        font-size: 14px;
    }

    #js-product-list-top .justify-content-between .col.col-auto{
        width: 100%;
    }

    #js-product-list-top .justify-content-between .col.col-auto.facated-toggler{
        max-width: 50%;
    }
    
    #footer .footer-container .elementor-section .elementor-container .elementor-column:first-child{
        width: 100%;
    }
}

/* Search Filters & Facets Styles */
#search_filters {
    border: none;
    box-shadow: none;
    background: transparent;
    padding: 0;
    margin-bottom: 2rem;
}

#search_filters .facet {
    border-bottom: 1px solid #20212015;
    padding: 1.5rem 0;
}

#search_filters .facet:last-child {
    border-bottom: none;
}

#search_filters .facet .facet-title {
    font-weight: 400;
    font-size: 22px;
    line-height: 28px;
    color: #202120;
    margin-bottom: 1.25rem;
}

#search_filters .facet .facet-label {
    text-align: left;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: baseline;
}

#search_filters .facet .facet-label a {
    font-weight: 400;
    font-size: 14px;
    color: #202120;
    line-height: 24px;
    display: inline-flex;
    align-items: center;
    transition: all 0.2s ease;
}

#search_filters .facet .facet-label a:hover {
    color: #202120;
    text-decoration: none;
    opacity: 0.7;
}

#search_filters .facet .facet-label .custom-checkbox, 
#search_filters .facet .facet-label .custom-radio {
    margin-right: 12px;
    border-radius: 2px;
    width: 16px;
    height: 16px;
    background: transparent;
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

#search_filters .facet .facet-label .custom-checkbox input[type="checkbox"],
#search_filters .facet .facet-label .custom-radio input[type="radio"] {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    cursor: pointer;
}

#search_filters .facet .facet-label .custom-checkbox input[type="checkbox"]:checked + i,
#search_filters .facet .facet-label .custom-radio input[type="radio"]:checked + i {
    background-color: #202120;
    color: #fff;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
}

#search_filters .facet .facet-label .magnitude {
    color: #20212040;
    font-size: 12px;
    margin-left: 8px;
    font-weight: 400;
}

#search_filters .active_filters {
    background: #f9f9f9;
    padding: 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
}

#search_filters .active_filters .active-filter-title {
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    color: #202120;
    margin-bottom: 0.5rem;
}

#search_filters .active_filters .js-search-link {
    background: #202120;
    color: #fff;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    margin-right: 5px;
    margin-bottom: 5px;
    display: inline-flex;
    align-items: center;
}

#search_filters .clear-all-wrapper {
    margin: 1.5rem 0;
}

#search_filters .clear-all-wrapper .js-search-link {
    font-weight: 600;
    font-size: 13px;
    color: #202120;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 4px;
    transition: opacity 0.3s ease;
}

#search_filters .clear-all-wrapper .js-search-link:hover {
    opacity: 0.6;
}

/* End of Category Styles */

/* Product Styles */

.col-product-image .product-cover picture{
    background: #0000000D;
    mix-blend-mode: multiply;
}

.col-product-image .product-cover picture img{
    mix-blend-mode: multiply;
    background: #0000000D;
    border-radius: 2px;
}

.col-product-image .product-cover .product-lmage-large{
    overflow: hidden;
    border-radius: 2px;
}

.col-product-image .expander{
    display: none;
}

.product_header_container{
    border-bottom: unset;
    margin-bottom: 0px;
}

.product_header_container .page-title span, .product_header_container .page-title a{
    font-weight: 400;
    font-size: 40px;
    line-height: 45px;
    color: #202120;
}

.col-product-info .product_p_price_container{
    border-top: unset;
}

.col-product-info .product-actions .input-container{
    margin-right: 20px;
}

.product-actions .product-variants .form-control-label{
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #202120;
    text-transform: uppercase;
}

.product-actions .product-variants .radio-label{
    border: none;
    margin: 0;
    min-height: 0;
    line-height: unset;
    padding: 0px;
    outline: none;
    font-weight: 600;
    font-size: 16px;
    text-transform: uppercase;
    color: #202120;
}

.product-actions .product-variants .input-radio, .product-actions .product-variants .input-radio+span{
    border: none;
    min-height: 0;
    line-height: unset;
}

.product-actions .product-variants .input-radio:hover, .product-actions .product-variants .input-radio:hover+span{
    border-bottom: 2px solid #202120;
    line-height: unset;
}

.product-actions .product-variants .input-radio:checked, .product-actions .product-variants .input-radio:checked+span{
    border-bottom: 2px solid #202120;
    line-height: unset;
}

.product-badge-discount-title {
    background-color: #202120;
    color: #ffffff;
    padding: 6px 12px;
    font-weight: 600;
    font-size: 14px;
    border-radius: 4px;
    display: table;
    text-transform: uppercase;
    margin-bottom: 1rem;
    line-height: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.product_header_container {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-top: 40px;
}

.product_header_container .page-header {
    order: 2;
}

.product-prices {
    order: 3;
}

.product-add-to-cart .add-to-cart{
    background-color: #202120;
    border: 1px solid #202120;
    color: #F5F2F2;
    border-radius: 8px;
    font-weight: 600;
    font-size: 18px;
    line-height: 18px;
    text-transform: uppercase;
    padding: 15px 30px;
    transition: all 0.3s ease;
}

.product-add-to-cart .add-to-cart:hover{
    background-color: transparent;
    color: #202120;
}


.col-add-wishlist .btn-iqitwishlist-add{
    background-color: #202120;
    border: 1px solid #202120;
    color: #F5F2F2;
    border-radius: 8px;
    font-weight: 600;
    font-size: 18px;
    line-height: 18px;
    text-transform: uppercase;
    padding: 15px;
    transition: all 0.3s ease;
}

.col-add-wishlist .btn-iqitwishlist-add:hover{
    background-color: transparent;
    color: #202120;
}

.product-additional-info{
    border-top: none;
}

.product-quantity .qty .input-group {
    height: 100%;
}

.input-group.bootstrap-touchspin{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.product-add-to-cart  .product-quantity .qty {
    width: 100px;
    height: 50px;
    position: relative;
    border: 1px solid #202120;
    border-radius: 8px;
}

.product-add-to-cart  .product-quantity .qty #quantity_wanted {
    border: 0 !important;
    width: 100%;
    max-width: 100%;
    padding: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 18px;
    color: #51534A;
    text-align: center;
    background: transparent;
    z-index: 9;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical {
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .btn {
    width: 21px;
    background: transparent;
    padding: 0;
    height: 10px;
    border: 0;
    z-index: 10;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .btn.bootstrap-touchspin-up {
    margin-right: 7px;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .btn i {
    left: 0;
    top: 0;
    bottom: auto;
    cursor: pointer;
    font-style: normal;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .bootstrap-touchspin-up i {
    left: auto;
    top: -1px;
    bottom: auto;
    right: 8px;
    font-style: normal;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .bootstrap-touchspin-up i:before {
    content: '\2b';
    font-family: 'Font Awesome 7 Pro';
    color: #51534A;
    font-weight: 300;
    font-size: 14px;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .btn.bootstrap-touchspin-down {
    margin-left: 14px;
}

.product-add-to-cart  .product-quantity .qty .input-group-btn-vertical .bootstrap-touchspin-down i:before {
    content: '\f068';
    font-family: 'Font Awesome 7 Pro';
    color: #51534A;
    font-weight: 300;
    font-size: 14px;
}

.product-tabs {
    max-width: 1150px;
}

.product-tabs .nav-tabs {
    border-bottom: none;
    justify-content: flex-start;
    display: flex;
    column-gap: 40px;
    margin-bottom: 20px;
}

.product-tabs .nav-tabs .nav-item {
    margin-right: 0;
}

.product-tabs .nav-tabs .nav-link {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    text-transform: uppercase;
    color: #20212080;
    opacity: 1;
}

.product-tabs .nav-tabs .nav-link.active, .product-tabs .nav-tabs .nav-link:hover {
    color: #202120;
    font-weight: 800;
    text-decoration: underline;
}

.product-tabs .tab-content {
    border: none;
    padding: 20px 0;
}

.product-tabs .tab-content .tab-pane {
    padding: 0;
}

.product-tabs .tab-content .tab-pane p {
    font-size: 14px;
    line-height: 22px;
    color: #202120;
    font-weight: 500;
}

.category-products h4.section-title span{
    font-weight: 400;
    font-size: 48px;
    line-height: 52px;
    color: #202120;
    font-family: 'Playfair Display', serif;
    margin-top: 10px;
}

.product-info-row > .tabs.product-tabs{
    display: none;
}

.product-information #add-to-cart-or-refresh .btn.btn-secondary{
    font-weight: 500;
    font-size: 14px;
    line-height: 14px;
    text-transform: uppercase;
    background-color: #202120;
    border: 1px solid #202120;
    color: #F5F2F2;
    border-radius: 8px;
}

.product-information #add-to-cart-or-refresh .btn.btn-secondary:hover{
    background-color: transparent;
    color: #202120;
}

.product-information .js-mailalert .btn.btn-secondary{
    font-weight: 500;
    font-size: 16px;
    line-height: 18px;
    text-transform: uppercase;
    background-color: #202120;
    border: 1px solid #202120;
    color: #F5F2F2;
    border-radius: 8px;
}

.product-information .js-mailalert .btn.btn-secondary:hover{
    background-color: transparent;
    color: #202120;
}

.product-information .js-mailalert input{
    border-radius: 8px !important;
    border: 1px solid #202120;
    padding: 12px !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    color: #202120;
}

#product .alert.alert-info{
    background-color: transparent;
    border-color: #202120;
    color: #202120;
    border-radius: 8px;
}

@media (max-width: 768px) {
    .col-product-image .tabs.product-tabs{
        display: none;
    }

    .product-info-row > .tabs.product-tabs{
        display: block;
    }
}

/* End of Product Styles */

/* Checkout Styles */

#checkout section.checkout-step {
    border: none;
    box-shadow: none;
    background: #fdfdfd;
    border-radius: 8px;
    margin-bottom: 2rem;
    padding: 1.5rem;
}

#checkout section.checkout-step .step-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 500;
    color: #202120;
    text-transform: none;
    display: flex;
    align-items: center;
}

#checkout section.checkout-step .step-number {
    background: #202120;
    color: #F5F2F2;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    line-height: 28px;
    font-size: 14px;
    margin-right: 15px;
    display: inline-block;
    text-align: center;
}

#checkout .cart-summary {
    border-radius: 8px;
    border: 1px solid #E5E5E5;
    background: #fff;
}

#checkout .cart-summary .cart-summary-line .value {
    font-weight: 600;
    color: #202120;
}

#checkout .btn-primary {
    background-color: #202120;
    border-color: #202120;
    border-radius: 8px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 15px 40px;
    transition: all 0.3s ease;
}

#checkout .btn-primary:hover {
    background-color: transparent;
    color: #202120;
}

/* End of Checkout Styles */

/* Customer Account & Auth Styles */

#authentication #main,
#registration #main,
#password #main {
    max-width: 850px;
    margin: 4rem auto;
}

#authentication .page-header h1,
#registration .page-header h1,
#my-account .page-header h1,
#identity .page-header h1,
#address .page-header h1,
#addresses .page-header h1,
#history .page-header h1 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    text-align: center;
    color: #202120;
    margin-bottom: 2rem;
}

#authentication .login-form, 
#registration .registration-form,
#identity .customer-form,
#address .address-form {
    background: #fff;
    padding: 2.5rem;
    border-radius: 8px;
    border: 1px solid #F0F0F0;
}

#authentication .form-control,
#registration .form-control,
#identity .form-control {
    border-radius: 4px;
    border: 1px solid #E5E5E5;
    padding: 12px !important;
}

#authentication .btn-primary,
#registration .btn-primary,
#identity .btn-primary,
#address .btn-primary {
    background-color: #202120;
    border-color: #202120;
    border-radius: 8px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 12px 30px;
}

#authentication .btn-primary:hover,
#registration .btn-primary:hover,
#identity .btn-primary:hover {
    background-color: transparent;
    color: #202120;
}

#my-account .links {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

#my-account .links a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 200px;
    height: 150px;
    border: 1px solid #E5E5E5;
    border-radius: 8px;
    transition: all 0.3s ease;
    text-decoration: none;
    color: #202120;
    background: #fff;
}

#my-account .links a:hover {
    border-color: #202120;
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}

#my-account .links a i {
    font-size: 2rem;
    margin-bottom: 15px;
    color: #202120;
}

#my-account .links a span {
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.85rem;
}

/* End of Account Styles */

/* Contact Page Styles */

#contact #main {
    margin: 4rem auto;
}

#contact .page-header h1 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 3rem;
}

#contact .contact-form {
    background: #fff;
    padding: 3rem;
    border-radius: 8px;
    border: 1px solid #F0F0F0;
}

#contact .form-footer .btn-primary {
    background-color: #202120;
    border-color: #202120;
    border-radius: 8px;
    padding: 15px 40px;
    text-transform: uppercase;
    font-weight: 600;
}

#contact .contact-rich {
    background: #f9f9f9;
    padding: 2rem;
    border-radius: 8px;
}

#contact .contact-rich h4 {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    margin-bottom: 1rem;
}

/* End of Contact Styles */

/* Pack Styles */

.ap5-pack-page h1{
    font-weight: 400;
    font-size: 40px;
    line-height: 45px;
    color: #202120;
}

.ap5-pack-page .ap5-pack-product-name.title-center{
    font-weight: 400;
    font-size: 18px;
    line-height: 22px;
    color: #202120;
    font-family: 'Playfair Display', serif;
}

.ap5-pack-page .product-price .ap5-pack-product-reduction-value{
    background-color: #202120;
    color: #ffffff;
    padding: 4px 12px;
    font-weight: 600;
    font-size: 14px;
    border-radius: 4px;
    margin-left: 10px;
}

.ap5-pack-page .ap5-add-to-cart-container .product-add-to-cart .product-quantity{
    display: flex;
    align-items: center;
}

.ap5-pack-page .product-quantity > .col{
    width: fit-content;
    max-width: fit-content;
}

.ap5-pack-page .product-actions{
    position: sticky;
    top: 120px;
    padding-top: 20px;
}

.ap5-pack-page #ap5-price-container .product-badge-discount-title{
    display: none;
}

.ap5-pack-page .col-add-wishlist{
    display: none;
}

#ap5-page-product-box {
    border: none;
    box-shadow: none;
    background: transparent;
    margin-top: 4rem;
    margin-bottom: 4rem;
}

#ap5-page-product-box .card-header {
    background-color: transparent;
    padding: 0;
    border: none;
    margin-bottom: 2rem;
}

#ap5-page-product-box .card-header h3 {
    font-weight: 400;
    font-size: 40px;
    line-height: 1.2;
    color: #202120;
    font-family: 'Playfair Display', serif;
    margin-top: 10px;
}

#ap5-page-product-box .card-block {
    padding: 0;
}

.ap5-product-footer-pack-container {
    padding: 0;
    margin-bottom: 50px;
}

.ap5-product-footer-pack-informations {
    display: flex;
    align-items: flex-start;
    border-bottom: unset;
    padding-bottom: 15px;
    margin-bottom: 30px !important;
    flex-direction: column;
    justify-content: center;
}

.ap5-product-footer-pack-name {
    margin: 0 !important;
    display: flex !important;
    align-items: center;
}

.ap5-product-footer-pack-name a {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    color: #202120;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    text-decoration: none;
}

.ap5-product-footer-pack-name a .ap5-view-pack-name{
    width: 100%;
    font-family: 'Playfair Display', serif;
    font-size: 24px;
    line-height: 28px;
    text-transform: none ;
    color: #202120 ;
    font-weight: 400;
    margin-bottom: 20px;
}

.ap5-product-footer-pack-name a:hover {
    color: #000;
}

.ap5-view-pack-category {
    font-weight: 400;
    color: #888;
    font-size: 13px;
    margin-right: 15px;
    text-transform: none;
    font-style: italic;
}

/* Buttons Styling */
.ap5-product-footer-pack-name .btn {
    border-radius: 8px !important;
    text-transform: uppercase;
    font-size: 14px !important;
    padding: 8px 16px !important;
    font-weight: 700 !important;
    margin-right: 10px;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
}

.ap5-product-footer-pack-name .btn i {
    font-size: 14px;
    margin-right: 5px;
}

.ap5-view-pack-button, .ap5-product-footer-pack-name .btn-secondary {
    background-color: transparent !important;
    color: #202120 !important;
    border: 1px solid #202120 !important;
}

.ap5-view-pack-button:hover, .ap5-product-footer-pack-name .btn-secondary:hover {
    background-color: #202120 !important;
    color: #fff !important;
}

.ap5-buy-pack-button, .ap5-product-footer-pack-name .btn-primary {
    background-color: #202120 !important;
    color: #fff !important;
    border: 1px solid #202120 !important;
}

.ap5-buy-pack-button:hover, .ap5-product-footer-pack-name .btn-primary:hover {
    background-color: transparent !important;
    color: #202120 !important;
}

/* Prices Area */
.ap5-price-container {
    float: none !important;
}

.ap5-price-container .price {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    margin-top: 20px;
}

.ap5-price-container .regular-price {
    text-decoration: line-through;
    color: #999;
    font-size: 14px;
    margin-right: 10px;
}

.ap5-price-container .product-price {
    font-size: 20px !important;
    font-weight: 700;
    color: #202120;
    margin: 0;
    display: flex;
    align-items: center;
}

.ap5-price-container .discount {
    background: #000;
    color: #fff;
    padding: 3px 10px;
    font-size: 11px;
    margin-left: 5px;
    display: inline-block;
    border-radius: 4px;
}

/* Plus Icon Styling */
.ap5-pack-product-icon-plus {
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    top: 45% !important;
    right: -70px !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    z-index: 10;
    opacity: 1 !important;
}

.ap5-pack-product-icon-plus::before {
    content: '+' !important;
    font-family: 'Arial', sans-serif !important;
    font-weight: 300 !important;
    font-size: 24px !important;
    color: #202120 !important;
    position: static !important;
}

/* Products Content */
.ap5-product-footer-pack {
    display: flex !important;
    flex-wrap: nowrap;
    justify-content: center;
    overflow-x: auto;
    width: 66.66666667%;
}

.ap5-pack-product {
    flex: 0 0 auto;
    width: 280px;
    margin-bottom: 20px;
}

.ap5-pack-product-content {
    position: relative;
    padding: 0 10px;
}

.ap5-pack-product-image{
    background: #0000000D;
}

.ap5-pack-product-image img {
    border: unset;
    transition: all 0.3s ease;
    mix-blend-mode: multiply;
}

.ap5-pack-product:hover .ap5-pack-product-image img {
    border-color: #202120;
}

.ap5-pack-product-name a {
    font-family: 'Playfair Display', serif !important;
    font-size: 16px !important;
    color: #202120 !important;
    text-align: center;
    margin-top: 15px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
}

.ap5-pack-product-price-table-container .product-price {
    font-weight: 700;
    color: #202120;
    font-size: 15px;
}

.ap5-pack-product-price-table-container .regular-price {
    font-size: 13px;
    color: #999;
    text-decoration: line-through;
    margin-right: 5px;
}

.product-information .ap5-pack-product{
    width: 100%;
}

.product-information .ap5-pack-product .ap5-pack-product-title{
    font-size: 18px;
    color: #202120;
    font-weight: 400;
    line-height: 22px;
}

.product-information .ap5-pack-product .ap5-pack-product-infos{
    display: none;
}

/* Hide line on the last product */
#ap5-page-product-box .pm-ap-owl-item:last-child .ap5-pack-product-icon-plus,
#ap5-page-product-box .ap5-product-footer-pack > .ap5-pack-product:last-child .ap5-pack-product-icon-plus {
    display: none !important;
}

hr.m-t-1.m-b-0 {
    display: none;
}

/* Sidebar Cart Styles */
.blockcart-content .cart-title {
    border-bottom: none;
}

.blockcart-content .modal-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #202120;
    font-weight: 400;
    line-height: 32px;
}

.blockcart-content .cart-title hr {
    display: none;
}

.blockcart-content .cart-products li {
    padding: 15px 0;
    border-bottom: 1px solid #f0f0f0;
}

.blockcart-content .cart-products li:last-child {
    border-bottom: none;
}

.blockcart-content .col-info a {
    font-weight: 600;
    font-size: 14px;
    color: #202120;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
}

.blockcart-content .product-attributes {
    font-size: 12px;
    color: #888 !important;
    line-height: 1.4;
}

.blockcart-content .product-line-info .label {
    text-transform: uppercase;
    font-weight: 400;
}

.blockcart-content .product-line-info .value {
    font-weight: 600;
}

.blockcart-content .cart-subtotals, 
.blockcart-content .cart-totals {
    padding: 15px 20px;
    border-top: 1px solid #202120;
    margin: 0;
}

.blockcart-content .cart-summary-line {
    margin-bottom: 5px;
}

.blockcart-content .cart-summary-line .label {
    font-size: 14px;
    color: #202120;
}

.blockcart-content .cart-summary-line .value {
    font-weight: 400;
    color: #202120;
    font-size: 14px;
}

.blockcart-content .cart-totals .label {
    font-family: 'Playfair Display', serif;
    font-size: 18px;
    color: #202120;
}

.blockcart-content .cart-totals .value {
    font-size: 24px;
    font-weight: 400;
    color: #202120;
}

.blockcart-content .cart-buttons .btn {
    border-radius: 8px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 15px;
    font-size: 14px;
    transition: all 0.3s ease;
}

.blockcart-content .cart-buttons .btn-primary {
    background-color: #202120;
    border: 1px solid #202120;
    color: #fff;
}

.blockcart-content .cart-buttons .btn-primary:hover {
    background-color: transparent;
    color: #202120;
}

.blockcart-content .cart-buttons .btn-secondary {
    background-color: transparent;
    border: 1px solid #202120;
    color: #202120;
    margin-top: 10px;
}

.blockcart-content .cart-buttons .btn-secondary:hover {
    background-color: #202120;
    color: #fff;
}

/* Quantity inputs in cart */
.blockcart-content .block-cart-product-quantity {
    border-radius: 0;
    border: 1px solid #e5e5e5;
    height: 40px;
    text-align: center;
}

.blockcart-content .remove-from-cart {
    color: #202120;
    margin-left: 10px;
}

/* Blog styles */

#module-ph_simpleblog-single #content-wrapper{
    max-width: 1150px;
    margin: auto;
}

/* CMS styles */

#cms #content-wrapper{
    max-width: 1050px;
    margin: auto;
}

#cms #content-wrapper .page-title{
    margin-bottom: 40px;
}

#cms #content-wrapper p{
    font-size: 14px;
    line-height: 22px;
    color: #202120;
    font-weight: 500;
}

/* Cart Page Styles */
#cart .card.cart-container {
    border: none;
    box-shadow: none;
    background: transparent;
}

#cart .page-header {
    border-bottom: 1px solid #ebebeb;
    padding-bottom: 20px;
    margin-bottom: 30px;
}

#cart .page-header h1 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: #202120;
    font-weight: 400;
}

#cart .cart-item {
    border-bottom: 1px solid #f0f0f0;
    padding: 25px 0;
}

#cart .cart-item:last-child {
    border-bottom: none;
}

#cart .product-line-grid-body .product-title,
#cart .product-line-info a {
    font-weight: 600;
    font-size: 16px;
    color: #202120;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
}

#cart .product-line-info .label {
    font-size: 12px;
    text-transform: uppercase;
    color: #888;
}

#cart .product-line-info .value {
    font-size: 12px;
    font-weight: 600;
    color: #202120;
}

#cart .current-price .price {
    font-weight: 600;
    color: #202120;
    font-size: 18px;
}

#cart .cart-grid-body .btn.btn-secondary {
    border-radius: 8px;
    text-transform: uppercase;
    font-weight: 600;
    background-color: #202120;
    border: 1px solid #202120;
    color: #fff;
    text-decoration: underline;
    margin-top: 15px;
    display: inline-block;
}

#cart .cart-grid-body .btn.btn-secondary:hover {
    color: #202120;
    background-color: transparent;
}

/* Cart Summary / Checkout section */
#cart .cart-grid-right .card {
    border: 1px solid #ebebeb;
    border-radius: 0;
    padding: 20px;
    box-shadow: none;
}

#cart .cart-summary-line .label {
    font-size: 14px;
    color: #202120;
}

#cart .cart-summary-line .value {
    color: #202120;
    font-weight: 600;
}

#cart .cart-summary-totals .cart-summary-line:last-child .label {
    font-family: 'Playfair Display', serif !important;
    font-size: 24px !important;
    font-weight: 400 !important;
}

#cart .cart-summary-totals .cart-summary-line:last-child .value {
    font-size: 26px !important;
    font-weight: 400 !important;
    color: #202120 !important;
}

#cart .checkout.cart-detailed-actions .btn-primary {
    border-radius: 8px !important;
    background-color: #202120 !important;
    border: 1px solid #202120 !important;
    color: #fff !important;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 15px 30px;
    width: 100%;
    transition: all 0.3s ease;
}

#cart .checkout.cart-detailed-actions .btn-primary:hover {
    background-color: transparent !important;
    color: #202120 !important;
}

#cart .promo-code .promo-input {
    border-radius: 8px;
    border: 1px solid #e5e5e5;
}

#cart .promo-code .btn-primary {
    border-radius: 8px;
    background: #202120;
    border: 1px solid #202120;
}

#cart .cart-detailed-actions .btn-secondary {
    border-radius: 0;
    text-transform: uppercase;
    font-weight: 600;
    color: #202120;
    text-decoration: underline;
    margin-top: 15px;
    display: inline-block;
}

#cart .bootstrap-touchspin input.form-control {
    border: 1px solid #e5e5e5;
    height: 40px;
}

#cart .remove-from-cart {
    color: #202120;
}