/* theme.css - ContaBox Branding */

:root {
    /* Palette de couleurs ContaBox — Orange industriel + Marine acier */
    --color-primary: #E67E22;
    /* Orange container */
    --color-primary-dark: #CA6F1E;
    /* Orange foncé survol */
    --color-secondary: #1C2B3A;
    /* Navy acier */
    --color-wood-light: #FDEBD0;
    /* Crème clair */
    --color-wood-medium: #F0A500;
    /* Ambre */
    --color-neutral: #F4F6F8;
    /* Gris très clair */
    --color-text: #2C3E50;
    --color-white: #ffffff;
}

/* Overrides for Template Styles */

/* Primary Buttons & Links */
.u-c-brand {
    color: var(--color-primary) !important;
}

.u-bg-brand {
    background-color: var(--color-primary) !important;
}

a:hover {
    color: var(--color-primary-dark);
}

/* Utility Overrides */
.u-c-secondary {
    color: var(--color-secondary) !important;
}

.u-c-white {
    color: var(--color-white) !important;
}

.btn--e-brand {
    background-color: var(--color-primary) !important;
    color: var(--color-white) !important;
    border-color: var(--color-primary) !important;
}

.btn--e-brand:hover {
    background-color: var(--color-primary-dark) !important;
    border-color: var(--color-primary-dark) !important;
}

/* Header Overrides */
.header--style-1 {
    border-bottom: 3px solid var(--color-wood-medium);
}

/* Top Bar / Secondary Nav */
.secondary-nav-wrapper {
    background-color: var(--color-secondary);
}

.secondary-nav-wrapper .secondary-nav {
    color: var(--color-wood-light);
}

/* Primary Nav */
.primary-nav-wrapper--border {
    border-bottom: 1px solid var(--color-wood-light);
}

.main-logo {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    color: var(--color-secondary) !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.main-logo span {
    color: var(--color-primary);
}

/* Search Bar */
.main-form .main-search-button {
    background-color: var(--color-primary);
    color: var(--color-white);
}

.main-form .main-search-button:hover {
    background-color: var(--color-primary-dark);
}

/* Navigation Links */
.ah-list--link-color-secondary>li>a {
    color: var(--color-secondary);
    font-weight: 600;
}

.ah-list--link-color-secondary>li>a:hover {
    color: var(--color-primary);
}

/* Footer (Preparation) */
footer {
    background-color: var(--color-secondary);
    color: var(--color-wood-light);
}

/* --- FIXES --- */

/* Fix White Links in Menu */
.ah-list a,
.mega-menu-list ul li a {
    color: var(--color-text) !important;
    /* Force dark color */
}

.ah-list a:hover,
.mega-menu-list ul li a:hover {
    color: var(--color-primary) !important;
}

/* --- Fixed Header --- */
.header--fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: #ffffff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Header offset handled dynamically by JS in header.php */

/* --- Mobile Cart --- */
.mobile-cart-link {
    display: none;
    /* Hidden by default on desktop */
    font-size: 20px;
    color: var(--color-secondary);
    margin-right: 15px;
}

@media (max-width: 991px) {
    .mobile-cart-link {
        display: inline-block;
    }

    /* Ensure header height is consistent */
    .header--style-1 {
        padding-bottom: 10px;
    }
}

/* --- Icon Sizing Fixes --- */
.header--style-1 i[class^="ri-"] {
    font-size: 22px;
    /* Larger icons in header */
    vertical-align: middle;
}

.mobile-cart-link i {
    font-size: 26px;
    /* Prominent mobile cart */
}

.ah-list i[class^="ri-"] {
    font-size: 20px;
    /* Larger icons in menu */
    margin-right: 8px;
}

.main-search-button {
    font-size: 20px;
    /* Larger search icon */
}

/* Logo Size Fix */
.main-logo img {
    max-width: 150px;
    height: auto;
}