/**
 * Redgaming Theme Styles for PrestaShop 9 (Alysum)
 * Layout & visual design matching theme_ecolife & Creative Elements
 */

:root {
    --rg-primary: #d80100;
    --rg-primary-hover: #b80000;
    --rg-dark: #253237;
    --rg-dark-hover: #1e292d;
    --rg-black: #111111;
    --rg-text: #333333;
    --rg-text-muted: #666666;
    --rg-bg-light: #f6f6f6;
    --rg-border: #ebebeb;
}

/* Typography & Base */
body {
    font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: var(--rg-text);
}

h1, h2, h3, h4, h5, h6, .page-header h1 {
    font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-weight: 700;
    color: var(--rg-dark);
}

a {
    color: var(--rg-dark);
    transition: color 0.2s ease;
}

a:hover, a:focus {
    color: var(--rg-primary);
}

/* Buttons */
.btn-primary,
body .btn,
button.btn-primary,
input[type="submit"].btn-primary {
    background-color: var(--rg-primary) !important;
    border-color: var(--rg-primary) !important;
    color: #ffffff !important;
    font-weight: 600;
    transition: all 0.25s ease;
}

.btn-primary:hover,
body .btn:hover,
button.btn-primary:hover,
input[type="submit"].btn-primary:hover {
    background-color: var(--rg-dark) !important;
    border-color: var(--rg-dark) !important;
    color: #ffffff !important;
}

/* Header Top Bar */
.header-topbar,
.elementor-section.header-topbar {
    background-color: #ffffff;
    border-bottom: 2px solid #e1e1e1;
    font-size: 13px;
    color: var(--rg-text-muted);
}

.header-topbar strong {
    color: var(--rg-dark);
    font-weight: 700;
}

/* Main Header */
.main-header,
.elementor-section.main-header {
    background-color: #000000;
    padding: 15px 0;
}

/* Instant Search Input */
.pksearch-wrapper input,
.search-widget form input[type="text"] {
    border-radius: 4px;
    border: 1px solid #ddd;
    padding: 10px 15px;
}

.pksearch-wrapper button,
.search-widget form button[type="submit"] {
    background-color: var(--rg-primary);
    color: #ffffff;
    border-radius: 0 4px 4px 0;
}

/* Navigation Menu */
.navbar-nav,
.pknav-wrapper,
.elementor-widget-pknav {
    font-weight: 600;
    text-transform: uppercase;
}

.pos-sub-menu .ul-column > li.submenu-item:first-child > a,
.pos-sub-menu .ul-column > li.submenu-item:first-child > a span {
    font-weight: 700 !important;
    color: var(--rg-dark);
}

.pos-sub-menu .ul-column > li.submenu-item > a,
.pos-sub-menu .ul-column > li.submenu-item > a span {
    font-weight: 400 !important;
    color: var(--rg-text-muted);
}

.pos-sub-menu .ul-column > li.submenu-item > a:hover {
    color: var(--rg-primary) !important;
}

/* Product Miniatures & Cards */
.product-miniature,
.thumbnail-container {
    background: #ffffff;
    border: 1px solid var(--rg-border);
    border-radius: 4px;
    padding: 12px;
    transition: all 0.3s ease;
    margin-bottom: 20px;
}

.product-miniature:hover,
.thumbnail-container:hover {
    border-color: #d1d1d1;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

.product-miniature .product-title a {
    font-size: 14px;
    font-weight: 600;
    color: var(--rg-dark);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product-miniature .product-title a:hover {
    color: var(--rg-primary);
}

.product-miniature .product-price-and-shipping .price {
    font-size: 16px;
    font-weight: 700;
    color: var(--rg-primary);
}

.product-miniature .product-price-and-shipping .regular-price {
    font-size: 13px;
    color: #999999;
    text-decoration: line-through;
    margin-right: 6px;
}

/* Badges / Flags */
.product-flags .product-flag.on-sale,
.product-flags .product-flag.discount {
    background-color: var(--rg-primary) !important;
    color: #ffffff;
    font-weight: 700;
    border-radius: 3px;
    padding: 3px 8px;
    font-size: 11px;
    text-transform: uppercase;
}

.product-flags .product-flag.new {
    background-color: var(--rg-dark) !important;
    color: #ffffff;
    font-weight: 700;
    border-radius: 3px;
    padding: 3px 8px;
    font-size: 11px;
    text-transform: uppercase;
}

/* Reassurance Bar */
.footer-reassurance {
    background-color: #f7f7f7;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    padding: 25px 0;
}

.footer-reassurance .image-box-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--rg-dark);
    text-transform: uppercase;
    margin-top: 8px;
}

