/**
 * custom.css — Charte Graphique MySongOriginal 3.0
 * mysongoriginal.com — Mode Éthique Neuve & Personal Shopper IA
 * Simple Créa Web & Community — SIREN 991 951 336
 * Version corrigée — Mars 2026
 */

/* ═══════════════════════════════════════════════════
   FONTS
   ═══════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ═══════════════════════════════════════════════════
   VARIABLES
   ═══════════════════════════════════════════════════ */
:root {
    --mso-sage:        #7d9a78;
    --mso-sage-light:  #a8c4a2;
    --mso-sage-dark:   #5a7a55;
    --mso-forest:      #3d5a3d;
    --mso-forest-deep: #2a4030;
    --mso-terra:       #c67b5c;
    --mso-terra-dark:  #a85d3f;
    --mso-terra-light: #e09a7d;
    --mso-cream:       #faf8f5;
    --mso-sand:        #e8e2d9;
    --mso-sand-dark:   #d4cec5;
    --mso-charcoal:    #2d3029;
    --mso-grad:        linear-gradient(135deg, #7d9a78 0%, #5a7a55 100%);
    --mso-grad-deep:   linear-gradient(135deg, #5a7a55 0%, #3d5a3d 100%);
    --mso-grad-terra:  linear-gradient(135deg, #c67b5c 0%, #a85d3f 100%);
}

/* ═══════════════════════════════════════════════════
   BODY & FOND
   ═══════════════════════════════════════════════════ */
body {
    font-family: 'Outfit', sans-serif !important;
    color: var(--mso-charcoal) !important;
}

#main,
#wrapper,
.page-wrapper,
.page-content,
#content-wrapper {
    background-color: var(--mso-cream) !important;
}

/* ═══════════════════════════════════════════════════
   TYPOGRAPHIE GLOBALE
   ═══════════════════════════════════════════════════ */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'Cormorant Garamond', serif !important;
    color: var(--mso-forest) !important;
    font-weight: 500 !important;
}

p, label, span, li, td, th,
.form-control, input, select, textarea,
.btn, button {
    font-family: 'Outfit', sans-serif !important;
}

/* ═══════════════════════════════════════════════════
   LIENS — contenu uniquement
   ═══════════════════════════════════════════════════ */
#content a,
.container a,
.page-content a,
.page-wrapper a,
main a,
article a,
.alert a,
.breadcrumb a {
    color: var(--mso-sage) !important;
    transition: color 0.2s ease !important;
}

#content a:hover,
.container a:hover,
.page-content a:hover,
.page-wrapper a:hover,
main a:hover,
article a:hover,
.breadcrumb a:hover {
    color: var(--mso-forest) !important;
    text-decoration: none !important;
}

/* ═══════════════════════════════════════════════════
   BOUTONS
   ═══════════════════════════════════════════════════ */
.btn {
    border-radius: 50px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    transition: all 0.25s ease !important;
}

.btn-primary,
a.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary {
    background: var(--mso-grad) !important;
    background-color: var(--mso-sage) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
}

.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover {
    background: var(--mso-grad-deep) !important;
    background-color: var(--mso-sage-dark) !important;
    border-color: var(--mso-sage-dark) !important;
    color: white !important;
}

.btn-secondary,
a.btn-secondary,
button.btn-secondary {
    background-color: white !important;
    border: 1.5px solid var(--mso-sand) !important;
    color: var(--mso-charcoal) !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 500 !important;
    border-radius: 50px !important;
}

.btn-secondary:hover,
a.btn-secondary:hover {
    background-color: rgba(232,226,217,0.4) !important;
    border-color: var(--mso-sage-light) !important;
    color: var(--mso-forest) !important;
}

.btn-outline-primary,
a.btn-outline-primary {
    border: 1.5px solid var(--mso-sage) !important;
    color: var(--mso-sage) !important;
    background: transparent !important;
    border-radius: 50px !important;
}

.btn-outline-primary:hover,
a.btn-outline-primary:hover {
    background: var(--mso-grad) !important;
    color: white !important;
    border-color: transparent !important;
}

.btn-success, a.btn-success {
    background: var(--mso-grad) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 50px !important;
}

.btn-success:hover, a.btn-success:hover {
    background: var(--mso-grad-deep) !important;
    color: white !important;
}

.btn-warning, a.btn-warning {
    background: var(--mso-grad-terra) !important;
    border-color: var(--mso-terra) !important;
    color: white !important;
    border-radius: 50px !important;
}

.btn-warning:hover, a.btn-warning:hover {
    background-color: var(--mso-terra-dark) !important;
    color: white !important;
}

.btn-danger, a.btn-danger {
    background: linear-gradient(135deg, #c67b6a 0%, #a85a4a 100%) !important;
    border-color: #c67b6a !important;
    color: white !important;
    border-radius: 50px !important;
}

.btn-add-to-cart,
.add-to-cart,
.product-add-to-cart .btn {
    background: var(--mso-grad) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
}

.btn-add-to-cart:hover,
.add-to-cart:hover {
    background: var(--mso-grad-deep) !important;
    color: white !important;
}

/* ═══════════════════════════════════════════════════
   FORMULAIRES
   ═══════════════════════════════════════════════════ */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
select,
textarea {
    border: 1.5px solid var(--mso-sand) !important;
    border-radius: 10px !important;
    font-family: 'Outfit', sans-serif !important;
    color: var(--mso-charcoal) !important;
    background-color: var(--mso-cream) !important;
    transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

.form-control:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus {
    border-color: var(--mso-sage) !important;
    background-color: white !important;
    box-shadow: 0 0 0 3px rgba(125,154,120,0.15) !important;
    outline: none !important;
}

label,
.form-control-label {
    font-family: 'Outfit', sans-serif !important;
    color: var(--mso-forest) !important;
    font-weight: 600 !important;
}

.custom-checkbox input:checked ~ span,
.custom-radio input:checked ~ span {
    background-color: var(--mso-sage) !important;
    border-color: var(--mso-sage) !important;
}

/* ═══════════════════════════════════════════════════
   HEADER — fond blanc, liens forest (CORRIGÉ)
   ═══════════════════════════════════════════════════ */
#header {
    background-color: white !important;
}

/* Tous les liens et boutons du header en forest */
#header a,
#header .top-menu a,
#header .header-nav a,
.header-nav .right-nav a,
#header .btn,
#header button,
#header .user-info a,
#header .blockcart a,
#header [data-link-action],
.header-top a,
.header-top .btn,
.header-top .btn-unstyle {
    color: var(--mso-forest) !important;
    transform: none !important;
    box-shadow: none !important;
}

#header a:hover,
#header .top-menu a:hover,
#header .btn:hover,
#header button:hover,
.header-top a:hover {
    color: var(--mso-sage) !important;
    background-color: transparent !important;
    transform: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
    text-decoration: none !important;
}

/* Icônes header (panier, compte) */
#header .material-icons,
#header i.material-icons,
.header-top .material-icons {
    color: var(--mso-forest) !important;
}

/* Menu principal */
#header .top-menu > li > a,
.top-menu > li > a {
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0.03em !important;
    color: var(--mso-forest) !important;
}

.top-menu > li > a:hover {
    color: var(--mso-sage) !important;
}

/* Compteur panier — terracotta */
.blockcart .cart-products-count {
    background-color: var(--mso-terra) !important;
    color: white !important;
    border-radius: 50% !important;
}

/* Barre de recherche header */
.search-widget input[type="text"],
.search-widget .form-control {
    border: 1.5px solid var(--mso-sand) !important;
    border-radius: 50px !important;
    font-family: 'Outfit', sans-serif !important;
    color: var(--mso-charcoal) !important;
    background-color: var(--mso-cream) !important;
}

/* Sous-menus */
.popover,
.sub-menu ul,
.dropdown-menu {
    border: 1.5px solid var(--mso-sand) !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 24px rgba(61,90,61,0.12) !important;
}

.sub-menu a,
.dropdown-menu a,
.popover a {
    color: var(--mso-charcoal) !important;
    font-family: 'Outfit', sans-serif !important;
}

.sub-menu a:hover,
.dropdown-menu a:hover {
    color: var(--mso-forest) !important;
}

/* ═══════════════════════════════════════════════════
   BREADCRUMB
   ═══════════════════════════════════════════════════ */
.breadcrumb {
    background: transparent !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.85rem !important;
}

.breadcrumb a { color: var(--mso-sage) !important; }

.breadcrumb li.current a,
.breadcrumb li.current span {
    color: var(--mso-charcoal) !important;
}

/* ═══════════════════════════════════════════════════
   ALERTES
   ═══════════════════════════════════════════════════ */
.alert-success {
    background-color: rgba(125,154,120,0.12) !important;
    border-color: var(--mso-sage-light) !important;
    color: var(--mso-forest) !important;
    border-radius: 12px !important;
}

.alert-danger, .alert-error {
    background-color: rgba(198,123,92,0.08) !important;
    border-color: rgba(198,123,92,0.35) !important;
    color: var(--mso-terra-dark) !important;
    border-radius: 12px !important;
}

.alert-warning {
    background-color: rgba(198,123,92,0.07) !important;
    border-color: rgba(198,123,92,0.3) !important;
    color: var(--mso-terra-dark) !important;
    border-radius: 12px !important;
}

.alert-info {
    background-color: rgba(232,226,217,0.5) !important;
    border-color: var(--mso-sand) !important;
    color: var(--mso-charcoal) !important;
    border-radius: 12px !important;
}

/* ═══════════════════════════════════════════════════
   PAGINATION
   ═══════════════════════════════════════════════════ */
.pagination .page-item.active .page-link {
    background: var(--mso-grad) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 50px !important;
}

.pagination .page-link {
    color: var(--mso-sage) !important;
    font-family: 'Outfit', sans-serif !important;
    border-color: var(--mso-sand) !important;
    border-radius: 50px !important;
}

.pagination .page-link:hover {
    color: var(--mso-forest) !important;
    border-color: var(--mso-sage-light) !important;
    background-color: rgba(168,196,162,0.15) !important;
}

/* ═══════════════════════════════════════════════════
   PRODUITS & LISTING
   ═══════════════════════════════════════════════════ */
.product-miniature .product-title a,
.product-title a {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    color: var(--mso-forest) !important;
    font-size: 1.1rem !important;
}

.product-miniature .product-title a:hover {
    color: var(--mso-sage) !important;
}

.product-price-and-shipping .price {
    color: var(--mso-forest) !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
}

.product-miniature {
    border-radius: 14px !important;
    transition: box-shadow 0.3s ease, transform 0.3s ease !important;
    overflow: hidden !important;
}

.product-miniature:hover {
    box-shadow: 0 10px 28px rgba(61,90,61,0.14) !important;
    transform: translateY(-4px) !important;
}

.discount-percentage,
.discount-amount,
.product-flag.discount {
    background-color: var(--mso-terra) !important;
    border-radius: 6px !important;
}

.product-flag.new {
    background-color: var(--mso-sage) !important;
    border-radius: 6px !important;
}

/* ═══════════════════════════════════════════════════
   CHECKOUT
   ═══════════════════════════════════════════════════ */
.cart-total .value,
.cart-summary-line .value {
    color: var(--mso-forest) !important;
    font-weight: 700 !important;
}

.checkout-step.-current .step-number,
.checkout-step.-complete .step-number {
    background-color: var(--mso-sage) !important;
    border-color: var(--mso-sage) !important;
}

/* ═══════════════════════════════════════════════════
   COMPTE CLIENT
   ═══════════════════════════════════════════════════ */
.links .link-item {
    border-radius: 14px !important;
    border: 1.5px solid var(--mso-sand) !important;
    font-family: 'Outfit', sans-serif !important;
    text-transform: none !important;
    transition: all 0.3s ease !important;
}

.links a:hover .link-item {
    border-color: var(--mso-sage) !important;
    box-shadow: 0 8px 24px rgba(61,90,61,0.12) !important;
}

/* ═══════════════════════════════════════════════════
   FOOTER — fond forest, texte blanc (CORRIGÉ)
   ═══════════════════════════════════════════════════ */
#footer {
    background-color: var(--mso-forest) !important;
    font-family: 'Outfit', sans-serif !important;
}

/* Titres footer — Cormorant, sans majuscules */
#footer h3,
#footer h4,
#footer .h3,
#footer .h4,
#footer .block-contact .title,
#footer .block-contact h3,
#footer .links h3,
#footer .links .h3,
#footer [class*="title"] {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    color: white !important;
    text-transform: none !important;
    letter-spacing: 0.02em !important;
    font-size: 1.2rem !important;
}