.footer-reassurance .image-box-description {
    font-size: 12px;
    color: var(--rg-text-muted);
}

/* Footer Links & Columns */
.footer-links-section {
    background-color: #d9d9d9;
    padding: 40px 0 30px;
}

.footer-links-section h4,
.footer-links-section .pos_links_title,
.footer-links-section .widget-title {
    font-size: 15px;
    font-weight: 700;
    color: #000000;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.footer-links-section ul li a {
    font-size: 13px;
    color: #222222;
    line-height: 2;
    transition: color 0.2s ease;
}

.footer-links-section ul li a:hover {
    color: var(--rg-primary);
    padding-left: 3px;
}

/* Newsletter & Social Section */
.footer-newsletter-section {
    background-color: #d9d9d9;
    border-top: 1px solid #cccccc;
    padding: 30px 0;
}

.footer-newsletter-section input[type="email"] {
    border-radius: 4px 0 0 4px;
    border: 1px solid #bbb;
    padding: 10px 15px;
    height: 44px;
}

.footer-newsletter-section button[type="submit"] {
    background-color: var(--rg-primary);
    border: none;
    border-radius: 0 4px 4px 0;
    color: #ffffff;
    height: 44px;
    padding: 0 20px;
    font-weight: 600;
}

/* Copyright & Payment Badges */
.footer-bottom {
    background-color: var(--rg-black);
    color: #aaaaaa;
    font-size: 12px;
    padding: 20px 0;
}

.footer-bottom strong {
    color: #ffffff;
}

.footer-bottom p {
    margin-bottom: 5px;
}

.footer-bottom img {
    max-width: 100%;
    height: auto;
}

/* Section Headings with Red Accent */
.elementor-widget-heading .elementor-heading-title {
    position: relative;
    padding-bottom: 8px;
}

.section-title-accent .elementor-heading-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 3px;
    background-color: var(--rg-primary);
}

/* Slick Carousel adjustments */
.elementor-image-carousel.slick-initialized {
    visibility: visible;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .header-topbar {
        display: none;
    }
    .footer-links-section {
        padding: 25px 0;
    }
    .footer-links-section .col-xs-12 {
        margin-bottom: 20px;
    }
}

/* Posthemes & Ecolife Original Custom CSS */
.pos-brand-widgets .brand-item img { height: 49px !important; }
.my-h-t-txt { color: #d80100; font-weight: 700; }
.my-h-btn { background: #d80100; color: #fff; padding: 5px 10px; border-radius: 5px; }
.my-home-ban .elementor-image-box-content { padding: 0px 15px 15px 15px !important; }
.page-title-wrapper.p_tilte_small { background: #f8f8f8 !important; }
#search_filters > p { display: none !important; }
#blockcart-modal .modal-title { text-transform: uppercase !important; }
#blockcart-modal .product-name { text-transform: uppercase !important; }
#advansedwishlist_block { display: none !important; }
#product #left-column { margin-top: 50px !important; }
#custom-text { padding: 0 !important; margin-bottom: 0px !important; }
.wishlist a.wl-checked, .wishlist a.wl-checked i { color: #d80100 !important; }
.my-right-prdt-aditnal-info #wishlist_button_block { display: none !important; }
#mobile_menu_wrapper { z-index: 9999 !important; }

#_desktop_cart_block .block-promo,
body#cart .cart-voucher { display: none; }
body#checkout .cart-voucher { display: none; }
body#checkout.enable--voucher .cart-voucher { display: block; }
@media (max-width: 600px) {
    #header {
        position: relative;
        z-index: 9999;
    }
    .ispro-top-full {
        z-index: 10 !important;
    }
    .ispro-top-full #instantsearchpro .search-box {
        border: 0;
        padding: 0 15px;
    }
    #instantsearchpro .button { right: 19px !important; }
}