#footer a,
#footer .links ul li a,
#footer .block-contact a {
    color: rgba(255,255,255,0.78) !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.9rem !important;
    transition: color 0.2s ease !important;
}

#footer a:hover,
#footer .links ul li a:hover,
#footer .block-contact a:hover {
    color: var(--mso-sage-light) !important;
    text-decoration: none !important;
}

#footer p,
#footer address,
#footer li {
    color: rgba(255,255,255,0.72) !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.9rem !important;
}

.footer-copyright,
#footer .footer-copyright,
.footer-container .footer-copyright {
    background-color: var(--mso-forest-deep) !important;
    color: rgba(255,255,255,0.5) !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.82rem !important;
    text-align: center !important;
    padding: 12px 0 !important;
}

.footer-copyright a { color: var(--mso-sage-light) !important; }

#footer hr { border-color: rgba(255,255,255,0.15) !important; }

/* Newsletter footer */
#footer .block_newsletter,
#footer .newsletter-block,
#footer #block_newsletter_label,
#footer .block_newsletter .card,
#footer .block_newsletter .card-block,
#footer .block_newsletter form {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

#footer .block_newsletter input[type="email"],
#footer .block_newsletter .form-control {
    border-radius: 50px 0 0 50px !important;
    border: none !important;
    background: rgba(250,248,245,0.15) !important;
    color: white !important;
    font-family: 'Outfit', sans-serif !important;
}

#footer .block_newsletter input[type="email"]::placeholder {
    color: rgba(255,255,255,0.6) !important;
}

#footer .block_newsletter .btn,
#footer .block_newsletter button {
    background: var(--mso-grad) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 0 50px 50px 0 !important;
}

/* ═══════════════════════════════════════════════════
   SCROLL TO TOP — CORRIGÉ fond forest sur fond clair
   ═══════════════════════════════════════════════════ */
.ph-scroll-to-top,
#ph_scrolltotop,
.scrolltop,
[id*="scrolltop"],
[class*="scrolltop"],
.ph_scrolltotop,
#scroll-top,
.scroll-top {
    background-color: var(--mso-terra) !important;
    background: linear-gradient(135deg, #c67b5c, #a85d3f) !important;
    border-color: var(--mso-terra) !important;
    border-radius: 50px !important;
    color: white !important;
    box-shadow: 0 4px 16px rgba(198,123,92,0.45) !important;
}

.ph-scroll-to-top:hover,
[id*="scrolltop"]:hover,
[class*="scrolltop"]:hover {
    background: linear-gradient(135deg, #a85d3f, #8a4d32) !important;
    opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════
   TABLES
   ═══════════════════════════════════════════════════ */
.table thead tr {
    background-color: var(--mso-sand) !important;
}

.table th {
    color: var(--mso-forest) !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border-color: var(--mso-sand-dark) !important;
}

.table td {
    font-family: 'Outfit', sans-serif !important;
    vertical-align: middle !important;
    border-color: rgba(232,226,217,0.6) !important;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(232,226,217,0.2) !important;
}

/* ═══════════════════════════════════════════════════
   BADGES
   ═══════════════════════════════════════════════════ */
.badge-primary { background-color: var(--mso-sage) !important; border-radius: 50px !important; }
.badge-success { background-color: var(--mso-forest) !important; border-radius: 50px !important; }
.badge-warning { background-color: var(--mso-terra) !important; border-radius: 50px !important; }
.badge-danger  { background-color: #a85a4a !important; border-radius: 50px !important; }
.badge-info    { background-color: #5a8fa8 !important; border-radius: 50px !important; }

/* ═══════════════════════════════════════════════════
   MODALS
   ═══════════════════════════════════════════════════ */
.modal-header {
    background: linear-gradient(135deg, var(--mso-sand) 0%, rgba(168,196,162,0.25) 100%) !important;
    border-bottom: 1px solid var(--mso-sand) !important;
}

.modal-title {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    color: var(--mso-forest) !important;
}

.modal-content {
    border-radius: 16px !important;
    border: 1.5px solid var(--mso-sand) !important;
    overflow: hidden !important;
    font-family: 'Outfit', sans-serif !important;
}

.modal-footer {
    border-top: 1px solid var(--mso-sand) !important;
    background: rgba(250,248,245,0.5) !important;
}

/* ═══════════════════════════════════════════════════
   BADGES MYSONGORIGINAL
   ═══════════════════════════════════════════════════ */
.mso-badge-ethical {
    background: var(--mso-grad) !important;
    color: white !important;
    border-radius: 50px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.82rem !important;
    padding: 0.3rem 0.9rem !important;
}

.mso-badge-certified,
.mso-badge-nft {
    background: var(--mso-grad-terra) !important;
    color: white !important;
    border-radius: 50px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.82rem !important;
    padding: 0.3rem 0.9rem !important;
}

.mso-wallet-block {
    background: rgba(125,154,120,0.1) !important;
    border: 1.5px solid var(--mso-sage-light) !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
}

/* ═══════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════ */
@media (max-width: 768px) {
    .btn { min-height: 44px !important; }

    #header .top-menu > li > a {
        font-size: 0.9rem !important;
    }
}

/* ═══════════════════════════════════════════════════
   FIX EMAIL CONTACT — supprime le "m" flottant
   ═══════════════════════════════════════════════════ */
#footer .block-contact .data,
#footer .block-contact .mailto,
#footer .block-contact p,
.footer-container .block-contact .data,
.block-contact span,
.block-contact a,
.block-contact .data {
    word-break: break-all !important;
    word-wrap: break-word !important;
    white-space: normal !important;
    max-width: 100% !important;
    display: block !important;
    overflow: hidden !important;
}

/* ═══════════════════════════════════════════════════
   FIX SCROLL-TO-TOP TURQUOISE — tous les sélecteurs
   ═══════════════════════════════════════════════════ */
#ph_scrolltotop,
#ph_scrolltotop *,
#ph_scrolltotop button,
#ph_scrolltotop a,
#ph_scrolltotop span,
#ph_scrolltotop i,
.ph_scrolltotop,
.ph_scrolltotop *,
.ph-scroll-to-top,
.ph-scroll-to-top *,
[id="ph_scrolltotop"],
[id="ph_scrolltotop"] *,
[class*="scrolltop"],
[class*="scrolltop"] *,
[class*="scroll-top"],
[class*="scroll-top"] *,
[id*="scrolltop"],
[id*="scrolltop"] * {
    background-color: var(--mso-terra) !important;
    background: linear-gradient(135deg, #c67b5c, #a85d3f) !important;
    color: white !important;
    border-color: var(--mso-terra) !important;
    border-radius: 50px !important;
    box-shadow: 0 4px 16px rgba(198,123,92,0.45) !important;
    fill: white !important;
}

/* ═══════════════════════════════════════════════════
   FIX BOUTON CHOISIR UN FICHIER — turquoise résiduel
   ═══════════════════════════════════════════════════ */
input[type="file"] + .btn,
input[type="file"] ~ .btn,
input[type="file"] + label,
input[type="file"] ~ label,
.custom-file-label,
.custom-file-label::after,
.btn-file,
[class*="file"] .btn,
[class*="file"] button,
.fileupload .btn,
.fileinput .btn,
label.btn[for*="file"],
label.btn[for*="attachment"],
[class*="attachment"] .btn,
.form-group [class*="file"] label {
    background: linear-gradient(135deg, #3d5a3d, #2a4030) !important;
    background-color: var(--mso-forest) !important;
    border-color: var(--mso-forest) !important;
    color: white !important;
    border-radius: 50px !important;
}

/* ═══════════════════════════════════════════════════
   FIX BOUTONS GÉNÉRIQUES TURQUOISE RÉSIDUELS
   ═══════════════════════════════════════════════════ */
button:not([class]),
.btn:not([class*="btn-"]),
.ui-button,
[class*="ps_"][class*="btn"],
[class*="module"] .btn {
    background: var(--mso-grad) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 50px !important;
}

/* Fix spécifique Bootstrap turquoise résiduel */
.btn-default,
.btn-info {
    background-color: var(--mso-sage) !important;
    border-color: var(--mso-sage) !important;
    color: white !important;
    border-radius: 50px !important;
}

.btn-default:hover,
.btn-info:hover {
    background-color: var(--mso-sage-dark) !important;
    border-color: var(--mso-sage-dark) !important;
    color: white !important;
}

/* ═══════════════════════════════════════════════════
   MOBILE — responsive fixes
   ═══════════════════════════════════════════════════ */
@media (max-width: 576px) {
    /* Email footer sur mobile */
    #footer .block-contact .data,
    #footer .block-contact a {
        font-size: 0.8rem !important;
        word-break: break-all !important;
    }

    /* Formulaire contact mobile */
    .contact-form .form-fields label,
    .contact-form .form-fields .col-md-6 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* ═══════════════════════════════════════════════════
   FIX ICÔNES COMPTE CLIENT — turquoise résiduel
   ═══════════════════════════════════════════════════ */
.page-my-account .links .link-item i,
.page-my-account .links .link-item .material-icons,
.page-my-account #content .links i,
.account-list i,
.account-list .material-icons,
.links .link-item i,
.links .link-item svg,
.links .link-item .material-icons {
    color: var(--mso-sage) !important;
    fill: var(--mso-sage) !important;
}

.page-my-account .links a:hover .link-item i,
.page-my-account .links a:hover .link-item .material-icons {
    color: var(--mso-forest) !important;
    fill: var(--mso-forest) !important;
}

/* ═══════════════════════════════════════════════════
   SURVOL BOUTONS — vert clair sage-light
   ═══════════════════════════════════════════════════ */

/* Bouton primaire au survol */
.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
input[type="submit"].btn-primary:hover,
input[type="submit"]:hover,
.btn-success:hover,
a.btn-success:hover {
    background: linear-gradient(135deg, #a8c4a2 0%, #7d9a78 100%) !important;
    background-color: var(--mso-sage-light) !important;
    border-color: var(--mso-sage-light) !important;
    color: white !important;
    box-shadow: 0 6px 18px rgba(168,196,162,0.45) !important;
}

/* Bouton outline au survol */
.btn-outline-primary:hover,
a.btn-outline-primary:hover {
    background: linear-gradient(135deg, #a8c4a2 0%, #7d9a78 100%) !important;
    color: white !important;
    border-color: var(--mso-sage-light) !important;
}

/* Ajouter au panier au survol */
.btn-add-to-cart:hover,
.add-to-cart:hover,
.product-add-to-cart .btn:hover {
    background: linear-gradient(135deg, #a8c4a2 0%, #7d9a78 100%) !important;
    border-color: var(--mso-sage-light) !important;
    color: white !important;
    box-shadow: 0 6px 18px rgba(168,196,162,0.45) !important;
}

/* Liens navigation au survol */
.top-menu > li > a:hover,
#header .top-menu a:hover,
nav a:hover {
    color: var(--mso-sage-light) !important;
}

/* Liens footer au survol */
#footer a:hover,
#footer .links ul li a:hover {
    color: var(--mso-sage-light) !important;
}

/* Liens contenu au survol */
#content a:hover,
.page-content a:hover,
main a:hover {
    color: var(--mso-sage-light) !important;
}

/* Pagination au survol */
.pagination .page-link:hover {
    background: linear-gradient(135deg, #a8c4a2 0%, #7d9a78 100%) !important;
    color: white !important;
    border-color: var(--mso-sage-light) !important;
}

/* Carte produit au survol */
.product-miniature:hover .product-title a {
    color: var(--mso-sage-light) !important;
}

/* Compte client liens au survol */
.page-my-account .links a:hover .link-item {
    border-color: var(--mso-sage-light) !important;
    box-shadow: 0 8px 24px rgba(168,196,162,0.25) !important;
}